[unrelated] Regenerate with Generate OCL All
diff --git a/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractCGModelVisitor.java b/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractCGModelVisitor.java
index 303e060..b69ed2e 100644
--- a/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractCGModelVisitor.java
+++ b/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractCGModelVisitor.java
@@ -34,7 +34,7 @@
 
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractCGModelVisitor(C context) {
@@ -51,10 +51,10 @@
 			return null;
 		}
 	}
-	
+
 	/**
 	 * A null-safe visitation of the specified visitable.
-	 * 
+	 *
 	 * @param v a visitable, or <code>null</code>
 	 * @return <code>null</code> if the visitable is <code>null</code>;
 	 *	 otherwise, the result of visiting it
@@ -62,10 +62,10 @@
 	public @Nullable R safeVisit(org.eclipse.ocl.examples.codegen.cgmodel.@Nullable CGElement v) {
 		return (v == null) ? null : v.accept(this);
 	}
-	
+
 	/**
 	 * Perform a visit to the specified visitable.
-	 * 
+	 *
 	 * @param v a visitable, or <code>null</code>
 	 * @return <code>null</code> if the visitable is <code>null</code>;
 	 *	 otherwise, the result of visiting it
diff --git a/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractExtendingCGModelVisitor.java b/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractExtendingCGModelVisitor.java
index 8788870..be32599 100644
--- a/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractExtendingCGModelVisitor.java
+++ b/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractExtendingCGModelVisitor.java
@@ -32,12 +32,12 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractExtendingCGModelVisitor(C context) {
 		super(context);
-	}	
+	}
 
 	@Override
 	public R visitCGAccumulator(org.eclipse.ocl.examples.codegen.cgmodel.@NonNull CGAccumulator object) {
diff --git a/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractNonNullExtendingCGModelVisitor.java b/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractNonNullExtendingCGModelVisitor.java
index 12b8d97..3d74c9c 100644
--- a/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractNonNullExtendingCGModelVisitor.java
+++ b/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractNonNullExtendingCGModelVisitor.java
@@ -27,7 +27,7 @@
  * suitable first super class, the method delegates to visiting().
  * The return is annotated as @NonNull.
  *
- * @deprecated Explicit 'NonNull' functionality is obsolete with Java 8 @NonNull annotations.  
+ * @deprecated Explicit 'NonNull' functionality is obsolete with Java 8 @NonNull annotations.
  */
  @Deprecated
 public abstract class AbstractNonNullExtendingCGModelVisitor<R, C>
@@ -36,16 +36,16 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractNonNullExtendingCGModelVisitor(C context) {
 		super(context);
-	}	
-	
+	}
+
 	/**
 	 * Perform a visit to the specified visitable.
-	 * 
+	 *
 	 * @param visitable a visitable
 	 * @return the non-null result of visiting it
 	 */
diff --git a/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractNullCGModelVisitor.java b/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractNullCGModelVisitor.java
index 16f7050..55e89b8 100644
--- a/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractNullCGModelVisitor.java
+++ b/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/AbstractNullCGModelVisitor.java
@@ -24,7 +24,7 @@
  * An AbstractNullCGModelVisitor provides a default implementation for each
  * visitXxx method that returns null.
  *
- * @deprecated Explicit 'Null' functionality is obsolete with Java 8 @Nullable annotations.  
+ * @deprecated Explicit 'Null' functionality is obsolete with Java 8 @Nullable annotations.
  */
  @Deprecated
 public abstract class AbstractNullCGModelVisitor<@Nullable R, C>
@@ -32,12 +32,12 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractNullCGModelVisitor(C context) {
 		super(context);
-	}	
+	}
 
 	@Override
 	public R visitCGAccumulator(org.eclipse.ocl.examples.codegen.cgmodel.@NonNull CGAccumulator object) {
diff --git a/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/CGModelVisitor.java b/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/CGModelVisitor.java
index 36b2309..f96c043 100644
--- a/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/CGModelVisitor.java
+++ b/examples/org.eclipse.ocl.examples.codegen/emf-gen/org/eclipse/ocl/examples/codegen/cgmodel/util/CGModelVisitor.java
@@ -21,6 +21,7 @@
 import org.eclipse.jdt.annotation.Nullable;
 
 /**
+ * @noimplement This interface is not intended to be implemented by clients.
  */
 public interface CGModelVisitor<R>
 {
@@ -30,7 +31,7 @@
 	 * no such object can be found.
 	 *
 	 * @param adapter the adapter class to look up
-	 * @return an object of the given class, 
+	 * @return an object of the given class,
 	 *    or <code>null</code> if this object does not
 	 *    have an adapter for the given class
 	 */
diff --git a/examples/org.eclipse.ocl.examples.emf.validation.validity/emf-gen/org/eclipse/ocl/examples/emf/validation/validity/impl/AbstractNodeImpl.java b/examples/org.eclipse.ocl.examples.emf.validation.validity/emf-gen/org/eclipse/ocl/examples/emf/validation/validity/impl/AbstractNodeImpl.java
index a4e1aad..e80a76d 100644
--- a/examples/org.eclipse.ocl.examples.emf.validation.validity/emf-gen/org/eclipse/ocl/examples/emf/validation/validity/impl/AbstractNodeImpl.java
+++ b/examples/org.eclipse.ocl.examples.emf.validation.validity/emf-gen/org/eclipse/ocl/examples/emf/validation/validity/impl/AbstractNodeImpl.java
@@ -275,16 +275,16 @@
 	@Override
 	public Object eGet(int featureID, boolean resolve, boolean coreType) {
 		switch (featureID) {
-		case ValidityPackage.ABSTRACT_NODE__ENABLED:
-			return isEnabled();
-		case ValidityPackage.ABSTRACT_NODE__GRAYED:
-			return isGrayed();
-		case ValidityPackage.ABSTRACT_NODE__VISIBLE:
-			return isVisible();
-		case ValidityPackage.ABSTRACT_NODE__LABEL:
-			return getLabel();
-		case ValidityPackage.ABSTRACT_NODE__WORST_RESULT:
-			return getWorstResult();
+			case ValidityPackage.ABSTRACT_NODE__ENABLED:
+				return isEnabled();
+			case ValidityPackage.ABSTRACT_NODE__GRAYED:
+				return isGrayed();
+			case ValidityPackage.ABSTRACT_NODE__VISIBLE:
+				return isVisible();
+			case ValidityPackage.ABSTRACT_NODE__LABEL:
+				return getLabel();
+			case ValidityPackage.ABSTRACT_NODE__WORST_RESULT:
+				return getWorstResult();
 		}
 		return super.eGet(featureID, resolve, coreType);
 	}
@@ -297,15 +297,15 @@
 	@Override
 	public void eSet(int featureID, Object newValue) {
 		switch (featureID) {
-		case ValidityPackage.ABSTRACT_NODE__ENABLED:
-			setEnabled((Boolean)newValue);
-			return;
-		case ValidityPackage.ABSTRACT_NODE__LABEL:
-			setLabel((String)newValue);
-			return;
-		case ValidityPackage.ABSTRACT_NODE__WORST_RESULT:
-			setWorstResult((Result)newValue);
-			return;
+			case ValidityPackage.ABSTRACT_NODE__ENABLED:
+				setEnabled((Boolean)newValue);
+				return;
+			case ValidityPackage.ABSTRACT_NODE__LABEL:
+				setLabel((String)newValue);
+				return;
+			case ValidityPackage.ABSTRACT_NODE__WORST_RESULT:
+				setWorstResult((Result)newValue);
+				return;
 		}
 		super.eSet(featureID, newValue);
 	}
@@ -318,15 +318,15 @@
 	@Override
 	public void eUnset(int featureID) {
 		switch (featureID) {
-		case ValidityPackage.ABSTRACT_NODE__ENABLED:
-			setEnabled(ENABLED_EDEFAULT);
-			return;
-		case ValidityPackage.ABSTRACT_NODE__LABEL:
-			setLabel(LABEL_EDEFAULT);
-			return;
-		case ValidityPackage.ABSTRACT_NODE__WORST_RESULT:
-			setWorstResult((Result)null);
-			return;
+			case ValidityPackage.ABSTRACT_NODE__ENABLED:
+				setEnabled(ENABLED_EDEFAULT);
+				return;
+			case ValidityPackage.ABSTRACT_NODE__LABEL:
+				setLabel(LABEL_EDEFAULT);
+				return;
+			case ValidityPackage.ABSTRACT_NODE__WORST_RESULT:
+				setWorstResult((Result)null);
+				return;
 		}
 		super.eUnset(featureID);
 	}
@@ -339,16 +339,16 @@
 	@Override
 	public boolean eIsSet(int featureID) {
 		switch (featureID) {
-		case ValidityPackage.ABSTRACT_NODE__ENABLED:
-			return enabled != ENABLED_EDEFAULT;
-		case ValidityPackage.ABSTRACT_NODE__GRAYED:
-			return grayed != GRAYED_EDEFAULT;
-		case ValidityPackage.ABSTRACT_NODE__VISIBLE:
-			return visible != VISIBLE_EDEFAULT;
-		case ValidityPackage.ABSTRACT_NODE__LABEL:
-			return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-		case ValidityPackage.ABSTRACT_NODE__WORST_RESULT:
-			return worstResult != null;
+			case ValidityPackage.ABSTRACT_NODE__ENABLED:
+				return enabled != ENABLED_EDEFAULT;
+			case ValidityPackage.ABSTRACT_NODE__GRAYED:
+				return grayed != GRAYED_EDEFAULT;
+			case ValidityPackage.ABSTRACT_NODE__VISIBLE:
+				return visible != VISIBLE_EDEFAULT;
+			case ValidityPackage.ABSTRACT_NODE__LABEL:
+				return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+			case ValidityPackage.ABSTRACT_NODE__WORST_RESULT:
+				return worstResult != null;
 		}
 		return super.eIsSet(featureID);
 	}
@@ -437,7 +437,6 @@
 				return false;
 			}
 		}
-		@SuppressWarnings("null")
 		@NonNull AbstractNode @NonNull [] array = list.toArray(new @NonNull AbstractNode @NonNull [list.size()]);
 		this.visibleChildren = array;
 		this.visible = true;
diff --git a/plugins/org.eclipse.ocl.pivot/emf-gen/org/eclipse/ocl/pivot/oclstdlib/OCLstdlibTables.java b/plugins/org.eclipse.ocl.pivot/emf-gen/org/eclipse/ocl/pivot/oclstdlib/OCLstdlibTables.java
index b890ae9..eb5a5a0 100644
--- a/plugins/org.eclipse.ocl.pivot/emf-gen/org/eclipse/ocl/pivot/oclstdlib/OCLstdlibTables.java
+++ b/plugins/org.eclipse.ocl.pivot/emf-gen/org/eclipse/ocl/pivot/oclstdlib/OCLstdlibTables.java
@@ -2713,16 +2713,12 @@
 
 		private static final @NonNull ExecutorProperty @NonNull [] _OclElement = {
 			OCLstdlibTables.Properties._OclElement__oclContainer,
-			OCLstdlibTables.Properties._OclElement__oclContents,
-			OCLstdlibTables.Properties._OclElement__OclElement__oclContainer,
-			OCLstdlibTables.Properties._OclElement__OclElement__oclContents
+			OCLstdlibTables.Properties._OclElement__oclContents
 		};
 
 		private static final @NonNull ExecutorProperty @NonNull [] _OclEnumeration = {
 			OCLstdlibTables.Properties._OclElement__oclContainer,
-			OCLstdlibTables.Properties._OclElement__oclContents,
-			OCLstdlibTables.Properties._OclElement__OclElement__oclContainer,
-			OCLstdlibTables.Properties._OclElement__OclElement__oclContents
+			OCLstdlibTables.Properties._OclElement__oclContents
 		};
 
 		private static final @NonNull ExecutorProperty @NonNull [] _OclInvalid = {};
@@ -2737,9 +2733,7 @@
 
 		private static final @NonNull ExecutorProperty @NonNull [] _OclStereotype = {
 			OCLstdlibTables.Properties._OclElement__oclContainer,
-			OCLstdlibTables.Properties._OclElement__oclContents,
-			OCLstdlibTables.Properties._OclElement__OclElement__oclContainer,
-			OCLstdlibTables.Properties._OclElement__OclElement__oclContents
+			OCLstdlibTables.Properties._OclElement__oclContents
 		};
 
 		private static final @NonNull ExecutorProperty @NonNull [] _OclSummable = {};
@@ -2748,9 +2742,7 @@
 
 		private static final @NonNull ExecutorProperty @NonNull [] _OclType = {
 			OCLstdlibTables.Properties._OclElement__oclContainer,
-			OCLstdlibTables.Properties._OclElement__oclContents,
-			OCLstdlibTables.Properties._OclElement__OclElement__oclContainer,
-			OCLstdlibTables.Properties._OclElement__OclElement__oclContents
+			OCLstdlibTables.Properties._OclElement__oclContents
 		};
 
 		private static final @NonNull ExecutorProperty @NonNull [] _OclVoid = {};
diff --git a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/AbstractBaseUiModule.java b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/AbstractBaseUiModule.java
index e5f7d76..3104d213 100644
--- a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/AbstractBaseUiModule.java
+++ b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/AbstractBaseUiModule.java
@@ -18,12 +18,12 @@
  */
 @SuppressWarnings("all")
 public abstract class AbstractBaseUiModule extends org.eclipse.xtext.ui.DefaultUiModule {
-	
+
 	public AbstractBaseUiModule(AbstractUIPlugin plugin) {
 		super(plugin);
 	}
-	
-	
+
+
 	// contributed by org.eclipse.xtext.ui.generator.ImplicitUiFragment
 	public com.google.inject.Provider<org.eclipse.xtext.resource.containers.IAllContainersState> provideIAllContainersState() {
 		return org.eclipse.xtext.ui.shared.Access.getJavaProjectsState();
diff --git a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/BaseExecutableExtensionFactory.java b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/BaseExecutableExtensionFactory.java
index 2038782..4458e98 100644
--- a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/BaseExecutableExtensionFactory.java
+++ b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/BaseExecutableExtensionFactory.java
@@ -19,7 +19,7 @@
 
 /**
  * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
+ * introduced subclass.
  */
 public class BaseExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory {
 
@@ -27,10 +27,10 @@
 	protected Bundle getBundle() {
 		return BaseActivator.getInstance().getBundle();
 	}
-	
+
 	@Override
 	protected Injector getInjector() {
 		return BaseActivator.getInstance().getInjector(BaseActivator.ORG_ECLIPSE_OCL_XTEXT_BASE_BASE);
 	}
-	
+
 }
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 692962d..3a3fd66 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
@@ -17,12 +17,12 @@
 
 /**
  * Represents a generated, default implementation of superclass {@link org.eclipse.xtext.ui.editor.contentassist.AbstractJavaBasedContentProposalProvider}.
- * Methods are dynamically dispatched on the first parameter, i.e., you can override them 
- * with a more concrete subtype. 
+ * Methods are dynamically dispatched on the first parameter, i.e., you can override them
+ * with a more concrete subtype.
  */
 @SuppressWarnings("all")
 public class AbstractBaseProposalProvider extends org.eclipse.xtext.ui.editor.contentassist.AbstractJavaBasedContentProposalProvider {
-		
+
 	public void completeMultiplicityBoundsCS_LowerBound(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
@@ -73,7 +73,7 @@
 	public void completeWildcardTypeRefCS_OwnedExtends(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
-    
+
 	public void complete_MultiplicityBoundsCS(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 012dd84..e16162a 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
@@ -25,19 +25,19 @@
 import org.eclipse.ocl.xtext.base.services.BaseGrammarAccess;
 
 public class BaseParser extends AbstractContentAssistParser {
-	
+
 	@Inject
 	private BaseGrammarAccess grammarAccess;
-	
+
 	private Map<AbstractElement, String> nameMappings;
-	
+
 	@Override
 	protected org.eclipse.ocl.xtext.base.ui.contentassist.antlr.internal.InternalBaseParser createParser() {
 		org.eclipse.ocl.xtext.base.ui.contentassist.antlr.internal.InternalBaseParser result = new org.eclipse.ocl.xtext.base.ui.contentassist.antlr.internal.InternalBaseParser(null);
 		result.setGrammarAccess(grammarAccess);
 		return result;
 	}
-	
+
 	@Override
 	protected String getRuleName(AbstractElement element) {
 		if (nameMappings == null) {
@@ -91,7 +91,7 @@
 		}
 		return nameMappings.get(element);
 	}
-	
+
 	@Override
 	protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
 		try {
@@ -100,18 +100,18 @@
 			return typedParser.getFollowElements();
 		} catch(RecognitionException ex) {
 			throw new RuntimeException(ex);
-		}		
+		}
 	}
-	
+
 	@Override
 	protected String[] getInitialHiddenTokens() {
 		return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" };
 	}
-	
+
 	public BaseGrammarAccess getGrammarAccess() {
 		return this.grammarAccess;
 	}
-	
+
 	public void setGrammarAccess(BaseGrammarAccess grammarAccess) {
 		this.grammarAccess = grammarAccess;
 	}
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 0cf72a1..1869ccb 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
@@ -13,19 +13,19 @@
 options {
 	superClass=AbstractInternalContentAssistParser;
 	backtrack=true;
-	
+
 }
 
 @lexer::header {
 package org.eclipse.ocl.xtext.base.ui.contentassist.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
 }
 
 @parser::header {
-package org.eclipse.ocl.xtext.base.ui.contentassist.antlr.internal; 
+package org.eclipse.ocl.xtext.base.ui.contentassist.antlr.internal;
 
 import java.io.InputStream;
 import org.eclipse.xtext.*;
@@ -42,18 +42,18 @@
 }
 
 @parser::members {
- 
+
  	private BaseGrammarAccess grammarAccess;
- 	
+
     public void setGrammarAccess(BaseGrammarAccess grammarAccess) {
     	this.grammarAccess = grammarAccess;
     }
-    
+
     @Override
     protected Grammar getGrammar() {
     	return grammarAccess.getGrammar();
     }
-    
+
     @Override
     protected String getValueForTokenName(String tokenName) {
     	return tokenName;
@@ -65,12 +65,12 @@
 
 
 // Entry rule entryRuleMultiplicityBoundsCS
-entryRuleMultiplicityBoundsCS 
+entryRuleMultiplicityBoundsCS
 :
 { before(grammarAccess.getMultiplicityBoundsCSRule()); }
 	 ruleMultiplicityBoundsCS
-{ after(grammarAccess.getMultiplicityBoundsCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityBoundsCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityBoundsCS
@@ -93,12 +93,12 @@
 
 
 // Entry rule entryRuleMultiplicityCS
-entryRuleMultiplicityCS 
+entryRuleMultiplicityCS
 :
 { before(grammarAccess.getMultiplicityCSRule()); }
 	 ruleMultiplicityCS
-{ after(grammarAccess.getMultiplicityCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityCS
@@ -121,12 +121,12 @@
 
 
 // Entry rule entryRuleMultiplicityStringCS
-entryRuleMultiplicityStringCS 
+entryRuleMultiplicityStringCS
 :
 { before(grammarAccess.getMultiplicityStringCSRule()); }
 	 ruleMultiplicityStringCS
-{ after(grammarAccess.getMultiplicityStringCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityStringCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityStringCS
@@ -149,12 +149,12 @@
 
 
 // Entry rule entryRulePathNameCS
-entryRulePathNameCS 
+entryRulePathNameCS
 :
 { before(grammarAccess.getPathNameCSRule()); }
 	 rulePathNameCS
-{ after(grammarAccess.getPathNameCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPathNameCSRule()); }
+	 EOF
 ;
 
 // Rule PathNameCS
@@ -177,12 +177,12 @@
 
 
 // Entry rule entryRuleFirstPathElementCS
-entryRuleFirstPathElementCS 
+entryRuleFirstPathElementCS
 :
 { before(grammarAccess.getFirstPathElementCSRule()); }
 	 ruleFirstPathElementCS
-{ after(grammarAccess.getFirstPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getFirstPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule FirstPathElementCS
@@ -205,12 +205,12 @@
 
 
 // Entry rule entryRuleNextPathElementCS
-entryRuleNextPathElementCS 
+entryRuleNextPathElementCS
 :
 { before(grammarAccess.getNextPathElementCSRule()); }
 	 ruleNextPathElementCS
-{ after(grammarAccess.getNextPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNextPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule NextPathElementCS
@@ -233,12 +233,12 @@
 
 
 // Entry rule entryRuleTemplateBindingCS
-entryRuleTemplateBindingCS 
+entryRuleTemplateBindingCS
 :
 { before(grammarAccess.getTemplateBindingCSRule()); }
 	 ruleTemplateBindingCS
-{ after(grammarAccess.getTemplateBindingCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTemplateBindingCSRule()); }
+	 EOF
 ;
 
 // Rule TemplateBindingCS
@@ -261,12 +261,12 @@
 
 
 // Entry rule entryRuleTemplateParameterSubstitutionCS
-entryRuleTemplateParameterSubstitutionCS 
+entryRuleTemplateParameterSubstitutionCS
 :
 { before(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
 	 ruleTemplateParameterSubstitutionCS
-{ after(grammarAccess.getTemplateParameterSubstitutionCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
+	 EOF
 ;
 
 // Rule TemplateParameterSubstitutionCS
@@ -291,12 +291,12 @@
 
 
 // Entry rule entryRuleTypeParameterCS
-entryRuleTypeParameterCS 
+entryRuleTypeParameterCS
 :
 { before(grammarAccess.getTypeParameterCSRule()); }
 	 ruleTypeParameterCS
-{ after(grammarAccess.getTypeParameterCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeParameterCSRule()); }
+	 EOF
 ;
 
 // Rule TypeParameterCS
@@ -319,12 +319,12 @@
 
 
 // Entry rule entryRuleTypeRefCS
-entryRuleTypeRefCS 
+entryRuleTypeRefCS
 :
 { before(grammarAccess.getTypeRefCSRule()); }
 	 ruleTypeRefCS
-{ after(grammarAccess.getTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypeRefCS
@@ -347,12 +347,12 @@
 
 
 // Entry rule entryRuleTypedRefCS
-entryRuleTypedRefCS 
+entryRuleTypedRefCS
 :
 { before(grammarAccess.getTypedRefCSRule()); }
 	 ruleTypedRefCS
-{ after(grammarAccess.getTypedRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypedRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypedRefCS
@@ -375,12 +375,12 @@
 
 
 // Entry rule entryRuleTypedTypeRefCS
-entryRuleTypedTypeRefCS 
+entryRuleTypedTypeRefCS
 :
 { before(grammarAccess.getTypedTypeRefCSRule()); }
 	 ruleTypedTypeRefCS
-{ after(grammarAccess.getTypedTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypedTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypedTypeRefCS
@@ -403,12 +403,12 @@
 
 
 // Entry rule entryRuleUnreservedName
-entryRuleUnreservedName 
+entryRuleUnreservedName
 :
 { before(grammarAccess.getUnreservedNameRule()); }
 	 ruleUnreservedName
-{ after(grammarAccess.getUnreservedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnreservedNameRule()); }
+	 EOF
 ;
 
 // Rule UnreservedName
@@ -431,12 +431,12 @@
 
 
 // Entry rule entryRuleUnrestrictedName
-entryRuleUnrestrictedName 
+entryRuleUnrestrictedName
 :
 { before(grammarAccess.getUnrestrictedNameRule()); }
 	 ruleUnrestrictedName
-{ after(grammarAccess.getUnrestrictedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnrestrictedNameRule()); }
+	 EOF
 ;
 
 // Rule UnrestrictedName
@@ -459,12 +459,12 @@
 
 
 // Entry rule entryRuleWildcardTypeRefCS
-entryRuleWildcardTypeRefCS 
+entryRuleWildcardTypeRefCS
 :
 { before(grammarAccess.getWildcardTypeRefCSRule()); }
 	 ruleWildcardTypeRefCS
-{ after(grammarAccess.getWildcardTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getWildcardTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule WildcardTypeRefCS
@@ -487,12 +487,12 @@
 
 
 // Entry rule entryRuleID
-entryRuleID 
+entryRuleID
 :
 { before(grammarAccess.getIDRule()); }
 	 ruleID
-{ after(grammarAccess.getIDRule()); } 
-	 EOF 
+{ after(grammarAccess.getIDRule()); }
+	 EOF
 ;
 
 // Rule ID
@@ -515,12 +515,12 @@
 
 
 // Entry rule entryRuleIdentifier
-entryRuleIdentifier 
+entryRuleIdentifier
 :
 { before(grammarAccess.getIdentifierRule()); }
 	 ruleIdentifier
-{ after(grammarAccess.getIdentifierRule()); } 
-	 EOF 
+{ after(grammarAccess.getIdentifierRule()); }
+	 EOF
 ;
 
 // Rule Identifier
@@ -543,12 +543,12 @@
 
 
 // Entry rule entryRuleLOWER
-entryRuleLOWER 
+entryRuleLOWER
 :
 { before(grammarAccess.getLOWERRule()); }
 	 ruleLOWER
-{ after(grammarAccess.getLOWERRule()); } 
-	 EOF 
+{ after(grammarAccess.getLOWERRule()); }
+	 EOF
 ;
 
 // Rule LOWER
@@ -575,12 +575,12 @@
 
 
 // Entry rule entryRuleUPPER
-entryRuleUPPER 
+entryRuleUPPER
 :
 { before(grammarAccess.getUPPERRule()); }
 	 ruleUPPER
-{ after(grammarAccess.getUPPERRule()); } 
-	 EOF 
+{ after(grammarAccess.getUPPERRule()); }
+	 EOF
 ;
 
 // Rule UPPER
@@ -635,7 +635,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); }
 
-	'|?' 
+	'|?'
 
 { after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); }
 )
@@ -659,7 +659,7 @@
 (
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); }
 )
@@ -667,7 +667,7 @@
     |(
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); }
 
-	'+' 
+	'+'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); }
 )
@@ -675,7 +675,7 @@
     |(
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); }
 
-	'?' 
+	'?'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); }
 )
@@ -743,7 +743,7 @@
     |(
 { before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); }
 )
@@ -836,7 +836,7 @@
 (
 { before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); }
 
-	'..' 
+	'..'
 
 { after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); }
 )
@@ -899,7 +899,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); }
 )
@@ -987,7 +987,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); }
 )
@@ -1087,7 +1087,7 @@
 (
 { before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); }
 
-	'::' 
+	'::'
 
 { after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); }
 )
@@ -1242,7 +1242,7 @@
 (
 { before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); }
 )
@@ -1368,7 +1368,7 @@
 (
 { before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); }
 
-	'extends' 
+	'extends'
 
 { after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); }
 )
@@ -1462,7 +1462,7 @@
 (
 { before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); }
 
-	'&&' 
+	'&&'
 
 { after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); }
 )
@@ -1586,7 +1586,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -1645,7 +1645,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2()); }
 )
@@ -1713,7 +1713,7 @@
 (
 { before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); }
 
-	'?' 
+	'?'
 
 { after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); }
 )
@@ -1778,7 +1778,7 @@
 (
 { before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); }
 
-	'extends' 
+	'extends'
 
 { after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); }
 )
@@ -1862,7 +1862,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); }
 
-	'|1' 
+	'|1'
 
 { after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); }
 )
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 b822a4d..09232b4 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
@@ -1,6 +1,6 @@
 package org.eclipse.ocl.xtext.base.ui.contentassist.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
 
@@ -43,7 +43,7 @@
     // delegates
     // delegators
 
-    public InternalBaseLexer() {;} 
+    public InternalBaseLexer() {;}
     public InternalBaseLexer(CharStream input) {
         this(input, new RecognizerSharedState());
     }
@@ -61,7 +61,7 @@
             // InternalBase.g:11:7: ( '|?' )
             // InternalBase.g:11:9: '|?'
             {
-            match("|?"); 
+            match("|?");
 
 
             }
@@ -82,7 +82,7 @@
             // InternalBase.g:12:7: ( '*' )
             // InternalBase.g:12:9: '*'
             {
-            match('*'); 
+            match('*');
 
             }
 
@@ -102,7 +102,7 @@
             // InternalBase.g:13:7: ( '+' )
             // InternalBase.g:13:9: '+'
             {
-            match('+'); 
+            match('+');
 
             }
 
@@ -122,7 +122,7 @@
             // InternalBase.g:14:7: ( '?' )
             // InternalBase.g:14:9: '?'
             {
-            match('?'); 
+            match('?');
 
             }
 
@@ -142,7 +142,7 @@
             // InternalBase.g:15:7: ( '..' )
             // InternalBase.g:15:9: '..'
             {
-            match(".."); 
+            match("..");
 
 
             }
@@ -163,7 +163,7 @@
             // InternalBase.g:16:7: ( '[' )
             // InternalBase.g:16:9: '['
             {
-            match('['); 
+            match('[');
 
             }
 
@@ -183,7 +183,7 @@
             // InternalBase.g:17:7: ( ']' )
             // InternalBase.g:17:9: ']'
             {
-            match(']'); 
+            match(']');
 
             }
 
@@ -203,7 +203,7 @@
             // InternalBase.g:18:7: ( '::' )
             // InternalBase.g:18:9: '::'
             {
-            match("::"); 
+            match("::");
 
 
             }
@@ -224,7 +224,7 @@
             // InternalBase.g:19:7: ( ',' )
             // InternalBase.g:19:9: ','
             {
-            match(','); 
+            match(',');
 
             }
 
@@ -244,7 +244,7 @@
             // InternalBase.g:20:7: ( 'extends' )
             // InternalBase.g:20:9: 'extends'
             {
-            match("extends"); 
+            match("extends");
 
 
             }
@@ -265,7 +265,7 @@
             // InternalBase.g:21:7: ( '&&' )
             // InternalBase.g:21:9: '&&'
             {
-            match("&&"); 
+            match("&&");
 
 
             }
@@ -286,7 +286,7 @@
             // InternalBase.g:22:7: ( '(' )
             // InternalBase.g:22:9: '('
             {
-            match('('); 
+            match('(');
 
             }
 
@@ -306,7 +306,7 @@
             // InternalBase.g:23:7: ( ')' )
             // InternalBase.g:23:9: ')'
             {
-            match(')'); 
+            match(')');
 
             }
 
@@ -326,7 +326,7 @@
             // InternalBase.g:24:7: ( '|1' )
             // InternalBase.g:24:9: '|1'
             {
-            match("|1"); 
+            match("|1");
 
 
             }
@@ -345,7 +345,7 @@
             // InternalBase.g:2115:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
             // InternalBase.g:2115:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
-            match('\\'); 
+            match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
                 input.consume();
 
@@ -396,7 +396,7 @@
             // InternalBase.g:2119:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
             // InternalBase.g:2119:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
-            match('\"'); 
+            match('\"');
             // InternalBase.g:2119:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
@@ -415,7 +415,7 @@
             	case 1 :
             	    // InternalBase.g:2119:34: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -440,7 +440,7 @@
                 }
             } while (true);
 
-            match('\"'); 
+            match('\"');
 
             }
 
@@ -460,7 +460,7 @@
             // InternalBase.g:2121:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             // InternalBase.g:2121:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
-            match('\''); 
+            match('\'');
             // InternalBase.g:2121:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
@@ -479,7 +479,7 @@
             	case 1 :
             	    // InternalBase.g:2121:35: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -504,7 +504,7 @@
                 }
             } while (true);
 
-            match('\''); 
+            match('\'');
 
             }
 
@@ -524,7 +524,7 @@
             // InternalBase.g:2123:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
             // InternalBase.g:2123:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
-            match("/'"); 
+            match("/'");
 
             // InternalBase.g:2123:38: ( options {greedy=false; } : . )*
             loop3:
@@ -553,7 +553,7 @@
             	case 1 :
             	    // InternalBase.g:2123:66: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -563,7 +563,7 @@
                 }
             } while (true);
 
-            match("'/"); 
+            match("'/");
 
 
             }
@@ -584,7 +584,7 @@
             // InternalBase.g:2125:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
             // InternalBase.g:2125:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
-            mRULE_LETTER_CHARACTER(); 
+            mRULE_LETTER_CHARACTER();
             // InternalBase.g:2125:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
@@ -637,8 +637,8 @@
             // InternalBase.g:2127:17: ( '_' RULE_SINGLE_QUOTED_STRING )
             // InternalBase.g:2127:19: '_' RULE_SINGLE_QUOTED_STRING
             {
-            match('_'); 
-            mRULE_SINGLE_QUOTED_STRING(); 
+            match('_');
+            mRULE_SINGLE_QUOTED_STRING();
 
             }
 
@@ -674,7 +674,7 @@
             	case 1 :
             	    // InternalBase.g:2129:13: '0' .. '9'
             	    {
-            	    matchRange('0','9'); 
+            	    matchRange('0','9');
 
             	    }
             	    break;
@@ -707,7 +707,7 @@
             // InternalBase.g:2131:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
             // InternalBase.g:2131:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
-            match("/*"); 
+            match("/*");
 
             // InternalBase.g:2131:24: ( options {greedy=false; } : . )*
             loop6:
@@ -736,7 +736,7 @@
             	case 1 :
             	    // InternalBase.g:2131:52: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -746,7 +746,7 @@
                 }
             } while (true);
 
-            match("*/"); 
+            match("*/");
 
 
             }
@@ -767,7 +767,7 @@
             // InternalBase.g:2133:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
             // InternalBase.g:2133:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
-            match("--"); 
+            match("--");
 
             // InternalBase.g:2133:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
@@ -824,14 +824,14 @@
                         case 1 :
                             // InternalBase.g:2133:41: '\\r'
                             {
-                            match('\r'); 
+                            match('\r');
 
                             }
                             break;
 
                     }
 
-                    match('\n'); 
+                    match('\n');
 
                     }
                     break;
@@ -914,7 +914,7 @@
             // InternalBase.g:2137:16: ( . )
             // InternalBase.g:2137:18: .
             {
-            matchAny(); 
+            matchAny();
 
             }
 
@@ -934,168 +934,168 @@
             case 1 :
                 // InternalBase.g:1:10: T__16
                 {
-                mT__16(); 
+                mT__16();
 
                 }
                 break;
             case 2 :
                 // InternalBase.g:1:16: T__17
                 {
-                mT__17(); 
+                mT__17();
 
                 }
                 break;
             case 3 :
                 // InternalBase.g:1:22: T__18
                 {
-                mT__18(); 
+                mT__18();
 
                 }
                 break;
             case 4 :
                 // InternalBase.g:1:28: T__19
                 {
-                mT__19(); 
+                mT__19();
 
                 }
                 break;
             case 5 :
                 // InternalBase.g:1:34: T__20
                 {
-                mT__20(); 
+                mT__20();
 
                 }
                 break;
             case 6 :
                 // InternalBase.g:1:40: T__21
                 {
-                mT__21(); 
+                mT__21();
 
                 }
                 break;
             case 7 :
                 // InternalBase.g:1:46: T__22
                 {
-                mT__22(); 
+                mT__22();
 
                 }
                 break;
             case 8 :
                 // InternalBase.g:1:52: T__23
                 {
-                mT__23(); 
+                mT__23();
 
                 }
                 break;
             case 9 :
                 // InternalBase.g:1:58: T__24
                 {
-                mT__24(); 
+                mT__24();
 
                 }
                 break;
             case 10 :
                 // InternalBase.g:1:64: T__25
                 {
-                mT__25(); 
+                mT__25();
 
                 }
                 break;
             case 11 :
                 // InternalBase.g:1:70: T__26
                 {
-                mT__26(); 
+                mT__26();
 
                 }
                 break;
             case 12 :
                 // InternalBase.g:1:76: T__27
                 {
-                mT__27(); 
+                mT__27();
 
                 }
                 break;
             case 13 :
                 // InternalBase.g:1:82: T__28
                 {
-                mT__28(); 
+                mT__28();
 
                 }
                 break;
             case 14 :
                 // InternalBase.g:1:88: T__29
                 {
-                mT__29(); 
+                mT__29();
 
                 }
                 break;
             case 15 :
                 // InternalBase.g:1:94: RULE_DOUBLE_QUOTED_STRING
                 {
-                mRULE_DOUBLE_QUOTED_STRING(); 
+                mRULE_DOUBLE_QUOTED_STRING();
 
                 }
                 break;
             case 16 :
                 // InternalBase.g:1:120: RULE_SINGLE_QUOTED_STRING
                 {
-                mRULE_SINGLE_QUOTED_STRING(); 
+                mRULE_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 17 :
                 // InternalBase.g:1:146: RULE_ML_SINGLE_QUOTED_STRING
                 {
-                mRULE_ML_SINGLE_QUOTED_STRING(); 
+                mRULE_ML_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 18 :
                 // InternalBase.g:1:175: RULE_SIMPLE_ID
                 {
-                mRULE_SIMPLE_ID(); 
+                mRULE_SIMPLE_ID();
 
                 }
                 break;
             case 19 :
                 // InternalBase.g:1:190: RULE_ESCAPED_ID
                 {
-                mRULE_ESCAPED_ID(); 
+                mRULE_ESCAPED_ID();
 
                 }
                 break;
             case 20 :
                 // InternalBase.g:1:206: RULE_INT
                 {
-                mRULE_INT(); 
+                mRULE_INT();
 
                 }
                 break;
             case 21 :
                 // InternalBase.g:1:215: RULE_ML_COMMENT
                 {
-                mRULE_ML_COMMENT(); 
+                mRULE_ML_COMMENT();
 
                 }
                 break;
             case 22 :
                 // InternalBase.g:1:231: RULE_SL_COMMENT
                 {
-                mRULE_SL_COMMENT(); 
+                mRULE_SL_COMMENT();
 
                 }
                 break;
             case 23 :
                 // InternalBase.g:1:247: RULE_WS
                 {
-                mRULE_WS(); 
+                mRULE_WS();
 
                 }
                 break;
             case 24 :
                 // InternalBase.g:1:255: RULE_ANY_OTHER
                 {
-                mRULE_ANY_OTHER(); 
+                mRULE_ANY_OTHER();
 
                 }
                 break;
@@ -1209,7 +1209,7 @@
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA11_15 = input.LA(1);
 
                         s = -1;
@@ -1219,7 +1219,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA11_0 = input.LA(1);
 
                         s = -1;
@@ -1269,7 +1269,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA11_14 = input.LA(1);
 
                         s = -1;
@@ -1286,6 +1286,6 @@
             throw nvae;
         }
     }
- 
+
 
 }
\ No newline at end of file
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 9ebeadc..6ded433 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
@@ -1,4 +1,4 @@
-package org.eclipse.ocl.xtext.base.ui.contentassist.antlr.internal; 
+package org.eclipse.ocl.xtext.base.ui.contentassist.antlr.internal;
 
 import java.io.InputStream;
 import org.eclipse.xtext.*;
@@ -72,26 +72,26 @@
         }
         public InternalBaseParser(TokenStream input, RecognizerSharedState state) {
             super(input, state);
-             
+
         }
-        
+
 
     public String[] getTokenNames() { return InternalBaseParser.tokenNames; }
     public String getGrammarFileName() { return "InternalBase.g"; }
 
 
-     
+
      	private BaseGrammarAccess grammarAccess;
-     	
+
         public void setGrammarAccess(BaseGrammarAccess grammarAccess) {
         	this.grammarAccess = grammarAccess;
         }
-        
+
         @Override
         protected Grammar getGrammar() {
         	return grammarAccess.getGrammar();
         }
-        
+
         @Override
         protected String getValueForTokenName(String tokenName) {
         	return tokenName;
@@ -108,7 +108,7 @@
             // InternalBase.g:70:1: ruleMultiplicityBoundsCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSRule()); 
+               before(grammarAccess.getMultiplicityBoundsCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityBoundsCS();
@@ -116,7 +116,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSRule()); 
+               after(grammarAccess.getMultiplicityBoundsCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -139,7 +139,7 @@
     public final void ruleMultiplicityBoundsCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:81:2: ( ( ( rule__MultiplicityBoundsCS__Group__0 ) ) )
             // InternalBase.g:82:1: ( ( rule__MultiplicityBoundsCS__Group__0 ) )
@@ -148,7 +148,7 @@
             // InternalBase.g:83:1: ( rule__MultiplicityBoundsCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup());
             }
             // InternalBase.g:84:1: ( rule__MultiplicityBoundsCS__Group__0 )
             // InternalBase.g:84:2: rule__MultiplicityBoundsCS__Group__0
@@ -162,7 +162,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup());
             }
 
             }
@@ -193,7 +193,7 @@
             // InternalBase.g:98:1: ruleMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSRule()); 
+               before(grammarAccess.getMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityCS();
@@ -201,7 +201,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSRule()); 
+               after(grammarAccess.getMultiplicityCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -224,7 +224,7 @@
     public final void ruleMultiplicityCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:109:2: ( ( ( rule__MultiplicityCS__Group__0 ) ) )
             // InternalBase.g:110:1: ( ( rule__MultiplicityCS__Group__0 ) )
@@ -233,7 +233,7 @@
             // InternalBase.g:111:1: ( rule__MultiplicityCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getGroup()); 
+               before(grammarAccess.getMultiplicityCSAccess().getGroup());
             }
             // InternalBase.g:112:1: ( rule__MultiplicityCS__Group__0 )
             // InternalBase.g:112:2: rule__MultiplicityCS__Group__0
@@ -247,7 +247,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getGroup()); 
+               after(grammarAccess.getMultiplicityCSAccess().getGroup());
             }
 
             }
@@ -278,7 +278,7 @@
             // InternalBase.g:126:1: ruleMultiplicityStringCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSRule()); 
+               before(grammarAccess.getMultiplicityStringCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityStringCS();
@@ -286,7 +286,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSRule()); 
+               after(grammarAccess.getMultiplicityStringCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -309,7 +309,7 @@
     public final void ruleMultiplicityStringCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:137:2: ( ( ( rule__MultiplicityStringCS__StringBoundsAssignment ) ) )
             // InternalBase.g:138:1: ( ( rule__MultiplicityStringCS__StringBoundsAssignment ) )
@@ -318,7 +318,7 @@
             // InternalBase.g:139:1: ( rule__MultiplicityStringCS__StringBoundsAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment()); 
+               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment());
             }
             // InternalBase.g:140:1: ( rule__MultiplicityStringCS__StringBoundsAssignment )
             // InternalBase.g:140:2: rule__MultiplicityStringCS__StringBoundsAssignment
@@ -332,7 +332,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment()); 
+               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment());
             }
 
             }
@@ -363,7 +363,7 @@
             // InternalBase.g:154:1: rulePathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSRule()); 
+               before(grammarAccess.getPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePathNameCS();
@@ -371,7 +371,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSRule()); 
+               after(grammarAccess.getPathNameCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -394,7 +394,7 @@
     public final void rulePathNameCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:165:2: ( ( ( rule__PathNameCS__Group__0 ) ) )
             // InternalBase.g:166:1: ( ( rule__PathNameCS__Group__0 ) )
@@ -403,7 +403,7 @@
             // InternalBase.g:167:1: ( rule__PathNameCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getGroup()); 
+               before(grammarAccess.getPathNameCSAccess().getGroup());
             }
             // InternalBase.g:168:1: ( rule__PathNameCS__Group__0 )
             // InternalBase.g:168:2: rule__PathNameCS__Group__0
@@ -417,7 +417,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getGroup()); 
+               after(grammarAccess.getPathNameCSAccess().getGroup());
             }
 
             }
@@ -448,7 +448,7 @@
             // InternalBase.g:182:1: ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSRule()); 
+               before(grammarAccess.getFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleFirstPathElementCS();
@@ -456,7 +456,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSRule()); 
+               after(grammarAccess.getFirstPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -479,7 +479,7 @@
     public final void ruleFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:193:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
             // InternalBase.g:194:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
@@ -488,7 +488,7 @@
             // InternalBase.g:195:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
             // InternalBase.g:196:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             // InternalBase.g:196:2: rule__FirstPathElementCS__ReferredElementAssignment
@@ -502,7 +502,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
 
             }
@@ -533,7 +533,7 @@
             // InternalBase.g:210:1: ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSRule()); 
+               before(grammarAccess.getNextPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNextPathElementCS();
@@ -541,7 +541,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSRule()); 
+               after(grammarAccess.getNextPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -564,7 +564,7 @@
     public final void ruleNextPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:221:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
             // InternalBase.g:222:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
@@ -573,7 +573,7 @@
             // InternalBase.g:223:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
             // InternalBase.g:224:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             // InternalBase.g:224:2: rule__NextPathElementCS__ReferredElementAssignment
@@ -587,7 +587,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
 
             }
@@ -618,7 +618,7 @@
             // InternalBase.g:238:1: ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSRule()); 
+               before(grammarAccess.getTemplateBindingCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTemplateBindingCS();
@@ -626,7 +626,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSRule()); 
+               after(grammarAccess.getTemplateBindingCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -649,7 +649,7 @@
     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 ) )
@@ -658,7 +658,7 @@
             // InternalBase.g:251:1: ( rule__TemplateBindingCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getGroup()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
             // InternalBase.g:252:1: ( rule__TemplateBindingCS__Group__0 )
             // InternalBase.g:252:2: rule__TemplateBindingCS__Group__0
@@ -672,7 +672,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getGroup()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
 
             }
@@ -703,7 +703,7 @@
             // InternalBase.g:266:1: ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTemplateParameterSubstitutionCS();
@@ -711,7 +711,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -734,7 +734,7 @@
     public final void ruleTemplateParameterSubstitutionCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:277:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
             // InternalBase.g:278:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
@@ -743,7 +743,7 @@
             // InternalBase.g:279:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
             // InternalBase.g:280:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             // InternalBase.g:280:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
@@ -757,7 +757,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
 
             }
@@ -788,7 +788,7 @@
             // InternalBase.g:296:1: ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSRule()); 
+               before(grammarAccess.getTypeParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeParameterCS();
@@ -796,7 +796,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSRule()); 
+               after(grammarAccess.getTypeParameterCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -819,7 +819,7 @@
     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 ) )
@@ -828,7 +828,7 @@
             // InternalBase.g:309:1: ( rule__TypeParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
             // InternalBase.g:310:1: ( rule__TypeParameterCS__Group__0 )
             // InternalBase.g:310:2: rule__TypeParameterCS__Group__0
@@ -842,7 +842,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
 
             }
@@ -873,7 +873,7 @@
             // InternalBase.g:324:1: ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeRefCSRule()); 
+               before(grammarAccess.getTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeRefCS();
@@ -881,7 +881,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeRefCSRule()); 
+               after(grammarAccess.getTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -904,7 +904,7 @@
     public final void ruleTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:335:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
             // InternalBase.g:336:1: ( ( rule__TypeRefCS__Alternatives ) )
@@ -913,7 +913,7 @@
             // InternalBase.g:337:1: ( rule__TypeRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeRefCSAccess().getAlternatives()); 
+               before(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
             // InternalBase.g:338:1: ( rule__TypeRefCS__Alternatives )
             // InternalBase.g:338:2: rule__TypeRefCS__Alternatives
@@ -927,7 +927,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeRefCSAccess().getAlternatives()); 
+               after(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
 
             }
@@ -958,7 +958,7 @@
             // InternalBase.g:352:1: ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedRefCSRule()); 
+               before(grammarAccess.getTypedRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypedRefCS();
@@ -966,7 +966,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedRefCSRule()); 
+               after(grammarAccess.getTypedRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -989,7 +989,7 @@
     public final void ruleTypedRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:363:2: ( ( ruleTypedTypeRefCS ) )
             // InternalBase.g:364:1: ( ruleTypedTypeRefCS )
@@ -998,7 +998,7 @@
             // InternalBase.g:365:1: ruleTypedTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall()); 
+               before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedTypeRefCS();
@@ -1006,7 +1006,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall()); 
+               after(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall());
             }
 
             }
@@ -1037,7 +1037,7 @@
             // InternalBase.g:380:1: ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSRule()); 
+               before(grammarAccess.getTypedTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypedTypeRefCS();
@@ -1045,7 +1045,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSRule()); 
+               after(grammarAccess.getTypedTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1068,7 +1068,7 @@
     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 ) )
@@ -1077,7 +1077,7 @@
             // InternalBase.g:393:1: ( rule__TypedTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getGroup()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getGroup());
             }
             // InternalBase.g:394:1: ( rule__TypedTypeRefCS__Group__0 )
             // InternalBase.g:394:2: rule__TypedTypeRefCS__Group__0
@@ -1091,7 +1091,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getGroup()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getGroup());
             }
 
             }
@@ -1122,7 +1122,7 @@
             // InternalBase.g:408:1: ruleUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnreservedNameRule()); 
+               before(grammarAccess.getUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnreservedName();
@@ -1130,7 +1130,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnreservedNameRule()); 
+               after(grammarAccess.getUnreservedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1153,7 +1153,7 @@
     public final void ruleUnreservedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:419:2: ( ( ruleUnrestrictedName ) )
             // InternalBase.g:420:1: ( ruleUnrestrictedName )
@@ -1162,7 +1162,7 @@
             // InternalBase.g:421:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnreservedNameAccess().getUnrestrictedNameParserRuleCall()); 
+               before(grammarAccess.getUnreservedNameAccess().getUnrestrictedNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -1170,7 +1170,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnreservedNameAccess().getUnrestrictedNameParserRuleCall()); 
+               after(grammarAccess.getUnreservedNameAccess().getUnrestrictedNameParserRuleCall());
             }
 
             }
@@ -1201,7 +1201,7 @@
             // InternalBase.g:436:1: ruleUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnrestrictedNameRule()); 
+               before(grammarAccess.getUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnrestrictedName();
@@ -1209,7 +1209,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnrestrictedNameRule()); 
+               after(grammarAccess.getUnrestrictedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1232,7 +1232,7 @@
     public final void ruleUnrestrictedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:447:2: ( ( ruleIdentifier ) )
             // InternalBase.g:448:1: ( ruleIdentifier )
@@ -1241,7 +1241,7 @@
             // InternalBase.g:449:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+               before(grammarAccess.getUnrestrictedNameAccess().getIdentifierParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -1249,7 +1249,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+               after(grammarAccess.getUnrestrictedNameAccess().getIdentifierParserRuleCall());
             }
 
             }
@@ -1280,7 +1280,7 @@
             // InternalBase.g:464:1: ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSRule()); 
+               before(grammarAccess.getWildcardTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleWildcardTypeRefCS();
@@ -1288,7 +1288,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSRule()); 
+               after(grammarAccess.getWildcardTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1311,7 +1311,7 @@
     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 ) )
@@ -1320,7 +1320,7 @@
             // InternalBase.g:477:1: ( rule__WildcardTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
             // InternalBase.g:478:1: ( rule__WildcardTypeRefCS__Group__0 )
             // InternalBase.g:478:2: rule__WildcardTypeRefCS__Group__0
@@ -1334,7 +1334,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
 
             }
@@ -1365,7 +1365,7 @@
             // InternalBase.g:492:1: ruleID EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIDRule()); 
+               before(grammarAccess.getIDRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleID();
@@ -1373,7 +1373,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIDRule()); 
+               after(grammarAccess.getIDRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1396,7 +1396,7 @@
     public final void ruleID() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:503:2: ( ( ( rule__ID__Alternatives ) ) )
             // InternalBase.g:504:1: ( ( rule__ID__Alternatives ) )
@@ -1405,7 +1405,7 @@
             // InternalBase.g:505:1: ( rule__ID__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIDAccess().getAlternatives()); 
+               before(grammarAccess.getIDAccess().getAlternatives());
             }
             // InternalBase.g:506:1: ( rule__ID__Alternatives )
             // InternalBase.g:506:2: rule__ID__Alternatives
@@ -1419,7 +1419,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIDAccess().getAlternatives()); 
+               after(grammarAccess.getIDAccess().getAlternatives());
             }
 
             }
@@ -1450,7 +1450,7 @@
             // InternalBase.g:520:1: ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIdentifierRule()); 
+               before(grammarAccess.getIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleIdentifier();
@@ -1458,7 +1458,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIdentifierRule()); 
+               after(grammarAccess.getIdentifierRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1481,7 +1481,7 @@
     public final void ruleIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:531:2: ( ( ruleID ) )
             // InternalBase.g:532:1: ( ruleID )
@@ -1490,7 +1490,7 @@
             // InternalBase.g:533:1: ruleID
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
+               before(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleID();
@@ -1498,7 +1498,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
+               after(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
             }
 
             }
@@ -1529,7 +1529,7 @@
             // InternalBase.g:548:1: ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLOWERRule()); 
+               before(grammarAccess.getLOWERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLOWER();
@@ -1537,7 +1537,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLOWERRule()); 
+               after(grammarAccess.getLOWERRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1560,7 +1560,7 @@
     public final void ruleLOWER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:559:2: ( ( RULE_INT ) )
             // InternalBase.g:560:1: ( RULE_INT )
@@ -1569,11 +1569,11 @@
             // InternalBase.g:561:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+               before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+               after(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
             }
 
             }
@@ -1604,7 +1604,7 @@
             // InternalBase.g:580:1: ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUPPERRule()); 
+               before(grammarAccess.getUPPERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUPPER();
@@ -1612,7 +1612,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUPPERRule()); 
+               after(grammarAccess.getUPPERRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1635,7 +1635,7 @@
     public final void ruleUPPER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:591:2: ( ( ( rule__UPPER__Alternatives ) ) )
             // InternalBase.g:592:1: ( ( rule__UPPER__Alternatives ) )
@@ -1644,7 +1644,7 @@
             // InternalBase.g:593:1: ( rule__UPPER__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUPPERAccess().getAlternatives()); 
+               before(grammarAccess.getUPPERAccess().getAlternatives());
             }
             // InternalBase.g:594:1: ( rule__UPPER__Alternatives )
             // InternalBase.g:594:2: rule__UPPER__Alternatives
@@ -1658,7 +1658,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUPPERAccess().getAlternatives()); 
+               after(grammarAccess.getUPPERAccess().getAlternatives());
             }
 
             }
@@ -1686,7 +1686,7 @@
     public final void rule__MultiplicityCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:612:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
             int alt1=2;
@@ -1713,7 +1713,7 @@
                     // InternalBase.g:614:1: ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMultiplicityBoundsCS();
@@ -1721,7 +1721,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
                     }
 
                     }
@@ -1736,7 +1736,7 @@
                     // InternalBase.g:620:1: ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMultiplicityStringCS();
@@ -1744,7 +1744,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
                     }
 
                     }
@@ -1774,7 +1774,7 @@
     public final void rule__MultiplicityCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:634:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
             int alt2=2;
@@ -1801,11 +1801,11 @@
                     // InternalBase.g:636:1: '|?'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
                     }
                     match(input,16,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
                     }
 
                     }
@@ -1820,7 +1820,7 @@
                     // InternalBase.g:644:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
                     // InternalBase.g:645:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     // InternalBase.g:645:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
@@ -1834,7 +1834,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
 
                     }
@@ -1864,7 +1864,7 @@
     public final void rule__MultiplicityStringCS__StringBoundsAlternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:658:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
             int alt3=3;
@@ -1900,11 +1900,11 @@
                     // InternalBase.g:660:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
                     }
                     match(input,17,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
                     }
 
                     }
@@ -1919,11 +1919,11 @@
                     // InternalBase.g:668:1: '+'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
                     }
                     match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
                     }
 
                     }
@@ -1938,11 +1938,11 @@
                     // InternalBase.g:676:1: '?'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
                     }
                     match(input,19,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
                     }
 
                     }
@@ -1972,7 +1972,7 @@
     public final void rule__TypeRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:692:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
             int alt4=2;
@@ -1999,7 +1999,7 @@
                     // InternalBase.g:694:1: ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+                       before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypedRefCS();
@@ -2007,7 +2007,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+                       after(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
                     }
 
                     }
@@ -2022,7 +2022,7 @@
                     // InternalBase.g:700:1: ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+                       before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleWildcardTypeRefCS();
@@ -2030,7 +2030,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+                       after(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
                     }
 
                     }
@@ -2060,7 +2060,7 @@
     public final void rule__ID__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:714:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
             int alt5=2;
@@ -2087,11 +2087,11 @@
                     // InternalBase.g:716:1: RULE_SIMPLE_ID
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+                       before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
                     }
                     match(input,RULE_SIMPLE_ID,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+                       after(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
                     }
 
                     }
@@ -2106,11 +2106,11 @@
                     // InternalBase.g:722:1: RULE_ESCAPED_ID
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+                       before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
                     }
                     match(input,RULE_ESCAPED_ID,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+                       after(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
                     }
 
                     }
@@ -2140,7 +2140,7 @@
     public final void rule__UPPER__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:736:1: ( ( RULE_INT ) | ( '*' ) )
             int alt6=2;
@@ -2167,11 +2167,11 @@
                     // InternalBase.g:738:1: RULE_INT
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+                       before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
                     }
                     match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+                       after(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
                     }
 
                     }
@@ -2186,11 +2186,11 @@
                     // InternalBase.g:744:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+                       before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
                     }
                     match(input,17,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+                       after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
                     }
 
                     }
@@ -2220,7 +2220,7 @@
     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
@@ -2258,7 +2258,7 @@
     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 ) )
@@ -2267,7 +2267,7 @@
             // InternalBase.g:776:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
             // InternalBase.g:777:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             // InternalBase.g:777:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
@@ -2281,7 +2281,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
 
             }
@@ -2309,7 +2309,7 @@
     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
@@ -2342,7 +2342,7 @@
     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 )? )
@@ -2351,7 +2351,7 @@
             // InternalBase.g:804:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
             // InternalBase.g:805:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             int alt7=2;
@@ -2376,7 +2376,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
 
             }
@@ -2404,7 +2404,7 @@
     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
@@ -2442,7 +2442,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:835:1: ( ( '..' ) )
             // InternalBase.g:836:1: ( '..' )
@@ -2451,11 +2451,11 @@
             // InternalBase.g:837:1: '..'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
             }
             match(input,20,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
             }
 
             }
@@ -2483,7 +2483,7 @@
     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
@@ -2516,7 +2516,7 @@
     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 ) )
@@ -2525,7 +2525,7 @@
             // InternalBase.g:867:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
             // InternalBase.g:868:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             // InternalBase.g:868:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
@@ -2539,7 +2539,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
 
             }
@@ -2567,7 +2567,7 @@
     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
@@ -2605,7 +2605,7 @@
     public final void rule__MultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:898:1: ( ( '[' ) )
             // InternalBase.g:899:1: ( '[' )
@@ -2614,11 +2614,11 @@
             // InternalBase.g:900:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
             }
             match(input,21,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
             }
 
             }
@@ -2646,7 +2646,7 @@
     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
@@ -2684,7 +2684,7 @@
     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 ) )
@@ -2693,7 +2693,7 @@
             // InternalBase.g:931:1: ( rule__MultiplicityCS__Alternatives_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1()); 
+               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
             // InternalBase.g:932:1: ( rule__MultiplicityCS__Alternatives_1 )
             // InternalBase.g:932:2: rule__MultiplicityCS__Alternatives_1
@@ -2707,7 +2707,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_1()); 
+               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
 
             }
@@ -2735,7 +2735,7 @@
     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
@@ -2773,7 +2773,7 @@
     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 )? )
@@ -2782,7 +2782,7 @@
             // InternalBase.g:960:1: ( rule__MultiplicityCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
             // InternalBase.g:961:1: ( rule__MultiplicityCS__Alternatives_2 )?
             int alt8=2;
@@ -2807,7 +2807,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
 
             }
@@ -2835,7 +2835,7 @@
     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
@@ -2868,7 +2868,7 @@
     public final void rule__MultiplicityCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:986:1: ( ( ']' ) )
             // InternalBase.g:987:1: ( ']' )
@@ -2877,11 +2877,11 @@
             // InternalBase.g:988:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); 
+               before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
             }
             match(input,22,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); 
+               after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
             }
 
             }
@@ -2909,7 +2909,7 @@
     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
@@ -2947,7 +2947,7 @@
     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 ) )
@@ -2956,7 +2956,7 @@
             // InternalBase.g:1027:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
             // InternalBase.g:1028:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             // InternalBase.g:1028:2: rule__PathNameCS__OwnedPathElementsAssignment_0
@@ -2970,7 +2970,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
 
             }
@@ -2998,7 +2998,7 @@
     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
@@ -3031,7 +3031,7 @@
     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 )* )
@@ -3040,7 +3040,7 @@
             // InternalBase.g:1055:1: ( rule__PathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getGroup_1()); 
+               before(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
             // InternalBase.g:1056:1: ( rule__PathNameCS__Group_1__0 )*
             loop9:
@@ -3072,7 +3072,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getGroup_1()); 
+               after(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
 
             }
@@ -3100,7 +3100,7 @@
     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
@@ -3138,7 +3138,7 @@
     public final void rule__PathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1086:1: ( ( '::' ) )
             // InternalBase.g:1087:1: ( '::' )
@@ -3147,11 +3147,11 @@
             // InternalBase.g:1088:1: '::'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); 
+               before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
             }
             match(input,23,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); 
+               after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
             }
 
             }
@@ -3179,7 +3179,7 @@
     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
@@ -3212,7 +3212,7 @@
     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 ) )
@@ -3221,7 +3221,7 @@
             // InternalBase.g:1118:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
             // InternalBase.g:1119:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             // InternalBase.g:1119:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
@@ -3235,7 +3235,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
 
             }
@@ -3263,7 +3263,7 @@
     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
@@ -3301,7 +3301,7 @@
     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 ) )
@@ -3310,7 +3310,7 @@
             // InternalBase.g:1151:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
             // InternalBase.g:1152:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             // InternalBase.g:1152:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
@@ -3324,7 +3324,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
 
             }
@@ -3352,7 +3352,7 @@
     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
@@ -3390,7 +3390,7 @@
     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 )* )
@@ -3399,7 +3399,7 @@
             // InternalBase.g:1180:1: ( rule__TemplateBindingCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getGroup_1()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
             // InternalBase.g:1181:1: ( rule__TemplateBindingCS__Group_1__0 )*
             loop10:
@@ -3431,7 +3431,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getGroup_1()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
 
             }
@@ -3459,7 +3459,7 @@
     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
@@ -3492,7 +3492,7 @@
     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 )? )
@@ -3501,7 +3501,7 @@
             // InternalBase.g:1208:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
             // InternalBase.g:1209:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             int alt11=2;
@@ -3526,7 +3526,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
 
             }
@@ -3554,7 +3554,7 @@
     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
@@ -3592,7 +3592,7 @@
     public final void rule__TemplateBindingCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1241:1: ( ( ',' ) )
             // InternalBase.g:1242:1: ( ',' )
@@ -3601,11 +3601,11 @@
             // InternalBase.g:1243:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
             }
             match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
             }
 
             }
@@ -3633,7 +3633,7 @@
     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
@@ -3666,7 +3666,7 @@
     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 ) )
@@ -3675,7 +3675,7 @@
             // InternalBase.g:1273:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
             // InternalBase.g:1274:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             // InternalBase.g:1274:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
@@ -3689,7 +3689,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
 
             }
@@ -3717,7 +3717,7 @@
     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
@@ -3755,7 +3755,7 @@
     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 ) )
@@ -3764,7 +3764,7 @@
             // InternalBase.g:1308:1: ( rule__TypeParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
             // InternalBase.g:1309:1: ( rule__TypeParameterCS__NameAssignment_0 )
             // InternalBase.g:1309:2: rule__TypeParameterCS__NameAssignment_0
@@ -3778,7 +3778,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
 
             }
@@ -3806,7 +3806,7 @@
     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
@@ -3839,7 +3839,7 @@
     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 )? )
@@ -3848,7 +3848,7 @@
             // InternalBase.g:1336:1: ( rule__TypeParameterCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
             // InternalBase.g:1337:1: ( rule__TypeParameterCS__Group_1__0 )?
             int alt12=2;
@@ -3873,7 +3873,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
 
             }
@@ -3901,7 +3901,7 @@
     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
@@ -3939,7 +3939,7 @@
     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' )
@@ -3948,11 +3948,11 @@
             // InternalBase.g:1369:1: 'extends'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
             }
             match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
             }
 
             }
@@ -3980,7 +3980,7 @@
     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
@@ -4018,7 +4018,7 @@
     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 ) )
@@ -4027,7 +4027,7 @@
             // InternalBase.g:1400:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
             // InternalBase.g:1401:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             // InternalBase.g:1401:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
@@ -4041,7 +4041,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
 
             }
@@ -4069,7 +4069,7 @@
     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
@@ -4102,7 +4102,7 @@
     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 )* )
@@ -4111,7 +4111,7 @@
             // InternalBase.g:1428:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
             // InternalBase.g:1429:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             loop13:
@@ -4143,7 +4143,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup_1_2()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
 
             }
@@ -4171,7 +4171,7 @@
     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
@@ -4209,7 +4209,7 @@
     public final void rule__TypeParameterCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1461:1: ( ( '&&' ) )
             // InternalBase.g:1462:1: ( '&&' )
@@ -4218,11 +4218,11 @@
             // InternalBase.g:1463:1: '&&'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
             }
             match(input,26,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
             }
 
             }
@@ -4250,7 +4250,7 @@
     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
@@ -4283,7 +4283,7 @@
     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 ) )
@@ -4292,7 +4292,7 @@
             // InternalBase.g:1493:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1()); 
+               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
@@ -4306,7 +4306,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
 
             }
@@ -4334,7 +4334,7 @@
     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
@@ -4372,7 +4372,7 @@
     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 ) )
@@ -4381,7 +4381,7 @@
             // InternalBase.g:1526:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0());
             }
             // InternalBase.g:1527:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
             // InternalBase.g:1527:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0
@@ -4395,7 +4395,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0());
             }
 
             }
@@ -4423,7 +4423,7 @@
     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
@@ -4456,7 +4456,7 @@
     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 )? )
@@ -4465,7 +4465,7 @@
             // InternalBase.g:1554:1: ( rule__TypedTypeRefCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1());
             }
             // InternalBase.g:1555:1: ( rule__TypedTypeRefCS__Group_1__0 )?
             int alt14=2;
@@ -4490,7 +4490,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1());
             }
 
             }
@@ -4518,7 +4518,7 @@
     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
@@ -4556,7 +4556,7 @@
     public final void rule__TypedTypeRefCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1585:1: ( ( '(' ) )
             // InternalBase.g:1586:1: ( '(' )
@@ -4565,11 +4565,11 @@
             // InternalBase.g:1587:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,27,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -4597,7 +4597,7 @@
     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
@@ -4635,7 +4635,7 @@
     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 ) )
@@ -4644,7 +4644,7 @@
             // InternalBase.g:1618:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1());
             }
             // InternalBase.g:1619:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
             // InternalBase.g:1619:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1
@@ -4658,7 +4658,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1());
             }
 
             }
@@ -4686,7 +4686,7 @@
     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
@@ -4719,7 +4719,7 @@
     public final void rule__TypedTypeRefCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1644:1: ( ( ')' ) )
             // InternalBase.g:1645:1: ( ')' )
@@ -4728,11 +4728,11 @@
             // InternalBase.g:1646:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
             }
             match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
             }
 
             }
@@ -4760,7 +4760,7 @@
     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
@@ -4798,7 +4798,7 @@
     public final void rule__WildcardTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1681:1: ( ( () ) )
             // InternalBase.g:1682:1: ( () )
@@ -4807,15 +4807,15 @@
             // InternalBase.g:1683:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
             // InternalBase.g:1684:1: ()
-            // InternalBase.g:1686:1: 
+            // InternalBase.g:1686:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
 
             }
@@ -4839,7 +4839,7 @@
     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
@@ -4877,7 +4877,7 @@
     public final void rule__WildcardTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1712:1: ( ( '?' ) )
             // InternalBase.g:1713:1: ( '?' )
@@ -4886,11 +4886,11 @@
             // InternalBase.g:1714:1: '?'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
             }
             match(input,19,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
             }
 
             }
@@ -4918,7 +4918,7 @@
     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
@@ -4951,7 +4951,7 @@
     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 )? )
@@ -4960,7 +4960,7 @@
             // InternalBase.g:1744:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
             // InternalBase.g:1745:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             int alt15=2;
@@ -4985,7 +4985,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
 
             }
@@ -5013,7 +5013,7 @@
     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
@@ -5051,7 +5051,7 @@
     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' )
@@ -5060,11 +5060,11 @@
             // InternalBase.g:1779:1: 'extends'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
             }
             match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
             }
 
             }
@@ -5092,7 +5092,7 @@
     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
@@ -5125,7 +5125,7 @@
     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 ) )
@@ -5134,7 +5134,7 @@
             // InternalBase.g:1809:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
             // InternalBase.g:1810:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             // InternalBase.g:1810:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
@@ -5148,7 +5148,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
 
             }
@@ -5176,7 +5176,7 @@
     public final void rule__MultiplicityBoundsCS__LowerBoundAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1829:1: ( ( ruleLOWER ) )
             // InternalBase.g:1830:1: ( ruleLOWER )
@@ -5185,7 +5185,7 @@
             // InternalBase.g:1831:1: ruleLOWER
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLOWER();
@@ -5193,7 +5193,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
             }
 
             }
@@ -5221,7 +5221,7 @@
     public final void rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1844:1: ( ( ruleUPPER ) )
             // InternalBase.g:1845:1: ( ruleUPPER )
@@ -5230,7 +5230,7 @@
             // InternalBase.g:1846:1: ruleUPPER
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUPPER();
@@ -5238,7 +5238,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
             }
 
             }
@@ -5266,7 +5266,7 @@
     public final void rule__MultiplicityCS__IsNullFreeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1859:1: ( ( ( '|1' ) ) )
             // InternalBase.g:1860:1: ( ( '|1' ) )
@@ -5275,23 +5275,23 @@
             // InternalBase.g:1861:1: ( '|1' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
             // InternalBase.g:1862:1: ( '|1' )
             // InternalBase.g:1863:1: '|1'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
             match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
 
             }
@@ -5319,7 +5319,7 @@
     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 ) )
@@ -5328,7 +5328,7 @@
             // InternalBase.g:1884:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0()); 
+               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
             // InternalBase.g:1885:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             // InternalBase.g:1885:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
@@ -5342,7 +5342,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0()); 
+               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
 
             }
@@ -5370,7 +5370,7 @@
     public final void rule__PathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1898:1: ( ( ruleFirstPathElementCS ) )
             // InternalBase.g:1899:1: ( ruleFirstPathElementCS )
@@ -5379,7 +5379,7 @@
             // InternalBase.g:1900:1: ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleFirstPathElementCS();
@@ -5387,7 +5387,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
             }
 
             }
@@ -5415,7 +5415,7 @@
     public final void rule__PathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1913:1: ( ( ruleNextPathElementCS ) )
             // InternalBase.g:1914:1: ( ruleNextPathElementCS )
@@ -5424,7 +5424,7 @@
             // InternalBase.g:1915:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNextPathElementCS();
@@ -5432,7 +5432,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
 
             }
@@ -5460,7 +5460,7 @@
     public final void rule__FirstPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1928:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalBase.g:1929:1: ( ( ruleUnrestrictedName ) )
@@ -5469,13 +5469,13 @@
             // InternalBase.g:1930:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
             // InternalBase.g:1931:1: ( ruleUnrestrictedName )
             // InternalBase.g:1932:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -5483,13 +5483,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
 
             }
@@ -5517,7 +5517,7 @@
     public final void rule__NextPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1947:1: ( ( ( ruleUnreservedName ) ) )
             // InternalBase.g:1948:1: ( ( ruleUnreservedName ) )
@@ -5526,13 +5526,13 @@
             // InternalBase.g:1949:1: ( ruleUnreservedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
             // InternalBase.g:1950:1: ( ruleUnreservedName )
             // InternalBase.g:1951:1: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnreservedName();
@@ -5540,13 +5540,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
 
             }
@@ -5574,7 +5574,7 @@
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1966:1: ( ( ruleTemplateParameterSubstitutionCS ) )
             // InternalBase.g:1967:1: ( ruleTemplateParameterSubstitutionCS )
@@ -5583,7 +5583,7 @@
             // InternalBase.g:1968:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateParameterSubstitutionCS();
@@ -5591,7 +5591,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
             }
 
             }
@@ -5619,7 +5619,7 @@
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1981:1: ( ( ruleTemplateParameterSubstitutionCS ) )
             // InternalBase.g:1982:1: ( ruleTemplateParameterSubstitutionCS )
@@ -5628,7 +5628,7 @@
             // InternalBase.g:1983:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateParameterSubstitutionCS();
@@ -5636,7 +5636,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
             }
 
             }
@@ -5664,7 +5664,7 @@
     public final void rule__TemplateBindingCS__OwnedMultiplicityAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:1996:1: ( ( ruleMultiplicityCS ) )
             // InternalBase.g:1997:1: ( ruleMultiplicityCS )
@@ -5673,7 +5673,7 @@
             // InternalBase.g:1998:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -5681,7 +5681,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
             }
 
             }
@@ -5709,7 +5709,7 @@
     public final void rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:2011:1: ( ( ruleTypeRefCS ) )
             // InternalBase.g:2012:1: ( ruleTypeRefCS )
@@ -5718,7 +5718,7 @@
             // InternalBase.g:2013:1: ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeRefCS();
@@ -5726,7 +5726,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
             }
 
             }
@@ -5754,7 +5754,7 @@
     public final void rule__TypeParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:2028:1: ( ( ruleUnrestrictedName ) )
             // InternalBase.g:2029:1: ( ruleUnrestrictedName )
@@ -5763,7 +5763,7 @@
             // InternalBase.g:2030:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -5771,7 +5771,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -5799,7 +5799,7 @@
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:2043:1: ( ( ruleTypedRefCS ) )
             // InternalBase.g:2044:1: ( ruleTypedRefCS )
@@ -5808,7 +5808,7 @@
             // InternalBase.g:2045:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -5816,7 +5816,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
             }
 
             }
@@ -5844,7 +5844,7 @@
     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 )
@@ -5853,7 +5853,7 @@
             // InternalBase.g:2060:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -5861,7 +5861,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
             }
 
             }
@@ -5889,7 +5889,7 @@
     public final void rule__TypedTypeRefCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:2073:1: ( ( rulePathNameCS ) )
             // InternalBase.g:2074:1: ( rulePathNameCS )
@@ -5898,7 +5898,7 @@
             // InternalBase.g:2075:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -5906,7 +5906,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
 
             }
@@ -5934,7 +5934,7 @@
     public final void rule__TypedTypeRefCS__OwnedBindingAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:2088:1: ( ( ruleTemplateBindingCS ) )
             // InternalBase.g:2089:1: ( ruleTemplateBindingCS )
@@ -5943,7 +5943,7 @@
             // InternalBase.g:2090:1: ruleTemplateBindingCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateBindingCS();
@@ -5951,7 +5951,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
             }
 
             }
@@ -5979,7 +5979,7 @@
     public final void rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalBase.g:2103:1: ( ( ruleTypedRefCS ) )
             // InternalBase.g:2104:1: ( ruleTypedRefCS )
@@ -5988,7 +5988,7 @@
             // InternalBase.g:2105:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -5996,7 +5996,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
             }
 
             }
@@ -6021,9 +6021,9 @@
     // Delegated rules
 
 
- 
 
-    
+
+
     private static class FollowSets000 {
         public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
         public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
diff --git a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/internal/BaseActivator.java b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/internal/BaseActivator.java
index 3bb19a1..511ade6 100644
--- a/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/internal/BaseActivator.java
+++ b/plugins/org.eclipse.ocl.xtext.base.ui/src-gen/org/eclipse/ocl/xtext/base/ui/internal/BaseActivator.java
@@ -26,35 +26,35 @@
 
 /**
  * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
+ * introduced subclass.
  */
 public class BaseActivator extends AbstractUIPlugin {
-	
+
 	public static final String ORG_ECLIPSE_OCL_XTEXT_BASE_BASE = "org.eclipse.ocl.xtext.base.Base";
-	
+
 	private static final Logger logger = Logger.getLogger(BaseActivator.class);
-	
+
 	private static BaseActivator INSTANCE;
-	
+
 	private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1));
-	
+
 	@Override
 	public void start(BundleContext context) throws Exception {
 		super.start(context);
 		INSTANCE = this;
 	}
-	
+
 	@Override
 	public void stop(BundleContext context) throws Exception {
 		injectors.clear();
 		INSTANCE = null;
 		super.stop(context);
 	}
-	
+
 	public static BaseActivator getInstance() {
 		return INSTANCE;
 	}
-	
+
 	public Injector getInjector(String language) {
 		synchronized (injectors) {
 			Injector injector = injectors.get(language);
@@ -64,7 +64,7 @@
 			return injector;
 		}
 	}
-	
+
 	protected Injector createInjector(String language) {
 		try {
 			Module runtimeModule = getRuntimeModule(language);
@@ -83,20 +83,20 @@
 		if (ORG_ECLIPSE_OCL_XTEXT_BASE_BASE.equals(grammar)) {
 			return new org.eclipse.ocl.xtext.base.BaseRuntimeModule();
 		}
-		
+
 		throw new IllegalArgumentException(grammar);
 	}
-	
+
 	protected Module getUiModule(String grammar) {
 		if (ORG_ECLIPSE_OCL_XTEXT_BASE_BASE.equals(grammar)) {
 			return new org.eclipse.ocl.xtext.base.ui.BaseUiModule(this);
 		}
-		
+
 		throw new IllegalArgumentException(grammar);
 	}
-	
+
 	protected Module getSharedStateModule() {
 		return new SharedStateModule();
 	}
-	
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractBaseCSVisitor.java b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractBaseCSVisitor.java
index 2d7d059..6ceb3ff 100644
--- a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractBaseCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractBaseCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -32,7 +32,7 @@
 
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractBaseCSVisitor(C context) {
@@ -49,10 +49,10 @@
 			return null;
 		}
 	}
-	
+
 	/**
 	 * A null-safe visitation of the specified visitable.
-	 * 
+	 *
 	 * @param v a visitable, or <code>null</code>
 	 * @return <code>null</code> if the visitable is <code>null</code>;
 	 *	 otherwise, the result of visiting it
@@ -60,10 +60,10 @@
 	public @Nullable R safeVisit(org.eclipse.ocl.xtext.basecs.util.@Nullable VisitableCS v) {
 		return (v == null) ? null : v.accept(this);
 	}
-	
+
 	/**
 	 * Perform a visit to the specified visitable.
-	 * 
+	 *
 	 * @param v a visitable, or <code>null</code>
 	 * @return <code>null</code> if the visitable is <code>null</code>;
 	 *	 otherwise, the result of visiting it
diff --git a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractDelegatingBaseCSVisitor.java b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractDelegatingBaseCSVisitor.java
index fe787b3..ce44949 100644
--- a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractDelegatingBaseCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractDelegatingBaseCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -25,11 +25,11 @@
 	implements BaseCSVisitor<R>
 {
 	protected final @NonNull D delegate;
-	
+
 	protected AbstractDelegatingBaseCSVisitor(@NonNull D delegate, C context) {
 		super(context);
 	//	assert delegate != null : "cannot decorate a null visitor"; //$NON-NLS-1$
-		this.delegate = delegate;		
+		this.delegate = delegate;
 	//	delegate.setUndecoratedVisitor(this);
 	}
 
@@ -42,7 +42,7 @@
 
 	/**
 	 * Obtains the visitor that I decorate.
-	 * 
+	 *
 	 * @return my decorated visitor
 	 */
 	protected final @NonNull D getDelegate() {
diff --git a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractExtendingBaseCSVisitor.java b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractExtendingBaseCSVisitor.java
index 9b774cd..67fa3ce 100644
--- a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractExtendingBaseCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractExtendingBaseCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -30,12 +30,12 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractExtendingBaseCSVisitor(C context) {
 		super(context);
-	}	
+	}
 
 	@Override
 	public R visitAnnotationCS(org.eclipse.ocl.xtext.basecs.@NonNull AnnotationCS object) {
diff --git a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractNullBaseCSVisitor.java b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractNullBaseCSVisitor.java
index b0565d9..cb18d88 100644
--- a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractNullBaseCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/AbstractNullBaseCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -22,7 +22,7 @@
  * An AbstractNullBaseCSVisitor provides a default implementation for each
  * visitXxx method that returns null.
  *
- * @deprecated Explicit 'Null' functionality is obsolete with Java 8 @Nullable annotations.  
+ * @deprecated Explicit 'Null' functionality is obsolete with Java 8 @Nullable annotations.
  */
  @Deprecated
 public abstract class AbstractNullBaseCSVisitor<@Nullable R, C>
@@ -30,12 +30,12 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractNullBaseCSVisitor(C context) {
 		super(context);
-	}	
+	}
 
 	@Override
 	public R visitAnnotationCS(org.eclipse.ocl.xtext.basecs.@NonNull AnnotationCS object) {
diff --git a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/BaseCSVisitor.java b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/BaseCSVisitor.java
index 5906dfd..4c49793 100644
--- a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/BaseCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/BaseCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -19,6 +19,7 @@
 import org.eclipse.jdt.annotation.Nullable;
 
 /**
+ * @noimplement This interface is not intended to be implemented by clients.
  */
 public interface BaseCSVisitor<R>
 {
@@ -28,7 +29,7 @@
 	 * no such object can be found.
 	 *
 	 * @param adapter the adapter class to look up
-	 * @return an object of the given class, 
+	 * @return an object of the given class,
 	 *    or <code>null</code> if this object does not
 	 *    have an adapter for the given class
 	 */
diff --git a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/DecorableBaseCSVisitor.java b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/DecorableBaseCSVisitor.java
index 6fa3eef..b9df175 100644
--- a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/DecorableBaseCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/DecorableBaseCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/VisitableCS.java b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/VisitableCS.java
index 53ea2b4..7344659 100644
--- a/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/VisitableCS.java
+++ b/plugins/org.eclipse.ocl.xtext.base/emf-gen/org/eclipse/ocl/xtext/basecs/util/VisitableCS.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -36,6 +36,6 @@
 	 * @return the result of the visit.
 	 */
 	<R> R accept(org.eclipse.ocl.xtext.basecs.util.@NonNull BaseCSVisitor<R> visitor);
-	
+
 	EClass eClass();
 }
diff --git a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/AbstractBaseRuntimeModule.java b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/AbstractBaseRuntimeModule.java
index 99f7ea7..e4ad398 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/AbstractBaseRuntimeModule.java
+++ b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/AbstractBaseRuntimeModule.java
@@ -30,16 +30,16 @@
 		properties = tryBindProperties(binder, "org/eclipse/ocl/xtext/base/Base.properties");
 		super.configure(binder);
 	}
-	
+
 	public void configureLanguageName(Binder binder) {
 		binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.eclipse.ocl.xtext.base.Base");
 	}
-	
+
 	public void configureFileExtensions(Binder binder) {
 		if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
 			binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("base");
 	}
-	
+
 	// contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
 	public java.lang.ClassLoader bindClassLoaderToInstance() {
 		return getClass().getClassLoader();
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 ed213ab..fc61511 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
@@ -9,7 +9,7 @@
  *     E.D.Willink - initial API and implementation
  *******************************************************************************
  * This code is 100% auto-generated
- * from: E:\GIT\org.eclipse.ocl\examples..\..\plugins\org.eclipse.ocl.xtext.base\src-gen\org\eclipse\ocl\xtext\base\Base.xtextbin
+ * from: E:\GIT\org.eclipse.ocl\plugins..\..\plugins\org.eclipse.ocl.xtext.base\src-gen\org\eclipse\ocl\xtext\base\Base.xtextbin
  * by: org.eclipse.ocl.examples.build.xtend.generateGrammar.xtend
  *
  * Do not edit it.
@@ -69,7 +69,7 @@
 
 	/*
 	 * This class should be bound to org.eclipse.xtext.service.GrammarProvider.
-	 */ 
+	 */
 	@Singleton
 	public static class GrammarProvider extends org.eclipse.xtext.service.GrammarProvider
 	{
@@ -83,13 +83,13 @@
 			return BaseGrammarResource.GRAMMAR;
 		}
 	}
-	
+
 	private static class _Base
 	{
 		private static final @NonNull ReferencedMetamodel MM = createReferencedMetamodel(org.eclipse.ocl.xtext.basecs.BaseCSPackage.eINSTANCE, null); // http://www.eclipse.org/ocl/2015/BaseCS
 		private static final @NonNull ReferencedMetamodel MM_ecore = createReferencedMetamodel(org.eclipse.emf.ecore.EcorePackage.eINSTANCE, "ecore"); // http://www.eclipse.org/emf/2002/Ecore
 		private static final @NonNull ReferencedMetamodel MM_pivot = createReferencedMetamodel(org.eclipse.ocl.pivot.PivotPackage.eINSTANCE, "pivot"); // http://www.eclipse.org/ocl/2015/Pivot
-		
+
 		private static final @NonNull TerminalRule TR_ANY_OTHER = createTerminalRule("ANY_OTHER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_DOUBLE_QUOTED_STRING = createTerminalRule("DOUBLE_QUOTED_STRING", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_ESCAPED_CHARACTER = createTerminalRule("ESCAPED_CHARACTER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
@@ -102,7 +102,7 @@
 		private static final @NonNull TerminalRule TR_SINGLE_QUOTED_STRING = createTerminalRule("SINGLE_QUOTED_STRING", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_SL_COMMENT = createTerminalRule("SL_COMMENT", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_WS = createTerminalRule("WS", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initTerminalRules() {
 			TR_ANY_OTHER.setAlternatives(createWildcard());
 			TR_DOUBLE_QUOTED_STRING.setAlternatives(createGroup(createKeyword("\""), setCardinality("*", createAlternatives(createRuleCall(TR_ESCAPED_CHARACTER), createNegatedToken(createAlternatives(createKeyword("\\"), createKeyword("\""))))), createKeyword("\"")));
@@ -119,7 +119,7 @@
 			TR_SL_COMMENT.setAlternatives(createGroup(createKeyword("--"), setCardinality("*", createNegatedToken(createAlternatives(createKeyword("\n"), createKeyword("\r")))), setCardinality("?", createGroup(setCardinality("?", createKeyword("\r")), createKeyword("\n")))));
 			TR_WS.setAlternatives(setCardinality("+", createAlternatives(createKeyword(" "), createKeyword("\t"), createKeyword("\r"), createKeyword("\n"))));
 		}
-		
+
 		private static final @NonNull ParserRule PR_FirstPathElementCS = createParserRule("FirstPathElementCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.PATH_ELEMENT_CS));
 		private static final @NonNull ParserRule PR_ID = createParserRule("ID", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_Identifier = createParserRule("Identifier", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
@@ -143,7 +143,7 @@
 		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_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));
-		
+
 		private static void initParserRules() {
 			PR_FirstPathElementCS.setAlternatives(createAssignment("referredElement", "=", createCrossReference(createTypeRef(MM_pivot, org.eclipse.ocl.pivot.PivotPackage.Literals.NAMED_ELEMENT), createRuleCall(PR_UnrestrictedName))));
 			PR_ID.setAlternatives(createAlternatives(createRuleCall(TR_SIMPLE_ID), createRuleCall(TR_ESCAPED_ID)));
@@ -169,7 +169,7 @@
 			PR_UnrestrictedName.setAlternatives(createRuleCall(PR_Identifier));
 			PR_WildcardTypeRefCS.setAlternatives(createGroup(createAction(null, null, createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.WILDCARD_TYPE_REF_CS)), createKeyword("?"), setCardinality("?", createGroup(createKeyword("extends"), createAssignment("ownedExtends", "=", createRuleCall(PR_TypedRefCS))))));
 		}
-		
+
 		private static @NonNull Grammar initGrammar() {
 			initTerminalRules();
 			initParserRules();
diff --git a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/BaseStandaloneSetupGenerated.java b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/BaseStandaloneSetupGenerated.java
index 4baad01..95e8f65 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/BaseStandaloneSetupGenerated.java
+++ b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/BaseStandaloneSetupGenerated.java
@@ -42,18 +42,18 @@
 		register(injector);
 		return injector;
 	}
-	
+
 	public Injector createInjector() {
 		return Guice.createInjector(new org.eclipse.ocl.xtext.base.BaseRuntimeModule());
 	}
-	
+
 	public void register(Injector injector) {
 
 		org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class);
 		org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class);
 		Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("base", resourceFactory);
 		org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("base", serviceProvider);
-		
+
 
 
 
diff --git a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/BaseAntlrTokenFileProvider.java b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/BaseAntlrTokenFileProvider.java
index c9d3a35..601a316 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/BaseAntlrTokenFileProvider.java
+++ b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/BaseAntlrTokenFileProvider.java
@@ -14,7 +14,7 @@
 import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider;
 
 public class BaseAntlrTokenFileProvider implements IAntlrTokenFileProvider {
-	
+
 	@Override
 	public InputStream getAntlrTokenFile() {
 		ClassLoader classLoader = getClass().getClassLoader();
diff --git a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/BaseParser.java b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/BaseParser.java
index f75e955..ecbdedc 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/BaseParser.java
+++ b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/parser/antlr/BaseParser.java
@@ -16,31 +16,31 @@
 import org.eclipse.ocl.xtext.base.services.BaseGrammarAccess;
 
 public class BaseParser extends org.eclipse.xtext.parser.antlr.AbstractAntlrParser {
-	
+
 	@Inject
 	private BaseGrammarAccess grammarAccess;
-	
+
 	@Override
 	protected void setInitialHiddenTokens(XtextTokenStream tokenStream) {
 		tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT");
 	}
-	
+
 	@Override
 	protected org.eclipse.ocl.xtext.base.parser.antlr.internal.InternalBaseParser createParser(XtextTokenStream stream) {
 		return new org.eclipse.ocl.xtext.base.parser.antlr.internal.InternalBaseParser(stream, getGrammarAccess());
 	}
-	
-	@Override 
+
+	@Override
 	protected String getDefaultRuleName() {
 		return "MultiplicityBoundsCS";
 	}
-	
+
 	public BaseGrammarAccess getGrammarAccess() {
 		return this.grammarAccess;
 	}
-	
+
 	public void setGrammarAccess(BaseGrammarAccess grammarAccess) {
 		this.grammarAccess = grammarAccess;
 	}
-	
+
 }
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 801ac7f..2f8e47e 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
@@ -13,19 +13,19 @@
 options {
 	superClass=AbstractInternalAntlrParser;
 	backtrack=true;
-	
+
 }
 
 @lexer::header {
 package org.eclipse.ocl.xtext.base.parser.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.parser.antlr.Lexer;
 }
 
 @parser::header {
-package org.eclipse.ocl.xtext.base.parser.antlr.internal; 
+package org.eclipse.ocl.xtext.base.parser.antlr.internal;
 
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
@@ -46,85 +46,85 @@
   This grammar contains a lot of empty actions to work around a bug in ANTLR.
   Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases.
 */
- 
+
  	private BaseGrammarAccess grammarAccess;
- 	
+
     public InternalBaseParser(TokenStream input, BaseGrammarAccess grammarAccess) {
         this(input);
         this.grammarAccess = grammarAccess;
         registerRules(grammarAccess.getGrammar());
     }
-    
+
     @Override
     protected String getFirstRuleName() {
-    	return "MultiplicityBoundsCS";	
+    	return "MultiplicityBoundsCS";
    	}
-   	
+
    	@Override
    	protected BaseGrammarAccess getGrammarAccess() {
    		return grammarAccess;
    	}
 }
 
-@rulecatch { 
-    catch (RecognitionException re) { 
-        recover(input,re); 
+@rulecatch {
+    catch (RecognitionException re) {
+        recover(input,re);
         appendSkippedTokens();
-    } 
+    }
 }
 
 
 
 
 // Entry rule entryRuleMultiplicityBoundsCS
-entryRuleMultiplicityBoundsCS returns [EObject current=null] 
+entryRuleMultiplicityBoundsCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule()); }
-	 iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS 
-	 { $current=$iv_ruleMultiplicityBoundsCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS
+	 { $current=$iv_ruleMultiplicityBoundsCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityBoundsCS
-ruleMultiplicityBoundsCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityBoundsCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
 	    }
 		lv_lowerBound_0_0=ruleLOWER		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"lowerBound",
-        		lv_lowerBound_0_0, 
+        		lv_lowerBound_0_0,
         		"org.eclipse.ocl.xtext.base.Base.LOWER");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='..' 
+)(	otherlv_1='..'
     {
     	newLeafNode(otherlv_1, grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
 	    }
 		lv_upperBound_2_0=ruleUPPER		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"upperBound",
-        		lv_upperBound_2_0, 
+        		lv_upperBound_2_0,
         		"org.eclipse.ocl.xtext.base.Base.UPPER");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -138,60 +138,60 @@
 
 
 // Entry rule entryRuleMultiplicityCS
-entryRuleMultiplicityCS returns [EObject current=null] 
+entryRuleMultiplicityCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityCSRule()); }
-	 iv_ruleMultiplicityCS=ruleMultiplicityCS 
-	 { $current=$iv_ruleMultiplicityCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityCS=ruleMultiplicityCS
+	 { $current=$iv_ruleMultiplicityCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityCS
-ruleMultiplicityCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='[' 
+(	otherlv_0='['
     {
     	newLeafNode(otherlv_0, grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+    {
+        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
     }
     this_MultiplicityBoundsCS_1=ruleMultiplicityBoundsCS
-    { 
-        $current = $this_MultiplicityBoundsCS_1.current; 
+    {
+        $current = $this_MultiplicityBoundsCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+    {
+        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
     }
     this_MultiplicityStringCS_2=ruleMultiplicityStringCS
-    { 
-        $current = $this_MultiplicityStringCS_2.current; 
+    {
+        $current = $this_MultiplicityStringCS_2.current;
         afterParserOrEnumRuleCall();
     }
-)(	otherlv_3='|?' 
+)(	otherlv_3='|?'
     {
     	newLeafNode(otherlv_3, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
     }
 
     |(
 (
-		lv_isNullFree_4_0=	'|1' 
+		lv_isNullFree_4_0=	'|1'
     {
         newLeafNode(lv_isNullFree_4_0, grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityCSRule());
@@ -200,7 +200,7 @@
 	    }
 
 )
-))?	otherlv_5=']' 
+))?	otherlv_5=']'
     {
     	newLeafNode(otherlv_5, grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
     }
@@ -212,27 +212,27 @@
 
 
 // Entry rule entryRuleMultiplicityStringCS
-entryRuleMultiplicityStringCS returns [EObject current=null] 
+entryRuleMultiplicityStringCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityStringCSRule()); }
-	 iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS 
-	 { $current=$iv_ruleMultiplicityStringCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS
+	 { $current=$iv_ruleMultiplicityStringCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityStringCS
-ruleMultiplicityStringCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityStringCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
 (
-		lv_stringBounds_0_1=	'*' 
+		lv_stringBounds_0_1=	'*'
     {
         newLeafNode(lv_stringBounds_0_1, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -240,11 +240,11 @@
        		setWithLastConsumed($current, "stringBounds", lv_stringBounds_0_1, null);
 	    }
 
-    |		lv_stringBounds_0_2=	'+' 
+    |		lv_stringBounds_0_2=	'+'
     {
         newLeafNode(lv_stringBounds_0_2, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -252,11 +252,11 @@
        		setWithLastConsumed($current, "stringBounds", lv_stringBounds_0_2, null);
 	    }
 
-    |		lv_stringBounds_0_3=	'?' 
+    |		lv_stringBounds_0_3=	'?'
     {
         newLeafNode(lv_stringBounds_0_3, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -275,54 +275,54 @@
 
 
 // Entry rule entryRulePathNameCS
-entryRulePathNameCS returns [EObject current=null] 
+entryRulePathNameCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPathNameCSRule()); }
-	 iv_rulePathNameCS=rulePathNameCS 
-	 { $current=$iv_rulePathNameCS.current; } 
-	 EOF 
+	 iv_rulePathNameCS=rulePathNameCS
+	 { $current=$iv_rulePathNameCS.current; }
+	 EOF
 ;
 
 // Rule PathNameCS
-rulePathNameCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePathNameCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathElements_0_0=ruleFirstPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_0_0, 
+        		lv_ownedPathElements_0_0,
         		"org.eclipse.ocl.xtext.base.Base.FirstPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='::' 
+)(	otherlv_1='::'
     {
     	newLeafNode(otherlv_1, grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedPathElements_2_0=ruleNextPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_2_0, 
+        		lv_ownedPathElements_2_0,
         		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -336,33 +336,33 @@
 
 
 // Entry rule entryRuleFirstPathElementCS
-entryRuleFirstPathElementCS returns [EObject current=null] 
+entryRuleFirstPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getFirstPathElementCSRule()); }
-	 iv_ruleFirstPathElementCS=ruleFirstPathElementCS 
-	 { $current=$iv_ruleFirstPathElementCS.current; } 
-	 EOF 
+	 iv_ruleFirstPathElementCS=ruleFirstPathElementCS
+	 { $current=$iv_ruleFirstPathElementCS.current; }
+	 EOF
 ;
 
 // Rule FirstPathElementCS
-ruleFirstPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleFirstPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getFirstPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+		{
+	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -375,33 +375,33 @@
 
 
 // Entry rule entryRuleNextPathElementCS
-entryRuleNextPathElementCS returns [EObject current=null] 
+entryRuleNextPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNextPathElementCSRule()); }
-	 iv_ruleNextPathElementCS=ruleNextPathElementCS 
-	 { $current=$iv_ruleNextPathElementCS.current; } 
-	 EOF 
+	 iv_ruleNextPathElementCS=ruleNextPathElementCS
+	 { $current=$iv_ruleNextPathElementCS.current; }
+	 EOF
 ;
 
 // Rule NextPathElementCS
-ruleNextPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNextPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNextPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
 	    }
-		ruleUnreservedName		{ 
+		ruleUnreservedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -414,54 +414,54 @@
 
 
 // Entry rule entryRuleTemplateBindingCS
-entryRuleTemplateBindingCS returns [EObject current=null] 
+entryRuleTemplateBindingCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTemplateBindingCSRule()); }
-	 iv_ruleTemplateBindingCS=ruleTemplateBindingCS 
-	 { $current=$iv_ruleTemplateBindingCS.current; } 
-	 EOF 
+	 iv_ruleTemplateBindingCS=ruleTemplateBindingCS
+	 { $current=$iv_ruleTemplateBindingCS.current; }
+	 EOF
 ;
 
 // Rule TemplateBindingCS
-ruleTemplateBindingCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTemplateBindingCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
 	    }
 		lv_ownedSubstitutions_0_0=ruleTemplateParameterSubstitutionCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSubstitutions",
-        		lv_ownedSubstitutions_0_0, 
+        		lv_ownedSubstitutions_0_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1=',' 
+)(	otherlv_1=','
     {
     	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedSubstitutions_2_0=ruleTemplateParameterSubstitutionCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSubstitutions",
-        		lv_ownedSubstitutions_2_0, 
+        		lv_ownedSubstitutions_2_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -469,17 +469,17 @@
 )
 ))*(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
 	    }
 		lv_ownedMultiplicity_3_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_3_0, 
+        		lv_ownedMultiplicity_3_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -493,32 +493,32 @@
 
 
 // Entry rule entryRuleTemplateParameterSubstitutionCS
-entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] 
+entryRuleTemplateParameterSubstitutionCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
-	 iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS 
-	 { $current=$iv_ruleTemplateParameterSubstitutionCS.current; } 
-	 EOF 
+	 iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS
+	 { $current=$iv_ruleTemplateParameterSubstitutionCS.current; }
+	 EOF
 ;
 
 // Rule TemplateParameterSubstitutionCS
-ruleTemplateParameterSubstitutionCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTemplateParameterSubstitutionCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
 	    }
 		lv_ownedActualParameter_0_0=ruleTypeRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateParameterSubstitutionCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedActualParameter",
-        		lv_ownedActualParameter_0_0, 
+        		lv_ownedActualParameter_0_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -534,76 +534,76 @@
 
 
 // Entry rule entryRuleTypeParameterCS
-entryRuleTypeParameterCS returns [EObject current=null] 
+entryRuleTypeParameterCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeParameterCSRule()); }
-	 iv_ruleTypeParameterCS=ruleTypeParameterCS 
-	 { $current=$iv_ruleTypeParameterCS.current; } 
-	 EOF 
+	 iv_ruleTypeParameterCS=ruleTypeParameterCS
+	 { $current=$iv_ruleTypeParameterCS.current; }
+	 EOF
 ;
 
 // Rule TypeParameterCS
-ruleTypeParameterCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeParameterCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.base.Base.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='extends' 
+)(	otherlv_1='extends'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedExtends_2_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_2_0, 
+        		lv_ownedExtends_2_0,
         		"org.eclipse.ocl.xtext.base.Base.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3='&&' 
+)(	otherlv_3='&&'
     {
     	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
 	    }
 		lv_ownedExtends_4_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_4_0, 
+        		lv_ownedExtends_4_0,
         		"org.eclipse.ocl.xtext.base.Base.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -617,42 +617,42 @@
 
 
 // Entry rule entryRuleTypeRefCS
-entryRuleTypeRefCS returns [EObject current=null] 
+entryRuleTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeRefCSRule()); }
-	 iv_ruleTypeRefCS=ruleTypeRefCS 
-	 { $current=$iv_ruleTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleTypeRefCS=ruleTypeRefCS
+	 { $current=$iv_ruleTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule TypeRefCS
-ruleTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
     }
     this_TypedRefCS_0=ruleTypedRefCS
-    { 
-        $current = $this_TypedRefCS_0.current; 
+    {
+        $current = $this_TypedRefCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
     }
     this_WildcardTypeRefCS_1=ruleWildcardTypeRefCS
-    { 
-        $current = $this_WildcardTypeRefCS_1.current; 
+    {
+        $current = $this_WildcardTypeRefCS_1.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -663,29 +663,29 @@
 
 
 // Entry rule entryRuleTypedRefCS
-entryRuleTypedRefCS returns [EObject current=null] 
+entryRuleTypedRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypedRefCSRule()); }
-	 iv_ruleTypedRefCS=ruleTypedRefCS 
-	 { $current=$iv_ruleTypedRefCS.current; } 
-	 EOF 
+	 iv_ruleTypedRefCS=ruleTypedRefCS
+	 { $current=$iv_ruleTypedRefCS.current; }
+	 EOF
 ;
 
 // Rule TypedRefCS
-ruleTypedRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypedRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall());
     }
     this_TypedTypeRefCS_0=ruleTypedTypeRefCS
-    { 
-        $current = $this_TypedTypeRefCS_0.current; 
+    {
+        $current = $this_TypedTypeRefCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
@@ -696,60 +696,60 @@
 
 
 // Entry rule entryRuleTypedTypeRefCS
-entryRuleTypedTypeRefCS returns [EObject current=null] 
+entryRuleTypedTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypedTypeRefCSRule()); }
-	 iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS 
-	 { $current=$iv_ruleTypedTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS
+	 { $current=$iv_ruleTypedTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule TypedTypeRefCS
-ruleTypedTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypedTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathName_0_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_0_0, 
+        		lv_ownedPathName_0_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedBinding_2_0=ruleTemplateBindingCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedBinding",
-        		lv_ownedBinding_2_0, 
+        		lv_ownedBinding_2_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateBindingCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=')' 
+)	otherlv_3=')'
     {
     	newLeafNode(otherlv_3, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
     }
@@ -761,28 +761,28 @@
 
 
 // Entry rule entryRuleUnreservedName
-entryRuleUnreservedName returns [String current=null] 
+entryRuleUnreservedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnreservedNameRule()); } 
-	 iv_ruleUnreservedName=ruleUnreservedName 
-	 { $current=$iv_ruleUnreservedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnreservedNameRule()); }
+	 iv_ruleUnreservedName=ruleUnreservedName
+	 { $current=$iv_ruleUnreservedName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnreservedName
-ruleUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getUnreservedNameAccess().getUnrestrictedNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getUnreservedNameAccess().getUnrestrictedNameParserRuleCall());
     }
     this_UnrestrictedName_0=ruleUnrestrictedName    {
 		$current.merge(this_UnrestrictedName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -793,28 +793,28 @@
 
 
 // Entry rule entryRuleUnrestrictedName
-entryRuleUnrestrictedName returns [String current=null] 
+entryRuleUnrestrictedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnrestrictedNameRule()); } 
-	 iv_ruleUnrestrictedName=ruleUnrestrictedName 
-	 { $current=$iv_ruleUnrestrictedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnrestrictedNameRule()); }
+	 iv_ruleUnrestrictedName=ruleUnrestrictedName
+	 { $current=$iv_ruleUnrestrictedName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnrestrictedName
-ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getIdentifierParserRuleCall());
     }
     this_Identifier_0=ruleIdentifier    {
 		$current.merge(this_Identifier_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -825,49 +825,49 @@
 
 
 // Entry rule entryRuleWildcardTypeRefCS
-entryRuleWildcardTypeRefCS returns [EObject current=null] 
+entryRuleWildcardTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getWildcardTypeRefCSRule()); }
-	 iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS 
-	 { $current=$iv_ruleWildcardTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS
+	 { $current=$iv_ruleWildcardTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule WildcardTypeRefCS
-ruleWildcardTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleWildcardTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0(),
             $current);
     }
-)	otherlv_1='?' 
+)	otherlv_1='?'
     {
     	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
     }
-(	otherlv_2='extends' 
+(	otherlv_2='extends'
     {
     	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedExtends_3_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getWildcardTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_3_0, 
+        		lv_ownedExtends_3_0,
         		"org.eclipse.ocl.xtext.base.Base.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -881,33 +881,33 @@
 
 
 // Entry rule entryRuleID
-entryRuleID returns [String current=null] 
+entryRuleID returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getIDRule()); } 
-	 iv_ruleID=ruleID 
-	 { $current=$iv_ruleID.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getIDRule()); }
+	 iv_ruleID=ruleID
+	 { $current=$iv_ruleID.current.getText(); }
+	 EOF
 ;
 
 // Rule ID
-ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (    this_SIMPLE_ID_0=RULE_SIMPLE_ID    {
 		$current.merge(this_SIMPLE_ID_0);
     }
 
-    { 
-    newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+    {
+    newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
     }
 
     |    this_ESCAPED_ID_1=RULE_ESCAPED_ID    {
 		$current.merge(this_ESCAPED_ID_1);
     }
 
-    { 
-    newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+    {
+    newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
     }
 )
     ;
@@ -917,28 +917,28 @@
 
 
 // Entry rule entryRuleIdentifier
-entryRuleIdentifier returns [String current=null] 
+entryRuleIdentifier returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getIdentifierRule()); } 
-	 iv_ruleIdentifier=ruleIdentifier 
-	 { $current=$iv_ruleIdentifier.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getIdentifierRule()); }
+	 iv_ruleIdentifier=ruleIdentifier
+	 { $current=$iv_ruleIdentifier.current.getText(); }
+	 EOF
 ;
 
 // Rule Identifier
-ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
     }
     this_ID_0=ruleID    {
 		$current.merge(this_ID_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -949,25 +949,25 @@
 
 
 // Entry rule entryRuleLOWER
-entryRuleLOWER returns [String current=null] 
+entryRuleLOWER returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getLOWERRule()); } 
-	 iv_ruleLOWER=ruleLOWER 
-	 { $current=$iv_ruleLOWER.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getLOWERRule()); }
+	 iv_ruleLOWER=ruleLOWER
+	 { $current=$iv_ruleLOWER.current.getText(); }
+	 EOF
 ;
 
 // Rule LOWER
-ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
     }
 
     ;
@@ -981,32 +981,32 @@
 
 
 // Entry rule entryRuleUPPER
-entryRuleUPPER returns [String current=null] 
+entryRuleUPPER returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUPPERRule()); } 
-	 iv_ruleUPPER=ruleUPPER 
-	 { $current=$iv_ruleUPPER.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUPPERRule()); }
+	 iv_ruleUPPER=ruleUPPER
+	 { $current=$iv_ruleUPPER.current.getText(); }
+	 EOF
 ;
 
 // Rule UPPER
-ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (    this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
     }
 
     |
-	kw='*' 
+	kw='*'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
     }
 )
     ;
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 4fbdae2..95acb08 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
@@ -1,6 +1,6 @@
 package org.eclipse.ocl.xtext.base.parser.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.parser.antlr.Lexer;
 
@@ -43,7 +43,7 @@
     // delegates
     // delegators
 
-    public InternalBaseLexer() {;} 
+    public InternalBaseLexer() {;}
     public InternalBaseLexer(CharStream input) {
         this(input, new RecognizerSharedState());
     }
@@ -61,7 +61,7 @@
             // InternalBase.g:11:7: ( '..' )
             // InternalBase.g:11:9: '..'
             {
-            match(".."); 
+            match("..");
 
 
             }
@@ -82,7 +82,7 @@
             // InternalBase.g:12:7: ( '[' )
             // InternalBase.g:12:9: '['
             {
-            match('['); 
+            match('[');
 
             }
 
@@ -102,7 +102,7 @@
             // InternalBase.g:13:7: ( '|?' )
             // InternalBase.g:13:9: '|?'
             {
-            match("|?"); 
+            match("|?");
 
 
             }
@@ -123,7 +123,7 @@
             // InternalBase.g:14:7: ( '|1' )
             // InternalBase.g:14:9: '|1'
             {
-            match("|1"); 
+            match("|1");
 
 
             }
@@ -144,7 +144,7 @@
             // InternalBase.g:15:7: ( ']' )
             // InternalBase.g:15:9: ']'
             {
-            match(']'); 
+            match(']');
 
             }
 
@@ -164,7 +164,7 @@
             // InternalBase.g:16:7: ( '*' )
             // InternalBase.g:16:9: '*'
             {
-            match('*'); 
+            match('*');
 
             }
 
@@ -184,7 +184,7 @@
             // InternalBase.g:17:7: ( '+' )
             // InternalBase.g:17:9: '+'
             {
-            match('+'); 
+            match('+');
 
             }
 
@@ -204,7 +204,7 @@
             // InternalBase.g:18:7: ( '?' )
             // InternalBase.g:18:9: '?'
             {
-            match('?'); 
+            match('?');
 
             }
 
@@ -224,7 +224,7 @@
             // InternalBase.g:19:7: ( '::' )
             // InternalBase.g:19:9: '::'
             {
-            match("::"); 
+            match("::");
 
 
             }
@@ -245,7 +245,7 @@
             // InternalBase.g:20:7: ( ',' )
             // InternalBase.g:20:9: ','
             {
-            match(','); 
+            match(',');
 
             }
 
@@ -265,7 +265,7 @@
             // InternalBase.g:21:7: ( 'extends' )
             // InternalBase.g:21:9: 'extends'
             {
-            match("extends"); 
+            match("extends");
 
 
             }
@@ -286,7 +286,7 @@
             // InternalBase.g:22:7: ( '&&' )
             // InternalBase.g:22:9: '&&'
             {
-            match("&&"); 
+            match("&&");
 
 
             }
@@ -307,7 +307,7 @@
             // InternalBase.g:23:7: ( '(' )
             // InternalBase.g:23:9: '('
             {
-            match('('); 
+            match('(');
 
             }
 
@@ -327,7 +327,7 @@
             // InternalBase.g:24:7: ( ')' )
             // InternalBase.g:24:9: ')'
             {
-            match(')'); 
+            match(')');
 
             }
 
@@ -345,7 +345,7 @@
             // InternalBase.g:1020:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
             // InternalBase.g:1020:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
-            match('\\'); 
+            match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
                 input.consume();
 
@@ -396,7 +396,7 @@
             // InternalBase.g:1024:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
             // InternalBase.g:1024:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
-            match('\"'); 
+            match('\"');
             // InternalBase.g:1024:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
@@ -415,7 +415,7 @@
             	case 1 :
             	    // InternalBase.g:1024:34: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -440,7 +440,7 @@
                 }
             } while (true);
 
-            match('\"'); 
+            match('\"');
 
             }
 
@@ -460,7 +460,7 @@
             // InternalBase.g:1026:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             // InternalBase.g:1026:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
-            match('\''); 
+            match('\'');
             // InternalBase.g:1026:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
@@ -479,7 +479,7 @@
             	case 1 :
             	    // InternalBase.g:1026:35: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -504,7 +504,7 @@
                 }
             } while (true);
 
-            match('\''); 
+            match('\'');
 
             }
 
@@ -524,7 +524,7 @@
             // InternalBase.g:1028:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
             // InternalBase.g:1028:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
-            match("/'"); 
+            match("/'");
 
             // InternalBase.g:1028:38: ( options {greedy=false; } : . )*
             loop3:
@@ -553,7 +553,7 @@
             	case 1 :
             	    // InternalBase.g:1028:66: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -563,7 +563,7 @@
                 }
             } while (true);
 
-            match("'/"); 
+            match("'/");
 
 
             }
@@ -584,7 +584,7 @@
             // InternalBase.g:1030:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
             // InternalBase.g:1030:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
-            mRULE_LETTER_CHARACTER(); 
+            mRULE_LETTER_CHARACTER();
             // InternalBase.g:1030:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
@@ -637,8 +637,8 @@
             // InternalBase.g:1032:17: ( '_' RULE_SINGLE_QUOTED_STRING )
             // InternalBase.g:1032:19: '_' RULE_SINGLE_QUOTED_STRING
             {
-            match('_'); 
-            mRULE_SINGLE_QUOTED_STRING(); 
+            match('_');
+            mRULE_SINGLE_QUOTED_STRING();
 
             }
 
@@ -674,7 +674,7 @@
             	case 1 :
             	    // InternalBase.g:1034:13: '0' .. '9'
             	    {
-            	    matchRange('0','9'); 
+            	    matchRange('0','9');
 
             	    }
             	    break;
@@ -707,7 +707,7 @@
             // InternalBase.g:1036:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
             // InternalBase.g:1036:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
-            match("/*"); 
+            match("/*");
 
             // InternalBase.g:1036:24: ( options {greedy=false; } : . )*
             loop6:
@@ -736,7 +736,7 @@
             	case 1 :
             	    // InternalBase.g:1036:52: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -746,7 +746,7 @@
                 }
             } while (true);
 
-            match("*/"); 
+            match("*/");
 
 
             }
@@ -767,7 +767,7 @@
             // InternalBase.g:1038:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
             // InternalBase.g:1038:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
-            match("--"); 
+            match("--");
 
             // InternalBase.g:1038:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
@@ -824,14 +824,14 @@
                         case 1 :
                             // InternalBase.g:1038:41: '\\r'
                             {
-                            match('\r'); 
+                            match('\r');
 
                             }
                             break;
 
                     }
 
-                    match('\n'); 
+                    match('\n');
 
                     }
                     break;
@@ -914,7 +914,7 @@
             // InternalBase.g:1042:16: ( . )
             // InternalBase.g:1042:18: .
             {
-            matchAny(); 
+            matchAny();
 
             }
 
@@ -934,168 +934,168 @@
             case 1 :
                 // InternalBase.g:1:10: T__16
                 {
-                mT__16(); 
+                mT__16();
 
                 }
                 break;
             case 2 :
                 // InternalBase.g:1:16: T__17
                 {
-                mT__17(); 
+                mT__17();
 
                 }
                 break;
             case 3 :
                 // InternalBase.g:1:22: T__18
                 {
-                mT__18(); 
+                mT__18();
 
                 }
                 break;
             case 4 :
                 // InternalBase.g:1:28: T__19
                 {
-                mT__19(); 
+                mT__19();
 
                 }
                 break;
             case 5 :
                 // InternalBase.g:1:34: T__20
                 {
-                mT__20(); 
+                mT__20();
 
                 }
                 break;
             case 6 :
                 // InternalBase.g:1:40: T__21
                 {
-                mT__21(); 
+                mT__21();
 
                 }
                 break;
             case 7 :
                 // InternalBase.g:1:46: T__22
                 {
-                mT__22(); 
+                mT__22();
 
                 }
                 break;
             case 8 :
                 // InternalBase.g:1:52: T__23
                 {
-                mT__23(); 
+                mT__23();
 
                 }
                 break;
             case 9 :
                 // InternalBase.g:1:58: T__24
                 {
-                mT__24(); 
+                mT__24();
 
                 }
                 break;
             case 10 :
                 // InternalBase.g:1:64: T__25
                 {
-                mT__25(); 
+                mT__25();
 
                 }
                 break;
             case 11 :
                 // InternalBase.g:1:70: T__26
                 {
-                mT__26(); 
+                mT__26();
 
                 }
                 break;
             case 12 :
                 // InternalBase.g:1:76: T__27
                 {
-                mT__27(); 
+                mT__27();
 
                 }
                 break;
             case 13 :
                 // InternalBase.g:1:82: T__28
                 {
-                mT__28(); 
+                mT__28();
 
                 }
                 break;
             case 14 :
                 // InternalBase.g:1:88: T__29
                 {
-                mT__29(); 
+                mT__29();
 
                 }
                 break;
             case 15 :
                 // InternalBase.g:1:94: RULE_DOUBLE_QUOTED_STRING
                 {
-                mRULE_DOUBLE_QUOTED_STRING(); 
+                mRULE_DOUBLE_QUOTED_STRING();
 
                 }
                 break;
             case 16 :
                 // InternalBase.g:1:120: RULE_SINGLE_QUOTED_STRING
                 {
-                mRULE_SINGLE_QUOTED_STRING(); 
+                mRULE_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 17 :
                 // InternalBase.g:1:146: RULE_ML_SINGLE_QUOTED_STRING
                 {
-                mRULE_ML_SINGLE_QUOTED_STRING(); 
+                mRULE_ML_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 18 :
                 // InternalBase.g:1:175: RULE_SIMPLE_ID
                 {
-                mRULE_SIMPLE_ID(); 
+                mRULE_SIMPLE_ID();
 
                 }
                 break;
             case 19 :
                 // InternalBase.g:1:190: RULE_ESCAPED_ID
                 {
-                mRULE_ESCAPED_ID(); 
+                mRULE_ESCAPED_ID();
 
                 }
                 break;
             case 20 :
                 // InternalBase.g:1:206: RULE_INT
                 {
-                mRULE_INT(); 
+                mRULE_INT();
 
                 }
                 break;
             case 21 :
                 // InternalBase.g:1:215: RULE_ML_COMMENT
                 {
-                mRULE_ML_COMMENT(); 
+                mRULE_ML_COMMENT();
 
                 }
                 break;
             case 22 :
                 // InternalBase.g:1:231: RULE_SL_COMMENT
                 {
-                mRULE_SL_COMMENT(); 
+                mRULE_SL_COMMENT();
 
                 }
                 break;
             case 23 :
                 // InternalBase.g:1:247: RULE_WS
                 {
-                mRULE_WS(); 
+                mRULE_WS();
 
                 }
                 break;
             case 24 :
                 // InternalBase.g:1:255: RULE_ANY_OTHER
                 {
-                mRULE_ANY_OTHER(); 
+                mRULE_ANY_OTHER();
 
                 }
                 break;
@@ -1209,7 +1209,7 @@
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA11_15 = input.LA(1);
 
                         s = -1;
@@ -1219,7 +1219,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA11_0 = input.LA(1);
 
                         s = -1;
@@ -1269,7 +1269,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA11_14 = input.LA(1);
 
                         s = -1;
@@ -1286,6 +1286,6 @@
             throw nvae;
         }
     }
- 
+
 
 }
\ No newline at end of file
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 533118e..85b052b 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
@@ -1,4 +1,4 @@
-package org.eclipse.ocl.xtext.base.parser.antlr.internal; 
+package org.eclipse.ocl.xtext.base.parser.antlr.internal;
 
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
@@ -71,9 +71,9 @@
         }
         public InternalBaseParser(TokenStream input, RecognizerSharedState state) {
             super(input, state);
-             
+
         }
-        
+
 
     public String[] getTokenNames() { return InternalBaseParser.tokenNames; }
     public String getGrammarFileName() { return "InternalBase.g"; }
@@ -84,20 +84,20 @@
       This grammar contains a lot of empty actions to work around a bug in ANTLR.
       Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases.
     */
-     
+
      	private BaseGrammarAccess grammarAccess;
-     	
+
         public InternalBaseParser(TokenStream input, BaseGrammarAccess grammarAccess) {
             this(input);
             this.grammarAccess = grammarAccess;
             registerRules(grammarAccess.getGrammar());
         }
-        
+
         @Override
         protected String getFirstRuleName() {
-        	return "MultiplicityBoundsCS";	
+        	return "MultiplicityBoundsCS";
        	}
-       	
+
        	@Override
        	protected BaseGrammarAccess getGrammarAccess() {
        		return grammarAccess;
@@ -118,7 +118,7 @@
             // InternalBase.g:82:2: iv_ruleMultiplicityBoundsCS= ruleMultiplicityBoundsCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS();
@@ -126,18 +126,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityBoundsCS; 
+               current =iv_ruleMultiplicityBoundsCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -156,8 +156,8 @@
         AntlrDatatypeRuleToken lv_upperBound_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalBase.g:92:28: ( ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? ) )
             // InternalBase.g:93:1: ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? )
@@ -172,9 +172,9 @@
             // InternalBase.g:95:3: lv_lowerBound_0_0= ruleLOWER
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_3);
             lv_lowerBound_0_0=ruleLOWER();
@@ -187,12 +187,12 @@
               	            current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"lowerBound",
-                      		lv_lowerBound_0_0, 
+                      		lv_lowerBound_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.LOWER");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -215,7 +215,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
-                          
+
                     }
                     // InternalBase.g:115:1: ( (lv_upperBound_2_0= ruleUPPER ) )
                     // InternalBase.g:116:1: (lv_upperBound_2_0= ruleUPPER )
@@ -224,9 +224,9 @@
                     // InternalBase.g:117:3: lv_upperBound_2_0= ruleUPPER
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_upperBound_2_0=ruleUPPER();
@@ -239,12 +239,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"upperBound",
-                              		lv_upperBound_2_0, 
+                              		lv_upperBound_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.UPPER");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -265,14 +265,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -293,7 +293,7 @@
             // InternalBase.g:143:2: iv_ruleMultiplicityCS= ruleMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityCS=ruleMultiplicityCS();
@@ -301,18 +301,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityCS; 
+               current =iv_ruleMultiplicityCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -334,8 +334,8 @@
         EObject this_MultiplicityStringCS_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalBase.g:153:28: ( (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' ) )
             // InternalBase.g:154:1: (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' )
@@ -347,7 +347,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
-                  
+
             }
             // InternalBase.g:158:1: (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS )
             int alt2=2;
@@ -371,14 +371,14 @@
                     // InternalBase.g:159:2: this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_6);
                     this_MultiplicityBoundsCS_1=ruleMultiplicityBoundsCS();
@@ -386,10 +386,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MultiplicityBoundsCS_1; 
+
+                              current = this_MultiplicityBoundsCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -398,14 +398,14 @@
                     // InternalBase.g:172:2: this_MultiplicityStringCS_2= ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_6);
                     this_MultiplicityStringCS_2=ruleMultiplicityStringCS();
@@ -413,10 +413,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MultiplicityStringCS_2; 
+
+                              current = this_MultiplicityStringCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -442,7 +442,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
-                          
+
                     }
 
                     }
@@ -460,7 +460,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isNullFree_4_0, grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -468,7 +468,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityCSRule());
                       	        }
                              		setWithLastConsumed(current, "isNullFree", true, "|1");
-                      	    
+
                     }
 
                     }
@@ -486,7 +486,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
-                  
+
             }
 
             }
@@ -495,14 +495,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -523,7 +523,7 @@
             // InternalBase.g:217:2: iv_ruleMultiplicityStringCS= ruleMultiplicityStringCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityStringCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityStringCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS();
@@ -531,18 +531,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityStringCS; 
+               current =iv_ruleMultiplicityStringCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -559,8 +559,8 @@
         Token lv_stringBounds_0_2=null;
         Token lv_stringBounds_0_3=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalBase.g:227:28: ( ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) ) )
             // InternalBase.g:228:1: ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) )
@@ -605,7 +605,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_1, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -613,7 +613,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_1, null);
-                      	    
+
                     }
 
                     }
@@ -625,7 +625,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_2, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -633,7 +633,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_2, null);
-                      	    
+
                     }
 
                     }
@@ -645,7 +645,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_3, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -653,7 +653,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_3, null);
-                      	    
+
                     }
 
                     }
@@ -671,14 +671,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -699,7 +699,7 @@
             // InternalBase.g:280:2: iv_rulePathNameCS= rulePathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPathNameCSRule()); 
+               newCompositeNode(grammarAccess.getPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePathNameCS=rulePathNameCS();
@@ -707,18 +707,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePathNameCS; 
+               current =iv_rulePathNameCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -737,8 +737,8 @@
         EObject lv_ownedPathElements_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalBase.g:290:28: ( ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) )
             // InternalBase.g:291:1: ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
@@ -753,9 +753,9 @@
             // InternalBase.g:293:3: lv_ownedPathElements_0_0= ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_8);
             lv_ownedPathElements_0_0=ruleFirstPathElementCS();
@@ -768,12 +768,12 @@
               	            current = createModelElementForParent(grammarAccess.getPathNameCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedPathElements",
-                      		lv_ownedPathElements_0_0, 
+                      		lv_ownedPathElements_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.FirstPathElementCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -800,7 +800,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
-            	          
+
             	    }
             	    // InternalBase.g:313:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
             	    // InternalBase.g:314:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
@@ -809,9 +809,9 @@
             	    // InternalBase.g:315:3: lv_ownedPathElements_2_0= ruleNextPathElementCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_8);
             	    lv_ownedPathElements_2_0=ruleNextPathElementCS();
@@ -824,12 +824,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getPathNameCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPathElements",
-            	              		lv_ownedPathElements_2_0, 
+            	              		lv_ownedPathElements_2_0,
             	              		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -853,14 +853,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -881,7 +881,7 @@
             // InternalBase.g:341:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getFirstPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleFirstPathElementCS=ruleFirstPathElementCS();
@@ -889,18 +889,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleFirstPathElementCS; 
+               current =iv_ruleFirstPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -913,8 +913,8 @@
     public final EObject ruleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalBase.g:351:28: ( ( ( ruleUnrestrictedName ) ) )
             // InternalBase.g:352:1: ( ( ruleUnrestrictedName ) )
@@ -926,21 +926,21 @@
             // InternalBase.g:354:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getFirstPathElementCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -948,9 +948,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -962,14 +962,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -990,7 +990,7 @@
             // InternalBase.g:380:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNextPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getNextPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNextPathElementCS=ruleNextPathElementCS();
@@ -998,18 +998,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNextPathElementCS; 
+               current =iv_ruleNextPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1022,8 +1022,8 @@
     public final EObject ruleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalBase.g:390:28: ( ( ( ruleUnreservedName ) ) )
             // InternalBase.g:391:1: ( ( ruleUnreservedName ) )
@@ -1035,21 +1035,21 @@
             // InternalBase.g:393:3: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getNextPathElementCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnreservedName();
@@ -1057,9 +1057,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -1071,14 +1071,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1099,7 +1099,7 @@
             // InternalBase.g:419:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTemplateBindingCSRule()); 
+               newCompositeNode(grammarAccess.getTemplateBindingCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTemplateBindingCS=ruleTemplateBindingCS();
@@ -1107,18 +1107,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTemplateBindingCS; 
+               current =iv_ruleTemplateBindingCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1139,8 +1139,8 @@
         EObject lv_ownedMultiplicity_3_0 = null;
 
 
-         enterRule(); 
-            
+         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 ) )? )
@@ -1155,9 +1155,9 @@
             // InternalBase.g:432:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_10);
             lv_ownedSubstitutions_0_0=ruleTemplateParameterSubstitutionCS();
@@ -1170,12 +1170,12 @@
               	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedSubstitutions",
-                      		lv_ownedSubstitutions_0_0, 
+                      		lv_ownedSubstitutions_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -1202,7 +1202,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	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 )
@@ -1211,9 +1211,9 @@
             	    // InternalBase.g:454:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_10);
             	    lv_ownedSubstitutions_2_0=ruleTemplateParameterSubstitutionCS();
@@ -1226,12 +1226,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedSubstitutions",
-            	              		lv_ownedSubstitutions_2_0, 
+            	              		lv_ownedSubstitutions_2_0,
             	              		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -1263,9 +1263,9 @@
                     // InternalBase.g:472:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_3_0=ruleMultiplicityCS();
@@ -1278,12 +1278,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_3_0, 
+                              		lv_ownedMultiplicity_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -1301,14 +1301,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1329,7 +1329,7 @@
             // InternalBase.g:498:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS();
@@ -1337,18 +1337,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTemplateParameterSubstitutionCS; 
+               current =iv_ruleTemplateParameterSubstitutionCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1364,8 +1364,8 @@
         EObject lv_ownedActualParameter_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalBase.g:508:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
             // InternalBase.g:509:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
@@ -1377,9 +1377,9 @@
             // InternalBase.g:511:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedActualParameter_0_0=ruleTypeRefCS();
@@ -1392,12 +1392,12 @@
               	            current = createModelElementForParent(grammarAccess.getTemplateParameterSubstitutionCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedActualParameter",
-                      		lv_ownedActualParameter_0_0, 
+                      		lv_ownedActualParameter_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.TypeRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -1409,14 +1409,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1437,7 +1437,7 @@
             // InternalBase.g:539:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeParameterCSRule()); 
+               newCompositeNode(grammarAccess.getTypeParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeParameterCS=ruleTypeParameterCS();
@@ -1445,18 +1445,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeParameterCS; 
+               current =iv_ruleTypeParameterCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1478,8 +1478,8 @@
         EObject lv_ownedExtends_4_0 = null;
 
 
-         enterRule(); 
-            
+         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 ) ) )* )? )
@@ -1494,9 +1494,9 @@
             // InternalBase.g:552:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_12);
             lv_name_0_0=ruleUnrestrictedName();
@@ -1509,12 +1509,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -1537,7 +1537,7 @@
                     if ( state.backtracking==0 ) {
 
                           	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 )
@@ -1546,9 +1546,9 @@
                     // InternalBase.g:574:3: lv_ownedExtends_2_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_13);
                     lv_ownedExtends_2_0=ruleTypedRefCS();
@@ -1561,12 +1561,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedExtends",
-                              		lv_ownedExtends_2_0, 
+                              		lv_ownedExtends_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.TypedRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -1593,7 +1593,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	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 )
@@ -1602,9 +1602,9 @@
                     	    // InternalBase.g:596:3: lv_ownedExtends_4_0= ruleTypedRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_13);
                     	    lv_ownedExtends_4_0=ruleTypedRefCS();
@@ -1617,12 +1617,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedExtends",
-                    	              		lv_ownedExtends_4_0, 
+                    	              		lv_ownedExtends_4_0,
                     	              		"org.eclipse.ocl.xtext.base.Base.TypedRefCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -1652,14 +1652,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1680,7 +1680,7 @@
             // InternalBase.g:622:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeRefCS=ruleTypeRefCS();
@@ -1688,18 +1688,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeRefCS; 
+               current =iv_ruleTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1717,8 +1717,8 @@
         EObject this_WildcardTypeRefCS_1 = null;
 
 
-         enterRule(); 
-            
+         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 )
@@ -1745,14 +1745,14 @@
                     // InternalBase.g:634:2: this_TypedRefCS_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypedRefCS_0=ruleTypedRefCS();
@@ -1760,10 +1760,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypedRefCS_0; 
+
+                              current = this_TypedRefCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1772,14 +1772,14 @@
                     // InternalBase.g:647:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_WildcardTypeRefCS_1=ruleWildcardTypeRefCS();
@@ -1787,10 +1787,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_WildcardTypeRefCS_1; 
+
+                              current = this_WildcardTypeRefCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1802,14 +1802,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1830,7 +1830,7 @@
             // InternalBase.g:668:2: iv_ruleTypedRefCS= ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypedRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypedRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypedRefCS=ruleTypedRefCS();
@@ -1838,18 +1838,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypedRefCS; 
+               current =iv_ruleTypedRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1865,21 +1865,21 @@
         EObject this_TypedTypeRefCS_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalBase.g:678:28: (this_TypedTypeRefCS_0= ruleTypedTypeRefCS )
             // InternalBase.g:680:2: this_TypedTypeRefCS_0= ruleTypedTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_TypedTypeRefCS_0=ruleTypedTypeRefCS();
@@ -1887,23 +1887,23 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
-                      current = this_TypedTypeRefCS_0; 
+
+                      current = this_TypedTypeRefCS_0;
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1924,7 +1924,7 @@
             // InternalBase.g:701:2: iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypedTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypedTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS();
@@ -1932,18 +1932,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypedTypeRefCS; 
+               current =iv_ruleTypedTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1963,8 +1963,8 @@
         EObject lv_ownedBinding_2_0 = null;
 
 
-         enterRule(); 
-            
+         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= ')' )? )
@@ -1979,9 +1979,9 @@
             // InternalBase.g:714:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_14);
             lv_ownedPathName_0_0=rulePathNameCS();
@@ -1994,12 +1994,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_0_0, 
+                      		lv_ownedPathName_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -2022,7 +2022,7 @@
                     if ( state.backtracking==0 ) {
 
                           	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 )
@@ -2031,9 +2031,9 @@
                     // InternalBase.g:736:3: lv_ownedBinding_2_0= ruleTemplateBindingCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_15);
                     lv_ownedBinding_2_0=ruleTemplateBindingCS();
@@ -2046,12 +2046,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedBinding",
-                              		lv_ownedBinding_2_0, 
+                              		lv_ownedBinding_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.TemplateBindingCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2063,7 +2063,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
-                          
+
                     }
 
                     }
@@ -2078,14 +2078,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2106,7 +2106,7 @@
             // InternalBase.g:766:2: iv_ruleUnreservedName= ruleUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnreservedNameRule()); 
+               newCompositeNode(grammarAccess.getUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnreservedName=ruleUnreservedName();
@@ -2114,18 +2114,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnreservedName.getText(); 
+               current =iv_ruleUnreservedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2141,16 +2141,16 @@
         AntlrDatatypeRuleToken this_UnrestrictedName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalBase.g:776:28: (this_UnrestrictedName_0= ruleUnrestrictedName )
             // InternalBase.g:778:5: this_UnrestrictedName_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getUnreservedNameAccess().getUnrestrictedNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getUnreservedNameAccess().getUnrestrictedNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_UnrestrictedName_0=ruleUnrestrictedName();
@@ -2160,25 +2160,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_UnrestrictedName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2199,7 +2199,7 @@
             // InternalBase.g:798:2: iv_ruleUnrestrictedName= ruleUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnrestrictedNameRule()); 
+               newCompositeNode(grammarAccess.getUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnrestrictedName=ruleUnrestrictedName();
@@ -2207,18 +2207,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnrestrictedName.getText(); 
+               current =iv_ruleUnrestrictedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2234,16 +2234,16 @@
         AntlrDatatypeRuleToken this_Identifier_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalBase.g:808:28: (this_Identifier_0= ruleIdentifier )
             // InternalBase.g:810:5: this_Identifier_0= ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getIdentifierParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_Identifier_0=ruleIdentifier();
@@ -2253,25 +2253,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_Identifier_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2292,7 +2292,7 @@
             // InternalBase.g:830:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getWildcardTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getWildcardTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS();
@@ -2300,18 +2300,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleWildcardTypeRefCS; 
+               current =iv_ruleWildcardTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2329,8 +2329,8 @@
         EObject lv_ownedExtends_3_0 = null;
 
 
-         enterRule(); 
-            
+         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 ) ) )? )
@@ -2339,19 +2339,19 @@
             // InternalBase.g:841:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             {
             // InternalBase.g:841:2: ()
-            // InternalBase.g:842:2: 
+            // InternalBase.g:842:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -2360,7 +2360,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
-                  
+
             }
             // InternalBase.g:854:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             int alt12=2;
@@ -2377,7 +2377,7 @@
                     if ( state.backtracking==0 ) {
 
                           	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 )
@@ -2386,9 +2386,9 @@
                     // InternalBase.g:860:3: lv_ownedExtends_3_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedExtends_3_0=ruleTypedRefCS();
@@ -2401,12 +2401,12 @@
                       	            current = createModelElementForParent(grammarAccess.getWildcardTypeRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExtends",
-                              		lv_ownedExtends_3_0, 
+                              		lv_ownedExtends_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.TypedRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2427,14 +2427,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2455,7 +2455,7 @@
             // InternalBase.g:886:2: iv_ruleID= ruleID EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIDRule()); 
+               newCompositeNode(grammarAccess.getIDRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleID=ruleID();
@@ -2463,18 +2463,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleID.getText(); 
+               current =iv_ruleID.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2490,8 +2490,8 @@
         Token this_SIMPLE_ID_0=null;
         Token this_ESCAPED_ID_1=null;
 
-         enterRule(); 
-            
+         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 )
@@ -2521,12 +2521,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_SIMPLE_ID_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
-                          
+
+                          newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
+
                     }
 
                     }
@@ -2538,12 +2538,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_ESCAPED_ID_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
-                          
+
+                          newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
+
                     }
 
                     }
@@ -2555,14 +2555,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2583,7 +2583,7 @@
             // InternalBase.g:922:2: iv_ruleIdentifier= ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIdentifierRule()); 
+               newCompositeNode(grammarAccess.getIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleIdentifier=ruleIdentifier();
@@ -2591,18 +2591,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleIdentifier.getText(); 
+               current =iv_ruleIdentifier.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2618,16 +2618,16 @@
         AntlrDatatypeRuleToken this_ID_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalBase.g:932:28: (this_ID_0= ruleID )
             // InternalBase.g:934:5: this_ID_0= ruleID
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_ID_0=ruleID();
@@ -2637,25 +2637,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_ID_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2676,7 +2676,7 @@
             // InternalBase.g:954:2: iv_ruleLOWER= ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLOWERRule()); 
+               newCompositeNode(grammarAccess.getLOWERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLOWER=ruleLOWER();
@@ -2684,18 +2684,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLOWER.getText(); 
+               current =iv_ruleLOWER.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2710,8 +2710,8 @@
 
         Token this_INT_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalBase.g:964:28: (this_INT_0= RULE_INT )
             // InternalBase.g:965:5: this_INT_0= RULE_INT
@@ -2720,25 +2720,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_INT_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2759,7 +2759,7 @@
             // InternalBase.g:986:2: iv_ruleUPPER= ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUPPERRule()); 
+               newCompositeNode(grammarAccess.getUPPERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUPPER=ruleUPPER();
@@ -2767,18 +2767,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUPPER.getText(); 
+               current =iv_ruleUPPER.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2794,8 +2794,8 @@
         Token this_INT_0=null;
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalBase.g:996:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
             // InternalBase.g:997:1: (this_INT_0= RULE_INT | kw= '*' )
@@ -2825,12 +2825,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_INT_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
-                          
+
+                          newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
+
                     }
 
                     }
@@ -2842,8 +2842,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
+
                     }
 
                     }
@@ -2855,14 +2855,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2872,9 +2872,9 @@
     // Delegated rules
 
 
- 
 
-    
+
+
     private static class FollowSets000 {
         public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
         public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
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 771bf71..18cc971 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
@@ -39,7 +39,7 @@
 
 	@Inject
 	private BaseGrammarAccess grammarAccess;
-	
+
 	@Override
 	public void sequence(ISerializationContext context, EObject semanticObject) {
 		EPackage epackage = semanticObject.eClass().getEPackage();
@@ -50,60 +50,60 @@
 			switch (semanticObject.eClass().getClassifierID()) {
 			case BaseCSPackage.MULTIPLICITY_BOUNDS_CS:
 				if (rule == grammarAccess.getMultiplicityBoundsCSRule()) {
-					sequence_MultiplicityBoundsCS(context, (MultiplicityBoundsCS) semanticObject); 
-					return; 
+					sequence_MultiplicityBoundsCS(context, (MultiplicityBoundsCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getMultiplicityCSRule()) {
-					sequence_MultiplicityBoundsCS_MultiplicityCS(context, (MultiplicityBoundsCS) semanticObject); 
-					return; 
+					sequence_MultiplicityBoundsCS_MultiplicityCS(context, (MultiplicityBoundsCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.MULTIPLICITY_STRING_CS:
 				if (rule == grammarAccess.getMultiplicityCSRule()) {
-					sequence_MultiplicityCS_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject); 
-					return; 
+					sequence_MultiplicityCS_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getMultiplicityStringCSRule()) {
-					sequence_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject); 
-					return; 
+					sequence_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PATH_ELEMENT_CS:
 				if (rule == grammarAccess.getFirstPathElementCSRule()) {
-					sequence_FirstPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_FirstPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNextPathElementCSRule()) {
-					sequence_NextPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_NextPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PATH_NAME_CS:
-				sequence_PathNameCS(context, (PathNameCS) semanticObject); 
-				return; 
+				sequence_PathNameCS(context, (PathNameCS) semanticObject);
+				return;
 			case BaseCSPackage.TEMPLATE_BINDING_CS:
-				sequence_TemplateBindingCS(context, (TemplateBindingCS) semanticObject); 
-				return; 
+				sequence_TemplateBindingCS(context, (TemplateBindingCS) semanticObject);
+				return;
 			case BaseCSPackage.TEMPLATE_PARAMETER_SUBSTITUTION_CS:
-				sequence_TemplateParameterSubstitutionCS(context, (TemplateParameterSubstitutionCS) semanticObject); 
-				return; 
+				sequence_TemplateParameterSubstitutionCS(context, (TemplateParameterSubstitutionCS) semanticObject);
+				return;
 			case BaseCSPackage.TEMPLATE_SIGNATURE_CS:
-				sequence_TemplateSignatureCS(context, (TemplateSignatureCS) semanticObject); 
-				return; 
+				sequence_TemplateSignatureCS(context, (TemplateSignatureCS) semanticObject);
+				return;
 			case BaseCSPackage.TYPE_PARAMETER_CS:
-				sequence_TypeParameterCS(context, (TypeParameterCS) semanticObject); 
-				return; 
+				sequence_TypeParameterCS(context, (TypeParameterCS) semanticObject);
+				return;
 			case BaseCSPackage.TYPED_TYPE_REF_CS:
-				sequence_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject); 
-				return; 
+				sequence_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject);
+				return;
 			case BaseCSPackage.WILDCARD_TYPE_REF_CS:
-				sequence_WildcardTypeRefCS(context, (WildcardTypeRefCS) semanticObject); 
-				return; 
+				sequence_WildcardTypeRefCS(context, (WildcardTypeRefCS) semanticObject);
+				return;
 			}
 		if (errorAcceptor != null)
 			errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
 	}
-	
+
 	/**
 	 * Contexts:
 	 *     FirstPathElementCS returns PathElementCS
@@ -120,8 +120,8 @@
 		feeder.accept(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1(), semanticObject.getReferredElement());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MultiplicityBoundsCS returns MultiplicityBoundsCS
@@ -132,8 +132,8 @@
 	protected void sequence_MultiplicityBoundsCS(ISerializationContext context, MultiplicityBoundsCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MultiplicityCS returns MultiplicityBoundsCS
@@ -144,8 +144,8 @@
 	protected void sequence_MultiplicityBoundsCS_MultiplicityCS(ISerializationContext context, MultiplicityBoundsCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MultiplicityCS returns MultiplicityStringCS
@@ -156,8 +156,8 @@
 	protected void sequence_MultiplicityCS_MultiplicityStringCS(ISerializationContext context, MultiplicityStringCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MultiplicityStringCS returns MultiplicityStringCS
@@ -168,8 +168,8 @@
 	protected void sequence_MultiplicityStringCS(ISerializationContext context, MultiplicityStringCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     NextPathElementCS returns PathElementCS
@@ -186,8 +186,8 @@
 		feeder.accept(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1(), semanticObject.getReferredElement());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PathNameCS returns PathNameCS
@@ -198,8 +198,8 @@
 	protected void sequence_PathNameCS(ISerializationContext context, PathNameCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TemplateBindingCS returns TemplateBindingCS
@@ -210,8 +210,8 @@
 	protected void sequence_TemplateBindingCS(ISerializationContext context, TemplateBindingCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TemplateParameterSubstitutionCS returns TemplateParameterSubstitutionCS
@@ -228,8 +228,8 @@
 		feeder.accept(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0(), semanticObject.getOwnedActualParameter());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TemplateSignatureCS returns TemplateSignatureCS
@@ -240,8 +240,8 @@
 	protected void sequence_TemplateSignatureCS(ISerializationContext context, TemplateSignatureCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeParameterCS returns TypeParameterCS
@@ -252,8 +252,8 @@
 	protected void sequence_TypeParameterCS(ISerializationContext context, TypeParameterCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeRefCS returns TypedTypeRefCS
@@ -266,8 +266,8 @@
 	protected void sequence_TypedTypeRefCS(ISerializationContext context, TypedTypeRefCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeRefCS returns WildcardTypeRefCS
@@ -279,6 +279,6 @@
 	protected void sequence_WildcardTypeRefCS(ISerializationContext context, WildcardTypeRefCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/serializer/AbstractBaseSyntacticSequencer.java b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/serializer/AbstractBaseSyntacticSequencer.java
index 5aebb02..cc5df44 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/serializer/AbstractBaseSyntacticSequencer.java
+++ b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/serializer/AbstractBaseSyntacticSequencer.java
@@ -28,19 +28,19 @@
 
 	protected BaseGrammarAccess grammarAccess;
 	protected AbstractElementAlias match_MultiplicityCS_VerticalLineQuestionMarkKeyword_2_0_q;
-	
+
 	@Inject
 	protected void init(IGrammarAccess access) {
 		grammarAccess = (BaseGrammarAccess) access;
 		match_MultiplicityCS_VerticalLineQuestionMarkKeyword_2_0_q = new TokenAlias(false, true, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
 	}
-	
+
 	@Override
 	protected String getUnassignedRuleCallToken(EObject semanticObject, RuleCall ruleCall, INode node) {
 		return "";
 	}
-	
-	
+
+
 	@Override
 	protected void emitUnassignedTokens(EObject semanticObject, ISynTransition transition, INode fromNode, INode toNode) {
 		if (transition.getAmbiguousSyntaxes().isEmpty()) return;
@@ -67,5 +67,5 @@
 	protected void emit_MultiplicityCS_VerticalLineQuestionMarkKeyword_2_0_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 }
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 d451d89..5c74ac0 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
@@ -22,8 +22,8 @@
 
 @Singleton
 public class BaseGrammarAccess extends AbstractGrammarElementFinder {
-	
-	
+
+
 	public class MultiplicityBoundsCSElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.MultiplicityBoundsCS");
 		private final Group cGroup = (Group)rule.eContents().get(1);
@@ -33,7 +33,7 @@
 		private final Keyword cFullStopFullStopKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
 		private final Assignment cUpperBoundAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
 		private final RuleCall cUpperBoundUPPERParserRuleCall_1_1_0 = (RuleCall)cUpperBoundAssignment_1_1.eContents().get(0);
-		
+
 		//MultiplicityBoundsCS:
 		//	lowerBound=LOWER ('..' upperBound=UPPER)?;
 		@Override public ParserRule getRule() { return rule; }
@@ -72,7 +72,7 @@
 		private final Assignment cIsNullFreeAssignment_2_1 = (Assignment)cAlternatives_2.eContents().get(1);
 		private final Keyword cIsNullFree1Keyword_2_1_0 = (Keyword)cIsNullFreeAssignment_2_1.eContents().get(0);
 		private final Keyword cRightSquareBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		
+
 		//MultiplicityCS:
 		//	'[' (MultiplicityBoundsCS | MultiplicityStringCS) ('|?' | isNullFree?='|1')? ']';
 		@Override public ParserRule getRule() { return rule; }
@@ -115,7 +115,7 @@
 		private final Keyword cStringBoundsAsteriskKeyword_0_0 = (Keyword)cStringBoundsAlternatives_0.eContents().get(0);
 		private final Keyword cStringBoundsPlusSignKeyword_0_1 = (Keyword)cStringBoundsAlternatives_0.eContents().get(1);
 		private final Keyword cStringBoundsQuestionMarkKeyword_0_2 = (Keyword)cStringBoundsAlternatives_0.eContents().get(2);
-		
+
 		//MultiplicityStringCS:
 		//	stringBounds=('*' | '+' | '?');
 		@Override public ParserRule getRule() { return rule; }
@@ -145,7 +145,7 @@
 		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);
-		
+
 		//PathNameCS:
 		//	ownedPathElements+=FirstPathElementCS ('::' ownedPathElements+=NextPathElementCS)*;
 		@Override public ParserRule getRule() { return rule; }
@@ -177,7 +177,7 @@
 		private final Assignment cReferredElementAssignment = (Assignment)rule.eContents().get(1);
 		private final CrossReference cReferredElementNamedElementCrossReference_0 = (CrossReference)cReferredElementAssignment.eContents().get(0);
 		private final RuleCall cReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1 = (RuleCall)cReferredElementNamedElementCrossReference_0.eContents().get(1);
-		
+
 		//FirstPathElementCS PathElementCS:
 		//	referredElement=[pivot::NamedElement|UnrestrictedName]
 		@Override public ParserRule getRule() { return rule; }
@@ -197,7 +197,7 @@
 		private final Assignment cReferredElementAssignment = (Assignment)rule.eContents().get(1);
 		private final CrossReference cReferredElementNamedElementCrossReference_0 = (CrossReference)cReferredElementAssignment.eContents().get(0);
 		private final RuleCall cReferredElementNamedElementUnreservedNameParserRuleCall_0_1 = (RuleCall)cReferredElementNamedElementCrossReference_0.eContents().get(1);
-		
+
 		//NextPathElementCS PathElementCS:
 		//	referredElement=[pivot::NamedElement|UnreservedName]
 		@Override public ParserRule getRule() { return rule; }
@@ -223,7 +223,7 @@
 		private final RuleCall cOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0 = (RuleCall)cOwnedSubstitutionsAssignment_1_1.eContents().get(0);
 		private final Assignment cOwnedMultiplicityAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cOwnedMultiplicityMultiplicityCSParserRuleCall_2_0 = (RuleCall)cOwnedMultiplicityAssignment_2.eContents().get(0);
-		
+
 		//TemplateBindingCS:
 		//	ownedSubstitutions+=TemplateParameterSubstitutionCS (',' ownedSubstitutions+=TemplateParameterSubstitutionCS)*
 		//	ownedMultiplicity=MultiplicityCS?;
@@ -262,7 +262,7 @@
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
 		private final Assignment cOwnedActualParameterAssignment = (Assignment)rule.eContents().get(1);
 		private final RuleCall cOwnedActualParameterTypeRefCSParserRuleCall_0 = (RuleCall)cOwnedActualParameterAssignment.eContents().get(0);
-		
+
 		//TemplateParameterSubstitutionCS:
 		//	ownedActualParameter=TypeRefCS;
 		@Override public ParserRule getRule() { return rule; }
@@ -285,7 +285,7 @@
 		private final Assignment cOwnedParametersAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
 		private final RuleCall cOwnedParametersTypeParameterCSParserRuleCall_2_1_0 = (RuleCall)cOwnedParametersAssignment_2_1.eContents().get(0);
 		private final Keyword cRightParenthesisKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		
+
 		//TemplateSignatureCS:
 		//	'(' ownedParameters+=TypeParameterCS (',' ownedParameters+=TypeParameterCS)* ')';
 		@Override public ParserRule getRule() { return rule; }
@@ -331,7 +331,7 @@
 		private final Keyword cAmpersandAmpersandKeyword_1_2_0 = (Keyword)cGroup_1_2.eContents().get(0);
 		private final Assignment cOwnedExtendsAssignment_1_2_1 = (Assignment)cGroup_1_2.eContents().get(1);
 		private final RuleCall cOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0 = (RuleCall)cOwnedExtendsAssignment_1_2_1.eContents().get(0);
-		
+
 		//TypeParameterCS:
 		//	name=UnrestrictedName ('extends' ownedExtends+=TypedRefCS ('&&' ownedExtends+=TypedRefCS)*)?;
 		@Override public ParserRule getRule() { return rule; }
@@ -375,7 +375,7 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final RuleCall cTypedRefCSParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cWildcardTypeRefCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		//TypeRefCS:
 		//	TypedRefCS | WildcardTypeRefCS;
 		@Override public ParserRule getRule() { return rule; }
@@ -393,7 +393,7 @@
 	public class TypedRefCSElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.TypedRefCS");
 		private final RuleCall cTypedTypeRefCSParserRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//TypedRefCS:
 		//	TypedTypeRefCS;
 		@Override public ParserRule getRule() { return rule; }
@@ -412,7 +412,7 @@
 		private final Assignment cOwnedBindingAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
 		private final RuleCall cOwnedBindingTemplateBindingCSParserRuleCall_1_1_0 = (RuleCall)cOwnedBindingAssignment_1_1.eContents().get(0);
 		private final Keyword cRightParenthesisKeyword_1_2 = (Keyword)cGroup_1.eContents().get(2);
-		
+
 		//TypedTypeRefCS:
 		//	ownedPathName=PathNameCS ('(' ownedBinding=TemplateBindingCS ')')?;
 		@Override public ParserRule getRule() { return rule; }
@@ -445,26 +445,26 @@
 	public class UnreservedNameElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.UnreservedName");
 		private final RuleCall cUnrestrictedNameParserRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//UnreservedName:
 		//	UnrestrictedName;
 		@Override public ParserRule getRule() { return rule; }
 
 		//// Intended to be overridden
-		// UnrestrictedName
+		//UnrestrictedName
 		public RuleCall getUnrestrictedNameParserRuleCall() { return cUnrestrictedNameParserRuleCall; }
 	}
 
 	public class UnrestrictedNameElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.UnrestrictedName");
 		private final RuleCall cIdentifierParserRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//UnrestrictedName:
 		//	Identifier;
 		@Override public ParserRule getRule() { return rule; }
 
 		//// Intended to be overridden
-		// Identifier
+		//Identifier
 		public RuleCall getIdentifierParserRuleCall() { return cIdentifierParserRuleCall; }
 	}
 
@@ -477,7 +477,7 @@
 		private final Keyword cExtendsKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0);
 		private final Assignment cOwnedExtendsAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
 		private final RuleCall cOwnedExtendsTypedRefCSParserRuleCall_2_1_0 = (RuleCall)cOwnedExtendsAssignment_2_1.eContents().get(0);
-		
+
 		//WildcardTypeRefCS:
 		//	{WildcardTypeRefCS} '?' ('extends' ownedExtends=TypedRefCS)?;
 		@Override public ParserRule getRule() { return rule; }
@@ -509,7 +509,7 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final RuleCall cSIMPLE_IDTerminalRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cESCAPED_IDTerminalRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		//ID:
 		//	SIMPLE_ID | ESCAPED_ID;
 		@Override public ParserRule getRule() { return rule; }
@@ -527,7 +527,7 @@
 	public class IdentifierElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.Identifier");
 		private final RuleCall cIDParserRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//Identifier:
 		//	ID;
 		@Override public ParserRule getRule() { return rule; }
@@ -539,7 +539,7 @@
 	public class LOWERElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.LOWER");
 		private final RuleCall cINTTerminalRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		/// * A lowerbounded integer is used to define the lowerbound of a collection multiplicity. The value may not be the unlimited value. * /
 		//LOWER ecore::EInt:
 		//	INT
@@ -552,27 +552,26 @@
 	public class NUMBER_LITERALElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.NUMBER_LITERAL");
 		private final RuleCall cINTTerminalRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		/// * A number may be an integer or floating point value. The declaration here appears to be that for just an integer. This is to avoid
 		// * lookahead conflicts in simple lexers between a dot within a floating point number and the dot-dot in a CollectionLiteralPartCS. A
 		// * practical implementation should give high priority to a successful parse of INT ('.' INT)? (('e' | 'E') ('+' | '-')? INT)? than
 		// * to the unsuccessful partial parse of INT '..'. The type of the INT terminal is String to allow the floating point syntax to be used.
-		// * /
-		//NUMBER_LITERAL BigNumber:
+		// * / NUMBER_LITERAL BigNumber:
 		//	INT
 		@Override public ParserRule getRule() { return rule; }
 
 		//// Not terminal to allow parser backtracking to sort out "5..7"
-		// INT
+		//INT
 		public RuleCall getINTTerminalRuleCall() { return cINTTerminalRuleCall; }
 	}
 
 	public class StringLiteralElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.StringLiteral");
 		private final RuleCall cSINGLE_QUOTED_STRINGTerminalRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//// EssentialOCLTokenSource pieces this together ('.' INT)? (('e' | 'E') ('+' | '-')? INT)?;
-		// StringLiteral:
+		//StringLiteral:
 		//	SINGLE_QUOTED_STRING;
 		@Override public ParserRule getRule() { return rule; }
 
@@ -585,7 +584,7 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final RuleCall cINTTerminalRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final Keyword cAsteriskKeyword_1 = (Keyword)cAlternatives.eContents().get(1);
-		
+
 		/// * An upperbounded integer is used to define the upperbound of a collection multiplicity. The value may be the unlimited value. * /
 		//UPPER ecore::EInt:
 		//	INT | '*'
@@ -604,7 +603,7 @@
 	public class URIElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.URI");
 		private final RuleCall cSINGLE_QUOTED_STRINGTerminalRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//URI:
 		//	SINGLE_QUOTED_STRING;
 		@Override public ParserRule getRule() { return rule; }
@@ -612,8 +611,8 @@
 		//SINGLE_QUOTED_STRING
 		public RuleCall getSINGLE_QUOTED_STRINGTerminalRuleCall() { return cSINGLE_QUOTED_STRINGTerminalRuleCall; }
 	}
-	
-	
+
+
 	private final MultiplicityBoundsCSElements pMultiplicityBoundsCS;
 	private final MultiplicityCSElements pMultiplicityCS;
 	private final MultiplicityStringCSElements pMultiplicityStringCS;
@@ -649,7 +648,7 @@
 	private final TerminalRule tSL_COMMENT;
 	private final TerminalRule tWS;
 	private final TerminalRule tANY_OTHER;
-	
+
 	private final Grammar grammar;
 
 	@Inject
@@ -691,7 +690,7 @@
 		this.tWS = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.WS");
 		this.tANY_OTHER = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.base.Base.ANY_OTHER");
 	}
-	
+
 	protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
 		Grammar grammar = grammarProvider.getGrammar(this);
 		while (grammar != null) {
@@ -707,20 +706,20 @@
 		}
 		return grammar;
 	}
-	
+
 	@Override
 	public Grammar getGrammar() {
 		return grammar;
 	}
-	
 
-	
+
+
 	//MultiplicityBoundsCS:
 	//	lowerBound=LOWER ('..' upperBound=UPPER)?;
 	public MultiplicityBoundsCSElements getMultiplicityBoundsCSAccess() {
 		return pMultiplicityBoundsCS;
 	}
-	
+
 	public ParserRule getMultiplicityBoundsCSRule() {
 		return getMultiplicityBoundsCSAccess().getRule();
 	}
@@ -730,7 +729,7 @@
 	public MultiplicityCSElements getMultiplicityCSAccess() {
 		return pMultiplicityCS;
 	}
-	
+
 	public ParserRule getMultiplicityCSRule() {
 		return getMultiplicityCSAccess().getRule();
 	}
@@ -740,7 +739,7 @@
 	public MultiplicityStringCSElements getMultiplicityStringCSAccess() {
 		return pMultiplicityStringCS;
 	}
-	
+
 	public ParserRule getMultiplicityStringCSRule() {
 		return getMultiplicityStringCSAccess().getRule();
 	}
@@ -750,7 +749,7 @@
 	public PathNameCSElements getPathNameCSAccess() {
 		return pPathNameCS;
 	}
-	
+
 	public ParserRule getPathNameCSRule() {
 		return getPathNameCSAccess().getRule();
 	}
@@ -760,7 +759,7 @@
 	public FirstPathElementCSElements getFirstPathElementCSAccess() {
 		return pFirstPathElementCS;
 	}
-	
+
 	public ParserRule getFirstPathElementCSRule() {
 		return getFirstPathElementCSAccess().getRule();
 	}
@@ -770,7 +769,7 @@
 	public NextPathElementCSElements getNextPathElementCSAccess() {
 		return pNextPathElementCS;
 	}
-	
+
 	public ParserRule getNextPathElementCSRule() {
 		return getNextPathElementCSAccess().getRule();
 	}
@@ -781,7 +780,7 @@
 	public TemplateBindingCSElements getTemplateBindingCSAccess() {
 		return pTemplateBindingCS;
 	}
-	
+
 	public ParserRule getTemplateBindingCSRule() {
 		return getTemplateBindingCSAccess().getRule();
 	}
@@ -791,7 +790,7 @@
 	public TemplateParameterSubstitutionCSElements getTemplateParameterSubstitutionCSAccess() {
 		return pTemplateParameterSubstitutionCS;
 	}
-	
+
 	public ParserRule getTemplateParameterSubstitutionCSRule() {
 		return getTemplateParameterSubstitutionCSAccess().getRule();
 	}
@@ -801,7 +800,7 @@
 	public TemplateSignatureCSElements getTemplateSignatureCSAccess() {
 		return pTemplateSignatureCS;
 	}
-	
+
 	public ParserRule getTemplateSignatureCSRule() {
 		return getTemplateSignatureCSAccess().getRule();
 	}
@@ -811,7 +810,7 @@
 	public TypeParameterCSElements getTypeParameterCSAccess() {
 		return pTypeParameterCS;
 	}
-	
+
 	public ParserRule getTypeParameterCSRule() {
 		return getTypeParameterCSAccess().getRule();
 	}
@@ -821,7 +820,7 @@
 	public TypeRefCSElements getTypeRefCSAccess() {
 		return pTypeRefCS;
 	}
-	
+
 	public ParserRule getTypeRefCSRule() {
 		return getTypeRefCSAccess().getRule();
 	}
@@ -831,7 +830,7 @@
 	public TypedRefCSElements getTypedRefCSAccess() {
 		return pTypedRefCS;
 	}
-	
+
 	public ParserRule getTypedRefCSRule() {
 		return getTypedRefCSAccess().getRule();
 	}
@@ -841,7 +840,7 @@
 	public TypedTypeRefCSElements getTypedTypeRefCSAccess() {
 		return pTypedTypeRefCS;
 	}
-	
+
 	public ParserRule getTypedTypeRefCSRule() {
 		return getTypedTypeRefCSAccess().getRule();
 	}
@@ -851,7 +850,7 @@
 	public UnreservedNameElements getUnreservedNameAccess() {
 		return pUnreservedName;
 	}
-	
+
 	public ParserRule getUnreservedNameRule() {
 		return getUnreservedNameAccess().getRule();
 	}
@@ -861,7 +860,7 @@
 	public UnrestrictedNameElements getUnrestrictedNameAccess() {
 		return pUnrestrictedName;
 	}
-	
+
 	public ParserRule getUnrestrictedNameRule() {
 		return getUnrestrictedNameAccess().getRule();
 	}
@@ -871,7 +870,7 @@
 	public WildcardTypeRefCSElements getWildcardTypeRefCSAccess() {
 		return pWildcardTypeRefCS;
 	}
-	
+
 	public ParserRule getWildcardTypeRefCSRule() {
 		return getWildcardTypeRefCSAccess().getRule();
 	}
@@ -881,7 +880,7 @@
 	public IDElements getIDAccess() {
 		return pID;
 	}
-	
+
 	public ParserRule getIDRule() {
 		return getIDAccess().getRule();
 	}
@@ -891,7 +890,7 @@
 	public IdentifierElements getIdentifierAccess() {
 		return pIdentifier;
 	}
-	
+
 	public ParserRule getIdentifierRule() {
 		return getIdentifierAccess().getRule();
 	}
@@ -902,7 +901,7 @@
 	public LOWERElements getLOWERAccess() {
 		return pLOWER;
 	}
-	
+
 	public ParserRule getLOWERRule() {
 		return getLOWERAccess().getRule();
 	}
@@ -911,24 +910,23 @@
 	// * lookahead conflicts in simple lexers between a dot within a floating point number and the dot-dot in a CollectionLiteralPartCS. A
 	// * practical implementation should give high priority to a successful parse of INT ('.' INT)? (('e' | 'E') ('+' | '-')? INT)? than
 	// * to the unsuccessful partial parse of INT '..'. The type of the INT terminal is String to allow the floating point syntax to be used.
-	// * /
-	//NUMBER_LITERAL BigNumber:
+	// * / NUMBER_LITERAL BigNumber:
 	//	INT
 	public NUMBER_LITERALElements getNUMBER_LITERALAccess() {
 		return pNUMBER_LITERAL;
 	}
-	
+
 	public ParserRule getNUMBER_LITERALRule() {
 		return getNUMBER_LITERALAccess().getRule();
 	}
 
 	//// EssentialOCLTokenSource pieces this together ('.' INT)? (('e' | 'E') ('+' | '-')? INT)?;
-	// StringLiteral:
+	//StringLiteral:
 	//	SINGLE_QUOTED_STRING;
 	public StringLiteralElements getStringLiteralAccess() {
 		return pStringLiteral;
 	}
-	
+
 	public ParserRule getStringLiteralRule() {
 		return getStringLiteralAccess().getRule();
 	}
@@ -939,7 +937,7 @@
 	public UPPERElements getUPPERAccess() {
 		return pUPPER;
 	}
-	
+
 	public ParserRule getUPPERRule() {
 		return getUPPERAccess().getRule();
 	}
@@ -949,7 +947,7 @@
 	public URIElements getURIAccess() {
 		return pURI;
 	}
-	
+
 	public ParserRule getURIRule() {
 		return getURIAccess().getRule();
 	}
@@ -958,71 +956,71 @@
 	//	'\\' ('b' | 't' | 'n' | 'f' | 'r' | 'u' | '"' | "'" | '\\');
 	public TerminalRule getESCAPED_CHARACTERRule() {
 		return tESCAPED_CHARACTER;
-	} 
+	}
 
 	//terminal fragment LETTER_CHARACTER:
 	//	'a'..'z' | 'A'..'Z' | '_';
 	public TerminalRule getLETTER_CHARACTERRule() {
 		return tLETTER_CHARACTER;
-	} 
+	}
 
 	//terminal DOUBLE_QUOTED_STRING:
 	//	'"' (ESCAPED_CHARACTER | !('\\' | '"'))* '"';
 	public TerminalRule getDOUBLE_QUOTED_STRINGRule() {
 		return tDOUBLE_QUOTED_STRING;
-	} 
+	}
 
 	//terminal SINGLE_QUOTED_STRING:
 	//	"'" (ESCAPED_CHARACTER | !('\\' | "'"))* "'";
 	public TerminalRule getSINGLE_QUOTED_STRINGRule() {
 		return tSINGLE_QUOTED_STRING;
-	} 
+	}
 
 	//terminal ML_SINGLE_QUOTED_STRING:
 	//	"/'"->"'/";
 	public TerminalRule getML_SINGLE_QUOTED_STRINGRule() {
 		return tML_SINGLE_QUOTED_STRING;
-	} 
+	}
 
 	//terminal SIMPLE_ID:
 	//	LETTER_CHARACTER (LETTER_CHARACTER | '0'..'9')*;
 	public TerminalRule getSIMPLE_IDRule() {
 		return tSIMPLE_ID;
-	} 
+	}
 
 	//terminal ESCAPED_ID:
 	//	"_" SINGLE_QUOTED_STRING;
 	public TerminalRule getESCAPED_IDRule() {
 		return tESCAPED_ID;
-	} 
+	}
 
 	//terminal INT:
 	//	'0'..'9'+;
 	public TerminalRule getINTRule() {
 		return tINT;
-	} 
+	}
 
 	//terminal ML_COMMENT:
 	//	'/ *'->'* /';
 	public TerminalRule getML_COMMENTRule() {
 		return tML_COMMENT;
-	} 
+	}
 
 	//terminal SL_COMMENT:
 	//	'--' !('\n' | '\r')* ('\r'? '\n')?;
 	public TerminalRule getSL_COMMENTRule() {
 		return tSL_COMMENT;
-	} 
+	}
 
 	//terminal WS:
 	//	' ' | '\t' | '\r' | '\n'+;
 	public TerminalRule getWSRule() {
 		return tWS;
-	} 
+	}
 
 	//terminal ANY_OTHER:
 	//	.;
 	public TerminalRule getANY_OTHERRule() {
 		return tANY_OTHER;
-	} 
+	}
 }
diff --git a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/validation/AbstractBaseJavaValidator.java b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/validation/AbstractBaseJavaValidator.java
index 8dc2b33..aa252a4 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/validation/AbstractBaseJavaValidator.java
+++ b/plugins/org.eclipse.ocl.xtext.base/src-gen/org/eclipse/ocl/xtext/base/validation/AbstractBaseJavaValidator.java
@@ -9,7 +9,7 @@
  *     E.D.Willink - initial API and implementation
  *******************************************************************************/
 package org.eclipse.ocl.xtext.base.validation;
- 
+
 import java.util.ArrayList;
 import java.util.List;
 
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/AbstractCompleteOCLUiModule.java b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/AbstractCompleteOCLUiModule.java
index 2cd3a61..16427c7 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/AbstractCompleteOCLUiModule.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/AbstractCompleteOCLUiModule.java
@@ -18,12 +18,12 @@
  */
 @SuppressWarnings("all")
 public abstract class AbstractCompleteOCLUiModule extends org.eclipse.xtext.ui.DefaultUiModule {
-	
+
 	public AbstractCompleteOCLUiModule(AbstractUIPlugin plugin) {
 		super(plugin);
 	}
-	
-	
+
+
 	// contributed by org.eclipse.xtext.ui.generator.ImplicitUiFragment
 	public com.google.inject.Provider<org.eclipse.xtext.resource.containers.IAllContainersState> provideIAllContainersState() {
 		return org.eclipse.xtext.ui.shared.Access.getJavaProjectsState();
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/CompleteOCLExecutableExtensionFactory.java b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/CompleteOCLExecutableExtensionFactory.java
index 90ac9f4..39a5339 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/CompleteOCLExecutableExtensionFactory.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/CompleteOCLExecutableExtensionFactory.java
@@ -19,7 +19,7 @@
 
 /**
  * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
+ * introduced subclass.
  */
 public class CompleteOCLExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory {
 
@@ -27,10 +27,10 @@
 	protected Bundle getBundle() {
 		return CompleteOCLActivator.getInstance().getBundle();
 	}
-	
+
 	@Override
 	protected Injector getInjector() {
 		return CompleteOCLActivator.getInstance().getInjector(CompleteOCLActivator.ORG_ECLIPSE_OCL_XTEXT_COMPLETEOCL_COMPLETEOCL);
 	}
-	
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/AbstractCompleteOCLProposalProvider.java b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/AbstractCompleteOCLProposalProvider.java
index c56fefb..e86792f 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/AbstractCompleteOCLProposalProvider.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/contentassist/AbstractCompleteOCLProposalProvider.java
@@ -17,12 +17,12 @@
 
 /**
  * Represents a generated, default implementation of superclass {@link org.eclipse.ocl.xtext.essentialocl.ui.contentassist.EssentialOCLProposalProvider}.
- * Methods are dynamically dispatched on the first parameter, i.e., you can override them 
- * with a more concrete subtype. 
+ * Methods are dynamically dispatched on the first parameter, i.e., you can override them
+ * with a more concrete subtype.
  */
 @SuppressWarnings("all")
 public class AbstractCompleteOCLProposalProvider extends org.eclipse.ocl.xtext.essentialocl.ui.contentassist.EssentialOCLProposalProvider {
-		
+
 	public void completeCompleteOCLDocumentCS_OwnedImports(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
@@ -155,7 +155,7 @@
 	public void completeSpecificationCS_ExprString(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
-    
+
 	public void complete_CompleteOCLDocumentCS(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		// subclasses may override
 	}
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 b77a190..807ce96 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
@@ -25,19 +25,19 @@
 import org.eclipse.ocl.xtext.completeocl.services.CompleteOCLGrammarAccess;
 
 public class CompleteOCLParser extends AbstractContentAssistParser {
-	
+
 	@Inject
 	private CompleteOCLGrammarAccess grammarAccess;
-	
+
 	private Map<AbstractElement, String> nameMappings;
-	
+
 	@Override
 	protected org.eclipse.ocl.xtext.completeocl.ui.contentassist.antlr.internal.InternalCompleteOCLParser createParser() {
 		org.eclipse.ocl.xtext.completeocl.ui.contentassist.antlr.internal.InternalCompleteOCLParser result = new org.eclipse.ocl.xtext.completeocl.ui.contentassist.antlr.internal.InternalCompleteOCLParser(null);
 		result.setGrammarAccess(grammarAccess);
 		return result;
 	}
-	
+
 	@Override
 	protected String getRuleName(AbstractElement element) {
 		if (nameMappings == null) {
@@ -389,7 +389,7 @@
 		}
 		return nameMappings.get(element);
 	}
-	
+
 	@Override
 	protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
 		try {
@@ -398,18 +398,18 @@
 			return typedParser.getFollowElements();
 		} catch(RecognitionException ex) {
 			throw new RuntimeException(ex);
-		}		
+		}
 	}
-	
+
 	@Override
 	protected String[] getInitialHiddenTokens() {
 		return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" };
 	}
-	
+
 	public CompleteOCLGrammarAccess getGrammarAccess() {
 		return this.grammarAccess;
 	}
-	
+
 	public void setGrammarAccess(CompleteOCLGrammarAccess grammarAccess) {
 		this.grammarAccess = grammarAccess;
 	}
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 73c14c5..0a9f5d6 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
@@ -13,19 +13,19 @@
 options {
 	superClass=AbstractInternalContentAssistParser;
 	backtrack=true;
-	
+
 }
 
 @lexer::header {
 package org.eclipse.ocl.xtext.completeocl.ui.contentassist.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
 }
 
 @parser::header {
-package org.eclipse.ocl.xtext.completeocl.ui.contentassist.antlr.internal; 
+package org.eclipse.ocl.xtext.completeocl.ui.contentassist.antlr.internal;
 
 import java.io.InputStream;
 import org.eclipse.xtext.*;
@@ -42,18 +42,18 @@
 }
 
 @parser::members {
- 
+
  	private CompleteOCLGrammarAccess grammarAccess;
- 	
+
     public void setGrammarAccess(CompleteOCLGrammarAccess grammarAccess) {
     	this.grammarAccess = grammarAccess;
     }
-    
+
     @Override
     protected Grammar getGrammar() {
     	return grammarAccess.getGrammar();
     }
-    
+
     @Override
     protected String getValueForTokenName(String tokenName) {
     	return tokenName;
@@ -65,12 +65,12 @@
 
 
 // Entry rule entryRuleCompleteOCLDocumentCS
-entryRuleCompleteOCLDocumentCS 
+entryRuleCompleteOCLDocumentCS
 :
 { before(grammarAccess.getCompleteOCLDocumentCSRule()); }
 	 ruleCompleteOCLDocumentCS
-{ after(grammarAccess.getCompleteOCLDocumentCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCompleteOCLDocumentCSRule()); }
+	 EOF
 ;
 
 // Rule CompleteOCLDocumentCS
@@ -93,12 +93,12 @@
 
 
 // Entry rule entryRuleCompleteOCLNavigationOperatorName
-entryRuleCompleteOCLNavigationOperatorName 
+entryRuleCompleteOCLNavigationOperatorName
 :
 { before(grammarAccess.getCompleteOCLNavigationOperatorNameRule()); }
 	 ruleCompleteOCLNavigationOperatorName
-{ after(grammarAccess.getCompleteOCLNavigationOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getCompleteOCLNavigationOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule CompleteOCLNavigationOperatorName
@@ -121,12 +121,12 @@
 
 
 // Entry rule entryRuleClassifierContextDeclCS
-entryRuleClassifierContextDeclCS 
+entryRuleClassifierContextDeclCS
 :
 { before(grammarAccess.getClassifierContextDeclCSRule()); }
 	 ruleClassifierContextDeclCS
-{ after(grammarAccess.getClassifierContextDeclCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getClassifierContextDeclCSRule()); }
+	 EOF
 ;
 
 // Rule ClassifierContextDeclCS
@@ -149,12 +149,12 @@
 
 
 // Entry rule entryRuleConstraintCS
-entryRuleConstraintCS 
+entryRuleConstraintCS
 :
 { before(grammarAccess.getConstraintCSRule()); }
 	 ruleConstraintCS
-{ after(grammarAccess.getConstraintCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getConstraintCSRule()); }
+	 EOF
 ;
 
 // Rule ConstraintCS
@@ -177,12 +177,12 @@
 
 
 // Entry rule entryRuleContextDeclCS
-entryRuleContextDeclCS 
+entryRuleContextDeclCS
 :
 { before(grammarAccess.getContextDeclCSRule()); }
 	 ruleContextDeclCS
-{ after(grammarAccess.getContextDeclCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getContextDeclCSRule()); }
+	 EOF
 ;
 
 // Rule ContextDeclCS
@@ -205,12 +205,12 @@
 
 
 // Entry rule entryRuleDefCS
-entryRuleDefCS 
+entryRuleDefCS
 :
 { before(grammarAccess.getDefCSRule()); }
 	 ruleDefCS
-{ after(grammarAccess.getDefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getDefCSRule()); }
+	 EOF
 ;
 
 // Rule DefCS
@@ -233,12 +233,12 @@
 
 
 // Entry rule entryRuleDefOperationCS
-entryRuleDefOperationCS 
+entryRuleDefOperationCS
 :
 { before(grammarAccess.getDefOperationCSRule()); }
 	 ruleDefOperationCS
-{ after(grammarAccess.getDefOperationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getDefOperationCSRule()); }
+	 EOF
 ;
 
 // Rule DefOperationCS
@@ -261,12 +261,12 @@
 
 
 // Entry rule entryRuleDefParameterCS
-entryRuleDefParameterCS 
+entryRuleDefParameterCS
 :
 { before(grammarAccess.getDefParameterCSRule()); }
 	 ruleDefParameterCS
-{ after(grammarAccess.getDefParameterCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getDefParameterCSRule()); }
+	 EOF
 ;
 
 // Rule DefParameterCS
@@ -289,12 +289,12 @@
 
 
 // Entry rule entryRuleDefPropertyCS
-entryRuleDefPropertyCS 
+entryRuleDefPropertyCS
 :
 { before(grammarAccess.getDefPropertyCSRule()); }
 	 ruleDefPropertyCS
-{ after(grammarAccess.getDefPropertyCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getDefPropertyCSRule()); }
+	 EOF
 ;
 
 // Rule DefPropertyCS
@@ -317,12 +317,12 @@
 
 
 // Entry rule entryRuleImportCS
-entryRuleImportCS 
+entryRuleImportCS
 :
 { before(grammarAccess.getImportCSRule()); }
 	 ruleImportCS
-{ after(grammarAccess.getImportCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getImportCSRule()); }
+	 EOF
 ;
 
 // Rule ImportCS
@@ -345,12 +345,12 @@
 
 
 // Entry rule entryRuleOperationContextDeclCS
-entryRuleOperationContextDeclCS 
+entryRuleOperationContextDeclCS
 :
 { before(grammarAccess.getOperationContextDeclCSRule()); }
 	 ruleOperationContextDeclCS
-{ after(grammarAccess.getOperationContextDeclCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getOperationContextDeclCSRule()); }
+	 EOF
 ;
 
 // Rule OperationContextDeclCS
@@ -373,12 +373,12 @@
 
 
 // Entry rule entryRulePackageDeclarationCS
-entryRulePackageDeclarationCS 
+entryRulePackageDeclarationCS
 :
 { before(grammarAccess.getPackageDeclarationCSRule()); }
 	 rulePackageDeclarationCS
-{ after(grammarAccess.getPackageDeclarationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPackageDeclarationCSRule()); }
+	 EOF
 ;
 
 // Rule PackageDeclarationCS
@@ -401,12 +401,12 @@
 
 
 // Entry rule entryRuleParameterCS
-entryRuleParameterCS 
+entryRuleParameterCS
 :
 { before(grammarAccess.getParameterCSRule()); }
 	 ruleParameterCS
-{ after(grammarAccess.getParameterCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getParameterCSRule()); }
+	 EOF
 ;
 
 // Rule ParameterCS
@@ -429,12 +429,12 @@
 
 
 // Entry rule entryRulePropertyContextDeclCS
-entryRulePropertyContextDeclCS 
+entryRulePropertyContextDeclCS
 :
 { before(grammarAccess.getPropertyContextDeclCSRule()); }
 	 rulePropertyContextDeclCS
-{ after(grammarAccess.getPropertyContextDeclCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPropertyContextDeclCSRule()); }
+	 EOF
 ;
 
 // Rule PropertyContextDeclCS
@@ -457,12 +457,12 @@
 
 
 // Entry rule entryRuleSpecificationCS
-entryRuleSpecificationCS 
+entryRuleSpecificationCS
 :
 { before(grammarAccess.getSpecificationCSRule()); }
 	 ruleSpecificationCS
-{ after(grammarAccess.getSpecificationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getSpecificationCSRule()); }
+	 EOF
 ;
 
 // Rule SpecificationCS
@@ -485,12 +485,12 @@
 
 
 // Entry rule entryRuleTemplateSignatureCS
-entryRuleTemplateSignatureCS 
+entryRuleTemplateSignatureCS
 :
 { before(grammarAccess.getTemplateSignatureCSRule()); }
 	 ruleTemplateSignatureCS
-{ after(grammarAccess.getTemplateSignatureCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTemplateSignatureCSRule()); }
+	 EOF
 ;
 
 // Rule TemplateSignatureCS
@@ -513,12 +513,12 @@
 
 
 // Entry rule entryRuleTypedRefCS
-entryRuleTypedRefCS 
+entryRuleTypedRefCS
 :
 { before(grammarAccess.getTypedRefCSRule()); }
 	 ruleTypedRefCS
-{ after(grammarAccess.getTypedRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypedRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypedRefCS
@@ -541,12 +541,12 @@
 
 
 // Entry rule entryRuleUnrestrictedName
-entryRuleUnrestrictedName 
+entryRuleUnrestrictedName
 :
 { before(grammarAccess.getUnrestrictedNameRule()); }
 	 ruleUnrestrictedName
-{ after(grammarAccess.getUnrestrictedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnrestrictedNameRule()); }
+	 EOF
 ;
 
 // Rule UnrestrictedName
@@ -569,12 +569,12 @@
 
 
 // Entry rule entryRuleNavigatingArgExpCS
-entryRuleNavigatingArgExpCS 
+entryRuleNavigatingArgExpCS
 :
 { before(grammarAccess.getNavigatingArgExpCSRule()); }
 	 ruleNavigatingArgExpCS
-{ after(grammarAccess.getNavigatingArgExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingArgExpCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingArgExpCS
@@ -597,12 +597,12 @@
 
 
 // Entry rule entryRuleNavigationOperatorName
-entryRuleNavigationOperatorName 
+entryRuleNavigationOperatorName
 :
 { before(grammarAccess.getNavigationOperatorNameRule()); }
 	 ruleNavigationOperatorName
-{ after(grammarAccess.getNavigationOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigationOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule NavigationOperatorName
@@ -625,12 +625,12 @@
 
 
 // Entry rule entryRulePrimitiveTypeIdentifier
-entryRulePrimitiveTypeIdentifier 
+entryRulePrimitiveTypeIdentifier
 :
 { before(grammarAccess.getPrimitiveTypeIdentifierRule()); }
 	 rulePrimitiveTypeIdentifier
-{ after(grammarAccess.getPrimitiveTypeIdentifierRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimitiveTypeIdentifierRule()); }
+	 EOF
 ;
 
 // Rule PrimitiveTypeIdentifier
@@ -657,12 +657,12 @@
 
 
 // Entry rule entryRuleEssentialOCLUnaryOperatorName
-entryRuleEssentialOCLUnaryOperatorName 
+entryRuleEssentialOCLUnaryOperatorName
 :
 { before(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); }
 	 ruleEssentialOCLUnaryOperatorName
-{ after(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnaryOperatorName
@@ -685,12 +685,12 @@
 
 
 // Entry rule entryRuleEssentialOCLInfixOperatorName
-entryRuleEssentialOCLInfixOperatorName 
+entryRuleEssentialOCLInfixOperatorName
 :
 { before(grammarAccess.getEssentialOCLInfixOperatorNameRule()); }
 	 ruleEssentialOCLInfixOperatorName
-{ after(grammarAccess.getEssentialOCLInfixOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLInfixOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLInfixOperatorName
@@ -713,12 +713,12 @@
 
 
 // Entry rule entryRuleEssentialOCLNavigationOperatorName
-entryRuleEssentialOCLNavigationOperatorName 
+entryRuleEssentialOCLNavigationOperatorName
 :
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); }
 	 ruleEssentialOCLNavigationOperatorName
-{ after(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLNavigationOperatorName
@@ -741,12 +741,12 @@
 
 
 // Entry rule entryRuleBinaryOperatorName
-entryRuleBinaryOperatorName 
+entryRuleBinaryOperatorName
 :
 { before(grammarAccess.getBinaryOperatorNameRule()); }
 	 ruleBinaryOperatorName
-{ after(grammarAccess.getBinaryOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getBinaryOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule BinaryOperatorName
@@ -769,12 +769,12 @@
 
 
 // Entry rule entryRuleInfixOperatorName
-entryRuleInfixOperatorName 
+entryRuleInfixOperatorName
 :
 { before(grammarAccess.getInfixOperatorNameRule()); }
 	 ruleInfixOperatorName
-{ after(grammarAccess.getInfixOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getInfixOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule InfixOperatorName
@@ -797,12 +797,12 @@
 
 
 // Entry rule entryRuleUnaryOperatorName
-entryRuleUnaryOperatorName 
+entryRuleUnaryOperatorName
 :
 { before(grammarAccess.getUnaryOperatorNameRule()); }
 	 ruleUnaryOperatorName
-{ after(grammarAccess.getUnaryOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnaryOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule UnaryOperatorName
@@ -825,12 +825,12 @@
 
 
 // Entry rule entryRuleEssentialOCLUnrestrictedName
-entryRuleEssentialOCLUnrestrictedName 
+entryRuleEssentialOCLUnrestrictedName
 :
 { before(grammarAccess.getEssentialOCLUnrestrictedNameRule()); }
 	 ruleEssentialOCLUnrestrictedName
-{ after(grammarAccess.getEssentialOCLUnrestrictedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLUnrestrictedNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnrestrictedName
@@ -853,12 +853,12 @@
 
 
 // Entry rule entryRuleEssentialOCLUnreservedName
-entryRuleEssentialOCLUnreservedName 
+entryRuleEssentialOCLUnreservedName
 :
 { before(grammarAccess.getEssentialOCLUnreservedNameRule()); }
 	 ruleEssentialOCLUnreservedName
-{ after(grammarAccess.getEssentialOCLUnreservedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLUnreservedNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnreservedName
@@ -881,12 +881,12 @@
 
 
 // Entry rule entryRuleUnreservedName
-entryRuleUnreservedName 
+entryRuleUnreservedName
 :
 { before(grammarAccess.getUnreservedNameRule()); }
 	 ruleUnreservedName
-{ after(grammarAccess.getUnreservedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnreservedNameRule()); }
+	 EOF
 ;
 
 // Rule UnreservedName
@@ -909,12 +909,12 @@
 
 
 // Entry rule entryRuleURIPathNameCS
-entryRuleURIPathNameCS 
+entryRuleURIPathNameCS
 :
 { before(grammarAccess.getURIPathNameCSRule()); }
 	 ruleURIPathNameCS
-{ after(grammarAccess.getURIPathNameCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getURIPathNameCSRule()); }
+	 EOF
 ;
 
 // Rule URIPathNameCS
@@ -937,12 +937,12 @@
 
 
 // Entry rule entryRuleURIFirstPathElementCS
-entryRuleURIFirstPathElementCS 
+entryRuleURIFirstPathElementCS
 :
 { before(grammarAccess.getURIFirstPathElementCSRule()); }
 	 ruleURIFirstPathElementCS
-{ after(grammarAccess.getURIFirstPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getURIFirstPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule URIFirstPathElementCS
@@ -965,12 +965,12 @@
 
 
 // Entry rule entryRulePrimitiveTypeCS
-entryRulePrimitiveTypeCS 
+entryRulePrimitiveTypeCS
 :
 { before(grammarAccess.getPrimitiveTypeCSRule()); }
 	 rulePrimitiveTypeCS
-{ after(grammarAccess.getPrimitiveTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimitiveTypeCSRule()); }
+	 EOF
 ;
 
 // Rule PrimitiveTypeCS
@@ -993,12 +993,12 @@
 
 
 // Entry rule entryRuleCollectionTypeIdentifier
-entryRuleCollectionTypeIdentifier 
+entryRuleCollectionTypeIdentifier
 :
 { before(grammarAccess.getCollectionTypeIdentifierRule()); }
 	 ruleCollectionTypeIdentifier
-{ after(grammarAccess.getCollectionTypeIdentifierRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionTypeIdentifierRule()); }
+	 EOF
 ;
 
 // Rule CollectionTypeIdentifier
@@ -1021,12 +1021,12 @@
 
 
 // Entry rule entryRuleCollectionTypeCS
-entryRuleCollectionTypeCS 
+entryRuleCollectionTypeCS
 :
 { before(grammarAccess.getCollectionTypeCSRule()); }
 	 ruleCollectionTypeCS
-{ after(grammarAccess.getCollectionTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionTypeCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionTypeCS
@@ -1049,12 +1049,12 @@
 
 
 // Entry rule entryRuleMapTypeCS
-entryRuleMapTypeCS 
+entryRuleMapTypeCS
 :
 { before(grammarAccess.getMapTypeCSRule()); }
 	 ruleMapTypeCS
-{ after(grammarAccess.getMapTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMapTypeCSRule()); }
+	 EOF
 ;
 
 // Rule MapTypeCS
@@ -1077,12 +1077,12 @@
 
 
 // Entry rule entryRuleTupleTypeCS
-entryRuleTupleTypeCS 
+entryRuleTupleTypeCS
 :
 { before(grammarAccess.getTupleTypeCSRule()); }
 	 ruleTupleTypeCS
-{ after(grammarAccess.getTupleTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTupleTypeCSRule()); }
+	 EOF
 ;
 
 // Rule TupleTypeCS
@@ -1105,12 +1105,12 @@
 
 
 // Entry rule entryRuleTuplePartCS
-entryRuleTuplePartCS 
+entryRuleTuplePartCS
 :
 { before(grammarAccess.getTuplePartCSRule()); }
 	 ruleTuplePartCS
-{ after(grammarAccess.getTuplePartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTuplePartCSRule()); }
+	 EOF
 ;
 
 // Rule TuplePartCS
@@ -1133,12 +1133,12 @@
 
 
 // Entry rule entryRuleCollectionLiteralExpCS
-entryRuleCollectionLiteralExpCS 
+entryRuleCollectionLiteralExpCS
 :
 { before(grammarAccess.getCollectionLiteralExpCSRule()); }
 	 ruleCollectionLiteralExpCS
-{ after(grammarAccess.getCollectionLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionLiteralExpCS
@@ -1161,12 +1161,12 @@
 
 
 // Entry rule entryRuleCollectionLiteralPartCS
-entryRuleCollectionLiteralPartCS 
+entryRuleCollectionLiteralPartCS
 :
 { before(grammarAccess.getCollectionLiteralPartCSRule()); }
 	 ruleCollectionLiteralPartCS
-{ after(grammarAccess.getCollectionLiteralPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionLiteralPartCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionLiteralPartCS
@@ -1189,12 +1189,12 @@
 
 
 // Entry rule entryRuleCollectionPatternCS
-entryRuleCollectionPatternCS 
+entryRuleCollectionPatternCS
 :
 { before(grammarAccess.getCollectionPatternCSRule()); }
 	 ruleCollectionPatternCS
-{ after(grammarAccess.getCollectionPatternCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionPatternCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionPatternCS
@@ -1217,12 +1217,12 @@
 
 
 // Entry rule entryRuleShadowPartCS
-entryRuleShadowPartCS 
+entryRuleShadowPartCS
 :
 { before(grammarAccess.getShadowPartCSRule()); }
 	 ruleShadowPartCS
-{ after(grammarAccess.getShadowPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getShadowPartCSRule()); }
+	 EOF
 ;
 
 // Rule ShadowPartCS
@@ -1245,12 +1245,12 @@
 
 
 // Entry rule entryRulePatternExpCS
-entryRulePatternExpCS 
+entryRulePatternExpCS
 :
 { before(grammarAccess.getPatternExpCSRule()); }
 	 rulePatternExpCS
-{ after(grammarAccess.getPatternExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPatternExpCSRule()); }
+	 EOF
 ;
 
 // Rule PatternExpCS
@@ -1273,12 +1273,12 @@
 
 
 // Entry rule entryRuleLambdaLiteralExpCS
-entryRuleLambdaLiteralExpCS 
+entryRuleLambdaLiteralExpCS
 :
 { before(grammarAccess.getLambdaLiteralExpCSRule()); }
 	 ruleLambdaLiteralExpCS
-{ after(grammarAccess.getLambdaLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLambdaLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule LambdaLiteralExpCS
@@ -1301,12 +1301,12 @@
 
 
 // Entry rule entryRuleMapLiteralExpCS
-entryRuleMapLiteralExpCS 
+entryRuleMapLiteralExpCS
 :
 { before(grammarAccess.getMapLiteralExpCSRule()); }
 	 ruleMapLiteralExpCS
-{ after(grammarAccess.getMapLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMapLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule MapLiteralExpCS
@@ -1329,12 +1329,12 @@
 
 
 // Entry rule entryRuleMapLiteralPartCS
-entryRuleMapLiteralPartCS 
+entryRuleMapLiteralPartCS
 :
 { before(grammarAccess.getMapLiteralPartCSRule()); }
 	 ruleMapLiteralPartCS
-{ after(grammarAccess.getMapLiteralPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMapLiteralPartCSRule()); }
+	 EOF
 ;
 
 // Rule MapLiteralPartCS
@@ -1357,12 +1357,12 @@
 
 
 // Entry rule entryRulePrimitiveLiteralExpCS
-entryRulePrimitiveLiteralExpCS 
+entryRulePrimitiveLiteralExpCS
 :
 { before(grammarAccess.getPrimitiveLiteralExpCSRule()); }
 	 rulePrimitiveLiteralExpCS
-{ after(grammarAccess.getPrimitiveLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimitiveLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrimitiveLiteralExpCS
@@ -1385,12 +1385,12 @@
 
 
 // Entry rule entryRuleTupleLiteralExpCS
-entryRuleTupleLiteralExpCS 
+entryRuleTupleLiteralExpCS
 :
 { before(grammarAccess.getTupleLiteralExpCSRule()); }
 	 ruleTupleLiteralExpCS
-{ after(grammarAccess.getTupleLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTupleLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule TupleLiteralExpCS
@@ -1413,12 +1413,12 @@
 
 
 // Entry rule entryRuleTupleLiteralPartCS
-entryRuleTupleLiteralPartCS 
+entryRuleTupleLiteralPartCS
 :
 { before(grammarAccess.getTupleLiteralPartCSRule()); }
 	 ruleTupleLiteralPartCS
-{ after(grammarAccess.getTupleLiteralPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTupleLiteralPartCSRule()); }
+	 EOF
 ;
 
 // Rule TupleLiteralPartCS
@@ -1441,12 +1441,12 @@
 
 
 // Entry rule entryRuleNumberLiteralExpCS
-entryRuleNumberLiteralExpCS 
+entryRuleNumberLiteralExpCS
 :
 { before(grammarAccess.getNumberLiteralExpCSRule()); }
 	 ruleNumberLiteralExpCS
-{ after(grammarAccess.getNumberLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNumberLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule NumberLiteralExpCS
@@ -1469,12 +1469,12 @@
 
 
 // Entry rule entryRuleStringLiteralExpCS
-entryRuleStringLiteralExpCS 
+entryRuleStringLiteralExpCS
 :
 { before(grammarAccess.getStringLiteralExpCSRule()); }
 	 ruleStringLiteralExpCS
-{ after(grammarAccess.getStringLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getStringLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule StringLiteralExpCS
@@ -1504,12 +1504,12 @@
 
 
 // Entry rule entryRuleBooleanLiteralExpCS
-entryRuleBooleanLiteralExpCS 
+entryRuleBooleanLiteralExpCS
 :
 { before(grammarAccess.getBooleanLiteralExpCSRule()); }
 	 ruleBooleanLiteralExpCS
-{ after(grammarAccess.getBooleanLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getBooleanLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule BooleanLiteralExpCS
@@ -1532,12 +1532,12 @@
 
 
 // Entry rule entryRuleUnlimitedNaturalLiteralExpCS
-entryRuleUnlimitedNaturalLiteralExpCS 
+entryRuleUnlimitedNaturalLiteralExpCS
 :
 { before(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); }
 	 ruleUnlimitedNaturalLiteralExpCS
-{ after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule UnlimitedNaturalLiteralExpCS
@@ -1560,12 +1560,12 @@
 
 
 // Entry rule entryRuleInvalidLiteralExpCS
-entryRuleInvalidLiteralExpCS 
+entryRuleInvalidLiteralExpCS
 :
 { before(grammarAccess.getInvalidLiteralExpCSRule()); }
 	 ruleInvalidLiteralExpCS
-{ after(grammarAccess.getInvalidLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getInvalidLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule InvalidLiteralExpCS
@@ -1588,12 +1588,12 @@
 
 
 // Entry rule entryRuleNullLiteralExpCS
-entryRuleNullLiteralExpCS 
+entryRuleNullLiteralExpCS
 :
 { before(grammarAccess.getNullLiteralExpCSRule()); }
 	 ruleNullLiteralExpCS
-{ after(grammarAccess.getNullLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNullLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule NullLiteralExpCS
@@ -1616,12 +1616,12 @@
 
 
 // Entry rule entryRuleTypeLiteralCS
-entryRuleTypeLiteralCS 
+entryRuleTypeLiteralCS
 :
 { before(grammarAccess.getTypeLiteralCSRule()); }
 	 ruleTypeLiteralCS
-{ after(grammarAccess.getTypeLiteralCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeLiteralCSRule()); }
+	 EOF
 ;
 
 // Rule TypeLiteralCS
@@ -1644,12 +1644,12 @@
 
 
 // Entry rule entryRuleTypeLiteralWithMultiplicityCS
-entryRuleTypeLiteralWithMultiplicityCS 
+entryRuleTypeLiteralWithMultiplicityCS
 :
 { before(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); }
 	 ruleTypeLiteralWithMultiplicityCS
-{ after(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); }
+	 EOF
 ;
 
 // Rule TypeLiteralWithMultiplicityCS
@@ -1672,12 +1672,12 @@
 
 
 // Entry rule entryRuleTypeLiteralExpCS
-entryRuleTypeLiteralExpCS 
+entryRuleTypeLiteralExpCS
 :
 { before(grammarAccess.getTypeLiteralExpCSRule()); }
 	 ruleTypeLiteralExpCS
-{ after(grammarAccess.getTypeLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule TypeLiteralExpCS
@@ -1700,12 +1700,12 @@
 
 
 // Entry rule entryRuleTypeNameExpCS
-entryRuleTypeNameExpCS 
+entryRuleTypeNameExpCS
 :
 { before(grammarAccess.getTypeNameExpCSRule()); }
 	 ruleTypeNameExpCS
-{ after(grammarAccess.getTypeNameExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeNameExpCSRule()); }
+	 EOF
 ;
 
 // Rule TypeNameExpCS
@@ -1728,12 +1728,12 @@
 
 
 // Entry rule entryRuleTypeExpCS
-entryRuleTypeExpCS 
+entryRuleTypeExpCS
 :
 { before(grammarAccess.getTypeExpCSRule()); }
 	 ruleTypeExpCS
-{ after(grammarAccess.getTypeExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeExpCSRule()); }
+	 EOF
 ;
 
 // Rule TypeExpCS
@@ -1756,12 +1756,12 @@
 
 
 // Entry rule entryRuleExpCS
-entryRuleExpCS 
+entryRuleExpCS
 :
 { before(grammarAccess.getExpCSRule()); }
 	 ruleExpCS
-{ after(grammarAccess.getExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getExpCSRule()); }
+	 EOF
 ;
 
 // Rule ExpCS
@@ -1784,12 +1784,12 @@
 
 
 // Entry rule entryRulePrefixedLetExpCS
-entryRulePrefixedLetExpCS 
+entryRulePrefixedLetExpCS
 :
 { before(grammarAccess.getPrefixedLetExpCSRule()); }
 	 rulePrefixedLetExpCS
-{ after(grammarAccess.getPrefixedLetExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrefixedLetExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrefixedLetExpCS
@@ -1812,12 +1812,12 @@
 
 
 // Entry rule entryRulePrefixedPrimaryExpCS
-entryRulePrefixedPrimaryExpCS 
+entryRulePrefixedPrimaryExpCS
 :
 { before(grammarAccess.getPrefixedPrimaryExpCSRule()); }
 	 rulePrefixedPrimaryExpCS
-{ after(grammarAccess.getPrefixedPrimaryExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrefixedPrimaryExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrefixedPrimaryExpCS
@@ -1840,12 +1840,12 @@
 
 
 // Entry rule entryRulePrimaryExpCS
-entryRulePrimaryExpCS 
+entryRulePrimaryExpCS
 :
 { before(grammarAccess.getPrimaryExpCSRule()); }
 	 rulePrimaryExpCS
-{ after(grammarAccess.getPrimaryExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimaryExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrimaryExpCS
@@ -1868,12 +1868,12 @@
 
 
 // Entry rule entryRuleNameExpCS
-entryRuleNameExpCS 
+entryRuleNameExpCS
 :
 { before(grammarAccess.getNameExpCSRule()); }
 	 ruleNameExpCS
-{ after(grammarAccess.getNameExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNameExpCSRule()); }
+	 EOF
 ;
 
 // Rule NameExpCS
@@ -1896,12 +1896,12 @@
 
 
 // Entry rule entryRuleCurlyBracketedClauseCS
-entryRuleCurlyBracketedClauseCS 
+entryRuleCurlyBracketedClauseCS
 :
 { before(grammarAccess.getCurlyBracketedClauseCSRule()); }
 	 ruleCurlyBracketedClauseCS
-{ after(grammarAccess.getCurlyBracketedClauseCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCurlyBracketedClauseCSRule()); }
+	 EOF
 ;
 
 // Rule CurlyBracketedClauseCS
@@ -1924,12 +1924,12 @@
 
 
 // Entry rule entryRuleRoundBracketedClauseCS
-entryRuleRoundBracketedClauseCS 
+entryRuleRoundBracketedClauseCS
 :
 { before(grammarAccess.getRoundBracketedClauseCSRule()); }
 	 ruleRoundBracketedClauseCS
-{ after(grammarAccess.getRoundBracketedClauseCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getRoundBracketedClauseCSRule()); }
+	 EOF
 ;
 
 // Rule RoundBracketedClauseCS
@@ -1952,12 +1952,12 @@
 
 
 // Entry rule entryRuleSquareBracketedClauseCS
-entryRuleSquareBracketedClauseCS 
+entryRuleSquareBracketedClauseCS
 :
 { before(grammarAccess.getSquareBracketedClauseCSRule()); }
 	 ruleSquareBracketedClauseCS
-{ after(grammarAccess.getSquareBracketedClauseCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getSquareBracketedClauseCSRule()); }
+	 EOF
 ;
 
 // Rule SquareBracketedClauseCS
@@ -1980,12 +1980,12 @@
 
 
 // Entry rule entryRuleNavigatingArgCS
-entryRuleNavigatingArgCS 
+entryRuleNavigatingArgCS
 :
 { before(grammarAccess.getNavigatingArgCSRule()); }
 	 ruleNavigatingArgCS
-{ after(grammarAccess.getNavigatingArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingArgCS
@@ -2008,12 +2008,12 @@
 
 
 // Entry rule entryRuleNavigatingBarArgCS
-entryRuleNavigatingBarArgCS 
+entryRuleNavigatingBarArgCS
 :
 { before(grammarAccess.getNavigatingBarArgCSRule()); }
 	 ruleNavigatingBarArgCS
-{ after(grammarAccess.getNavigatingBarArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingBarArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingBarArgCS
@@ -2036,12 +2036,12 @@
 
 
 // Entry rule entryRuleNavigatingCommaArgCS
-entryRuleNavigatingCommaArgCS 
+entryRuleNavigatingCommaArgCS
 :
 { before(grammarAccess.getNavigatingCommaArgCSRule()); }
 	 ruleNavigatingCommaArgCS
-{ after(grammarAccess.getNavigatingCommaArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingCommaArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingCommaArgCS
@@ -2064,12 +2064,12 @@
 
 
 // Entry rule entryRuleNavigatingSemiArgCS
-entryRuleNavigatingSemiArgCS 
+entryRuleNavigatingSemiArgCS
 :
 { before(grammarAccess.getNavigatingSemiArgCSRule()); }
 	 ruleNavigatingSemiArgCS
-{ after(grammarAccess.getNavigatingSemiArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingSemiArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingSemiArgCS
@@ -2092,12 +2092,12 @@
 
 
 // Entry rule entryRuleIfExpCS
-entryRuleIfExpCS 
+entryRuleIfExpCS
 :
 { before(grammarAccess.getIfExpCSRule()); }
 	 ruleIfExpCS
-{ after(grammarAccess.getIfExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getIfExpCSRule()); }
+	 EOF
 ;
 
 // Rule IfExpCS
@@ -2120,12 +2120,12 @@
 
 
 // Entry rule entryRuleElseIfThenExpCS
-entryRuleElseIfThenExpCS 
+entryRuleElseIfThenExpCS
 :
 { before(grammarAccess.getElseIfThenExpCSRule()); }
 	 ruleElseIfThenExpCS
-{ after(grammarAccess.getElseIfThenExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getElseIfThenExpCSRule()); }
+	 EOF
 ;
 
 // Rule ElseIfThenExpCS
@@ -2148,12 +2148,12 @@
 
 
 // Entry rule entryRuleLetExpCS
-entryRuleLetExpCS 
+entryRuleLetExpCS
 :
 { before(grammarAccess.getLetExpCSRule()); }
 	 ruleLetExpCS
-{ after(grammarAccess.getLetExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLetExpCSRule()); }
+	 EOF
 ;
 
 // Rule LetExpCS
@@ -2176,12 +2176,12 @@
 
 
 // Entry rule entryRuleLetVariableCS
-entryRuleLetVariableCS 
+entryRuleLetVariableCS
 :
 { before(grammarAccess.getLetVariableCSRule()); }
 	 ruleLetVariableCS
-{ after(grammarAccess.getLetVariableCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLetVariableCSRule()); }
+	 EOF
 ;
 
 // Rule LetVariableCS
@@ -2204,12 +2204,12 @@
 
 
 // Entry rule entryRuleNestedExpCS
-entryRuleNestedExpCS 
+entryRuleNestedExpCS
 :
 { before(grammarAccess.getNestedExpCSRule()); }
 	 ruleNestedExpCS
-{ after(grammarAccess.getNestedExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNestedExpCSRule()); }
+	 EOF
 ;
 
 // Rule NestedExpCS
@@ -2232,12 +2232,12 @@
 
 
 // Entry rule entryRuleSelfExpCS
-entryRuleSelfExpCS 
+entryRuleSelfExpCS
 :
 { before(grammarAccess.getSelfExpCSRule()); }
 	 ruleSelfExpCS
-{ after(grammarAccess.getSelfExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getSelfExpCSRule()); }
+	 EOF
 ;
 
 // Rule SelfExpCS
@@ -2260,12 +2260,12 @@
 
 
 // Entry rule entryRuleMultiplicityBoundsCS
-entryRuleMultiplicityBoundsCS 
+entryRuleMultiplicityBoundsCS
 :
 { before(grammarAccess.getMultiplicityBoundsCSRule()); }
 	 ruleMultiplicityBoundsCS
-{ after(grammarAccess.getMultiplicityBoundsCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityBoundsCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityBoundsCS
@@ -2288,12 +2288,12 @@
 
 
 // Entry rule entryRuleMultiplicityCS
-entryRuleMultiplicityCS 
+entryRuleMultiplicityCS
 :
 { before(grammarAccess.getMultiplicityCSRule()); }
 	 ruleMultiplicityCS
-{ after(grammarAccess.getMultiplicityCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityCS
@@ -2316,12 +2316,12 @@
 
 
 // Entry rule entryRuleMultiplicityStringCS
-entryRuleMultiplicityStringCS 
+entryRuleMultiplicityStringCS
 :
 { before(grammarAccess.getMultiplicityStringCSRule()); }
 	 ruleMultiplicityStringCS
-{ after(grammarAccess.getMultiplicityStringCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityStringCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityStringCS
@@ -2344,12 +2344,12 @@
 
 
 // Entry rule entryRulePathNameCS
-entryRulePathNameCS 
+entryRulePathNameCS
 :
 { before(grammarAccess.getPathNameCSRule()); }
 	 rulePathNameCS
-{ after(grammarAccess.getPathNameCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPathNameCSRule()); }
+	 EOF
 ;
 
 // Rule PathNameCS
@@ -2372,12 +2372,12 @@
 
 
 // Entry rule entryRuleFirstPathElementCS
-entryRuleFirstPathElementCS 
+entryRuleFirstPathElementCS
 :
 { before(grammarAccess.getFirstPathElementCSRule()); }
 	 ruleFirstPathElementCS
-{ after(grammarAccess.getFirstPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getFirstPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule FirstPathElementCS
@@ -2400,12 +2400,12 @@
 
 
 // Entry rule entryRuleNextPathElementCS
-entryRuleNextPathElementCS 
+entryRuleNextPathElementCS
 :
 { before(grammarAccess.getNextPathElementCSRule()); }
 	 ruleNextPathElementCS
-{ after(grammarAccess.getNextPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNextPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule NextPathElementCS
@@ -2428,12 +2428,12 @@
 
 
 // Entry rule entryRuleTemplateBindingCS
-entryRuleTemplateBindingCS 
+entryRuleTemplateBindingCS
 :
 { before(grammarAccess.getTemplateBindingCSRule()); }
 	 ruleTemplateBindingCS
-{ after(grammarAccess.getTemplateBindingCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTemplateBindingCSRule()); }
+	 EOF
 ;
 
 // Rule TemplateBindingCS
@@ -2456,12 +2456,12 @@
 
 
 // Entry rule entryRuleTemplateParameterSubstitutionCS
-entryRuleTemplateParameterSubstitutionCS 
+entryRuleTemplateParameterSubstitutionCS
 :
 { before(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
 	 ruleTemplateParameterSubstitutionCS
-{ after(grammarAccess.getTemplateParameterSubstitutionCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
+	 EOF
 ;
 
 // Rule TemplateParameterSubstitutionCS
@@ -2484,12 +2484,12 @@
 
 
 // Entry rule entryRuleTypeParameterCS
-entryRuleTypeParameterCS 
+entryRuleTypeParameterCS
 :
 { before(grammarAccess.getTypeParameterCSRule()); }
 	 ruleTypeParameterCS
-{ after(grammarAccess.getTypeParameterCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeParameterCSRule()); }
+	 EOF
 ;
 
 // Rule TypeParameterCS
@@ -2512,12 +2512,12 @@
 
 
 // Entry rule entryRuleTypeRefCS
-entryRuleTypeRefCS 
+entryRuleTypeRefCS
 :
 { before(grammarAccess.getTypeRefCSRule()); }
 	 ruleTypeRefCS
-{ after(grammarAccess.getTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypeRefCS
@@ -2540,12 +2540,12 @@
 
 
 // Entry rule entryRuleTypedTypeRefCS
-entryRuleTypedTypeRefCS 
+entryRuleTypedTypeRefCS
 :
 { before(grammarAccess.getTypedTypeRefCSRule()); }
 	 ruleTypedTypeRefCS
-{ after(grammarAccess.getTypedTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypedTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypedTypeRefCS
@@ -2568,12 +2568,12 @@
 
 
 // Entry rule entryRuleWildcardTypeRefCS
-entryRuleWildcardTypeRefCS 
+entryRuleWildcardTypeRefCS
 :
 { before(grammarAccess.getWildcardTypeRefCSRule()); }
 	 ruleWildcardTypeRefCS
-{ after(grammarAccess.getWildcardTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getWildcardTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule WildcardTypeRefCS
@@ -2596,12 +2596,12 @@
 
 
 // Entry rule entryRuleID
-entryRuleID 
+entryRuleID
 :
 { before(grammarAccess.getIDRule()); }
 	 ruleID
-{ after(grammarAccess.getIDRule()); } 
-	 EOF 
+{ after(grammarAccess.getIDRule()); }
+	 EOF
 ;
 
 // Rule ID
@@ -2624,12 +2624,12 @@
 
 
 // Entry rule entryRuleIdentifier
-entryRuleIdentifier 
+entryRuleIdentifier
 :
 { before(grammarAccess.getIdentifierRule()); }
 	 ruleIdentifier
-{ after(grammarAccess.getIdentifierRule()); } 
-	 EOF 
+{ after(grammarAccess.getIdentifierRule()); }
+	 EOF
 ;
 
 // Rule Identifier
@@ -2652,12 +2652,12 @@
 
 
 // Entry rule entryRuleLOWER
-entryRuleLOWER 
+entryRuleLOWER
 :
 { before(grammarAccess.getLOWERRule()); }
 	 ruleLOWER
-{ after(grammarAccess.getLOWERRule()); } 
-	 EOF 
+{ after(grammarAccess.getLOWERRule()); }
+	 EOF
 ;
 
 // Rule LOWER
@@ -2680,12 +2680,12 @@
 
 
 // Entry rule entryRuleNUMBER_LITERAL
-entryRuleNUMBER_LITERAL 
+entryRuleNUMBER_LITERAL
 :
 { before(grammarAccess.getNUMBER_LITERALRule()); }
 	 ruleNUMBER_LITERAL
-{ after(grammarAccess.getNUMBER_LITERALRule()); } 
-	 EOF 
+{ after(grammarAccess.getNUMBER_LITERALRule()); }
+	 EOF
 ;
 
 // Rule NUMBER_LITERAL
@@ -2708,12 +2708,12 @@
 
 
 // Entry rule entryRuleStringLiteral
-entryRuleStringLiteral 
+entryRuleStringLiteral
 :
 { before(grammarAccess.getStringLiteralRule()); }
 	 ruleStringLiteral
-{ after(grammarAccess.getStringLiteralRule()); } 
-	 EOF 
+{ after(grammarAccess.getStringLiteralRule()); }
+	 EOF
 ;
 
 // Rule StringLiteral
@@ -2736,12 +2736,12 @@
 
 
 // Entry rule entryRuleUPPER
-entryRuleUPPER 
+entryRuleUPPER
 :
 { before(grammarAccess.getUPPERRule()); }
 	 ruleUPPER
-{ after(grammarAccess.getUPPERRule()); } 
-	 EOF 
+{ after(grammarAccess.getUPPERRule()); }
+	 EOF
 ;
 
 // Rule UPPER
@@ -2764,12 +2764,12 @@
 
 
 // Entry rule entryRuleURI
-entryRuleURI 
+entryRuleURI
 :
 { before(grammarAccess.getURIRule()); }
 	 ruleURI
-{ after(grammarAccess.getURIRule()); } 
-	 EOF 
+{ after(grammarAccess.getURIRule()); }
+	 EOF
 ;
 
 // Rule URI
@@ -2822,7 +2822,7 @@
 (
 { before(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentKeyword_0()); }
 
-	'^' 
+	'^'
 
 { after(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentKeyword_0()); }
 )
@@ -2830,7 +2830,7 @@
     |(
 { before(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentCircumflexAccentKeyword_1()); }
 
-	'^^' 
+	'^^'
 
 { after(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentCircumflexAccentKeyword_1()); }
 )
@@ -2920,7 +2920,7 @@
 (
 { before(grammarAccess.getImportCSAccess().getImportKeyword_0_0()); }
 
-	'import' 
+	'import'
 
 { after(grammarAccess.getImportCSAccess().getImportKeyword_0_0()); }
 )
@@ -2928,7 +2928,7 @@
     |(
 { before(grammarAccess.getImportCSAccess().getIncludeKeyword_0_1()); }
 
-	'include' 
+	'include'
 
 { after(grammarAccess.getImportCSAccess().getIncludeKeyword_0_1()); }
 )
@@ -2936,7 +2936,7 @@
     |(
 { before(grammarAccess.getImportCSAccess().getLibraryKeyword_0_2()); }
 
-	'library' 
+	'library'
 
 { after(grammarAccess.getImportCSAccess().getLibraryKeyword_0_2()); }
 )
@@ -3076,7 +3076,7 @@
     |(
 { before(grammarAccess.getUnrestrictedNameAccess().getImportKeyword_1()); }
 
-	'import' 
+	'import'
 
 { after(grammarAccess.getUnrestrictedNameAccess().getImportKeyword_1()); }
 )
@@ -3084,7 +3084,7 @@
     |(
 { before(grammarAccess.getUnrestrictedNameAccess().getIncludeKeyword_2()); }
 
-	'include' 
+	'include'
 
 { after(grammarAccess.getUnrestrictedNameAccess().getIncludeKeyword_2()); }
 )
@@ -3092,7 +3092,7 @@
     |(
 { before(grammarAccess.getUnrestrictedNameAccess().getLibraryKeyword_3()); }
 
-	'library' 
+	'library'
 
 { after(grammarAccess.getUnrestrictedNameAccess().getLibraryKeyword_3()); }
 )
@@ -3154,7 +3154,7 @@
 (
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); }
 
-	'Boolean' 
+	'Boolean'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); }
 )
@@ -3162,7 +3162,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); }
 
-	'Integer' 
+	'Integer'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); }
 )
@@ -3170,7 +3170,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); }
 
-	'Real' 
+	'Real'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); }
 )
@@ -3178,7 +3178,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); }
 
-	'String' 
+	'String'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); }
 )
@@ -3186,7 +3186,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); }
 
-	'UnlimitedNatural' 
+	'UnlimitedNatural'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); }
 )
@@ -3194,7 +3194,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); }
 
-	'OclAny' 
+	'OclAny'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); }
 )
@@ -3202,7 +3202,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); }
 
-	'OclInvalid' 
+	'OclInvalid'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); }
 )
@@ -3210,7 +3210,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclMessageKeyword_7()); }
 
-	'OclMessage' 
+	'OclMessage'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclMessageKeyword_7()); }
 )
@@ -3218,7 +3218,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclStateKeyword_8()); }
 
-	'OclState' 
+	'OclState'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclStateKeyword_8()); }
 )
@@ -3226,7 +3226,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_9()); }
 
-	'OclVoid' 
+	'OclVoid'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_9()); }
 )
@@ -3245,7 +3245,7 @@
 (
 { before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); }
 
-	'-' 
+	'-'
 
 { after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); }
 )
@@ -3253,7 +3253,7 @@
     |(
 { before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); }
 
-	'not' 
+	'not'
 
 { after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); }
 )
@@ -3271,7 +3271,7 @@
 (
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); }
 )
@@ -3279,7 +3279,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); }
 
-	'/' 
+	'/'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); }
 )
@@ -3287,7 +3287,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); }
 
-	'+' 
+	'+'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); }
 )
@@ -3295,7 +3295,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); }
 
-	'-' 
+	'-'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); }
 )
@@ -3303,7 +3303,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); }
 
-	'>' 
+	'>'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); }
 )
@@ -3311,7 +3311,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); }
 
-	'<' 
+	'<'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); }
 )
@@ -3319,7 +3319,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); }
 
-	'>=' 
+	'>='
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); }
 )
@@ -3327,7 +3327,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); }
 
-	'<=' 
+	'<='
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); }
 )
@@ -3335,7 +3335,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); }
 )
@@ -3343,7 +3343,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); }
 
-	'<>' 
+	'<>'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); }
 )
@@ -3351,7 +3351,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); }
 
-	'and' 
+	'and'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); }
 )
@@ -3359,7 +3359,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); }
 
-	'or' 
+	'or'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); }
 )
@@ -3367,7 +3367,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); }
 
-	'xor' 
+	'xor'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); }
 )
@@ -3375,7 +3375,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); }
 
-	'implies' 
+	'implies'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); }
 )
@@ -3393,7 +3393,7 @@
 (
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); }
 
-	'.' 
+	'.'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); }
 )
@@ -3401,7 +3401,7 @@
     |(
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); }
 
-	'->' 
+	'->'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); }
 )
@@ -3409,7 +3409,7 @@
     |(
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); }
 
-	'?.' 
+	'?.'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); }
 )
@@ -3417,7 +3417,7 @@
     |(
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); }
 
-	'?->' 
+	'?->'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); }
 )
@@ -3475,7 +3475,7 @@
     |(
 { before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); }
 
-	'Map' 
+	'Map'
 
 { after(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); }
 )
@@ -3483,7 +3483,7 @@
     |(
 { before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); }
 
-	'Tuple' 
+	'Tuple'
 
 { after(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); }
 )
@@ -3523,7 +3523,7 @@
 (
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); }
 
-	'Set' 
+	'Set'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); }
 )
@@ -3531,7 +3531,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); }
 
-	'Bag' 
+	'Bag'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); }
 )
@@ -3539,7 +3539,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); }
 
-	'Sequence' 
+	'Sequence'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); }
 )
@@ -3547,7 +3547,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); }
 
-	'Collection' 
+	'Collection'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); }
 )
@@ -3555,7 +3555,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); }
 
-	'OrderedSet' 
+	'OrderedSet'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); }
 )
@@ -4015,7 +4015,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); }
 
-	'|?' 
+	'|?'
 
 { after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); }
 )
@@ -4039,7 +4039,7 @@
 (
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); }
 )
@@ -4047,7 +4047,7 @@
     |(
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); }
 
-	'+' 
+	'+'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); }
 )
@@ -4055,7 +4055,7 @@
     |(
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); }
 
-	'?' 
+	'?'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); }
 )
@@ -4123,7 +4123,7 @@
     |(
 { before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); }
 )
@@ -4216,7 +4216,7 @@
 (
 { before(grammarAccess.getClassifierContextDeclCSAccess().getContextKeyword_0()); }
 
-	'context' 
+	'context'
 
 { after(grammarAccess.getClassifierContextDeclCSAccess().getContextKeyword_0()); }
 )
@@ -4379,7 +4379,7 @@
 (
 { before(grammarAccess.getClassifierContextDeclCSAccess().getInvKeyword_4_0_0()); }
 
-	'inv' 
+	'inv'
 
 { after(grammarAccess.getClassifierContextDeclCSAccess().getInvKeyword_4_0_0()); }
 )
@@ -4471,7 +4471,7 @@
 (
 { before(grammarAccess.getConstraintCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getConstraintCSAccess().getColonKeyword_1()); }
 )
@@ -4597,7 +4597,7 @@
 (
 { before(grammarAccess.getConstraintCSAccess().getLeftParenthesisKeyword_0_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getConstraintCSAccess().getLeftParenthesisKeyword_0_1_0()); }
 )
@@ -4656,7 +4656,7 @@
 (
 { before(grammarAccess.getConstraintCSAccess().getRightParenthesisKeyword_0_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getConstraintCSAccess().getRightParenthesisKeyword_0_1_2()); }
 )
@@ -4722,7 +4722,7 @@
 (
 { before(grammarAccess.getDefOperationCSAccess().getDefKeyword_1()); }
 
-	'def' 
+	'def'
 
 { after(grammarAccess.getDefOperationCSAccess().getDefKeyword_1()); }
 )
@@ -4782,7 +4782,7 @@
 (
 { before(grammarAccess.getDefOperationCSAccess().getColonKeyword_3()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getDefOperationCSAccess().getColonKeyword_3()); }
 )
@@ -4871,7 +4871,7 @@
 (
 { before(grammarAccess.getDefOperationCSAccess().getLeftParenthesisKeyword_6()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getDefOperationCSAccess().getLeftParenthesisKeyword_6()); }
 )
@@ -4931,7 +4931,7 @@
 (
 { before(grammarAccess.getDefOperationCSAccess().getRightParenthesisKeyword_8()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getDefOperationCSAccess().getRightParenthesisKeyword_8()); }
 )
@@ -4962,7 +4962,7 @@
 (
 { before(grammarAccess.getDefOperationCSAccess().getColonKeyword_9()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getDefOperationCSAccess().getColonKeyword_9()); }
 )
@@ -5022,7 +5022,7 @@
 (
 { before(grammarAccess.getDefOperationCSAccess().getEqualsSignKeyword_11()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getDefOperationCSAccess().getEqualsSignKeyword_11()); }
 )
@@ -5168,7 +5168,7 @@
 (
 { before(grammarAccess.getDefOperationCSAccess().getCommaKeyword_7_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getDefOperationCSAccess().getCommaKeyword_7_1_0()); }
 )
@@ -5260,7 +5260,7 @@
 (
 { before(grammarAccess.getDefParameterCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getDefParameterCSAccess().getColonKeyword_1()); }
 )
@@ -5354,7 +5354,7 @@
 (
 { before(grammarAccess.getDefPropertyCSAccess().getDefKeyword_1()); }
 
-	'def' 
+	'def'
 
 { after(grammarAccess.getDefPropertyCSAccess().getDefKeyword_1()); }
 )
@@ -5414,7 +5414,7 @@
 (
 { before(grammarAccess.getDefPropertyCSAccess().getColonKeyword_3()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getDefPropertyCSAccess().getColonKeyword_3()); }
 )
@@ -5474,7 +5474,7 @@
 (
 { before(grammarAccess.getDefPropertyCSAccess().getColonKeyword_5()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getDefPropertyCSAccess().getColonKeyword_5()); }
 )
@@ -5534,7 +5534,7 @@
 (
 { before(grammarAccess.getDefPropertyCSAccess().getEqualsSignKeyword_7()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getDefPropertyCSAccess().getEqualsSignKeyword_7()); }
 )
@@ -5762,7 +5762,7 @@
 (
 { before(grammarAccess.getImportCSAccess().getColonKeyword_1_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getImportCSAccess().getColonKeyword_1_1()); }
 )
@@ -5797,7 +5797,7 @@
 (
 { before(grammarAccess.getOperationContextDeclCSAccess().getContextKeyword_0()); }
 
-	'context' 
+	'context'
 
 { after(grammarAccess.getOperationContextDeclCSAccess().getContextKeyword_0()); }
 )
@@ -5886,7 +5886,7 @@
 (
 { before(grammarAccess.getOperationContextDeclCSAccess().getLeftParenthesisKeyword_3()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getOperationContextDeclCSAccess().getLeftParenthesisKeyword_3()); }
 )
@@ -5946,7 +5946,7 @@
 (
 { before(grammarAccess.getOperationContextDeclCSAccess().getRightParenthesisKeyword_5()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getOperationContextDeclCSAccess().getRightParenthesisKeyword_5()); }
 )
@@ -5977,7 +5977,7 @@
 (
 { before(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_6()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_6()); }
 )
@@ -6144,7 +6144,7 @@
 (
 { before(grammarAccess.getOperationContextDeclCSAccess().getCommaKeyword_4_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getOperationContextDeclCSAccess().getCommaKeyword_4_1_0()); }
 )
@@ -6207,7 +6207,7 @@
 (
 { before(grammarAccess.getOperationContextDeclCSAccess().getPreKeyword_8_0_0()); }
 
-	'pre' 
+	'pre'
 
 { after(grammarAccess.getOperationContextDeclCSAccess().getPreKeyword_8_0_0()); }
 )
@@ -6270,7 +6270,7 @@
 (
 { before(grammarAccess.getOperationContextDeclCSAccess().getPostKeyword_8_1_0()); }
 
-	'post' 
+	'post'
 
 { after(grammarAccess.getOperationContextDeclCSAccess().getPostKeyword_8_1_0()); }
 )
@@ -6333,7 +6333,7 @@
 (
 { before(grammarAccess.getOperationContextDeclCSAccess().getBodyKeyword_8_2_0()); }
 
-	'body' 
+	'body'
 
 { after(grammarAccess.getOperationContextDeclCSAccess().getBodyKeyword_8_2_0()); }
 )
@@ -6393,7 +6393,7 @@
 (
 { before(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_8_2_2()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_8_2_2()); }
 )
@@ -6460,7 +6460,7 @@
 (
 { before(grammarAccess.getPackageDeclarationCSAccess().getPackageKeyword_0()); }
 
-	'package' 
+	'package'
 
 { after(grammarAccess.getPackageDeclarationCSAccess().getPackageKeyword_0()); }
 )
@@ -6577,7 +6577,7 @@
 (
 { before(grammarAccess.getPackageDeclarationCSAccess().getEndpackageKeyword_4()); }
 
-	'endpackage' 
+	'endpackage'
 
 { after(grammarAccess.getPackageDeclarationCSAccess().getEndpackageKeyword_4()); }
 )
@@ -6618,7 +6618,7 @@
 (
 { before(grammarAccess.getPackageDeclarationCSAccess().getInvKeyword_2_0()); }
 
-	'inv' 
+	'inv'
 
 { after(grammarAccess.getPackageDeclarationCSAccess().getInvKeyword_2_0()); }
 )
@@ -6770,7 +6770,7 @@
 (
 { before(grammarAccess.getParameterCSAccess().getColonKeyword_0_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getParameterCSAccess().getColonKeyword_0_1()); }
 )
@@ -6805,7 +6805,7 @@
 (
 { before(grammarAccess.getPropertyContextDeclCSAccess().getContextKeyword_0()); }
 
-	'context' 
+	'context'
 
 { after(grammarAccess.getPropertyContextDeclCSAccess().getContextKeyword_0()); }
 )
@@ -6865,7 +6865,7 @@
 (
 { before(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_2()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_2()); }
 )
@@ -6963,7 +6963,7 @@
 (
 { before(grammarAccess.getPropertyContextDeclCSAccess().getDeriveKeyword_4_0_0()); }
 
-	'derive' 
+	'derive'
 
 { after(grammarAccess.getPropertyContextDeclCSAccess().getDeriveKeyword_4_0_0()); }
 )
@@ -7026,7 +7026,7 @@
 (
 { before(grammarAccess.getPropertyContextDeclCSAccess().getInitKeyword_4_1_0()); }
 
-	'init' 
+	'init'
 
 { after(grammarAccess.getPropertyContextDeclCSAccess().getInitKeyword_4_1_0()); }
 )
@@ -7057,7 +7057,7 @@
 (
 { before(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_4_1_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_4_1_1()); }
 )
@@ -7122,7 +7122,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0()); }
 )
@@ -7210,7 +7210,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3()); }
 )
@@ -7249,7 +7249,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0()); }
 )
@@ -7312,7 +7312,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0()); }
 
-	'<' 
+	'<'
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0()); }
 )
@@ -7400,7 +7400,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3()); }
 
-	'>' 
+	'>'
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3()); }
 )
@@ -7439,7 +7439,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0()); }
 )
@@ -7532,7 +7532,7 @@
 (
 { before(grammarAccess.getNavigatingArgExpCSAccess().getQuestionMarkKeyword_0_1()); }
 
-	'?' 
+	'?'
 
 { after(grammarAccess.getNavigatingArgExpCSAccess().getQuestionMarkKeyword_0_1()); }
 )
@@ -7628,7 +7628,7 @@
 (
 { before(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0()); }
 
-	'::' 
+	'::'
 
 { after(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0()); }
 )
@@ -7815,7 +7815,7 @@
 (
 { before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -7874,7 +7874,7 @@
 (
 { before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 )
@@ -7972,7 +7972,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -8032,7 +8032,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); }
 )
@@ -8091,7 +8091,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); }
 )
@@ -8193,7 +8193,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -8252,7 +8252,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 )
@@ -8350,7 +8350,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); }
 )
@@ -8442,7 +8442,7 @@
 (
 { before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); }
 )
@@ -8536,7 +8536,7 @@
 (
 { before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -8595,7 +8595,7 @@
 (
 { before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -8695,7 +8695,7 @@
 (
 { before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 )
@@ -8819,7 +8819,7 @@
 (
 { before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); }
 
-	'..' 
+	'..'
 
 { after(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); }
 )
@@ -8911,7 +8911,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -8970,7 +8970,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -9101,7 +9101,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); }
 )
@@ -9164,7 +9164,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); }
 
-	'++' 
+	'++'
 
 { after(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); }
 )
@@ -9256,7 +9256,7 @@
 (
 { before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); }
 )
@@ -9350,7 +9350,7 @@
 (
 { before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); }
 )
@@ -9415,7 +9415,7 @@
 (
 { before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); }
 
-	'Lambda' 
+	'Lambda'
 
 { after(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); }
 )
@@ -9446,7 +9446,7 @@
 (
 { before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -9505,7 +9505,7 @@
 (
 { before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -9573,7 +9573,7 @@
 (
 { before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -9632,7 +9632,7 @@
 (
 { before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -9732,7 +9732,7 @@
 (
 { before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 )
@@ -9824,7 +9824,7 @@
 (
 { before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); }
 
-	'<-' 
+	'<-'
 
 { after(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); }
 )
@@ -9889,7 +9889,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); }
 
-	'Tuple' 
+	'Tuple'
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); }
 )
@@ -9920,7 +9920,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -10008,7 +10008,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); }
 )
@@ -10049,7 +10049,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); }
 )
@@ -10170,7 +10170,7 @@
 (
 { before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); }
 )
@@ -10237,7 +10237,7 @@
 (
 { before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); }
 )
@@ -10330,7 +10330,7 @@
 (
 { before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); }
 )
@@ -10395,7 +10395,7 @@
 (
 { before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); }
 
-	'invalid' 
+	'invalid'
 
 { after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); }
 )
@@ -10460,7 +10460,7 @@
 (
 { before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); }
 
-	'null' 
+	'null'
 
 { after(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); }
 )
@@ -10678,7 +10678,7 @@
 (
 { before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); }
 )
@@ -10737,7 +10737,7 @@
 (
 { before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); }
 )
@@ -11360,7 +11360,7 @@
 (
 { before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); }
 
-	'pre' 
+	'pre'
 
 { after(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); }
 )
@@ -11426,7 +11426,7 @@
 (
 { before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -11485,7 +11485,7 @@
 (
 { before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -11585,7 +11585,7 @@
 (
 { before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); }
 )
@@ -11679,7 +11679,7 @@
 (
 { before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); }
 )
@@ -11738,7 +11738,7 @@
 (
 { before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); }
 )
@@ -12022,7 +12022,7 @@
 (
 { before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); }
 )
@@ -12110,7 +12110,7 @@
 (
 { before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); }
 )
@@ -12149,7 +12149,7 @@
 (
 { before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); }
 )
@@ -12273,7 +12273,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); }
 )
@@ -12367,7 +12367,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); }
 )
@@ -12430,7 +12430,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); }
 
-	'in' 
+	'in'
 
 { after(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); }
 )
@@ -12493,7 +12493,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); }
 )
@@ -12648,7 +12648,7 @@
 (
 { before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); }
 )
@@ -12742,7 +12742,7 @@
 (
 { before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 )
@@ -12897,7 +12897,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); }
 )
@@ -12991,7 +12991,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); }
 )
@@ -13054,7 +13054,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); }
 
-	'in' 
+	'in'
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); }
 )
@@ -13209,7 +13209,7 @@
 (
 { before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); }
 )
@@ -13303,7 +13303,7 @@
 (
 { before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 )
@@ -13366,7 +13366,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); }
 
-	'if' 
+	'if'
 
 { after(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); }
 )
@@ -13426,7 +13426,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); }
 
-	'then' 
+	'then'
 
 { after(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); }
 )
@@ -13515,7 +13515,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); }
 
-	'else' 
+	'else'
 
 { after(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); }
 )
@@ -13574,7 +13574,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); }
 
-	'endif' 
+	'endif'
 
 { after(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); }
 )
@@ -13621,7 +13621,7 @@
 (
 { before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); }
 
-	'elseif' 
+	'elseif'
 
 { after(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); }
 )
@@ -13681,7 +13681,7 @@
 (
 { before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); }
 
-	'then' 
+	'then'
 
 { after(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); }
 )
@@ -13748,7 +13748,7 @@
 (
 { before(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); }
 
-	'let' 
+	'let'
 
 { after(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); }
 )
@@ -13837,7 +13837,7 @@
 (
 { before(grammarAccess.getLetExpCSAccess().getInKeyword_3()); }
 
-	'in' 
+	'in'
 
 { after(grammarAccess.getLetExpCSAccess().getInKeyword_3()); }
 )
@@ -13906,7 +13906,7 @@
 (
 { before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); }
 )
@@ -14056,7 +14056,7 @@
 (
 { before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); }
 )
@@ -14125,7 +14125,7 @@
 (
 { before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); }
 )
@@ -14188,7 +14188,7 @@
 (
 { before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); }
 )
@@ -14247,7 +14247,7 @@
 (
 { before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); }
 )
@@ -14314,7 +14314,7 @@
 (
 { before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); }
 
-	'self' 
+	'self'
 
 { after(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); }
 )
@@ -14410,7 +14410,7 @@
 (
 { before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); }
 
-	'..' 
+	'..'
 
 { after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); }
 )
@@ -14473,7 +14473,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); }
 )
@@ -14561,7 +14561,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); }
 )
@@ -14661,7 +14661,7 @@
 (
 { before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); }
 
-	'::' 
+	'::'
 
 { after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); }
 )
@@ -14816,7 +14816,7 @@
 (
 { before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); }
 )
@@ -14940,7 +14940,7 @@
 (
 { before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); }
 
-	'extends' 
+	'extends'
 
 { after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); }
 )
@@ -15034,7 +15034,7 @@
 (
 { before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); }
 
-	'&&' 
+	'&&'
 
 { after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); }
 )
@@ -15158,7 +15158,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -15217,7 +15217,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2()); }
 )
@@ -15285,7 +15285,7 @@
 (
 { before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); }
 
-	'?' 
+	'?'
 
 { after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); }
 )
@@ -15350,7 +15350,7 @@
 (
 { before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); }
 
-	'extends' 
+	'extends'
 
 { after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); }
 )
@@ -15569,7 +15569,7 @@
 (
 { before(grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0()); }
 
-	'static' 
+	'static'
 
 { after(grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0()); }
 )
@@ -15712,7 +15712,7 @@
 (
 { before(grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0()); }
 
-	'static' 
+	'static'
 
 { after(grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0()); }
 )
@@ -15810,7 +15810,7 @@
 (
 { before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); }
 
-	'::*' 
+	'::*'
 
 { after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); }
 )
@@ -16292,7 +16292,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); }
 
-	'Map' 
+	'Map'
 
 { after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); }
 )
@@ -16345,7 +16345,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); }
 
-	'Tuple' 
+	'Tuple'
 
 { after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); }
 )
@@ -16838,7 +16838,7 @@
 (
 { before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); }
 
-	'true' 
+	'true'
 
 { after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); }
 )
@@ -16861,7 +16861,7 @@
 (
 { before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); }
 
-	'false' 
+	'false'
 
 { after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); }
 )
@@ -17124,7 +17124,7 @@
 (
 { before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); }
 
-	'@' 
+	'@'
 
 { after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); }
 )
@@ -17387,7 +17387,7 @@
 (
 { before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); }
 
-	'|' 
+	'|'
 
 { after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); }
 )
@@ -17455,7 +17455,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); }
 )
@@ -17538,7 +17538,7 @@
 (
 { before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); }
 )
@@ -17847,7 +17847,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); }
 
-	'|1' 
+	'|1'
 
 { after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); }
 )
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 073b490..0801b83 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
@@ -1,6 +1,6 @@
 package org.eclipse.ocl.xtext.completeocl.ui.contentassist.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
 
@@ -116,7 +116,7 @@
     // delegates
     // delegators
 
-    public InternalCompleteOCLLexer() {;} 
+    public InternalCompleteOCLLexer() {;}
     public InternalCompleteOCLLexer(CharStream input) {
         this(input, new RecognizerSharedState());
     }
@@ -134,7 +134,7 @@
             // InternalCompleteOCL.g:11:7: ( '^' )
             // InternalCompleteOCL.g:11:9: '^'
             {
-            match('^'); 
+            match('^');
 
             }
 
@@ -154,7 +154,7 @@
             // InternalCompleteOCL.g:12:7: ( '^^' )
             // InternalCompleteOCL.g:12:9: '^^'
             {
-            match("^^"); 
+            match("^^");
 
 
             }
@@ -175,7 +175,7 @@
             // InternalCompleteOCL.g:13:7: ( 'import' )
             // InternalCompleteOCL.g:13:9: 'import'
             {
-            match("import"); 
+            match("import");
 
 
             }
@@ -196,7 +196,7 @@
             // InternalCompleteOCL.g:14:7: ( 'include' )
             // InternalCompleteOCL.g:14:9: 'include'
             {
-            match("include"); 
+            match("include");
 
 
             }
@@ -217,7 +217,7 @@
             // InternalCompleteOCL.g:15:7: ( 'library' )
             // InternalCompleteOCL.g:15:9: 'library'
             {
-            match("library"); 
+            match("library");
 
 
             }
@@ -238,7 +238,7 @@
             // InternalCompleteOCL.g:16:7: ( 'Boolean' )
             // InternalCompleteOCL.g:16:9: 'Boolean'
             {
-            match("Boolean"); 
+            match("Boolean");
 
 
             }
@@ -259,7 +259,7 @@
             // InternalCompleteOCL.g:17:7: ( 'Integer' )
             // InternalCompleteOCL.g:17:9: 'Integer'
             {
-            match("Integer"); 
+            match("Integer");
 
 
             }
@@ -280,7 +280,7 @@
             // InternalCompleteOCL.g:18:7: ( 'Real' )
             // InternalCompleteOCL.g:18:9: 'Real'
             {
-            match("Real"); 
+            match("Real");
 
 
             }
@@ -301,7 +301,7 @@
             // InternalCompleteOCL.g:19:7: ( 'String' )
             // InternalCompleteOCL.g:19:9: 'String'
             {
-            match("String"); 
+            match("String");
 
 
             }
@@ -322,7 +322,7 @@
             // InternalCompleteOCL.g:20:7: ( 'UnlimitedNatural' )
             // InternalCompleteOCL.g:20:9: 'UnlimitedNatural'
             {
-            match("UnlimitedNatural"); 
+            match("UnlimitedNatural");
 
 
             }
@@ -343,7 +343,7 @@
             // InternalCompleteOCL.g:21:7: ( 'OclAny' )
             // InternalCompleteOCL.g:21:9: 'OclAny'
             {
-            match("OclAny"); 
+            match("OclAny");
 
 
             }
@@ -364,7 +364,7 @@
             // InternalCompleteOCL.g:22:7: ( 'OclInvalid' )
             // InternalCompleteOCL.g:22:9: 'OclInvalid'
             {
-            match("OclInvalid"); 
+            match("OclInvalid");
 
 
             }
@@ -385,7 +385,7 @@
             // InternalCompleteOCL.g:23:7: ( 'OclMessage' )
             // InternalCompleteOCL.g:23:9: 'OclMessage'
             {
-            match("OclMessage"); 
+            match("OclMessage");
 
 
             }
@@ -406,7 +406,7 @@
             // InternalCompleteOCL.g:24:7: ( 'OclState' )
             // InternalCompleteOCL.g:24:9: 'OclState'
             {
-            match("OclState"); 
+            match("OclState");
 
 
             }
@@ -427,7 +427,7 @@
             // InternalCompleteOCL.g:25:7: ( 'OclVoid' )
             // InternalCompleteOCL.g:25:9: 'OclVoid'
             {
-            match("OclVoid"); 
+            match("OclVoid");
 
 
             }
@@ -448,7 +448,7 @@
             // InternalCompleteOCL.g:26:7: ( '-' )
             // InternalCompleteOCL.g:26:9: '-'
             {
-            match('-'); 
+            match('-');
 
             }
 
@@ -468,7 +468,7 @@
             // InternalCompleteOCL.g:27:7: ( 'not' )
             // InternalCompleteOCL.g:27:9: 'not'
             {
-            match("not"); 
+            match("not");
 
 
             }
@@ -489,7 +489,7 @@
             // InternalCompleteOCL.g:28:7: ( '*' )
             // InternalCompleteOCL.g:28:9: '*'
             {
-            match('*'); 
+            match('*');
 
             }
 
@@ -509,7 +509,7 @@
             // InternalCompleteOCL.g:29:7: ( '/' )
             // InternalCompleteOCL.g:29:9: '/'
             {
-            match('/'); 
+            match('/');
 
             }
 
@@ -529,7 +529,7 @@
             // InternalCompleteOCL.g:30:7: ( '+' )
             // InternalCompleteOCL.g:30:9: '+'
             {
-            match('+'); 
+            match('+');
 
             }
 
@@ -549,7 +549,7 @@
             // InternalCompleteOCL.g:31:7: ( '>' )
             // InternalCompleteOCL.g:31:9: '>'
             {
-            match('>'); 
+            match('>');
 
             }
 
@@ -569,7 +569,7 @@
             // InternalCompleteOCL.g:32:7: ( '<' )
             // InternalCompleteOCL.g:32:9: '<'
             {
-            match('<'); 
+            match('<');
 
             }
 
@@ -589,7 +589,7 @@
             // InternalCompleteOCL.g:33:7: ( '>=' )
             // InternalCompleteOCL.g:33:9: '>='
             {
-            match(">="); 
+            match(">=");
 
 
             }
@@ -610,7 +610,7 @@
             // InternalCompleteOCL.g:34:7: ( '<=' )
             // InternalCompleteOCL.g:34:9: '<='
             {
-            match("<="); 
+            match("<=");
 
 
             }
@@ -631,7 +631,7 @@
             // InternalCompleteOCL.g:35:7: ( '=' )
             // InternalCompleteOCL.g:35:9: '='
             {
-            match('='); 
+            match('=');
 
             }
 
@@ -651,7 +651,7 @@
             // InternalCompleteOCL.g:36:7: ( '<>' )
             // InternalCompleteOCL.g:36:9: '<>'
             {
-            match("<>"); 
+            match("<>");
 
 
             }
@@ -672,7 +672,7 @@
             // InternalCompleteOCL.g:37:7: ( 'and' )
             // InternalCompleteOCL.g:37:9: 'and'
             {
-            match("and"); 
+            match("and");
 
 
             }
@@ -693,7 +693,7 @@
             // InternalCompleteOCL.g:38:7: ( 'or' )
             // InternalCompleteOCL.g:38:9: 'or'
             {
-            match("or"); 
+            match("or");
 
 
             }
@@ -714,7 +714,7 @@
             // InternalCompleteOCL.g:39:7: ( 'xor' )
             // InternalCompleteOCL.g:39:9: 'xor'
             {
-            match("xor"); 
+            match("xor");
 
 
             }
@@ -735,7 +735,7 @@
             // InternalCompleteOCL.g:40:7: ( 'implies' )
             // InternalCompleteOCL.g:40:9: 'implies'
             {
-            match("implies"); 
+            match("implies");
 
 
             }
@@ -756,7 +756,7 @@
             // InternalCompleteOCL.g:41:7: ( '.' )
             // InternalCompleteOCL.g:41:9: '.'
             {
-            match('.'); 
+            match('.');
 
             }
 
@@ -776,7 +776,7 @@
             // InternalCompleteOCL.g:42:7: ( '->' )
             // InternalCompleteOCL.g:42:9: '->'
             {
-            match("->"); 
+            match("->");
 
 
             }
@@ -797,7 +797,7 @@
             // InternalCompleteOCL.g:43:7: ( '?.' )
             // InternalCompleteOCL.g:43:9: '?.'
             {
-            match("?."); 
+            match("?.");
 
 
             }
@@ -818,7 +818,7 @@
             // InternalCompleteOCL.g:44:7: ( '?->' )
             // InternalCompleteOCL.g:44:9: '?->'
             {
-            match("?->"); 
+            match("?->");
 
 
             }
@@ -839,7 +839,7 @@
             // InternalCompleteOCL.g:45:7: ( 'Map' )
             // InternalCompleteOCL.g:45:9: 'Map'
             {
-            match("Map"); 
+            match("Map");
 
 
             }
@@ -860,7 +860,7 @@
             // InternalCompleteOCL.g:46:7: ( 'Tuple' )
             // InternalCompleteOCL.g:46:9: 'Tuple'
             {
-            match("Tuple"); 
+            match("Tuple");
 
 
             }
@@ -881,7 +881,7 @@
             // InternalCompleteOCL.g:47:7: ( 'Set' )
             // InternalCompleteOCL.g:47:9: 'Set'
             {
-            match("Set"); 
+            match("Set");
 
 
             }
@@ -902,7 +902,7 @@
             // InternalCompleteOCL.g:48:7: ( 'Bag' )
             // InternalCompleteOCL.g:48:9: 'Bag'
             {
-            match("Bag"); 
+            match("Bag");
 
 
             }
@@ -923,7 +923,7 @@
             // InternalCompleteOCL.g:49:7: ( 'Sequence' )
             // InternalCompleteOCL.g:49:9: 'Sequence'
             {
-            match("Sequence"); 
+            match("Sequence");
 
 
             }
@@ -944,7 +944,7 @@
             // InternalCompleteOCL.g:50:7: ( 'Collection' )
             // InternalCompleteOCL.g:50:9: 'Collection'
             {
-            match("Collection"); 
+            match("Collection");
 
 
             }
@@ -965,7 +965,7 @@
             // InternalCompleteOCL.g:51:7: ( 'OrderedSet' )
             // InternalCompleteOCL.g:51:9: 'OrderedSet'
             {
-            match("OrderedSet"); 
+            match("OrderedSet");
 
 
             }
@@ -986,7 +986,7 @@
             // InternalCompleteOCL.g:52:7: ( '|?' )
             // InternalCompleteOCL.g:52:9: '|?'
             {
-            match("|?"); 
+            match("|?");
 
 
             }
@@ -1007,7 +1007,7 @@
             // InternalCompleteOCL.g:53:7: ( '?' )
             // InternalCompleteOCL.g:53:9: '?'
             {
-            match('?'); 
+            match('?');
 
             }
 
@@ -1027,7 +1027,7 @@
             // InternalCompleteOCL.g:54:7: ( 'context' )
             // InternalCompleteOCL.g:54:9: 'context'
             {
-            match("context"); 
+            match("context");
 
 
             }
@@ -1048,7 +1048,7 @@
             // InternalCompleteOCL.g:55:7: ( 'inv' )
             // InternalCompleteOCL.g:55:9: 'inv'
             {
-            match("inv"); 
+            match("inv");
 
 
             }
@@ -1069,7 +1069,7 @@
             // InternalCompleteOCL.g:56:7: ( ':' )
             // InternalCompleteOCL.g:56:9: ':'
             {
-            match(':'); 
+            match(':');
 
             }
 
@@ -1089,7 +1089,7 @@
             // InternalCompleteOCL.g:57:7: ( '(' )
             // InternalCompleteOCL.g:57:9: '('
             {
-            match('('); 
+            match('(');
 
             }
 
@@ -1109,7 +1109,7 @@
             // InternalCompleteOCL.g:58:7: ( ')' )
             // InternalCompleteOCL.g:58:9: ')'
             {
-            match(')'); 
+            match(')');
 
             }
 
@@ -1129,7 +1129,7 @@
             // InternalCompleteOCL.g:59:7: ( 'def' )
             // InternalCompleteOCL.g:59:9: 'def'
             {
-            match("def"); 
+            match("def");
 
 
             }
@@ -1150,7 +1150,7 @@
             // InternalCompleteOCL.g:60:7: ( ',' )
             // InternalCompleteOCL.g:60:9: ','
             {
-            match(','); 
+            match(',');
 
             }
 
@@ -1170,7 +1170,7 @@
             // InternalCompleteOCL.g:61:7: ( 'pre' )
             // InternalCompleteOCL.g:61:9: 'pre'
             {
-            match("pre"); 
+            match("pre");
 
 
             }
@@ -1191,7 +1191,7 @@
             // InternalCompleteOCL.g:62:7: ( 'post' )
             // InternalCompleteOCL.g:62:9: 'post'
             {
-            match("post"); 
+            match("post");
 
 
             }
@@ -1212,7 +1212,7 @@
             // InternalCompleteOCL.g:63:7: ( 'body' )
             // InternalCompleteOCL.g:63:9: 'body'
             {
-            match("body"); 
+            match("body");
 
 
             }
@@ -1233,7 +1233,7 @@
             // InternalCompleteOCL.g:64:7: ( 'package' )
             // InternalCompleteOCL.g:64:9: 'package'
             {
-            match("package"); 
+            match("package");
 
 
             }
@@ -1254,7 +1254,7 @@
             // InternalCompleteOCL.g:65:7: ( 'endpackage' )
             // InternalCompleteOCL.g:65:9: 'endpackage'
             {
-            match("endpackage"); 
+            match("endpackage");
 
 
             }
@@ -1275,7 +1275,7 @@
             // InternalCompleteOCL.g:66:7: ( 'derive' )
             // InternalCompleteOCL.g:66:9: 'derive'
             {
-            match("derive"); 
+            match("derive");
 
 
             }
@@ -1296,7 +1296,7 @@
             // InternalCompleteOCL.g:67:7: ( 'init' )
             // InternalCompleteOCL.g:67:9: 'init'
             {
-            match("init"); 
+            match("init");
 
 
             }
@@ -1317,7 +1317,7 @@
             // InternalCompleteOCL.g:68:7: ( '::' )
             // InternalCompleteOCL.g:68:9: '::'
             {
-            match("::"); 
+            match("::");
 
 
             }
@@ -1338,7 +1338,7 @@
             // InternalCompleteOCL.g:69:7: ( '{' )
             // InternalCompleteOCL.g:69:9: '{'
             {
-            match('{'); 
+            match('{');
 
             }
 
@@ -1358,7 +1358,7 @@
             // InternalCompleteOCL.g:70:7: ( '}' )
             // InternalCompleteOCL.g:70:9: '}'
             {
-            match('}'); 
+            match('}');
 
             }
 
@@ -1378,7 +1378,7 @@
             // InternalCompleteOCL.g:71:7: ( '..' )
             // InternalCompleteOCL.g:71:9: '..'
             {
-            match(".."); 
+            match("..");
 
 
             }
@@ -1399,7 +1399,7 @@
             // InternalCompleteOCL.g:72:7: ( '++' )
             // InternalCompleteOCL.g:72:9: '++'
             {
-            match("++"); 
+            match("++");
 
 
             }
@@ -1420,7 +1420,7 @@
             // InternalCompleteOCL.g:73:7: ( 'Lambda' )
             // InternalCompleteOCL.g:73:9: 'Lambda'
             {
-            match("Lambda"); 
+            match("Lambda");
 
 
             }
@@ -1441,7 +1441,7 @@
             // InternalCompleteOCL.g:74:7: ( '<-' )
             // InternalCompleteOCL.g:74:9: '<-'
             {
-            match("<-"); 
+            match("<-");
 
 
             }
@@ -1462,7 +1462,7 @@
             // InternalCompleteOCL.g:75:7: ( 'invalid' )
             // InternalCompleteOCL.g:75:9: 'invalid'
             {
-            match("invalid"); 
+            match("invalid");
 
 
             }
@@ -1483,7 +1483,7 @@
             // InternalCompleteOCL.g:76:7: ( 'null' )
             // InternalCompleteOCL.g:76:9: 'null'
             {
-            match("null"); 
+            match("null");
 
 
             }
@@ -1504,7 +1504,7 @@
             // InternalCompleteOCL.g:77:7: ( '[' )
             // InternalCompleteOCL.g:77:9: '['
             {
-            match('['); 
+            match('[');
 
             }
 
@@ -1524,7 +1524,7 @@
             // InternalCompleteOCL.g:78:7: ( ']' )
             // InternalCompleteOCL.g:78:9: ']'
             {
-            match(']'); 
+            match(']');
 
             }
 
@@ -1544,7 +1544,7 @@
             // InternalCompleteOCL.g:79:7: ( 'in' )
             // InternalCompleteOCL.g:79:9: 'in'
             {
-            match("in"); 
+            match("in");
 
 
             }
@@ -1565,7 +1565,7 @@
             // InternalCompleteOCL.g:80:7: ( 'if' )
             // InternalCompleteOCL.g:80:9: 'if'
             {
-            match("if"); 
+            match("if");
 
 
             }
@@ -1586,7 +1586,7 @@
             // InternalCompleteOCL.g:81:7: ( 'then' )
             // InternalCompleteOCL.g:81:9: 'then'
             {
-            match("then"); 
+            match("then");
 
 
             }
@@ -1607,7 +1607,7 @@
             // InternalCompleteOCL.g:82:7: ( 'else' )
             // InternalCompleteOCL.g:82:9: 'else'
             {
-            match("else"); 
+            match("else");
 
 
             }
@@ -1628,7 +1628,7 @@
             // InternalCompleteOCL.g:83:7: ( 'endif' )
             // InternalCompleteOCL.g:83:9: 'endif'
             {
-            match("endif"); 
+            match("endif");
 
 
             }
@@ -1649,7 +1649,7 @@
             // InternalCompleteOCL.g:84:7: ( 'elseif' )
             // InternalCompleteOCL.g:84:9: 'elseif'
             {
-            match("elseif"); 
+            match("elseif");
 
 
             }
@@ -1670,7 +1670,7 @@
             // InternalCompleteOCL.g:85:7: ( 'let' )
             // InternalCompleteOCL.g:85:9: 'let'
             {
-            match("let"); 
+            match("let");
 
 
             }
@@ -1691,7 +1691,7 @@
             // InternalCompleteOCL.g:86:7: ( 'self' )
             // InternalCompleteOCL.g:86:9: 'self'
             {
-            match("self"); 
+            match("self");
 
 
             }
@@ -1712,7 +1712,7 @@
             // InternalCompleteOCL.g:87:7: ( 'extends' )
             // InternalCompleteOCL.g:87:9: 'extends'
             {
-            match("extends"); 
+            match("extends");
 
 
             }
@@ -1733,7 +1733,7 @@
             // InternalCompleteOCL.g:88:7: ( '&&' )
             // InternalCompleteOCL.g:88:9: '&&'
             {
-            match("&&"); 
+            match("&&");
 
 
             }
@@ -1754,7 +1754,7 @@
             // InternalCompleteOCL.g:89:7: ( 'static' )
             // InternalCompleteOCL.g:89:9: 'static'
             {
-            match("static"); 
+            match("static");
 
 
             }
@@ -1775,7 +1775,7 @@
             // InternalCompleteOCL.g:90:7: ( '::*' )
             // InternalCompleteOCL.g:90:9: '::*'
             {
-            match("::*"); 
+            match("::*");
 
 
             }
@@ -1796,7 +1796,7 @@
             // InternalCompleteOCL.g:91:7: ( 'true' )
             // InternalCompleteOCL.g:91:9: 'true'
             {
-            match("true"); 
+            match("true");
 
 
             }
@@ -1817,7 +1817,7 @@
             // InternalCompleteOCL.g:92:7: ( 'false' )
             // InternalCompleteOCL.g:92:9: 'false'
             {
-            match("false"); 
+            match("false");
 
 
             }
@@ -1838,7 +1838,7 @@
             // InternalCompleteOCL.g:93:7: ( '@' )
             // InternalCompleteOCL.g:93:9: '@'
             {
-            match('@'); 
+            match('@');
 
             }
 
@@ -1858,7 +1858,7 @@
             // InternalCompleteOCL.g:94:8: ( '|' )
             // InternalCompleteOCL.g:94:10: '|'
             {
-            match('|'); 
+            match('|');
 
             }
 
@@ -1878,7 +1878,7 @@
             // InternalCompleteOCL.g:95:8: ( ';' )
             // InternalCompleteOCL.g:95:10: ';'
             {
-            match(';'); 
+            match(';');
 
             }
 
@@ -1898,7 +1898,7 @@
             // InternalCompleteOCL.g:96:8: ( '|1' )
             // InternalCompleteOCL.g:96:10: '|1'
             {
-            match("|1"); 
+            match("|1");
 
 
             }
@@ -1919,7 +1919,7 @@
             // InternalCompleteOCL.g:18098:22: ( '\\u00A3$%^\\u00A3$%^' )
             // InternalCompleteOCL.g:18098:24: '\\u00A3$%^\\u00A3$%^'
             {
-            match("\u00A3$%^\u00A3$%^"); 
+            match("\u00A3$%^\u00A3$%^");
 
 
             }
@@ -1938,7 +1938,7 @@
             // InternalCompleteOCL.g:18100:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
             // InternalCompleteOCL.g:18100:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
-            match('\\'); 
+            match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
                 input.consume();
 
@@ -1989,7 +1989,7 @@
             // InternalCompleteOCL.g:18104:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
             // InternalCompleteOCL.g:18104:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
-            match('\"'); 
+            match('\"');
             // InternalCompleteOCL.g:18104:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
@@ -2008,7 +2008,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:18104:34: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -2033,7 +2033,7 @@
                 }
             } while (true);
 
-            match('\"'); 
+            match('\"');
 
             }
 
@@ -2053,7 +2053,7 @@
             // InternalCompleteOCL.g:18106:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             // InternalCompleteOCL.g:18106:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
-            match('\''); 
+            match('\'');
             // InternalCompleteOCL.g:18106:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
@@ -2072,7 +2072,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:18106:35: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -2097,7 +2097,7 @@
                 }
             } while (true);
 
-            match('\''); 
+            match('\'');
 
             }
 
@@ -2117,7 +2117,7 @@
             // InternalCompleteOCL.g:18108:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
             // InternalCompleteOCL.g:18108:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
-            match("/'"); 
+            match("/'");
 
             // InternalCompleteOCL.g:18108:38: ( options {greedy=false; } : . )*
             loop3:
@@ -2146,7 +2146,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:18108:66: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -2156,7 +2156,7 @@
                 }
             } while (true);
 
-            match("'/"); 
+            match("'/");
 
 
             }
@@ -2177,7 +2177,7 @@
             // InternalCompleteOCL.g:18110:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
             // InternalCompleteOCL.g:18110:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
-            mRULE_LETTER_CHARACTER(); 
+            mRULE_LETTER_CHARACTER();
             // InternalCompleteOCL.g:18110:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
@@ -2230,8 +2230,8 @@
             // InternalCompleteOCL.g:18112:17: ( '_' RULE_SINGLE_QUOTED_STRING )
             // InternalCompleteOCL.g:18112:19: '_' RULE_SINGLE_QUOTED_STRING
             {
-            match('_'); 
-            mRULE_SINGLE_QUOTED_STRING(); 
+            match('_');
+            mRULE_SINGLE_QUOTED_STRING();
 
             }
 
@@ -2267,7 +2267,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:18114:13: '0' .. '9'
             	    {
-            	    matchRange('0','9'); 
+            	    matchRange('0','9');
 
             	    }
             	    break;
@@ -2300,7 +2300,7 @@
             // InternalCompleteOCL.g:18116:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
             // InternalCompleteOCL.g:18116:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
-            match("/*"); 
+            match("/*");
 
             // InternalCompleteOCL.g:18116:24: ( options {greedy=false; } : . )*
             loop6:
@@ -2329,7 +2329,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:18116:52: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -2339,7 +2339,7 @@
                 }
             } while (true);
 
-            match("*/"); 
+            match("*/");
 
 
             }
@@ -2360,7 +2360,7 @@
             // InternalCompleteOCL.g:18118:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
             // InternalCompleteOCL.g:18118:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
-            match("--"); 
+            match("--");
 
             // InternalCompleteOCL.g:18118:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
@@ -2417,14 +2417,14 @@
                         case 1 :
                             // InternalCompleteOCL.g:18118:41: '\\r'
                             {
-                            match('\r'); 
+                            match('\r');
 
                             }
                             break;
 
                     }
 
-                    match('\n'); 
+                    match('\n');
 
                     }
                     break;
@@ -2507,7 +2507,7 @@
             // InternalCompleteOCL.g:18122:16: ( . )
             // InternalCompleteOCL.g:18122:18: .
             {
-            matchAny(); 
+            matchAny();
 
             }
 
@@ -2527,679 +2527,679 @@
             case 1 :
                 // InternalCompleteOCL.g:1:10: T__17
                 {
-                mT__17(); 
+                mT__17();
 
                 }
                 break;
             case 2 :
                 // InternalCompleteOCL.g:1:16: T__18
                 {
-                mT__18(); 
+                mT__18();
 
                 }
                 break;
             case 3 :
                 // InternalCompleteOCL.g:1:22: T__19
                 {
-                mT__19(); 
+                mT__19();
 
                 }
                 break;
             case 4 :
                 // InternalCompleteOCL.g:1:28: T__20
                 {
-                mT__20(); 
+                mT__20();
 
                 }
                 break;
             case 5 :
                 // InternalCompleteOCL.g:1:34: T__21
                 {
-                mT__21(); 
+                mT__21();
 
                 }
                 break;
             case 6 :
                 // InternalCompleteOCL.g:1:40: T__22
                 {
-                mT__22(); 
+                mT__22();
 
                 }
                 break;
             case 7 :
                 // InternalCompleteOCL.g:1:46: T__23
                 {
-                mT__23(); 
+                mT__23();
 
                 }
                 break;
             case 8 :
                 // InternalCompleteOCL.g:1:52: T__24
                 {
-                mT__24(); 
+                mT__24();
 
                 }
                 break;
             case 9 :
                 // InternalCompleteOCL.g:1:58: T__25
                 {
-                mT__25(); 
+                mT__25();
 
                 }
                 break;
             case 10 :
                 // InternalCompleteOCL.g:1:64: T__26
                 {
-                mT__26(); 
+                mT__26();
 
                 }
                 break;
             case 11 :
                 // InternalCompleteOCL.g:1:70: T__27
                 {
-                mT__27(); 
+                mT__27();
 
                 }
                 break;
             case 12 :
                 // InternalCompleteOCL.g:1:76: T__28
                 {
-                mT__28(); 
+                mT__28();
 
                 }
                 break;
             case 13 :
                 // InternalCompleteOCL.g:1:82: T__29
                 {
-                mT__29(); 
+                mT__29();
 
                 }
                 break;
             case 14 :
                 // InternalCompleteOCL.g:1:88: T__30
                 {
-                mT__30(); 
+                mT__30();
 
                 }
                 break;
             case 15 :
                 // InternalCompleteOCL.g:1:94: T__31
                 {
-                mT__31(); 
+                mT__31();
 
                 }
                 break;
             case 16 :
                 // InternalCompleteOCL.g:1:100: T__32
                 {
-                mT__32(); 
+                mT__32();
 
                 }
                 break;
             case 17 :
                 // InternalCompleteOCL.g:1:106: T__33
                 {
-                mT__33(); 
+                mT__33();
 
                 }
                 break;
             case 18 :
                 // InternalCompleteOCL.g:1:112: T__34
                 {
-                mT__34(); 
+                mT__34();
 
                 }
                 break;
             case 19 :
                 // InternalCompleteOCL.g:1:118: T__35
                 {
-                mT__35(); 
+                mT__35();
 
                 }
                 break;
             case 20 :
                 // InternalCompleteOCL.g:1:124: T__36
                 {
-                mT__36(); 
+                mT__36();
 
                 }
                 break;
             case 21 :
                 // InternalCompleteOCL.g:1:130: T__37
                 {
-                mT__37(); 
+                mT__37();
 
                 }
                 break;
             case 22 :
                 // InternalCompleteOCL.g:1:136: T__38
                 {
-                mT__38(); 
+                mT__38();
 
                 }
                 break;
             case 23 :
                 // InternalCompleteOCL.g:1:142: T__39
                 {
-                mT__39(); 
+                mT__39();
 
                 }
                 break;
             case 24 :
                 // InternalCompleteOCL.g:1:148: T__40
                 {
-                mT__40(); 
+                mT__40();
 
                 }
                 break;
             case 25 :
                 // InternalCompleteOCL.g:1:154: T__41
                 {
-                mT__41(); 
+                mT__41();
 
                 }
                 break;
             case 26 :
                 // InternalCompleteOCL.g:1:160: T__42
                 {
-                mT__42(); 
+                mT__42();
 
                 }
                 break;
             case 27 :
                 // InternalCompleteOCL.g:1:166: T__43
                 {
-                mT__43(); 
+                mT__43();
 
                 }
                 break;
             case 28 :
                 // InternalCompleteOCL.g:1:172: T__44
                 {
-                mT__44(); 
+                mT__44();
 
                 }
                 break;
             case 29 :
                 // InternalCompleteOCL.g:1:178: T__45
                 {
-                mT__45(); 
+                mT__45();
 
                 }
                 break;
             case 30 :
                 // InternalCompleteOCL.g:1:184: T__46
                 {
-                mT__46(); 
+                mT__46();
 
                 }
                 break;
             case 31 :
                 // InternalCompleteOCL.g:1:190: T__47
                 {
-                mT__47(); 
+                mT__47();
 
                 }
                 break;
             case 32 :
                 // InternalCompleteOCL.g:1:196: T__48
                 {
-                mT__48(); 
+                mT__48();
 
                 }
                 break;
             case 33 :
                 // InternalCompleteOCL.g:1:202: T__49
                 {
-                mT__49(); 
+                mT__49();
 
                 }
                 break;
             case 34 :
                 // InternalCompleteOCL.g:1:208: T__50
                 {
-                mT__50(); 
+                mT__50();
 
                 }
                 break;
             case 35 :
                 // InternalCompleteOCL.g:1:214: T__51
                 {
-                mT__51(); 
+                mT__51();
 
                 }
                 break;
             case 36 :
                 // InternalCompleteOCL.g:1:220: T__52
                 {
-                mT__52(); 
+                mT__52();
 
                 }
                 break;
             case 37 :
                 // InternalCompleteOCL.g:1:226: T__53
                 {
-                mT__53(); 
+                mT__53();
 
                 }
                 break;
             case 38 :
                 // InternalCompleteOCL.g:1:232: T__54
                 {
-                mT__54(); 
+                mT__54();
 
                 }
                 break;
             case 39 :
                 // InternalCompleteOCL.g:1:238: T__55
                 {
-                mT__55(); 
+                mT__55();
 
                 }
                 break;
             case 40 :
                 // InternalCompleteOCL.g:1:244: T__56
                 {
-                mT__56(); 
+                mT__56();
 
                 }
                 break;
             case 41 :
                 // InternalCompleteOCL.g:1:250: T__57
                 {
-                mT__57(); 
+                mT__57();
 
                 }
                 break;
             case 42 :
                 // InternalCompleteOCL.g:1:256: T__58
                 {
-                mT__58(); 
+                mT__58();
 
                 }
                 break;
             case 43 :
                 // InternalCompleteOCL.g:1:262: T__59
                 {
-                mT__59(); 
+                mT__59();
 
                 }
                 break;
             case 44 :
                 // InternalCompleteOCL.g:1:268: T__60
                 {
-                mT__60(); 
+                mT__60();
 
                 }
                 break;
             case 45 :
                 // InternalCompleteOCL.g:1:274: T__61
                 {
-                mT__61(); 
+                mT__61();
 
                 }
                 break;
             case 46 :
                 // InternalCompleteOCL.g:1:280: T__62
                 {
-                mT__62(); 
+                mT__62();
 
                 }
                 break;
             case 47 :
                 // InternalCompleteOCL.g:1:286: T__63
                 {
-                mT__63(); 
+                mT__63();
 
                 }
                 break;
             case 48 :
                 // InternalCompleteOCL.g:1:292: T__64
                 {
-                mT__64(); 
+                mT__64();
 
                 }
                 break;
             case 49 :
                 // InternalCompleteOCL.g:1:298: T__65
                 {
-                mT__65(); 
+                mT__65();
 
                 }
                 break;
             case 50 :
                 // InternalCompleteOCL.g:1:304: T__66
                 {
-                mT__66(); 
+                mT__66();
 
                 }
                 break;
             case 51 :
                 // InternalCompleteOCL.g:1:310: T__67
                 {
-                mT__67(); 
+                mT__67();
 
                 }
                 break;
             case 52 :
                 // InternalCompleteOCL.g:1:316: T__68
                 {
-                mT__68(); 
+                mT__68();
 
                 }
                 break;
             case 53 :
                 // InternalCompleteOCL.g:1:322: T__69
                 {
-                mT__69(); 
+                mT__69();
 
                 }
                 break;
             case 54 :
                 // InternalCompleteOCL.g:1:328: T__70
                 {
-                mT__70(); 
+                mT__70();
 
                 }
                 break;
             case 55 :
                 // InternalCompleteOCL.g:1:334: T__71
                 {
-                mT__71(); 
+                mT__71();
 
                 }
                 break;
             case 56 :
                 // InternalCompleteOCL.g:1:340: T__72
                 {
-                mT__72(); 
+                mT__72();
 
                 }
                 break;
             case 57 :
                 // InternalCompleteOCL.g:1:346: T__73
                 {
-                mT__73(); 
+                mT__73();
 
                 }
                 break;
             case 58 :
                 // InternalCompleteOCL.g:1:352: T__74
                 {
-                mT__74(); 
+                mT__74();
 
                 }
                 break;
             case 59 :
                 // InternalCompleteOCL.g:1:358: T__75
                 {
-                mT__75(); 
+                mT__75();
 
                 }
                 break;
             case 60 :
                 // InternalCompleteOCL.g:1:364: T__76
                 {
-                mT__76(); 
+                mT__76();
 
                 }
                 break;
             case 61 :
                 // InternalCompleteOCL.g:1:370: T__77
                 {
-                mT__77(); 
+                mT__77();
 
                 }
                 break;
             case 62 :
                 // InternalCompleteOCL.g:1:376: T__78
                 {
-                mT__78(); 
+                mT__78();
 
                 }
                 break;
             case 63 :
                 // InternalCompleteOCL.g:1:382: T__79
                 {
-                mT__79(); 
+                mT__79();
 
                 }
                 break;
             case 64 :
                 // InternalCompleteOCL.g:1:388: T__80
                 {
-                mT__80(); 
+                mT__80();
 
                 }
                 break;
             case 65 :
                 // InternalCompleteOCL.g:1:394: T__81
                 {
-                mT__81(); 
+                mT__81();
 
                 }
                 break;
             case 66 :
                 // InternalCompleteOCL.g:1:400: T__82
                 {
-                mT__82(); 
+                mT__82();
 
                 }
                 break;
             case 67 :
                 // InternalCompleteOCL.g:1:406: T__83
                 {
-                mT__83(); 
+                mT__83();
 
                 }
                 break;
             case 68 :
                 // InternalCompleteOCL.g:1:412: T__84
                 {
-                mT__84(); 
+                mT__84();
 
                 }
                 break;
             case 69 :
                 // InternalCompleteOCL.g:1:418: T__85
                 {
-                mT__85(); 
+                mT__85();
 
                 }
                 break;
             case 70 :
                 // InternalCompleteOCL.g:1:424: T__86
                 {
-                mT__86(); 
+                mT__86();
 
                 }
                 break;
             case 71 :
                 // InternalCompleteOCL.g:1:430: T__87
                 {
-                mT__87(); 
+                mT__87();
 
                 }
                 break;
             case 72 :
                 // InternalCompleteOCL.g:1:436: T__88
                 {
-                mT__88(); 
+                mT__88();
 
                 }
                 break;
             case 73 :
                 // InternalCompleteOCL.g:1:442: T__89
                 {
-                mT__89(); 
+                mT__89();
 
                 }
                 break;
             case 74 :
                 // InternalCompleteOCL.g:1:448: T__90
                 {
-                mT__90(); 
+                mT__90();
 
                 }
                 break;
             case 75 :
                 // InternalCompleteOCL.g:1:454: T__91
                 {
-                mT__91(); 
+                mT__91();
 
                 }
                 break;
             case 76 :
                 // InternalCompleteOCL.g:1:460: T__92
                 {
-                mT__92(); 
+                mT__92();
 
                 }
                 break;
             case 77 :
                 // InternalCompleteOCL.g:1:466: T__93
                 {
-                mT__93(); 
+                mT__93();
 
                 }
                 break;
             case 78 :
                 // InternalCompleteOCL.g:1:472: T__94
                 {
-                mT__94(); 
+                mT__94();
 
                 }
                 break;
             case 79 :
                 // InternalCompleteOCL.g:1:478: T__95
                 {
-                mT__95(); 
+                mT__95();
 
                 }
                 break;
             case 80 :
                 // InternalCompleteOCL.g:1:484: T__96
                 {
-                mT__96(); 
+                mT__96();
 
                 }
                 break;
             case 81 :
                 // InternalCompleteOCL.g:1:490: T__97
                 {
-                mT__97(); 
+                mT__97();
 
                 }
                 break;
             case 82 :
                 // InternalCompleteOCL.g:1:496: T__98
                 {
-                mT__98(); 
+                mT__98();
 
                 }
                 break;
             case 83 :
                 // InternalCompleteOCL.g:1:502: T__99
                 {
-                mT__99(); 
+                mT__99();
 
                 }
                 break;
             case 84 :
                 // InternalCompleteOCL.g:1:508: T__100
                 {
-                mT__100(); 
+                mT__100();
 
                 }
                 break;
             case 85 :
                 // InternalCompleteOCL.g:1:515: T__101
                 {
-                mT__101(); 
+                mT__101();
 
                 }
                 break;
             case 86 :
                 // InternalCompleteOCL.g:1:522: T__102
                 {
-                mT__102(); 
+                mT__102();
 
                 }
                 break;
             case 87 :
                 // InternalCompleteOCL.g:1:529: RULE_UNQUOTED_STRING
                 {
-                mRULE_UNQUOTED_STRING(); 
+                mRULE_UNQUOTED_STRING();
 
                 }
                 break;
             case 88 :
                 // InternalCompleteOCL.g:1:550: RULE_DOUBLE_QUOTED_STRING
                 {
-                mRULE_DOUBLE_QUOTED_STRING(); 
+                mRULE_DOUBLE_QUOTED_STRING();
 
                 }
                 break;
             case 89 :
                 // InternalCompleteOCL.g:1:576: RULE_SINGLE_QUOTED_STRING
                 {
-                mRULE_SINGLE_QUOTED_STRING(); 
+                mRULE_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 90 :
                 // InternalCompleteOCL.g:1:602: RULE_ML_SINGLE_QUOTED_STRING
                 {
-                mRULE_ML_SINGLE_QUOTED_STRING(); 
+                mRULE_ML_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 91 :
                 // InternalCompleteOCL.g:1:631: RULE_SIMPLE_ID
                 {
-                mRULE_SIMPLE_ID(); 
+                mRULE_SIMPLE_ID();
 
                 }
                 break;
             case 92 :
                 // InternalCompleteOCL.g:1:646: RULE_ESCAPED_ID
                 {
-                mRULE_ESCAPED_ID(); 
+                mRULE_ESCAPED_ID();
 
                 }
                 break;
             case 93 :
                 // InternalCompleteOCL.g:1:662: RULE_INT
                 {
-                mRULE_INT(); 
+                mRULE_INT();
 
                 }
                 break;
             case 94 :
                 // InternalCompleteOCL.g:1:671: RULE_ML_COMMENT
                 {
-                mRULE_ML_COMMENT(); 
+                mRULE_ML_COMMENT();
 
                 }
                 break;
             case 95 :
                 // InternalCompleteOCL.g:1:687: RULE_SL_COMMENT
                 {
-                mRULE_SL_COMMENT(); 
+                mRULE_SL_COMMENT();
 
                 }
                 break;
             case 96 :
                 // InternalCompleteOCL.g:1:703: RULE_WS
                 {
-                mRULE_WS(); 
+                mRULE_WS();
 
                 }
                 break;
             case 97 :
                 // InternalCompleteOCL.g:1:711: RULE_ANY_OTHER
                 {
-                mRULE_ANY_OTHER(); 
+                mRULE_ANY_OTHER();
 
                 }
                 break;
@@ -3622,7 +3622,7 @@
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA11_0 = input.LA(1);
 
                         s = -1;
@@ -3736,7 +3736,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA11_49 = input.LA(1);
 
                         s = -1;
@@ -3746,7 +3746,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA11_48 = input.LA(1);
 
                         s = -1;
@@ -3763,6 +3763,6 @@
             throw nvae;
         }
     }
- 
+
 
 }
\ No newline at end of file
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 a4263d2..fee385a 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
@@ -1,4 +1,4 @@
-package org.eclipse.ocl.xtext.completeocl.ui.contentassist.antlr.internal; 
+package org.eclipse.ocl.xtext.completeocl.ui.contentassist.antlr.internal;
 
 import java.io.InputStream;
 import org.eclipse.xtext.*;
@@ -145,26 +145,26 @@
         }
         public InternalCompleteOCLParser(TokenStream input, RecognizerSharedState state) {
             super(input, state);
-             
+
         }
-        
+
 
     public String[] getTokenNames() { return InternalCompleteOCLParser.tokenNames; }
     public String getGrammarFileName() { return "InternalCompleteOCL.g"; }
 
 
-     
+
      	private CompleteOCLGrammarAccess grammarAccess;
-     	
+
         public void setGrammarAccess(CompleteOCLGrammarAccess grammarAccess) {
         	this.grammarAccess = grammarAccess;
         }
-        
+
         @Override
         protected Grammar getGrammar() {
         	return grammarAccess.getGrammar();
         }
-        
+
         @Override
         protected String getValueForTokenName(String tokenName) {
         	return tokenName;
@@ -181,7 +181,7 @@
             // InternalCompleteOCL.g:70:1: ruleCompleteOCLDocumentCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCompleteOCLDocumentCSRule()); 
+               before(grammarAccess.getCompleteOCLDocumentCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCompleteOCLDocumentCS();
@@ -189,7 +189,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCompleteOCLDocumentCSRule()); 
+               after(grammarAccess.getCompleteOCLDocumentCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -212,7 +212,7 @@
     public final void ruleCompleteOCLDocumentCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:81:2: ( ( ( rule__CompleteOCLDocumentCS__Group__0 ) ) )
             // InternalCompleteOCL.g:82:1: ( ( rule__CompleteOCLDocumentCS__Group__0 ) )
@@ -221,7 +221,7 @@
             // InternalCompleteOCL.g:83:1: ( rule__CompleteOCLDocumentCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCompleteOCLDocumentCSAccess().getGroup()); 
+               before(grammarAccess.getCompleteOCLDocumentCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:84:1: ( rule__CompleteOCLDocumentCS__Group__0 )
             // InternalCompleteOCL.g:84:2: rule__CompleteOCLDocumentCS__Group__0
@@ -235,7 +235,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCompleteOCLDocumentCSAccess().getGroup()); 
+               after(grammarAccess.getCompleteOCLDocumentCSAccess().getGroup());
             }
 
             }
@@ -266,7 +266,7 @@
             // InternalCompleteOCL.g:98:1: ruleCompleteOCLNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCompleteOCLNavigationOperatorNameRule()); 
+               before(grammarAccess.getCompleteOCLNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCompleteOCLNavigationOperatorName();
@@ -274,7 +274,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCompleteOCLNavigationOperatorNameRule()); 
+               after(grammarAccess.getCompleteOCLNavigationOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -297,7 +297,7 @@
     public final void ruleCompleteOCLNavigationOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:109:2: ( ( ( rule__CompleteOCLNavigationOperatorName__Alternatives ) ) )
             // InternalCompleteOCL.g:110:1: ( ( rule__CompleteOCLNavigationOperatorName__Alternatives ) )
@@ -306,7 +306,7 @@
             // InternalCompleteOCL.g:111:1: ( rule__CompleteOCLNavigationOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:112:1: ( rule__CompleteOCLNavigationOperatorName__Alternatives )
             // InternalCompleteOCL.g:112:2: rule__CompleteOCLNavigationOperatorName__Alternatives
@@ -320,7 +320,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -351,7 +351,7 @@
             // InternalCompleteOCL.g:126:1: ruleClassifierContextDeclCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSRule()); 
+               before(grammarAccess.getClassifierContextDeclCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleClassifierContextDeclCS();
@@ -359,7 +359,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSRule()); 
+               after(grammarAccess.getClassifierContextDeclCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -382,7 +382,7 @@
     public final void ruleClassifierContextDeclCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:137:2: ( ( ( rule__ClassifierContextDeclCS__Group__0 ) ) )
             // InternalCompleteOCL.g:138:1: ( ( rule__ClassifierContextDeclCS__Group__0 ) )
@@ -391,7 +391,7 @@
             // InternalCompleteOCL.g:139:1: ( rule__ClassifierContextDeclCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getGroup()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:140:1: ( rule__ClassifierContextDeclCS__Group__0 )
             // InternalCompleteOCL.g:140:2: rule__ClassifierContextDeclCS__Group__0
@@ -405,7 +405,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getGroup()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getGroup());
             }
 
             }
@@ -436,7 +436,7 @@
             // InternalCompleteOCL.g:154:1: ruleConstraintCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getConstraintCSRule()); 
+               before(grammarAccess.getConstraintCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleConstraintCS();
@@ -444,7 +444,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getConstraintCSRule()); 
+               after(grammarAccess.getConstraintCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -467,7 +467,7 @@
     public final void ruleConstraintCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:165:2: ( ( ( rule__ConstraintCS__Group__0 ) ) )
             // InternalCompleteOCL.g:166:1: ( ( rule__ConstraintCS__Group__0 ) )
@@ -476,7 +476,7 @@
             // InternalCompleteOCL.g:167:1: ( rule__ConstraintCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getConstraintCSAccess().getGroup()); 
+               before(grammarAccess.getConstraintCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:168:1: ( rule__ConstraintCS__Group__0 )
             // InternalCompleteOCL.g:168:2: rule__ConstraintCS__Group__0
@@ -490,7 +490,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getConstraintCSAccess().getGroup()); 
+               after(grammarAccess.getConstraintCSAccess().getGroup());
             }
 
             }
@@ -521,7 +521,7 @@
             // InternalCompleteOCL.g:182:1: ruleContextDeclCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getContextDeclCSRule()); 
+               before(grammarAccess.getContextDeclCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleContextDeclCS();
@@ -529,7 +529,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getContextDeclCSRule()); 
+               after(grammarAccess.getContextDeclCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -552,7 +552,7 @@
     public final void ruleContextDeclCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:193:2: ( ( ( rule__ContextDeclCS__Alternatives ) ) )
             // InternalCompleteOCL.g:194:1: ( ( rule__ContextDeclCS__Alternatives ) )
@@ -561,7 +561,7 @@
             // InternalCompleteOCL.g:195:1: ( rule__ContextDeclCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getContextDeclCSAccess().getAlternatives()); 
+               before(grammarAccess.getContextDeclCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:196:1: ( rule__ContextDeclCS__Alternatives )
             // InternalCompleteOCL.g:196:2: rule__ContextDeclCS__Alternatives
@@ -575,7 +575,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getContextDeclCSAccess().getAlternatives()); 
+               after(grammarAccess.getContextDeclCSAccess().getAlternatives());
             }
 
             }
@@ -606,7 +606,7 @@
             // InternalCompleteOCL.g:210:1: ruleDefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefCSRule()); 
+               before(grammarAccess.getDefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleDefCS();
@@ -614,7 +614,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefCSRule()); 
+               after(grammarAccess.getDefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -637,7 +637,7 @@
     public final void ruleDefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:221:2: ( ( ( rule__DefCS__Alternatives ) ) )
             // InternalCompleteOCL.g:222:1: ( ( rule__DefCS__Alternatives ) )
@@ -646,7 +646,7 @@
             // InternalCompleteOCL.g:223:1: ( rule__DefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefCSAccess().getAlternatives()); 
+               before(grammarAccess.getDefCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:224:1: ( rule__DefCS__Alternatives )
             // InternalCompleteOCL.g:224:2: rule__DefCS__Alternatives
@@ -660,7 +660,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefCSAccess().getAlternatives()); 
+               after(grammarAccess.getDefCSAccess().getAlternatives());
             }
 
             }
@@ -691,7 +691,7 @@
             // InternalCompleteOCL.g:238:1: ruleDefOperationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSRule()); 
+               before(grammarAccess.getDefOperationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleDefOperationCS();
@@ -699,7 +699,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSRule()); 
+               after(grammarAccess.getDefOperationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -722,7 +722,7 @@
     public final void ruleDefOperationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:249:2: ( ( ( rule__DefOperationCS__Group__0 ) ) )
             // InternalCompleteOCL.g:250:1: ( ( rule__DefOperationCS__Group__0 ) )
@@ -731,7 +731,7 @@
             // InternalCompleteOCL.g:251:1: ( rule__DefOperationCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getGroup()); 
+               before(grammarAccess.getDefOperationCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:252:1: ( rule__DefOperationCS__Group__0 )
             // InternalCompleteOCL.g:252:2: rule__DefOperationCS__Group__0
@@ -745,7 +745,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getGroup()); 
+               after(grammarAccess.getDefOperationCSAccess().getGroup());
             }
 
             }
@@ -776,7 +776,7 @@
             // InternalCompleteOCL.g:266:1: ruleDefParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefParameterCSRule()); 
+               before(grammarAccess.getDefParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleDefParameterCS();
@@ -784,7 +784,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefParameterCSRule()); 
+               after(grammarAccess.getDefParameterCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -807,7 +807,7 @@
     public final void ruleDefParameterCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:277:2: ( ( ( rule__DefParameterCS__Group__0 ) ) )
             // InternalCompleteOCL.g:278:1: ( ( rule__DefParameterCS__Group__0 ) )
@@ -816,7 +816,7 @@
             // InternalCompleteOCL.g:279:1: ( rule__DefParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefParameterCSAccess().getGroup()); 
+               before(grammarAccess.getDefParameterCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:280:1: ( rule__DefParameterCS__Group__0 )
             // InternalCompleteOCL.g:280:2: rule__DefParameterCS__Group__0
@@ -830,7 +830,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefParameterCSAccess().getGroup()); 
+               after(grammarAccess.getDefParameterCSAccess().getGroup());
             }
 
             }
@@ -861,7 +861,7 @@
             // InternalCompleteOCL.g:294:1: ruleDefPropertyCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSRule()); 
+               before(grammarAccess.getDefPropertyCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleDefPropertyCS();
@@ -869,7 +869,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSRule()); 
+               after(grammarAccess.getDefPropertyCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -892,7 +892,7 @@
     public final void ruleDefPropertyCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:305:2: ( ( ( rule__DefPropertyCS__Group__0 ) ) )
             // InternalCompleteOCL.g:306:1: ( ( rule__DefPropertyCS__Group__0 ) )
@@ -901,7 +901,7 @@
             // InternalCompleteOCL.g:307:1: ( rule__DefPropertyCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getGroup()); 
+               before(grammarAccess.getDefPropertyCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:308:1: ( rule__DefPropertyCS__Group__0 )
             // InternalCompleteOCL.g:308:2: rule__DefPropertyCS__Group__0
@@ -915,7 +915,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getGroup()); 
+               after(grammarAccess.getDefPropertyCSAccess().getGroup());
             }
 
             }
@@ -946,7 +946,7 @@
             // InternalCompleteOCL.g:322:1: ruleImportCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSRule()); 
+               before(grammarAccess.getImportCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleImportCS();
@@ -954,7 +954,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSRule()); 
+               after(grammarAccess.getImportCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -977,7 +977,7 @@
     public final void ruleImportCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:333:2: ( ( ( rule__ImportCS__Group__0 ) ) )
             // InternalCompleteOCL.g:334:1: ( ( rule__ImportCS__Group__0 ) )
@@ -986,7 +986,7 @@
             // InternalCompleteOCL.g:335:1: ( rule__ImportCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getGroup()); 
+               before(grammarAccess.getImportCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:336:1: ( rule__ImportCS__Group__0 )
             // InternalCompleteOCL.g:336:2: rule__ImportCS__Group__0
@@ -1000,7 +1000,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getGroup()); 
+               after(grammarAccess.getImportCSAccess().getGroup());
             }
 
             }
@@ -1031,7 +1031,7 @@
             // InternalCompleteOCL.g:350:1: ruleOperationContextDeclCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSRule()); 
+               before(grammarAccess.getOperationContextDeclCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleOperationContextDeclCS();
@@ -1039,7 +1039,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSRule()); 
+               after(grammarAccess.getOperationContextDeclCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1062,7 +1062,7 @@
     public final void ruleOperationContextDeclCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:361:2: ( ( ( rule__OperationContextDeclCS__Group__0 ) ) )
             // InternalCompleteOCL.g:362:1: ( ( rule__OperationContextDeclCS__Group__0 ) )
@@ -1071,7 +1071,7 @@
             // InternalCompleteOCL.g:363:1: ( rule__OperationContextDeclCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getGroup()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:364:1: ( rule__OperationContextDeclCS__Group__0 )
             // InternalCompleteOCL.g:364:2: rule__OperationContextDeclCS__Group__0
@@ -1085,7 +1085,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getGroup()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getGroup());
             }
 
             }
@@ -1116,7 +1116,7 @@
             // InternalCompleteOCL.g:378:1: rulePackageDeclarationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageDeclarationCSRule()); 
+               before(grammarAccess.getPackageDeclarationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePackageDeclarationCS();
@@ -1124,7 +1124,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageDeclarationCSRule()); 
+               after(grammarAccess.getPackageDeclarationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1147,7 +1147,7 @@
     public final void rulePackageDeclarationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:389:2: ( ( ( rule__PackageDeclarationCS__Group__0 ) ) )
             // InternalCompleteOCL.g:390:1: ( ( rule__PackageDeclarationCS__Group__0 ) )
@@ -1156,7 +1156,7 @@
             // InternalCompleteOCL.g:391:1: ( rule__PackageDeclarationCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageDeclarationCSAccess().getGroup()); 
+               before(grammarAccess.getPackageDeclarationCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:392:1: ( rule__PackageDeclarationCS__Group__0 )
             // InternalCompleteOCL.g:392:2: rule__PackageDeclarationCS__Group__0
@@ -1170,7 +1170,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageDeclarationCSAccess().getGroup()); 
+               after(grammarAccess.getPackageDeclarationCSAccess().getGroup());
             }
 
             }
@@ -1201,7 +1201,7 @@
             // InternalCompleteOCL.g:406:1: ruleParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSRule()); 
+               before(grammarAccess.getParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleParameterCS();
@@ -1209,7 +1209,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSRule()); 
+               after(grammarAccess.getParameterCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1232,7 +1232,7 @@
     public final void ruleParameterCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:417:2: ( ( ( rule__ParameterCS__Group__0 ) ) )
             // InternalCompleteOCL.g:418:1: ( ( rule__ParameterCS__Group__0 ) )
@@ -1241,7 +1241,7 @@
             // InternalCompleteOCL.g:419:1: ( rule__ParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getGroup()); 
+               before(grammarAccess.getParameterCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:420:1: ( rule__ParameterCS__Group__0 )
             // InternalCompleteOCL.g:420:2: rule__ParameterCS__Group__0
@@ -1255,7 +1255,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getGroup()); 
+               after(grammarAccess.getParameterCSAccess().getGroup());
             }
 
             }
@@ -1286,7 +1286,7 @@
             // InternalCompleteOCL.g:434:1: rulePropertyContextDeclCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSRule()); 
+               before(grammarAccess.getPropertyContextDeclCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePropertyContextDeclCS();
@@ -1294,7 +1294,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSRule()); 
+               after(grammarAccess.getPropertyContextDeclCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1317,7 +1317,7 @@
     public final void rulePropertyContextDeclCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:445:2: ( ( ( rule__PropertyContextDeclCS__Group__0 ) ) )
             // InternalCompleteOCL.g:446:1: ( ( rule__PropertyContextDeclCS__Group__0 ) )
@@ -1326,7 +1326,7 @@
             // InternalCompleteOCL.g:447:1: ( rule__PropertyContextDeclCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getGroup()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:448:1: ( rule__PropertyContextDeclCS__Group__0 )
             // InternalCompleteOCL.g:448:2: rule__PropertyContextDeclCS__Group__0
@@ -1340,7 +1340,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getGroup()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getGroup());
             }
 
             }
@@ -1371,7 +1371,7 @@
             // InternalCompleteOCL.g:462:1: ruleSpecificationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSpecificationCSRule()); 
+               before(grammarAccess.getSpecificationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleSpecificationCS();
@@ -1379,7 +1379,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSpecificationCSRule()); 
+               after(grammarAccess.getSpecificationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1402,7 +1402,7 @@
     public final void ruleSpecificationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:473:2: ( ( ( rule__SpecificationCS__Alternatives ) ) )
             // InternalCompleteOCL.g:474:1: ( ( rule__SpecificationCS__Alternatives ) )
@@ -1411,7 +1411,7 @@
             // InternalCompleteOCL.g:475:1: ( rule__SpecificationCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSpecificationCSAccess().getAlternatives()); 
+               before(grammarAccess.getSpecificationCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:476:1: ( rule__SpecificationCS__Alternatives )
             // InternalCompleteOCL.g:476:2: rule__SpecificationCS__Alternatives
@@ -1425,7 +1425,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSpecificationCSAccess().getAlternatives()); 
+               after(grammarAccess.getSpecificationCSAccess().getAlternatives());
             }
 
             }
@@ -1456,7 +1456,7 @@
             // InternalCompleteOCL.g:490:1: ruleTemplateSignatureCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSRule()); 
+               before(grammarAccess.getTemplateSignatureCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTemplateSignatureCS();
@@ -1464,7 +1464,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSRule()); 
+               after(grammarAccess.getTemplateSignatureCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1487,7 +1487,7 @@
     public final void ruleTemplateSignatureCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:501:2: ( ( ( rule__TemplateSignatureCS__Alternatives ) ) )
             // InternalCompleteOCL.g:502:1: ( ( rule__TemplateSignatureCS__Alternatives ) )
@@ -1496,7 +1496,7 @@
             // InternalCompleteOCL.g:503:1: ( rule__TemplateSignatureCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getAlternatives()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:504:1: ( rule__TemplateSignatureCS__Alternatives )
             // InternalCompleteOCL.g:504:2: rule__TemplateSignatureCS__Alternatives
@@ -1510,7 +1510,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getAlternatives()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getAlternatives());
             }
 
             }
@@ -1541,7 +1541,7 @@
             // InternalCompleteOCL.g:518:1: ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedRefCSRule()); 
+               before(grammarAccess.getTypedRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypedRefCS();
@@ -1549,7 +1549,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedRefCSRule()); 
+               after(grammarAccess.getTypedRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1572,7 +1572,7 @@
     public final void ruleTypedRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:529:2: ( ( ( rule__TypedRefCS__Alternatives ) ) )
             // InternalCompleteOCL.g:530:1: ( ( rule__TypedRefCS__Alternatives ) )
@@ -1581,7 +1581,7 @@
             // InternalCompleteOCL.g:531:1: ( rule__TypedRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedRefCSAccess().getAlternatives()); 
+               before(grammarAccess.getTypedRefCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:532:1: ( rule__TypedRefCS__Alternatives )
             // InternalCompleteOCL.g:532:2: rule__TypedRefCS__Alternatives
@@ -1595,7 +1595,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedRefCSAccess().getAlternatives()); 
+               after(grammarAccess.getTypedRefCSAccess().getAlternatives());
             }
 
             }
@@ -1626,7 +1626,7 @@
             // InternalCompleteOCL.g:546:1: ruleUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnrestrictedNameRule()); 
+               before(grammarAccess.getUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnrestrictedName();
@@ -1634,7 +1634,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnrestrictedNameRule()); 
+               after(grammarAccess.getUnrestrictedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1657,7 +1657,7 @@
     public final void ruleUnrestrictedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:557:2: ( ( ( rule__UnrestrictedName__Alternatives ) ) )
             // InternalCompleteOCL.g:558:1: ( ( rule__UnrestrictedName__Alternatives ) )
@@ -1666,7 +1666,7 @@
             // InternalCompleteOCL.g:559:1: ( rule__UnrestrictedName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnrestrictedNameAccess().getAlternatives()); 
+               before(grammarAccess.getUnrestrictedNameAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:560:1: ( rule__UnrestrictedName__Alternatives )
             // InternalCompleteOCL.g:560:2: rule__UnrestrictedName__Alternatives
@@ -1680,7 +1680,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnrestrictedNameAccess().getAlternatives()); 
+               after(grammarAccess.getUnrestrictedNameAccess().getAlternatives());
             }
 
             }
@@ -1711,7 +1711,7 @@
             // InternalCompleteOCL.g:574:1: ruleNavigatingArgExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgExpCSRule()); 
+               before(grammarAccess.getNavigatingArgExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingArgExpCS();
@@ -1719,7 +1719,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgExpCSRule()); 
+               after(grammarAccess.getNavigatingArgExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1742,7 +1742,7 @@
     public final void ruleNavigatingArgExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:585:2: ( ( ( rule__NavigatingArgExpCS__Alternatives ) ) )
             // InternalCompleteOCL.g:586:1: ( ( rule__NavigatingArgExpCS__Alternatives ) )
@@ -1751,7 +1751,7 @@
             // InternalCompleteOCL.g:587:1: ( rule__NavigatingArgExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getNavigatingArgExpCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:588:1: ( rule__NavigatingArgExpCS__Alternatives )
             // InternalCompleteOCL.g:588:2: rule__NavigatingArgExpCS__Alternatives
@@ -1765,7 +1765,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getNavigatingArgExpCSAccess().getAlternatives());
             }
 
             }
@@ -1796,7 +1796,7 @@
             // InternalCompleteOCL.g:602:1: ruleNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigationOperatorNameRule()); 
+               before(grammarAccess.getNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigationOperatorName();
@@ -1804,7 +1804,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigationOperatorNameRule()); 
+               after(grammarAccess.getNavigationOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1827,7 +1827,7 @@
     public final void ruleNavigationOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:613:2: ( ( ( rule__NavigationOperatorName__Alternatives ) ) )
             // InternalCompleteOCL.g:614:1: ( ( rule__NavigationOperatorName__Alternatives ) )
@@ -1836,7 +1836,7 @@
             // InternalCompleteOCL.g:615:1: ( rule__NavigationOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigationOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getNavigationOperatorNameAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:616:1: ( rule__NavigationOperatorName__Alternatives )
             // InternalCompleteOCL.g:616:2: rule__NavigationOperatorName__Alternatives
@@ -1850,7 +1850,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigationOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getNavigationOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -1881,7 +1881,7 @@
             // InternalCompleteOCL.g:630:1: rulePrimitiveTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeIdentifierRule()); 
+               before(grammarAccess.getPrimitiveTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimitiveTypeIdentifier();
@@ -1889,7 +1889,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeIdentifierRule()); 
+               after(grammarAccess.getPrimitiveTypeIdentifierRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1912,7 +1912,7 @@
     public final void rulePrimitiveTypeIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:641:2: ( ( ( rule__PrimitiveTypeIdentifier__Alternatives ) ) )
             // InternalCompleteOCL.g:642:1: ( ( rule__PrimitiveTypeIdentifier__Alternatives ) )
@@ -1921,7 +1921,7 @@
             // InternalCompleteOCL.g:643:1: ( rule__PrimitiveTypeIdentifier__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives()); 
+               before(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:644:1: ( rule__PrimitiveTypeIdentifier__Alternatives )
             // InternalCompleteOCL.g:644:2: rule__PrimitiveTypeIdentifier__Alternatives
@@ -1935,7 +1935,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives()); 
+               after(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives());
             }
 
             }
@@ -1966,7 +1966,7 @@
             // InternalCompleteOCL.g:662:1: ruleEssentialOCLUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); 
+               before(grammarAccess.getEssentialOCLUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLUnaryOperatorName();
@@ -1974,7 +1974,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); 
+               after(grammarAccess.getEssentialOCLUnaryOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1997,7 +1997,7 @@
     public final void ruleEssentialOCLUnaryOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:673:2: ( ( ( rule__EssentialOCLUnaryOperatorName__Alternatives ) ) )
             // InternalCompleteOCL.g:674:1: ( ( rule__EssentialOCLUnaryOperatorName__Alternatives ) )
@@ -2006,7 +2006,7 @@
             // InternalCompleteOCL.g:675:1: ( rule__EssentialOCLUnaryOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:676:1: ( rule__EssentialOCLUnaryOperatorName__Alternatives )
             // InternalCompleteOCL.g:676:2: rule__EssentialOCLUnaryOperatorName__Alternatives
@@ -2020,7 +2020,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -2051,7 +2051,7 @@
             // InternalCompleteOCL.g:690:1: ruleEssentialOCLInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLInfixOperatorNameRule()); 
+               before(grammarAccess.getEssentialOCLInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLInfixOperatorName();
@@ -2059,7 +2059,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLInfixOperatorNameRule()); 
+               after(grammarAccess.getEssentialOCLInfixOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2082,7 +2082,7 @@
     public final void ruleEssentialOCLInfixOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:701:2: ( ( ( rule__EssentialOCLInfixOperatorName__Alternatives ) ) )
             // InternalCompleteOCL.g:702:1: ( ( rule__EssentialOCLInfixOperatorName__Alternatives ) )
@@ -2091,7 +2091,7 @@
             // InternalCompleteOCL.g:703:1: ( rule__EssentialOCLInfixOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:704:1: ( rule__EssentialOCLInfixOperatorName__Alternatives )
             // InternalCompleteOCL.g:704:2: rule__EssentialOCLInfixOperatorName__Alternatives
@@ -2105,7 +2105,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -2136,7 +2136,7 @@
             // InternalCompleteOCL.g:718:1: ruleEssentialOCLNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); 
+               before(grammarAccess.getEssentialOCLNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLNavigationOperatorName();
@@ -2144,7 +2144,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); 
+               after(grammarAccess.getEssentialOCLNavigationOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2167,7 +2167,7 @@
     public final void ruleEssentialOCLNavigationOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:729:2: ( ( ( rule__EssentialOCLNavigationOperatorName__Alternatives ) ) )
             // InternalCompleteOCL.g:730:1: ( ( rule__EssentialOCLNavigationOperatorName__Alternatives ) )
@@ -2176,7 +2176,7 @@
             // InternalCompleteOCL.g:731:1: ( rule__EssentialOCLNavigationOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:732:1: ( rule__EssentialOCLNavigationOperatorName__Alternatives )
             // InternalCompleteOCL.g:732:2: rule__EssentialOCLNavigationOperatorName__Alternatives
@@ -2190,7 +2190,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -2221,7 +2221,7 @@
             // InternalCompleteOCL.g:746:1: ruleBinaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBinaryOperatorNameRule()); 
+               before(grammarAccess.getBinaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleBinaryOperatorName();
@@ -2229,7 +2229,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBinaryOperatorNameRule()); 
+               after(grammarAccess.getBinaryOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2252,7 +2252,7 @@
     public final void ruleBinaryOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:757:2: ( ( ( rule__BinaryOperatorName__Alternatives ) ) )
             // InternalCompleteOCL.g:758:1: ( ( rule__BinaryOperatorName__Alternatives ) )
@@ -2261,7 +2261,7 @@
             // InternalCompleteOCL.g:759:1: ( rule__BinaryOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBinaryOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getBinaryOperatorNameAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:760:1: ( rule__BinaryOperatorName__Alternatives )
             // InternalCompleteOCL.g:760:2: rule__BinaryOperatorName__Alternatives
@@ -2275,7 +2275,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBinaryOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getBinaryOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -2306,7 +2306,7 @@
             // InternalCompleteOCL.g:774:1: ruleInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInfixOperatorNameRule()); 
+               before(grammarAccess.getInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleInfixOperatorName();
@@ -2314,7 +2314,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInfixOperatorNameRule()); 
+               after(grammarAccess.getInfixOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2337,7 +2337,7 @@
     public final void ruleInfixOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:785:2: ( ( ruleEssentialOCLInfixOperatorName ) )
             // InternalCompleteOCL.g:786:1: ( ruleEssentialOCLInfixOperatorName )
@@ -2346,7 +2346,7 @@
             // InternalCompleteOCL.g:787:1: ruleEssentialOCLInfixOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
+               before(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLInfixOperatorName();
@@ -2354,7 +2354,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
+               after(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
             }
 
             }
@@ -2385,7 +2385,7 @@
             // InternalCompleteOCL.g:802:1: ruleUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnaryOperatorNameRule()); 
+               before(grammarAccess.getUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnaryOperatorName();
@@ -2393,7 +2393,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnaryOperatorNameRule()); 
+               after(grammarAccess.getUnaryOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2416,7 +2416,7 @@
     public final void ruleUnaryOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:813:2: ( ( ruleEssentialOCLUnaryOperatorName ) )
             // InternalCompleteOCL.g:814:1: ( ruleEssentialOCLUnaryOperatorName )
@@ -2425,7 +2425,7 @@
             // InternalCompleteOCL.g:815:1: ruleEssentialOCLUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
+               before(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLUnaryOperatorName();
@@ -2433,7 +2433,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
+               after(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
             }
 
             }
@@ -2464,7 +2464,7 @@
             // InternalCompleteOCL.g:830:1: ruleEssentialOCLUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnrestrictedNameRule()); 
+               before(grammarAccess.getEssentialOCLUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLUnrestrictedName();
@@ -2472,7 +2472,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnrestrictedNameRule()); 
+               after(grammarAccess.getEssentialOCLUnrestrictedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2495,7 +2495,7 @@
     public final void ruleEssentialOCLUnrestrictedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:841:2: ( ( ruleIdentifier ) )
             // InternalCompleteOCL.g:842:1: ( ruleIdentifier )
@@ -2504,7 +2504,7 @@
             // InternalCompleteOCL.g:843:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+               before(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -2512,7 +2512,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+               after(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
             }
 
             }
@@ -2543,7 +2543,7 @@
             // InternalCompleteOCL.g:858:1: ruleEssentialOCLUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnreservedNameRule()); 
+               before(grammarAccess.getEssentialOCLUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLUnreservedName();
@@ -2551,7 +2551,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnreservedNameRule()); 
+               after(grammarAccess.getEssentialOCLUnreservedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2574,7 +2574,7 @@
     public final void ruleEssentialOCLUnreservedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:869:2: ( ( ( rule__EssentialOCLUnreservedName__Alternatives ) ) )
             // InternalCompleteOCL.g:870:1: ( ( rule__EssentialOCLUnreservedName__Alternatives ) )
@@ -2583,7 +2583,7 @@
             // InternalCompleteOCL.g:871:1: ( rule__EssentialOCLUnreservedName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:872:1: ( rule__EssentialOCLUnreservedName__Alternatives )
             // InternalCompleteOCL.g:872:2: rule__EssentialOCLUnreservedName__Alternatives
@@ -2597,7 +2597,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives());
             }
 
             }
@@ -2628,7 +2628,7 @@
             // InternalCompleteOCL.g:886:1: ruleUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnreservedNameRule()); 
+               before(grammarAccess.getUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnreservedName();
@@ -2636,7 +2636,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnreservedNameRule()); 
+               after(grammarAccess.getUnreservedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2659,7 +2659,7 @@
     public final void ruleUnreservedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:897:2: ( ( ruleEssentialOCLUnreservedName ) )
             // InternalCompleteOCL.g:898:1: ( ruleEssentialOCLUnreservedName )
@@ -2668,7 +2668,7 @@
             // InternalCompleteOCL.g:899:1: ruleEssentialOCLUnreservedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
+               before(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLUnreservedName();
@@ -2676,7 +2676,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
+               after(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
             }
 
             }
@@ -2707,7 +2707,7 @@
             // InternalCompleteOCL.g:914:1: ruleURIPathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSRule()); 
+               before(grammarAccess.getURIPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleURIPathNameCS();
@@ -2715,7 +2715,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSRule()); 
+               after(grammarAccess.getURIPathNameCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2738,7 +2738,7 @@
     public final void ruleURIPathNameCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:925:2: ( ( ( rule__URIPathNameCS__Group__0 ) ) )
             // InternalCompleteOCL.g:926:1: ( ( rule__URIPathNameCS__Group__0 ) )
@@ -2747,7 +2747,7 @@
             // InternalCompleteOCL.g:927:1: ( rule__URIPathNameCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getGroup()); 
+               before(grammarAccess.getURIPathNameCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:928:1: ( rule__URIPathNameCS__Group__0 )
             // InternalCompleteOCL.g:928:2: rule__URIPathNameCS__Group__0
@@ -2761,7 +2761,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getGroup()); 
+               after(grammarAccess.getURIPathNameCSAccess().getGroup());
             }
 
             }
@@ -2792,7 +2792,7 @@
             // InternalCompleteOCL.g:942:1: ruleURIFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSRule()); 
+               before(grammarAccess.getURIFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleURIFirstPathElementCS();
@@ -2800,7 +2800,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSRule()); 
+               after(grammarAccess.getURIFirstPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2823,7 +2823,7 @@
     public final void ruleURIFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:953:2: ( ( ( rule__URIFirstPathElementCS__Alternatives ) ) )
             // InternalCompleteOCL.g:954:1: ( ( rule__URIFirstPathElementCS__Alternatives ) )
@@ -2832,7 +2832,7 @@
             // InternalCompleteOCL.g:955:1: ( rule__URIFirstPathElementCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:956:1: ( rule__URIFirstPathElementCS__Alternatives )
             // InternalCompleteOCL.g:956:2: rule__URIFirstPathElementCS__Alternatives
@@ -2846,7 +2846,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives());
             }
 
             }
@@ -2877,7 +2877,7 @@
             // InternalCompleteOCL.g:970:1: rulePrimitiveTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeCSRule()); 
+               before(grammarAccess.getPrimitiveTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimitiveTypeCS();
@@ -2885,7 +2885,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeCSRule()); 
+               after(grammarAccess.getPrimitiveTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2908,7 +2908,7 @@
     public final void rulePrimitiveTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:981:2: ( ( ( rule__PrimitiveTypeCS__NameAssignment ) ) )
             // InternalCompleteOCL.g:982:1: ( ( rule__PrimitiveTypeCS__NameAssignment ) )
@@ -2917,7 +2917,7 @@
             // InternalCompleteOCL.g:983:1: ( rule__PrimitiveTypeCS__NameAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment()); 
+               before(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment());
             }
             // InternalCompleteOCL.g:984:1: ( rule__PrimitiveTypeCS__NameAssignment )
             // InternalCompleteOCL.g:984:2: rule__PrimitiveTypeCS__NameAssignment
@@ -2931,7 +2931,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment()); 
+               after(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment());
             }
 
             }
@@ -2962,7 +2962,7 @@
             // InternalCompleteOCL.g:998:1: ruleCollectionTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeIdentifierRule()); 
+               before(grammarAccess.getCollectionTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionTypeIdentifier();
@@ -2970,7 +2970,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeIdentifierRule()); 
+               after(grammarAccess.getCollectionTypeIdentifierRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2993,7 +2993,7 @@
     public final void ruleCollectionTypeIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1009:2: ( ( ( rule__CollectionTypeIdentifier__Alternatives ) ) )
             // InternalCompleteOCL.g:1010:1: ( ( rule__CollectionTypeIdentifier__Alternatives ) )
@@ -3002,7 +3002,7 @@
             // InternalCompleteOCL.g:1011:1: ( rule__CollectionTypeIdentifier__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives()); 
+               before(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:1012:1: ( rule__CollectionTypeIdentifier__Alternatives )
             // InternalCompleteOCL.g:1012:2: rule__CollectionTypeIdentifier__Alternatives
@@ -3016,7 +3016,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives()); 
+               after(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives());
             }
 
             }
@@ -3047,7 +3047,7 @@
             // InternalCompleteOCL.g:1026:1: ruleCollectionTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSRule()); 
+               before(grammarAccess.getCollectionTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionTypeCS();
@@ -3055,7 +3055,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSRule()); 
+               after(grammarAccess.getCollectionTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3078,7 +3078,7 @@
     public final void ruleCollectionTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1037:2: ( ( ( rule__CollectionTypeCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1038:1: ( ( rule__CollectionTypeCS__Group__0 ) )
@@ -3087,7 +3087,7 @@
             // InternalCompleteOCL.g:1039:1: ( rule__CollectionTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getGroup()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1040:1: ( rule__CollectionTypeCS__Group__0 )
             // InternalCompleteOCL.g:1040:2: rule__CollectionTypeCS__Group__0
@@ -3101,7 +3101,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getGroup()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getGroup());
             }
 
             }
@@ -3132,7 +3132,7 @@
             // InternalCompleteOCL.g:1054:1: ruleMapTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSRule()); 
+               before(grammarAccess.getMapTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMapTypeCS();
@@ -3140,7 +3140,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSRule()); 
+               after(grammarAccess.getMapTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3163,7 +3163,7 @@
     public final void ruleMapTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1065:2: ( ( ( rule__MapTypeCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1066:1: ( ( rule__MapTypeCS__Group__0 ) )
@@ -3172,7 +3172,7 @@
             // InternalCompleteOCL.g:1067:1: ( rule__MapTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getGroup()); 
+               before(grammarAccess.getMapTypeCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1068:1: ( rule__MapTypeCS__Group__0 )
             // InternalCompleteOCL.g:1068:2: rule__MapTypeCS__Group__0
@@ -3186,7 +3186,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getGroup()); 
+               after(grammarAccess.getMapTypeCSAccess().getGroup());
             }
 
             }
@@ -3217,7 +3217,7 @@
             // InternalCompleteOCL.g:1082:1: ruleTupleTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSRule()); 
+               before(grammarAccess.getTupleTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTupleTypeCS();
@@ -3225,7 +3225,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSRule()); 
+               after(grammarAccess.getTupleTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3248,7 +3248,7 @@
     public final void ruleTupleTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1093:2: ( ( ( rule__TupleTypeCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1094:1: ( ( rule__TupleTypeCS__Group__0 ) )
@@ -3257,7 +3257,7 @@
             // InternalCompleteOCL.g:1095:1: ( rule__TupleTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1096:1: ( rule__TupleTypeCS__Group__0 )
             // InternalCompleteOCL.g:1096:2: rule__TupleTypeCS__Group__0
@@ -3271,7 +3271,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup());
             }
 
             }
@@ -3302,7 +3302,7 @@
             // InternalCompleteOCL.g:1110:1: ruleTuplePartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSRule()); 
+               before(grammarAccess.getTuplePartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTuplePartCS();
@@ -3310,7 +3310,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSRule()); 
+               after(grammarAccess.getTuplePartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3333,7 +3333,7 @@
     public final void ruleTuplePartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1121:2: ( ( ( rule__TuplePartCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1122:1: ( ( rule__TuplePartCS__Group__0 ) )
@@ -3342,7 +3342,7 @@
             // InternalCompleteOCL.g:1123:1: ( rule__TuplePartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getGroup()); 
+               before(grammarAccess.getTuplePartCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1124:1: ( rule__TuplePartCS__Group__0 )
             // InternalCompleteOCL.g:1124:2: rule__TuplePartCS__Group__0
@@ -3356,7 +3356,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getGroup()); 
+               after(grammarAccess.getTuplePartCSAccess().getGroup());
             }
 
             }
@@ -3387,7 +3387,7 @@
             // InternalCompleteOCL.g:1138:1: ruleCollectionLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSRule()); 
+               before(grammarAccess.getCollectionLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionLiteralExpCS();
@@ -3395,7 +3395,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSRule()); 
+               after(grammarAccess.getCollectionLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3418,7 +3418,7 @@
     public final void ruleCollectionLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1149:2: ( ( ( rule__CollectionLiteralExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1150:1: ( ( rule__CollectionLiteralExpCS__Group__0 ) )
@@ -3427,7 +3427,7 @@
             // InternalCompleteOCL.g:1151:1: ( rule__CollectionLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1152:1: ( rule__CollectionLiteralExpCS__Group__0 )
             // InternalCompleteOCL.g:1152:2: rule__CollectionLiteralExpCS__Group__0
@@ -3441,7 +3441,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -3472,7 +3472,7 @@
             // InternalCompleteOCL.g:1166:1: ruleCollectionLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSRule()); 
+               before(grammarAccess.getCollectionLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionLiteralPartCS();
@@ -3480,7 +3480,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSRule()); 
+               after(grammarAccess.getCollectionLiteralPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3503,7 +3503,7 @@
     public final void ruleCollectionLiteralPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1177:2: ( ( ( rule__CollectionLiteralPartCS__Alternatives ) ) )
             // InternalCompleteOCL.g:1178:1: ( ( rule__CollectionLiteralPartCS__Alternatives ) )
@@ -3512,7 +3512,7 @@
             // InternalCompleteOCL.g:1179:1: ( rule__CollectionLiteralPartCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:1180:1: ( rule__CollectionLiteralPartCS__Alternatives )
             // InternalCompleteOCL.g:1180:2: rule__CollectionLiteralPartCS__Alternatives
@@ -3526,7 +3526,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives());
             }
 
             }
@@ -3557,7 +3557,7 @@
             // InternalCompleteOCL.g:1194:1: ruleCollectionPatternCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSRule()); 
+               before(grammarAccess.getCollectionPatternCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionPatternCS();
@@ -3565,7 +3565,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSRule()); 
+               after(grammarAccess.getCollectionPatternCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3588,7 +3588,7 @@
     public final void ruleCollectionPatternCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1205:2: ( ( ( rule__CollectionPatternCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1206:1: ( ( rule__CollectionPatternCS__Group__0 ) )
@@ -3597,7 +3597,7 @@
             // InternalCompleteOCL.g:1207:1: ( rule__CollectionPatternCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1208:1: ( rule__CollectionPatternCS__Group__0 )
             // InternalCompleteOCL.g:1208:2: rule__CollectionPatternCS__Group__0
@@ -3611,7 +3611,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup());
             }
 
             }
@@ -3642,7 +3642,7 @@
             // InternalCompleteOCL.g:1222:1: ruleShadowPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSRule()); 
+               before(grammarAccess.getShadowPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleShadowPartCS();
@@ -3650,7 +3650,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSRule()); 
+               after(grammarAccess.getShadowPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3673,7 +3673,7 @@
     public final void ruleShadowPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1233:2: ( ( ( rule__ShadowPartCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1234:1: ( ( rule__ShadowPartCS__Group__0 ) )
@@ -3682,7 +3682,7 @@
             // InternalCompleteOCL.g:1235:1: ( rule__ShadowPartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getGroup()); 
+               before(grammarAccess.getShadowPartCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1236:1: ( rule__ShadowPartCS__Group__0 )
             // InternalCompleteOCL.g:1236:2: rule__ShadowPartCS__Group__0
@@ -3696,7 +3696,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getGroup()); 
+               after(grammarAccess.getShadowPartCSAccess().getGroup());
             }
 
             }
@@ -3727,7 +3727,7 @@
             // InternalCompleteOCL.g:1250:1: rulePatternExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSRule()); 
+               before(grammarAccess.getPatternExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePatternExpCS();
@@ -3735,7 +3735,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSRule()); 
+               after(grammarAccess.getPatternExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3758,7 +3758,7 @@
     public final void rulePatternExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1261:2: ( ( ( rule__PatternExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1262:1: ( ( rule__PatternExpCS__Group__0 ) )
@@ -3767,7 +3767,7 @@
             // InternalCompleteOCL.g:1263:1: ( rule__PatternExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getGroup()); 
+               before(grammarAccess.getPatternExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1264:1: ( rule__PatternExpCS__Group__0 )
             // InternalCompleteOCL.g:1264:2: rule__PatternExpCS__Group__0
@@ -3781,7 +3781,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getGroup()); 
+               after(grammarAccess.getPatternExpCSAccess().getGroup());
             }
 
             }
@@ -3812,7 +3812,7 @@
             // InternalCompleteOCL.g:1278:1: ruleLambdaLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSRule()); 
+               before(grammarAccess.getLambdaLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLambdaLiteralExpCS();
@@ -3820,7 +3820,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSRule()); 
+               after(grammarAccess.getLambdaLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3843,7 +3843,7 @@
     public final void ruleLambdaLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1289:2: ( ( ( rule__LambdaLiteralExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1290:1: ( ( rule__LambdaLiteralExpCS__Group__0 ) )
@@ -3852,7 +3852,7 @@
             // InternalCompleteOCL.g:1291:1: ( rule__LambdaLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1292:1: ( rule__LambdaLiteralExpCS__Group__0 )
             // InternalCompleteOCL.g:1292:2: rule__LambdaLiteralExpCS__Group__0
@@ -3866,7 +3866,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -3897,7 +3897,7 @@
             // InternalCompleteOCL.g:1306:1: ruleMapLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSRule()); 
+               before(grammarAccess.getMapLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMapLiteralExpCS();
@@ -3905,7 +3905,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSRule()); 
+               after(grammarAccess.getMapLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3928,7 +3928,7 @@
     public final void ruleMapLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1317:2: ( ( ( rule__MapLiteralExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1318:1: ( ( rule__MapLiteralExpCS__Group__0 ) )
@@ -3937,7 +3937,7 @@
             // InternalCompleteOCL.g:1319:1: ( rule__MapLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1320:1: ( rule__MapLiteralExpCS__Group__0 )
             // InternalCompleteOCL.g:1320:2: rule__MapLiteralExpCS__Group__0
@@ -3951,7 +3951,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -3982,7 +3982,7 @@
             // InternalCompleteOCL.g:1334:1: ruleMapLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSRule()); 
+               before(grammarAccess.getMapLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMapLiteralPartCS();
@@ -3990,7 +3990,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSRule()); 
+               after(grammarAccess.getMapLiteralPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4013,7 +4013,7 @@
     public final void ruleMapLiteralPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1345:2: ( ( ( rule__MapLiteralPartCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1346:1: ( ( rule__MapLiteralPartCS__Group__0 ) )
@@ -4022,7 +4022,7 @@
             // InternalCompleteOCL.g:1347:1: ( rule__MapLiteralPartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getGroup()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1348:1: ( rule__MapLiteralPartCS__Group__0 )
             // InternalCompleteOCL.g:1348:2: rule__MapLiteralPartCS__Group__0
@@ -4036,7 +4036,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getGroup()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getGroup());
             }
 
             }
@@ -4067,7 +4067,7 @@
             // InternalCompleteOCL.g:1362:1: rulePrimitiveLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveLiteralExpCSRule()); 
+               before(grammarAccess.getPrimitiveLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimitiveLiteralExpCS();
@@ -4075,7 +4075,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveLiteralExpCSRule()); 
+               after(grammarAccess.getPrimitiveLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4098,7 +4098,7 @@
     public final void rulePrimitiveLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1373:2: ( ( ( rule__PrimitiveLiteralExpCS__Alternatives ) ) )
             // InternalCompleteOCL.g:1374:1: ( ( rule__PrimitiveLiteralExpCS__Alternatives ) )
@@ -4107,7 +4107,7 @@
             // InternalCompleteOCL.g:1375:1: ( rule__PrimitiveLiteralExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:1376:1: ( rule__PrimitiveLiteralExpCS__Alternatives )
             // InternalCompleteOCL.g:1376:2: rule__PrimitiveLiteralExpCS__Alternatives
@@ -4121,7 +4121,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives());
             }
 
             }
@@ -4152,7 +4152,7 @@
             // InternalCompleteOCL.g:1390:1: ruleTupleLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSRule()); 
+               before(grammarAccess.getTupleLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTupleLiteralExpCS();
@@ -4160,7 +4160,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSRule()); 
+               after(grammarAccess.getTupleLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4183,7 +4183,7 @@
     public final void ruleTupleLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1401:2: ( ( ( rule__TupleLiteralExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1402:1: ( ( rule__TupleLiteralExpCS__Group__0 ) )
@@ -4192,7 +4192,7 @@
             // InternalCompleteOCL.g:1403:1: ( rule__TupleLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1404:1: ( rule__TupleLiteralExpCS__Group__0 )
             // InternalCompleteOCL.g:1404:2: rule__TupleLiteralExpCS__Group__0
@@ -4206,7 +4206,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -4237,7 +4237,7 @@
             // InternalCompleteOCL.g:1418:1: ruleTupleLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSRule()); 
+               before(grammarAccess.getTupleLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTupleLiteralPartCS();
@@ -4245,7 +4245,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSRule()); 
+               after(grammarAccess.getTupleLiteralPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4268,7 +4268,7 @@
     public final void ruleTupleLiteralPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1429:2: ( ( ( rule__TupleLiteralPartCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1430:1: ( ( rule__TupleLiteralPartCS__Group__0 ) )
@@ -4277,7 +4277,7 @@
             // InternalCompleteOCL.g:1431:1: ( rule__TupleLiteralPartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1432:1: ( rule__TupleLiteralPartCS__Group__0 )
             // InternalCompleteOCL.g:1432:2: rule__TupleLiteralPartCS__Group__0
@@ -4291,7 +4291,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup());
             }
 
             }
@@ -4322,7 +4322,7 @@
             // InternalCompleteOCL.g:1446:1: ruleNumberLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNumberLiteralExpCSRule()); 
+               before(grammarAccess.getNumberLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNumberLiteralExpCS();
@@ -4330,7 +4330,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNumberLiteralExpCSRule()); 
+               after(grammarAccess.getNumberLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4353,7 +4353,7 @@
     public final void ruleNumberLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1457:2: ( ( ( rule__NumberLiteralExpCS__SymbolAssignment ) ) )
             // InternalCompleteOCL.g:1458:1: ( ( rule__NumberLiteralExpCS__SymbolAssignment ) )
@@ -4362,7 +4362,7 @@
             // InternalCompleteOCL.g:1459:1: ( rule__NumberLiteralExpCS__SymbolAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment()); 
+               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment());
             }
             // InternalCompleteOCL.g:1460:1: ( rule__NumberLiteralExpCS__SymbolAssignment )
             // InternalCompleteOCL.g:1460:2: rule__NumberLiteralExpCS__SymbolAssignment
@@ -4376,7 +4376,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment()); 
+               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment());
             }
 
             }
@@ -4407,7 +4407,7 @@
             // InternalCompleteOCL.g:1474:1: ruleStringLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSRule()); 
+               before(grammarAccess.getStringLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleStringLiteralExpCS();
@@ -4415,7 +4415,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSRule()); 
+               after(grammarAccess.getStringLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4438,7 +4438,7 @@
     public final void ruleStringLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1485:2: ( ( ( ( rule__StringLiteralExpCS__SegmentsAssignment ) ) ( ( rule__StringLiteralExpCS__SegmentsAssignment )* ) ) )
             // InternalCompleteOCL.g:1486:1: ( ( ( rule__StringLiteralExpCS__SegmentsAssignment ) ) ( ( rule__StringLiteralExpCS__SegmentsAssignment )* ) )
@@ -4450,7 +4450,7 @@
             // InternalCompleteOCL.g:1488:1: ( rule__StringLiteralExpCS__SegmentsAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
             // InternalCompleteOCL.g:1489:1: ( rule__StringLiteralExpCS__SegmentsAssignment )
             // InternalCompleteOCL.g:1489:2: rule__StringLiteralExpCS__SegmentsAssignment
@@ -4464,7 +4464,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
 
             }
@@ -4473,7 +4473,7 @@
             // InternalCompleteOCL.g:1493:1: ( rule__StringLiteralExpCS__SegmentsAssignment )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
             // InternalCompleteOCL.g:1494:1: ( rule__StringLiteralExpCS__SegmentsAssignment )*
             loop1:
@@ -4505,7 +4505,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
 
             }
@@ -4539,7 +4539,7 @@
             // InternalCompleteOCL.g:1509:1: ruleBooleanLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSRule()); 
+               before(grammarAccess.getBooleanLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleBooleanLiteralExpCS();
@@ -4547,7 +4547,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSRule()); 
+               after(grammarAccess.getBooleanLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4570,7 +4570,7 @@
     public final void ruleBooleanLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1520:2: ( ( ( rule__BooleanLiteralExpCS__Alternatives ) ) )
             // InternalCompleteOCL.g:1521:1: ( ( rule__BooleanLiteralExpCS__Alternatives ) )
@@ -4579,7 +4579,7 @@
             // InternalCompleteOCL.g:1522:1: ( rule__BooleanLiteralExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:1523:1: ( rule__BooleanLiteralExpCS__Alternatives )
             // InternalCompleteOCL.g:1523:2: rule__BooleanLiteralExpCS__Alternatives
@@ -4593,7 +4593,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives());
             }
 
             }
@@ -4624,7 +4624,7 @@
             // InternalCompleteOCL.g:1537:1: ruleUnlimitedNaturalLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnlimitedNaturalLiteralExpCS();
@@ -4632,7 +4632,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4655,7 +4655,7 @@
     public final void ruleUnlimitedNaturalLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1548:2: ( ( ( rule__UnlimitedNaturalLiteralExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1549:1: ( ( rule__UnlimitedNaturalLiteralExpCS__Group__0 ) )
@@ -4664,7 +4664,7 @@
             // InternalCompleteOCL.g:1550:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1551:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0 )
             // InternalCompleteOCL.g:1551:2: rule__UnlimitedNaturalLiteralExpCS__Group__0
@@ -4678,7 +4678,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -4709,7 +4709,7 @@
             // InternalCompleteOCL.g:1565:1: ruleInvalidLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSRule()); 
+               before(grammarAccess.getInvalidLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleInvalidLiteralExpCS();
@@ -4717,7 +4717,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSRule()); 
+               after(grammarAccess.getInvalidLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4740,7 +4740,7 @@
     public final void ruleInvalidLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1576:2: ( ( ( rule__InvalidLiteralExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1577:1: ( ( rule__InvalidLiteralExpCS__Group__0 ) )
@@ -4749,7 +4749,7 @@
             // InternalCompleteOCL.g:1578:1: ( rule__InvalidLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getInvalidLiteralExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1579:1: ( rule__InvalidLiteralExpCS__Group__0 )
             // InternalCompleteOCL.g:1579:2: rule__InvalidLiteralExpCS__Group__0
@@ -4763,7 +4763,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getInvalidLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -4794,7 +4794,7 @@
             // InternalCompleteOCL.g:1593:1: ruleNullLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSRule()); 
+               before(grammarAccess.getNullLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNullLiteralExpCS();
@@ -4802,7 +4802,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSRule()); 
+               after(grammarAccess.getNullLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4825,7 +4825,7 @@
     public final void ruleNullLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1604:2: ( ( ( rule__NullLiteralExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1605:1: ( ( rule__NullLiteralExpCS__Group__0 ) )
@@ -4834,7 +4834,7 @@
             // InternalCompleteOCL.g:1606:1: ( rule__NullLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getNullLiteralExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1607:1: ( rule__NullLiteralExpCS__Group__0 )
             // InternalCompleteOCL.g:1607:2: rule__NullLiteralExpCS__Group__0
@@ -4848,7 +4848,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getNullLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -4879,7 +4879,7 @@
             // InternalCompleteOCL.g:1621:1: ruleTypeLiteralCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralCSRule()); 
+               before(grammarAccess.getTypeLiteralCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeLiteralCS();
@@ -4887,7 +4887,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralCSRule()); 
+               after(grammarAccess.getTypeLiteralCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4910,7 +4910,7 @@
     public final void ruleTypeLiteralCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1632:2: ( ( ( rule__TypeLiteralCS__Alternatives ) ) )
             // InternalCompleteOCL.g:1633:1: ( ( rule__TypeLiteralCS__Alternatives ) )
@@ -4919,7 +4919,7 @@
             // InternalCompleteOCL.g:1634:1: ( rule__TypeLiteralCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralCSAccess().getAlternatives()); 
+               before(grammarAccess.getTypeLiteralCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:1635:1: ( rule__TypeLiteralCS__Alternatives )
             // InternalCompleteOCL.g:1635:2: rule__TypeLiteralCS__Alternatives
@@ -4933,7 +4933,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralCSAccess().getAlternatives()); 
+               after(grammarAccess.getTypeLiteralCSAccess().getAlternatives());
             }
 
             }
@@ -4964,7 +4964,7 @@
             // InternalCompleteOCL.g:1649:1: ruleTypeLiteralWithMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeLiteralWithMultiplicityCS();
@@ -4972,7 +4972,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4995,7 +4995,7 @@
     public final void ruleTypeLiteralWithMultiplicityCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1660:2: ( ( ( rule__TypeLiteralWithMultiplicityCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1661:1: ( ( rule__TypeLiteralWithMultiplicityCS__Group__0 ) )
@@ -5004,7 +5004,7 @@
             // InternalCompleteOCL.g:1662:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1663:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0 )
             // InternalCompleteOCL.g:1663:2: rule__TypeLiteralWithMultiplicityCS__Group__0
@@ -5018,7 +5018,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup());
             }
 
             }
@@ -5049,7 +5049,7 @@
             // InternalCompleteOCL.g:1677:1: ruleTypeLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralExpCSRule()); 
+               before(grammarAccess.getTypeLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeLiteralExpCS();
@@ -5057,7 +5057,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralExpCSRule()); 
+               after(grammarAccess.getTypeLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5080,7 +5080,7 @@
     public final void ruleTypeLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1688:2: ( ( ( rule__TypeLiteralExpCS__OwnedTypeAssignment ) ) )
             // InternalCompleteOCL.g:1689:1: ( ( rule__TypeLiteralExpCS__OwnedTypeAssignment ) )
@@ -5089,7 +5089,7 @@
             // InternalCompleteOCL.g:1690:1: ( rule__TypeLiteralExpCS__OwnedTypeAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment()); 
+               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment());
             }
             // InternalCompleteOCL.g:1691:1: ( rule__TypeLiteralExpCS__OwnedTypeAssignment )
             // InternalCompleteOCL.g:1691:2: rule__TypeLiteralExpCS__OwnedTypeAssignment
@@ -5103,7 +5103,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment()); 
+               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment());
             }
 
             }
@@ -5134,7 +5134,7 @@
             // InternalCompleteOCL.g:1705:1: ruleTypeNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSRule()); 
+               before(grammarAccess.getTypeNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeNameExpCS();
@@ -5142,7 +5142,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSRule()); 
+               after(grammarAccess.getTypeNameExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5165,7 +5165,7 @@
     public final void ruleTypeNameExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1716:2: ( ( ( rule__TypeNameExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1717:1: ( ( rule__TypeNameExpCS__Group__0 ) )
@@ -5174,7 +5174,7 @@
             // InternalCompleteOCL.g:1718:1: ( rule__TypeNameExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getGroup()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1719:1: ( rule__TypeNameExpCS__Group__0 )
             // InternalCompleteOCL.g:1719:2: rule__TypeNameExpCS__Group__0
@@ -5188,7 +5188,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getGroup()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getGroup());
             }
 
             }
@@ -5219,7 +5219,7 @@
             // InternalCompleteOCL.g:1733:1: ruleTypeExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSRule()); 
+               before(grammarAccess.getTypeExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeExpCS();
@@ -5227,7 +5227,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSRule()); 
+               after(grammarAccess.getTypeExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5250,7 +5250,7 @@
     public final void ruleTypeExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1744:2: ( ( ( rule__TypeExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1745:1: ( ( rule__TypeExpCS__Group__0 ) )
@@ -5259,7 +5259,7 @@
             // InternalCompleteOCL.g:1746:1: ( rule__TypeExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getGroup()); 
+               before(grammarAccess.getTypeExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1747:1: ( rule__TypeExpCS__Group__0 )
             // InternalCompleteOCL.g:1747:2: rule__TypeExpCS__Group__0
@@ -5273,7 +5273,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getGroup()); 
+               after(grammarAccess.getTypeExpCSAccess().getGroup());
             }
 
             }
@@ -5304,7 +5304,7 @@
             // InternalCompleteOCL.g:1761:1: ruleExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSRule()); 
+               before(grammarAccess.getExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleExpCS();
@@ -5312,7 +5312,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSRule()); 
+               after(grammarAccess.getExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5335,7 +5335,7 @@
     public final void ruleExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1772:2: ( ( ( rule__ExpCS__Alternatives ) ) )
             // InternalCompleteOCL.g:1773:1: ( ( rule__ExpCS__Alternatives ) )
@@ -5344,7 +5344,7 @@
             // InternalCompleteOCL.g:1774:1: ( rule__ExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getExpCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:1775:1: ( rule__ExpCS__Alternatives )
             // InternalCompleteOCL.g:1775:2: rule__ExpCS__Alternatives
@@ -5358,7 +5358,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getExpCSAccess().getAlternatives());
             }
 
             }
@@ -5389,7 +5389,7 @@
             // InternalCompleteOCL.g:1789:1: rulePrefixedLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSRule()); 
+               before(grammarAccess.getPrefixedLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrefixedLetExpCS();
@@ -5397,7 +5397,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSRule()); 
+               after(grammarAccess.getPrefixedLetExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5420,7 +5420,7 @@
     public final void rulePrefixedLetExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1800:2: ( ( ( rule__PrefixedLetExpCS__Alternatives ) ) )
             // InternalCompleteOCL.g:1801:1: ( ( rule__PrefixedLetExpCS__Alternatives ) )
@@ -5429,7 +5429,7 @@
             // InternalCompleteOCL.g:1802:1: ( rule__PrefixedLetExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:1803:1: ( rule__PrefixedLetExpCS__Alternatives )
             // InternalCompleteOCL.g:1803:2: rule__PrefixedLetExpCS__Alternatives
@@ -5443,7 +5443,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives());
             }
 
             }
@@ -5474,7 +5474,7 @@
             // InternalCompleteOCL.g:1817:1: rulePrefixedPrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSRule()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrefixedPrimaryExpCS();
@@ -5482,7 +5482,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSRule()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5505,7 +5505,7 @@
     public final void rulePrefixedPrimaryExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1828:2: ( ( ( rule__PrefixedPrimaryExpCS__Alternatives ) ) )
             // InternalCompleteOCL.g:1829:1: ( ( rule__PrefixedPrimaryExpCS__Alternatives ) )
@@ -5514,7 +5514,7 @@
             // InternalCompleteOCL.g:1830:1: ( rule__PrefixedPrimaryExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:1831:1: ( rule__PrefixedPrimaryExpCS__Alternatives )
             // InternalCompleteOCL.g:1831:2: rule__PrefixedPrimaryExpCS__Alternatives
@@ -5528,7 +5528,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives());
             }
 
             }
@@ -5559,7 +5559,7 @@
             // InternalCompleteOCL.g:1845:1: rulePrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimaryExpCSRule()); 
+               before(grammarAccess.getPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimaryExpCS();
@@ -5567,7 +5567,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimaryExpCSRule()); 
+               after(grammarAccess.getPrimaryExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5590,7 +5590,7 @@
     public final void rulePrimaryExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1856:2: ( ( ( rule__PrimaryExpCS__Alternatives ) ) )
             // InternalCompleteOCL.g:1857:1: ( ( rule__PrimaryExpCS__Alternatives ) )
@@ -5599,7 +5599,7 @@
             // InternalCompleteOCL.g:1858:1: ( rule__PrimaryExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimaryExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrimaryExpCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:1859:1: ( rule__PrimaryExpCS__Alternatives )
             // InternalCompleteOCL.g:1859:2: rule__PrimaryExpCS__Alternatives
@@ -5613,7 +5613,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimaryExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrimaryExpCSAccess().getAlternatives());
             }
 
             }
@@ -5644,7 +5644,7 @@
             // InternalCompleteOCL.g:1873:1: ruleNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSRule()); 
+               before(grammarAccess.getNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNameExpCS();
@@ -5652,7 +5652,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSRule()); 
+               after(grammarAccess.getNameExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5675,7 +5675,7 @@
     public final void ruleNameExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1884:2: ( ( ( rule__NameExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1885:1: ( ( rule__NameExpCS__Group__0 ) )
@@ -5684,7 +5684,7 @@
             // InternalCompleteOCL.g:1886:1: ( rule__NameExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getGroup()); 
+               before(grammarAccess.getNameExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1887:1: ( rule__NameExpCS__Group__0 )
             // InternalCompleteOCL.g:1887:2: rule__NameExpCS__Group__0
@@ -5698,7 +5698,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getGroup()); 
+               after(grammarAccess.getNameExpCSAccess().getGroup());
             }
 
             }
@@ -5729,7 +5729,7 @@
             // InternalCompleteOCL.g:1901:1: ruleCurlyBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSRule()); 
+               before(grammarAccess.getCurlyBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCurlyBracketedClauseCS();
@@ -5737,7 +5737,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSRule()); 
+               after(grammarAccess.getCurlyBracketedClauseCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5760,7 +5760,7 @@
     public final void ruleCurlyBracketedClauseCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1912:2: ( ( ( rule__CurlyBracketedClauseCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1913:1: ( ( rule__CurlyBracketedClauseCS__Group__0 ) )
@@ -5769,7 +5769,7 @@
             // InternalCompleteOCL.g:1914:1: ( rule__CurlyBracketedClauseCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1915:1: ( rule__CurlyBracketedClauseCS__Group__0 )
             // InternalCompleteOCL.g:1915:2: rule__CurlyBracketedClauseCS__Group__0
@@ -5783,7 +5783,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup());
             }
 
             }
@@ -5814,7 +5814,7 @@
             // InternalCompleteOCL.g:1929:1: ruleRoundBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSRule()); 
+               before(grammarAccess.getRoundBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleRoundBracketedClauseCS();
@@ -5822,7 +5822,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSRule()); 
+               after(grammarAccess.getRoundBracketedClauseCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5845,7 +5845,7 @@
     public final void ruleRoundBracketedClauseCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1940:2: ( ( ( rule__RoundBracketedClauseCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1941:1: ( ( rule__RoundBracketedClauseCS__Group__0 ) )
@@ -5854,7 +5854,7 @@
             // InternalCompleteOCL.g:1942:1: ( rule__RoundBracketedClauseCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1943:1: ( rule__RoundBracketedClauseCS__Group__0 )
             // InternalCompleteOCL.g:1943:2: rule__RoundBracketedClauseCS__Group__0
@@ -5868,7 +5868,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup());
             }
 
             }
@@ -5899,7 +5899,7 @@
             // InternalCompleteOCL.g:1957:1: ruleSquareBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSRule()); 
+               before(grammarAccess.getSquareBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleSquareBracketedClauseCS();
@@ -5907,7 +5907,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSRule()); 
+               after(grammarAccess.getSquareBracketedClauseCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5930,7 +5930,7 @@
     public final void ruleSquareBracketedClauseCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1968:2: ( ( ( rule__SquareBracketedClauseCS__Group__0 ) ) )
             // InternalCompleteOCL.g:1969:1: ( ( rule__SquareBracketedClauseCS__Group__0 ) )
@@ -5939,7 +5939,7 @@
             // InternalCompleteOCL.g:1970:1: ( rule__SquareBracketedClauseCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:1971:1: ( rule__SquareBracketedClauseCS__Group__0 )
             // InternalCompleteOCL.g:1971:2: rule__SquareBracketedClauseCS__Group__0
@@ -5953,7 +5953,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup());
             }
 
             }
@@ -5984,7 +5984,7 @@
             // InternalCompleteOCL.g:1985:1: ruleNavigatingArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSRule()); 
+               before(grammarAccess.getNavigatingArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingArgCS();
@@ -5992,7 +5992,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSRule()); 
+               after(grammarAccess.getNavigatingArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6015,7 +6015,7 @@
     public final void ruleNavigatingArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:1996:2: ( ( ( rule__NavigatingArgCS__Alternatives ) ) )
             // InternalCompleteOCL.g:1997:1: ( ( rule__NavigatingArgCS__Alternatives ) )
@@ -6024,7 +6024,7 @@
             // InternalCompleteOCL.g:1998:1: ( rule__NavigatingArgCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:1999:1: ( rule__NavigatingArgCS__Alternatives )
             // InternalCompleteOCL.g:1999:2: rule__NavigatingArgCS__Alternatives
@@ -6038,7 +6038,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives());
             }
 
             }
@@ -6069,7 +6069,7 @@
             // InternalCompleteOCL.g:2013:1: ruleNavigatingBarArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSRule()); 
+               before(grammarAccess.getNavigatingBarArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingBarArgCS();
@@ -6077,7 +6077,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSRule()); 
+               after(grammarAccess.getNavigatingBarArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6100,7 +6100,7 @@
     public final void ruleNavigatingBarArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2024:2: ( ( ( rule__NavigatingBarArgCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2025:1: ( ( rule__NavigatingBarArgCS__Group__0 ) )
@@ -6109,7 +6109,7 @@
             // InternalCompleteOCL.g:2026:1: ( rule__NavigatingBarArgCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2027:1: ( rule__NavigatingBarArgCS__Group__0 )
             // InternalCompleteOCL.g:2027:2: rule__NavigatingBarArgCS__Group__0
@@ -6123,7 +6123,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup());
             }
 
             }
@@ -6154,7 +6154,7 @@
             // InternalCompleteOCL.g:2041:1: ruleNavigatingCommaArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSRule()); 
+               before(grammarAccess.getNavigatingCommaArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingCommaArgCS();
@@ -6162,7 +6162,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSRule()); 
+               after(grammarAccess.getNavigatingCommaArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6185,7 +6185,7 @@
     public final void ruleNavigatingCommaArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2052:2: ( ( ( rule__NavigatingCommaArgCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2053:1: ( ( rule__NavigatingCommaArgCS__Group__0 ) )
@@ -6194,7 +6194,7 @@
             // InternalCompleteOCL.g:2054:1: ( rule__NavigatingCommaArgCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2055:1: ( rule__NavigatingCommaArgCS__Group__0 )
             // InternalCompleteOCL.g:2055:2: rule__NavigatingCommaArgCS__Group__0
@@ -6208,7 +6208,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup());
             }
 
             }
@@ -6239,7 +6239,7 @@
             // InternalCompleteOCL.g:2069:1: ruleNavigatingSemiArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSRule()); 
+               before(grammarAccess.getNavigatingSemiArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingSemiArgCS();
@@ -6247,7 +6247,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSRule()); 
+               after(grammarAccess.getNavigatingSemiArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6270,7 +6270,7 @@
     public final void ruleNavigatingSemiArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2080:2: ( ( ( rule__NavigatingSemiArgCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2081:1: ( ( rule__NavigatingSemiArgCS__Group__0 ) )
@@ -6279,7 +6279,7 @@
             // InternalCompleteOCL.g:2082:1: ( rule__NavigatingSemiArgCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2083:1: ( rule__NavigatingSemiArgCS__Group__0 )
             // InternalCompleteOCL.g:2083:2: rule__NavigatingSemiArgCS__Group__0
@@ -6293,7 +6293,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup());
             }
 
             }
@@ -6324,7 +6324,7 @@
             // InternalCompleteOCL.g:2097:1: ruleIfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSRule()); 
+               before(grammarAccess.getIfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleIfExpCS();
@@ -6332,7 +6332,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSRule()); 
+               after(grammarAccess.getIfExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6355,7 +6355,7 @@
     public final void ruleIfExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2108:2: ( ( ( rule__IfExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2109:1: ( ( rule__IfExpCS__Group__0 ) )
@@ -6364,7 +6364,7 @@
             // InternalCompleteOCL.g:2110:1: ( rule__IfExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getGroup()); 
+               before(grammarAccess.getIfExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2111:1: ( rule__IfExpCS__Group__0 )
             // InternalCompleteOCL.g:2111:2: rule__IfExpCS__Group__0
@@ -6378,7 +6378,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getGroup()); 
+               after(grammarAccess.getIfExpCSAccess().getGroup());
             }
 
             }
@@ -6409,7 +6409,7 @@
             // InternalCompleteOCL.g:2125:1: ruleElseIfThenExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSRule()); 
+               before(grammarAccess.getElseIfThenExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleElseIfThenExpCS();
@@ -6417,7 +6417,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSRule()); 
+               after(grammarAccess.getElseIfThenExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6440,7 +6440,7 @@
     public final void ruleElseIfThenExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2136:2: ( ( ( rule__ElseIfThenExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2137:1: ( ( rule__ElseIfThenExpCS__Group__0 ) )
@@ -6449,7 +6449,7 @@
             // InternalCompleteOCL.g:2138:1: ( rule__ElseIfThenExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getGroup()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2139:1: ( rule__ElseIfThenExpCS__Group__0 )
             // InternalCompleteOCL.g:2139:2: rule__ElseIfThenExpCS__Group__0
@@ -6463,7 +6463,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getGroup()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getGroup());
             }
 
             }
@@ -6494,7 +6494,7 @@
             // InternalCompleteOCL.g:2153:1: ruleLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSRule()); 
+               before(grammarAccess.getLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLetExpCS();
@@ -6502,7 +6502,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSRule()); 
+               after(grammarAccess.getLetExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6525,7 +6525,7 @@
     public final void ruleLetExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2164:2: ( ( ( rule__LetExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2165:1: ( ( rule__LetExpCS__Group__0 ) )
@@ -6534,7 +6534,7 @@
             // InternalCompleteOCL.g:2166:1: ( rule__LetExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getGroup()); 
+               before(grammarAccess.getLetExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2167:1: ( rule__LetExpCS__Group__0 )
             // InternalCompleteOCL.g:2167:2: rule__LetExpCS__Group__0
@@ -6548,7 +6548,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getGroup()); 
+               after(grammarAccess.getLetExpCSAccess().getGroup());
             }
 
             }
@@ -6579,7 +6579,7 @@
             // InternalCompleteOCL.g:2181:1: ruleLetVariableCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSRule()); 
+               before(grammarAccess.getLetVariableCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLetVariableCS();
@@ -6587,7 +6587,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSRule()); 
+               after(grammarAccess.getLetVariableCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6610,7 +6610,7 @@
     public final void ruleLetVariableCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2192:2: ( ( ( rule__LetVariableCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2193:1: ( ( rule__LetVariableCS__Group__0 ) )
@@ -6619,7 +6619,7 @@
             // InternalCompleteOCL.g:2194:1: ( rule__LetVariableCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getGroup()); 
+               before(grammarAccess.getLetVariableCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2195:1: ( rule__LetVariableCS__Group__0 )
             // InternalCompleteOCL.g:2195:2: rule__LetVariableCS__Group__0
@@ -6633,7 +6633,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getGroup()); 
+               after(grammarAccess.getLetVariableCSAccess().getGroup());
             }
 
             }
@@ -6664,7 +6664,7 @@
             // InternalCompleteOCL.g:2209:1: ruleNestedExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSRule()); 
+               before(grammarAccess.getNestedExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNestedExpCS();
@@ -6672,7 +6672,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSRule()); 
+               after(grammarAccess.getNestedExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6695,7 +6695,7 @@
     public final void ruleNestedExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2220:2: ( ( ( rule__NestedExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2221:1: ( ( rule__NestedExpCS__Group__0 ) )
@@ -6704,7 +6704,7 @@
             // InternalCompleteOCL.g:2222:1: ( rule__NestedExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getGroup()); 
+               before(grammarAccess.getNestedExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2223:1: ( rule__NestedExpCS__Group__0 )
             // InternalCompleteOCL.g:2223:2: rule__NestedExpCS__Group__0
@@ -6718,7 +6718,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getGroup()); 
+               after(grammarAccess.getNestedExpCSAccess().getGroup());
             }
 
             }
@@ -6749,7 +6749,7 @@
             // InternalCompleteOCL.g:2237:1: ruleSelfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSRule()); 
+               before(grammarAccess.getSelfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleSelfExpCS();
@@ -6757,7 +6757,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSRule()); 
+               after(grammarAccess.getSelfExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6780,7 +6780,7 @@
     public final void ruleSelfExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2248:2: ( ( ( rule__SelfExpCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2249:1: ( ( rule__SelfExpCS__Group__0 ) )
@@ -6789,7 +6789,7 @@
             // InternalCompleteOCL.g:2250:1: ( rule__SelfExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSAccess().getGroup()); 
+               before(grammarAccess.getSelfExpCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2251:1: ( rule__SelfExpCS__Group__0 )
             // InternalCompleteOCL.g:2251:2: rule__SelfExpCS__Group__0
@@ -6803,7 +6803,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSAccess().getGroup()); 
+               after(grammarAccess.getSelfExpCSAccess().getGroup());
             }
 
             }
@@ -6834,7 +6834,7 @@
             // InternalCompleteOCL.g:2265:1: ruleMultiplicityBoundsCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSRule()); 
+               before(grammarAccess.getMultiplicityBoundsCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityBoundsCS();
@@ -6842,7 +6842,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSRule()); 
+               after(grammarAccess.getMultiplicityBoundsCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6865,7 +6865,7 @@
     public final void ruleMultiplicityBoundsCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2276:2: ( ( ( rule__MultiplicityBoundsCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2277:1: ( ( rule__MultiplicityBoundsCS__Group__0 ) )
@@ -6874,7 +6874,7 @@
             // InternalCompleteOCL.g:2278:1: ( rule__MultiplicityBoundsCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2279:1: ( rule__MultiplicityBoundsCS__Group__0 )
             // InternalCompleteOCL.g:2279:2: rule__MultiplicityBoundsCS__Group__0
@@ -6888,7 +6888,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup());
             }
 
             }
@@ -6919,7 +6919,7 @@
             // InternalCompleteOCL.g:2293:1: ruleMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSRule()); 
+               before(grammarAccess.getMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityCS();
@@ -6927,7 +6927,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSRule()); 
+               after(grammarAccess.getMultiplicityCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6950,7 +6950,7 @@
     public final void ruleMultiplicityCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2304:2: ( ( ( rule__MultiplicityCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2305:1: ( ( rule__MultiplicityCS__Group__0 ) )
@@ -6959,7 +6959,7 @@
             // InternalCompleteOCL.g:2306:1: ( rule__MultiplicityCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getGroup()); 
+               before(grammarAccess.getMultiplicityCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2307:1: ( rule__MultiplicityCS__Group__0 )
             // InternalCompleteOCL.g:2307:2: rule__MultiplicityCS__Group__0
@@ -6973,7 +6973,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getGroup()); 
+               after(grammarAccess.getMultiplicityCSAccess().getGroup());
             }
 
             }
@@ -7004,7 +7004,7 @@
             // InternalCompleteOCL.g:2321:1: ruleMultiplicityStringCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSRule()); 
+               before(grammarAccess.getMultiplicityStringCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityStringCS();
@@ -7012,7 +7012,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSRule()); 
+               after(grammarAccess.getMultiplicityStringCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7035,7 +7035,7 @@
     public final void ruleMultiplicityStringCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2332:2: ( ( ( rule__MultiplicityStringCS__StringBoundsAssignment ) ) )
             // InternalCompleteOCL.g:2333:1: ( ( rule__MultiplicityStringCS__StringBoundsAssignment ) )
@@ -7044,7 +7044,7 @@
             // InternalCompleteOCL.g:2334:1: ( rule__MultiplicityStringCS__StringBoundsAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment()); 
+               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment());
             }
             // InternalCompleteOCL.g:2335:1: ( rule__MultiplicityStringCS__StringBoundsAssignment )
             // InternalCompleteOCL.g:2335:2: rule__MultiplicityStringCS__StringBoundsAssignment
@@ -7058,7 +7058,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment()); 
+               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment());
             }
 
             }
@@ -7089,7 +7089,7 @@
             // InternalCompleteOCL.g:2349:1: rulePathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSRule()); 
+               before(grammarAccess.getPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePathNameCS();
@@ -7097,7 +7097,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSRule()); 
+               after(grammarAccess.getPathNameCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7120,7 +7120,7 @@
     public final void rulePathNameCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2360:2: ( ( ( rule__PathNameCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2361:1: ( ( rule__PathNameCS__Group__0 ) )
@@ -7129,7 +7129,7 @@
             // InternalCompleteOCL.g:2362:1: ( rule__PathNameCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getGroup()); 
+               before(grammarAccess.getPathNameCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2363:1: ( rule__PathNameCS__Group__0 )
             // InternalCompleteOCL.g:2363:2: rule__PathNameCS__Group__0
@@ -7143,7 +7143,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getGroup()); 
+               after(grammarAccess.getPathNameCSAccess().getGroup());
             }
 
             }
@@ -7174,7 +7174,7 @@
             // InternalCompleteOCL.g:2377:1: ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSRule()); 
+               before(grammarAccess.getFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleFirstPathElementCS();
@@ -7182,7 +7182,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSRule()); 
+               after(grammarAccess.getFirstPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7205,7 +7205,7 @@
     public final void ruleFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2388:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
             // InternalCompleteOCL.g:2389:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
@@ -7214,7 +7214,7 @@
             // InternalCompleteOCL.g:2390:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
             // InternalCompleteOCL.g:2391:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             // InternalCompleteOCL.g:2391:2: rule__FirstPathElementCS__ReferredElementAssignment
@@ -7228,7 +7228,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
 
             }
@@ -7259,7 +7259,7 @@
             // InternalCompleteOCL.g:2405:1: ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSRule()); 
+               before(grammarAccess.getNextPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNextPathElementCS();
@@ -7267,7 +7267,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSRule()); 
+               after(grammarAccess.getNextPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7290,7 +7290,7 @@
     public final void ruleNextPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2416:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
             // InternalCompleteOCL.g:2417:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
@@ -7299,7 +7299,7 @@
             // InternalCompleteOCL.g:2418:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
             // InternalCompleteOCL.g:2419:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             // InternalCompleteOCL.g:2419:2: rule__NextPathElementCS__ReferredElementAssignment
@@ -7313,7 +7313,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
 
             }
@@ -7344,7 +7344,7 @@
             // InternalCompleteOCL.g:2433:1: ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSRule()); 
+               before(grammarAccess.getTemplateBindingCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTemplateBindingCS();
@@ -7352,7 +7352,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSRule()); 
+               after(grammarAccess.getTemplateBindingCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7375,7 +7375,7 @@
     public final void ruleTemplateBindingCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2444:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2445:1: ( ( rule__TemplateBindingCS__Group__0 ) )
@@ -7384,7 +7384,7 @@
             // InternalCompleteOCL.g:2446:1: ( rule__TemplateBindingCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getGroup()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2447:1: ( rule__TemplateBindingCS__Group__0 )
             // InternalCompleteOCL.g:2447:2: rule__TemplateBindingCS__Group__0
@@ -7398,7 +7398,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getGroup()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
 
             }
@@ -7429,7 +7429,7 @@
             // InternalCompleteOCL.g:2461:1: ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTemplateParameterSubstitutionCS();
@@ -7437,7 +7437,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7460,7 +7460,7 @@
     public final void ruleTemplateParameterSubstitutionCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2472:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
             // InternalCompleteOCL.g:2473:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
@@ -7469,7 +7469,7 @@
             // InternalCompleteOCL.g:2474:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
             // InternalCompleteOCL.g:2475:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             // InternalCompleteOCL.g:2475:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
@@ -7483,7 +7483,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
 
             }
@@ -7514,7 +7514,7 @@
             // InternalCompleteOCL.g:2489:1: ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSRule()); 
+               before(grammarAccess.getTypeParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeParameterCS();
@@ -7522,7 +7522,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSRule()); 
+               after(grammarAccess.getTypeParameterCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7545,7 +7545,7 @@
     public final void ruleTypeParameterCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2500:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2501:1: ( ( rule__TypeParameterCS__Group__0 ) )
@@ -7554,7 +7554,7 @@
             // InternalCompleteOCL.g:2502:1: ( rule__TypeParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2503:1: ( rule__TypeParameterCS__Group__0 )
             // InternalCompleteOCL.g:2503:2: rule__TypeParameterCS__Group__0
@@ -7568,7 +7568,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
 
             }
@@ -7599,7 +7599,7 @@
             // InternalCompleteOCL.g:2517:1: ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeRefCSRule()); 
+               before(grammarAccess.getTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeRefCS();
@@ -7607,7 +7607,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeRefCSRule()); 
+               after(grammarAccess.getTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7630,7 +7630,7 @@
     public final void ruleTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2528:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
             // InternalCompleteOCL.g:2529:1: ( ( rule__TypeRefCS__Alternatives ) )
@@ -7639,7 +7639,7 @@
             // InternalCompleteOCL.g:2530:1: ( rule__TypeRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeRefCSAccess().getAlternatives()); 
+               before(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:2531:1: ( rule__TypeRefCS__Alternatives )
             // InternalCompleteOCL.g:2531:2: rule__TypeRefCS__Alternatives
@@ -7653,7 +7653,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeRefCSAccess().getAlternatives()); 
+               after(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
 
             }
@@ -7684,7 +7684,7 @@
             // InternalCompleteOCL.g:2545:1: ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSRule()); 
+               before(grammarAccess.getTypedTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypedTypeRefCS();
@@ -7692,7 +7692,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSRule()); 
+               after(grammarAccess.getTypedTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7715,7 +7715,7 @@
     public final void ruleTypedTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2556:2: ( ( ( rule__TypedTypeRefCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2557:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
@@ -7724,7 +7724,7 @@
             // InternalCompleteOCL.g:2558:1: ( rule__TypedTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getGroup()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2559:1: ( rule__TypedTypeRefCS__Group__0 )
             // InternalCompleteOCL.g:2559:2: rule__TypedTypeRefCS__Group__0
@@ -7738,7 +7738,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getGroup()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getGroup());
             }
 
             }
@@ -7769,7 +7769,7 @@
             // InternalCompleteOCL.g:2573:1: ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSRule()); 
+               before(grammarAccess.getWildcardTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleWildcardTypeRefCS();
@@ -7777,7 +7777,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSRule()); 
+               after(grammarAccess.getWildcardTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7800,7 +7800,7 @@
     public final void ruleWildcardTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2584:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
             // InternalCompleteOCL.g:2585:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
@@ -7809,7 +7809,7 @@
             // InternalCompleteOCL.g:2586:1: ( rule__WildcardTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
             // InternalCompleteOCL.g:2587:1: ( rule__WildcardTypeRefCS__Group__0 )
             // InternalCompleteOCL.g:2587:2: rule__WildcardTypeRefCS__Group__0
@@ -7823,7 +7823,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
 
             }
@@ -7854,7 +7854,7 @@
             // InternalCompleteOCL.g:2601:1: ruleID EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIDRule()); 
+               before(grammarAccess.getIDRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleID();
@@ -7862,7 +7862,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIDRule()); 
+               after(grammarAccess.getIDRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7885,7 +7885,7 @@
     public final void ruleID() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2612:2: ( ( ( rule__ID__Alternatives ) ) )
             // InternalCompleteOCL.g:2613:1: ( ( rule__ID__Alternatives ) )
@@ -7894,7 +7894,7 @@
             // InternalCompleteOCL.g:2614:1: ( rule__ID__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIDAccess().getAlternatives()); 
+               before(grammarAccess.getIDAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:2615:1: ( rule__ID__Alternatives )
             // InternalCompleteOCL.g:2615:2: rule__ID__Alternatives
@@ -7908,7 +7908,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIDAccess().getAlternatives()); 
+               after(grammarAccess.getIDAccess().getAlternatives());
             }
 
             }
@@ -7939,7 +7939,7 @@
             // InternalCompleteOCL.g:2629:1: ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIdentifierRule()); 
+               before(grammarAccess.getIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleIdentifier();
@@ -7947,7 +7947,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIdentifierRule()); 
+               after(grammarAccess.getIdentifierRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7970,7 +7970,7 @@
     public final void ruleIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2640:2: ( ( ruleID ) )
             // InternalCompleteOCL.g:2641:1: ( ruleID )
@@ -7979,7 +7979,7 @@
             // InternalCompleteOCL.g:2642:1: ruleID
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
+               before(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleID();
@@ -7987,7 +7987,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
+               after(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
             }
 
             }
@@ -8018,7 +8018,7 @@
             // InternalCompleteOCL.g:2657:1: ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLOWERRule()); 
+               before(grammarAccess.getLOWERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLOWER();
@@ -8026,7 +8026,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLOWERRule()); 
+               after(grammarAccess.getLOWERRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8049,7 +8049,7 @@
     public final void ruleLOWER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2668:2: ( ( RULE_INT ) )
             // InternalCompleteOCL.g:2669:1: ( RULE_INT )
@@ -8058,11 +8058,11 @@
             // InternalCompleteOCL.g:2670:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+               before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+               after(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
             }
 
             }
@@ -8093,7 +8093,7 @@
             // InternalCompleteOCL.g:2685:1: ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNUMBER_LITERALRule()); 
+               before(grammarAccess.getNUMBER_LITERALRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNUMBER_LITERAL();
@@ -8101,7 +8101,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNUMBER_LITERALRule()); 
+               after(grammarAccess.getNUMBER_LITERALRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8124,7 +8124,7 @@
     public final void ruleNUMBER_LITERAL() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2696:2: ( ( RULE_INT ) )
             // InternalCompleteOCL.g:2697:1: ( RULE_INT )
@@ -8133,11 +8133,11 @@
             // InternalCompleteOCL.g:2698:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
+               before(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
+               after(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
             }
 
             }
@@ -8168,7 +8168,7 @@
             // InternalCompleteOCL.g:2713:1: ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralRule()); 
+               before(grammarAccess.getStringLiteralRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleStringLiteral();
@@ -8176,7 +8176,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralRule()); 
+               after(grammarAccess.getStringLiteralRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8199,7 +8199,7 @@
     public final void ruleStringLiteral() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2724:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalCompleteOCL.g:2725:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -8208,11 +8208,11 @@
             // InternalCompleteOCL.g:2726:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               before(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               after(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
 
             }
@@ -8243,7 +8243,7 @@
             // InternalCompleteOCL.g:2741:1: ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUPPERRule()); 
+               before(grammarAccess.getUPPERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUPPER();
@@ -8251,7 +8251,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUPPERRule()); 
+               after(grammarAccess.getUPPERRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8274,7 +8274,7 @@
     public final void ruleUPPER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2752:2: ( ( ( rule__UPPER__Alternatives ) ) )
             // InternalCompleteOCL.g:2753:1: ( ( rule__UPPER__Alternatives ) )
@@ -8283,7 +8283,7 @@
             // InternalCompleteOCL.g:2754:1: ( rule__UPPER__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUPPERAccess().getAlternatives()); 
+               before(grammarAccess.getUPPERAccess().getAlternatives());
             }
             // InternalCompleteOCL.g:2755:1: ( rule__UPPER__Alternatives )
             // InternalCompleteOCL.g:2755:2: rule__UPPER__Alternatives
@@ -8297,7 +8297,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUPPERAccess().getAlternatives()); 
+               after(grammarAccess.getUPPERAccess().getAlternatives());
             }
 
             }
@@ -8328,7 +8328,7 @@
             // InternalCompleteOCL.g:2769:1: ruleURI EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIRule()); 
+               before(grammarAccess.getURIRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleURI();
@@ -8336,7 +8336,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIRule()); 
+               after(grammarAccess.getURIRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8359,7 +8359,7 @@
     public final void ruleURI() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2780:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalCompleteOCL.g:2781:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -8368,11 +8368,11 @@
             // InternalCompleteOCL.g:2782:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               before(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               after(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
 
             }
@@ -8400,7 +8400,7 @@
     public final void rule__CompleteOCLDocumentCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2799:1: ( ( ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 ) ) | ( ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 ) ) )
             int alt2=2;
@@ -8427,7 +8427,7 @@
                     // InternalCompleteOCL.g:2801:1: ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesAssignment_1_0()); 
+                       before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesAssignment_1_0());
                     }
                     // InternalCompleteOCL.g:2802:1: ( rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0 )
                     // InternalCompleteOCL.g:2802:2: rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0
@@ -8441,7 +8441,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesAssignment_1_0()); 
+                       after(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesAssignment_1_0());
                     }
 
                     }
@@ -8456,7 +8456,7 @@
                     // InternalCompleteOCL.g:2807:1: ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsAssignment_1_1()); 
+                       before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsAssignment_1_1());
                     }
                     // InternalCompleteOCL.g:2808:1: ( rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1 )
                     // InternalCompleteOCL.g:2808:2: rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1
@@ -8470,7 +8470,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsAssignment_1_1()); 
+                       after(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsAssignment_1_1());
                     }
 
                     }
@@ -8500,7 +8500,7 @@
     public final void rule__CompleteOCLNavigationOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2821:1: ( ( '^' ) | ( '^^' ) )
             int alt3=2;
@@ -8527,11 +8527,11 @@
                     // InternalCompleteOCL.g:2823:1: '^'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentKeyword_0()); 
+                       before(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentKeyword_0());
                     }
                     match(input,17,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentKeyword_0()); 
+                       after(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentKeyword_0());
                     }
 
                     }
@@ -8546,11 +8546,11 @@
                     // InternalCompleteOCL.g:2831:1: '^^'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentCircumflexAccentKeyword_1()); 
+                       before(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentCircumflexAccentKeyword_1());
                     }
                     match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentCircumflexAccentKeyword_1()); 
+                       after(grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentCircumflexAccentKeyword_1());
                     }
 
                     }
@@ -8580,7 +8580,7 @@
     public final void rule__ClassifierContextDeclCS__Alternatives_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2847:1: ( ( ( rule__ClassifierContextDeclCS__Group_4_0__0 ) ) | ( ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 ) ) )
             int alt4=2;
@@ -8607,7 +8607,7 @@
                     // InternalCompleteOCL.g:2849:1: ( rule__ClassifierContextDeclCS__Group_4_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getClassifierContextDeclCSAccess().getGroup_4_0()); 
+                       before(grammarAccess.getClassifierContextDeclCSAccess().getGroup_4_0());
                     }
                     // InternalCompleteOCL.g:2850:1: ( rule__ClassifierContextDeclCS__Group_4_0__0 )
                     // InternalCompleteOCL.g:2850:2: rule__ClassifierContextDeclCS__Group_4_0__0
@@ -8621,7 +8621,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getClassifierContextDeclCSAccess().getGroup_4_0()); 
+                       after(grammarAccess.getClassifierContextDeclCSAccess().getGroup_4_0());
                     }
 
                     }
@@ -8636,7 +8636,7 @@
                     // InternalCompleteOCL.g:2855:1: ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsAssignment_4_1()); 
+                       before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsAssignment_4_1());
                     }
                     // InternalCompleteOCL.g:2856:1: ( rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1 )
                     // InternalCompleteOCL.g:2856:2: rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1
@@ -8650,7 +8650,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsAssignment_4_1()); 
+                       after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsAssignment_4_1());
                     }
 
                     }
@@ -8680,7 +8680,7 @@
     public final void rule__ContextDeclCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2869:1: ( ( rulePropertyContextDeclCS ) | ( ruleClassifierContextDeclCS ) | ( ruleOperationContextDeclCS ) )
             int alt5=3;
@@ -8721,7 +8721,7 @@
                     // InternalCompleteOCL.g:2871:1: rulePropertyContextDeclCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getContextDeclCSAccess().getPropertyContextDeclCSParserRuleCall_0()); 
+                       before(grammarAccess.getContextDeclCSAccess().getPropertyContextDeclCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePropertyContextDeclCS();
@@ -8729,7 +8729,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getContextDeclCSAccess().getPropertyContextDeclCSParserRuleCall_0()); 
+                       after(grammarAccess.getContextDeclCSAccess().getPropertyContextDeclCSParserRuleCall_0());
                     }
 
                     }
@@ -8744,7 +8744,7 @@
                     // InternalCompleteOCL.g:2877:1: ruleClassifierContextDeclCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getContextDeclCSAccess().getClassifierContextDeclCSParserRuleCall_1()); 
+                       before(grammarAccess.getContextDeclCSAccess().getClassifierContextDeclCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleClassifierContextDeclCS();
@@ -8752,7 +8752,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getContextDeclCSAccess().getClassifierContextDeclCSParserRuleCall_1()); 
+                       after(grammarAccess.getContextDeclCSAccess().getClassifierContextDeclCSParserRuleCall_1());
                     }
 
                     }
@@ -8767,7 +8767,7 @@
                     // InternalCompleteOCL.g:2883:1: ruleOperationContextDeclCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getContextDeclCSAccess().getOperationContextDeclCSParserRuleCall_2()); 
+                       before(grammarAccess.getContextDeclCSAccess().getOperationContextDeclCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleOperationContextDeclCS();
@@ -8775,7 +8775,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getContextDeclCSAccess().getOperationContextDeclCSParserRuleCall_2()); 
+                       after(grammarAccess.getContextDeclCSAccess().getOperationContextDeclCSParserRuleCall_2());
                     }
 
                     }
@@ -8805,7 +8805,7 @@
     public final void rule__DefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2897:1: ( ( ruleDefOperationCS ) | ( ruleDefPropertyCS ) )
             int alt6=2;
@@ -8818,7 +8818,7 @@
                     // InternalCompleteOCL.g:2899:1: ruleDefOperationCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDefCSAccess().getDefOperationCSParserRuleCall_0()); 
+                       before(grammarAccess.getDefCSAccess().getDefOperationCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleDefOperationCS();
@@ -8826,7 +8826,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDefCSAccess().getDefOperationCSParserRuleCall_0()); 
+                       after(grammarAccess.getDefCSAccess().getDefOperationCSParserRuleCall_0());
                     }
 
                     }
@@ -8841,7 +8841,7 @@
                     // InternalCompleteOCL.g:2905:1: ruleDefPropertyCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDefCSAccess().getDefPropertyCSParserRuleCall_1()); 
+                       before(grammarAccess.getDefCSAccess().getDefPropertyCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleDefPropertyCS();
@@ -8849,7 +8849,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDefCSAccess().getDefPropertyCSParserRuleCall_1()); 
+                       after(grammarAccess.getDefCSAccess().getDefPropertyCSParserRuleCall_1());
                     }
 
                     }
@@ -8879,7 +8879,7 @@
     public final void rule__ImportCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2919:1: ( ( 'import' ) | ( 'include' ) | ( 'library' ) )
             int alt7=3;
@@ -8915,11 +8915,11 @@
                     // InternalCompleteOCL.g:2921:1: 'import'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getImportCSAccess().getImportKeyword_0_0()); 
+                       before(grammarAccess.getImportCSAccess().getImportKeyword_0_0());
                     }
                     match(input,19,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getImportCSAccess().getImportKeyword_0_0()); 
+                       after(grammarAccess.getImportCSAccess().getImportKeyword_0_0());
                     }
 
                     }
@@ -8934,11 +8934,11 @@
                     // InternalCompleteOCL.g:2929:1: 'include'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getImportCSAccess().getIncludeKeyword_0_1()); 
+                       before(grammarAccess.getImportCSAccess().getIncludeKeyword_0_1());
                     }
                     match(input,20,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getImportCSAccess().getIncludeKeyword_0_1()); 
+                       after(grammarAccess.getImportCSAccess().getIncludeKeyword_0_1());
                     }
 
                     }
@@ -8953,11 +8953,11 @@
                     // InternalCompleteOCL.g:2937:1: 'library'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getImportCSAccess().getLibraryKeyword_0_2()); 
+                       before(grammarAccess.getImportCSAccess().getLibraryKeyword_0_2());
                     }
                     match(input,21,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getImportCSAccess().getLibraryKeyword_0_2()); 
+                       after(grammarAccess.getImportCSAccess().getLibraryKeyword_0_2());
                     }
 
                     }
@@ -8987,7 +8987,7 @@
     public final void rule__OperationContextDeclCS__Alternatives_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2953:1: ( ( ( rule__OperationContextDeclCS__Group_8_0__0 ) ) | ( ( rule__OperationContextDeclCS__Group_8_1__0 ) ) | ( ( rule__OperationContextDeclCS__Group_8_2__0 ) ) )
             int alt8=3;
@@ -9023,7 +9023,7 @@
                     // InternalCompleteOCL.g:2955:1: ( rule__OperationContextDeclCS__Group_8_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_0()); 
+                       before(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_0());
                     }
                     // InternalCompleteOCL.g:2956:1: ( rule__OperationContextDeclCS__Group_8_0__0 )
                     // InternalCompleteOCL.g:2956:2: rule__OperationContextDeclCS__Group_8_0__0
@@ -9037,7 +9037,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_0()); 
+                       after(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_0());
                     }
 
                     }
@@ -9052,7 +9052,7 @@
                     // InternalCompleteOCL.g:2961:1: ( rule__OperationContextDeclCS__Group_8_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_1()); 
+                       before(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_1());
                     }
                     // InternalCompleteOCL.g:2962:1: ( rule__OperationContextDeclCS__Group_8_1__0 )
                     // InternalCompleteOCL.g:2962:2: rule__OperationContextDeclCS__Group_8_1__0
@@ -9066,7 +9066,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_1()); 
+                       after(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_1());
                     }
 
                     }
@@ -9081,7 +9081,7 @@
                     // InternalCompleteOCL.g:2967:1: ( rule__OperationContextDeclCS__Group_8_2__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_2()); 
+                       before(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_2());
                     }
                     // InternalCompleteOCL.g:2968:1: ( rule__OperationContextDeclCS__Group_8_2__0 )
                     // InternalCompleteOCL.g:2968:2: rule__OperationContextDeclCS__Group_8_2__0
@@ -9095,7 +9095,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_2()); 
+                       after(grammarAccess.getOperationContextDeclCSAccess().getGroup_8_2());
                     }
 
                     }
@@ -9125,7 +9125,7 @@
     public final void rule__PropertyContextDeclCS__Alternatives_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:2981:1: ( ( ( rule__PropertyContextDeclCS__Group_4_0__0 ) ) | ( ( rule__PropertyContextDeclCS__Group_4_1__0 ) ) )
             int alt9=2;
@@ -9152,7 +9152,7 @@
                     // InternalCompleteOCL.g:2983:1: ( rule__PropertyContextDeclCS__Group_4_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPropertyContextDeclCSAccess().getGroup_4_0()); 
+                       before(grammarAccess.getPropertyContextDeclCSAccess().getGroup_4_0());
                     }
                     // InternalCompleteOCL.g:2984:1: ( rule__PropertyContextDeclCS__Group_4_0__0 )
                     // InternalCompleteOCL.g:2984:2: rule__PropertyContextDeclCS__Group_4_0__0
@@ -9166,7 +9166,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPropertyContextDeclCSAccess().getGroup_4_0()); 
+                       after(grammarAccess.getPropertyContextDeclCSAccess().getGroup_4_0());
                     }
 
                     }
@@ -9181,7 +9181,7 @@
                     // InternalCompleteOCL.g:2989:1: ( rule__PropertyContextDeclCS__Group_4_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPropertyContextDeclCSAccess().getGroup_4_1()); 
+                       before(grammarAccess.getPropertyContextDeclCSAccess().getGroup_4_1());
                     }
                     // InternalCompleteOCL.g:2990:1: ( rule__PropertyContextDeclCS__Group_4_1__0 )
                     // InternalCompleteOCL.g:2990:2: rule__PropertyContextDeclCS__Group_4_1__0
@@ -9195,7 +9195,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPropertyContextDeclCSAccess().getGroup_4_1()); 
+                       after(grammarAccess.getPropertyContextDeclCSAccess().getGroup_4_1());
                     }
 
                     }
@@ -9225,7 +9225,7 @@
     public final void rule__SpecificationCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3003:1: ( ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) ) | ( ( rule__SpecificationCS__ExprStringAssignment_1 ) ) )
             int alt10=2;
@@ -9252,7 +9252,7 @@
                     // InternalCompleteOCL.g:3005:1: ( rule__SpecificationCS__OwnedExpressionAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment_0()); 
+                       before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment_0());
                     }
                     // InternalCompleteOCL.g:3006:1: ( rule__SpecificationCS__OwnedExpressionAssignment_0 )
                     // InternalCompleteOCL.g:3006:2: rule__SpecificationCS__OwnedExpressionAssignment_0
@@ -9266,7 +9266,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment_0()); 
+                       after(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment_0());
                     }
 
                     }
@@ -9281,7 +9281,7 @@
                     // InternalCompleteOCL.g:3011:1: ( rule__SpecificationCS__ExprStringAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getSpecificationCSAccess().getExprStringAssignment_1()); 
+                       before(grammarAccess.getSpecificationCSAccess().getExprStringAssignment_1());
                     }
                     // InternalCompleteOCL.g:3012:1: ( rule__SpecificationCS__ExprStringAssignment_1 )
                     // InternalCompleteOCL.g:3012:2: rule__SpecificationCS__ExprStringAssignment_1
@@ -9295,7 +9295,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getSpecificationCSAccess().getExprStringAssignment_1()); 
+                       after(grammarAccess.getSpecificationCSAccess().getExprStringAssignment_1());
                     }
 
                     }
@@ -9325,7 +9325,7 @@
     public final void rule__TemplateSignatureCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3025:1: ( ( ( rule__TemplateSignatureCS__Group_0__0 ) ) | ( ( rule__TemplateSignatureCS__Group_1__0 ) ) )
             int alt11=2;
@@ -9352,7 +9352,7 @@
                     // InternalCompleteOCL.g:3027:1: ( rule__TemplateSignatureCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTemplateSignatureCSAccess().getGroup_0()); 
+                       before(grammarAccess.getTemplateSignatureCSAccess().getGroup_0());
                     }
                     // InternalCompleteOCL.g:3028:1: ( rule__TemplateSignatureCS__Group_0__0 )
                     // InternalCompleteOCL.g:3028:2: rule__TemplateSignatureCS__Group_0__0
@@ -9366,7 +9366,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTemplateSignatureCSAccess().getGroup_0()); 
+                       after(grammarAccess.getTemplateSignatureCSAccess().getGroup_0());
                     }
 
                     }
@@ -9381,7 +9381,7 @@
                     // InternalCompleteOCL.g:3033:1: ( rule__TemplateSignatureCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTemplateSignatureCSAccess().getGroup_1()); 
+                       before(grammarAccess.getTemplateSignatureCSAccess().getGroup_1());
                     }
                     // InternalCompleteOCL.g:3034:1: ( rule__TemplateSignatureCS__Group_1__0 )
                     // InternalCompleteOCL.g:3034:2: rule__TemplateSignatureCS__Group_1__0
@@ -9395,7 +9395,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTemplateSignatureCSAccess().getGroup_1()); 
+                       after(grammarAccess.getTemplateSignatureCSAccess().getGroup_1());
                     }
 
                     }
@@ -9425,7 +9425,7 @@
     public final void rule__TypedRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3047:1: ( ( ruleTypeLiteralCS ) | ( ruleTypedTypeRefCS ) )
             int alt12=2;
@@ -9452,7 +9452,7 @@
                     // InternalCompleteOCL.g:3049:1: ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+                       before(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeLiteralCS();
@@ -9460,7 +9460,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+                       after(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0());
                     }
 
                     }
@@ -9475,7 +9475,7 @@
                     // InternalCompleteOCL.g:3055:1: ruleTypedTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1()); 
+                       before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypedTypeRefCS();
@@ -9483,7 +9483,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1()); 
+                       after(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1());
                     }
 
                     }
@@ -9513,7 +9513,7 @@
     public final void rule__UnrestrictedName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3069:1: ( ( ruleEssentialOCLUnrestrictedName ) | ( 'import' ) | ( 'include' ) | ( 'library' ) )
             int alt13=4;
@@ -9555,7 +9555,7 @@
                     // InternalCompleteOCL.g:3071:1: ruleEssentialOCLUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0()); 
+                       before(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleEssentialOCLUnrestrictedName();
@@ -9563,7 +9563,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0()); 
+                       after(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0());
                     }
 
                     }
@@ -9578,11 +9578,11 @@
                     // InternalCompleteOCL.g:3077:1: 'import'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUnrestrictedNameAccess().getImportKeyword_1()); 
+                       before(grammarAccess.getUnrestrictedNameAccess().getImportKeyword_1());
                     }
                     match(input,19,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUnrestrictedNameAccess().getImportKeyword_1()); 
+                       after(grammarAccess.getUnrestrictedNameAccess().getImportKeyword_1());
                     }
 
                     }
@@ -9597,11 +9597,11 @@
                     // InternalCompleteOCL.g:3085:1: 'include'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUnrestrictedNameAccess().getIncludeKeyword_2()); 
+                       before(grammarAccess.getUnrestrictedNameAccess().getIncludeKeyword_2());
                     }
                     match(input,20,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUnrestrictedNameAccess().getIncludeKeyword_2()); 
+                       after(grammarAccess.getUnrestrictedNameAccess().getIncludeKeyword_2());
                     }
 
                     }
@@ -9616,11 +9616,11 @@
                     // InternalCompleteOCL.g:3093:1: 'library'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUnrestrictedNameAccess().getLibraryKeyword_3()); 
+                       before(grammarAccess.getUnrestrictedNameAccess().getLibraryKeyword_3());
                     }
                     match(input,21,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUnrestrictedNameAccess().getLibraryKeyword_3()); 
+                       after(grammarAccess.getUnrestrictedNameAccess().getLibraryKeyword_3());
                     }
 
                     }
@@ -9650,7 +9650,7 @@
     public final void rule__NavigatingArgExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3109:1: ( ( ( rule__NavigatingArgExpCS__Group_0__0 ) ) | ( ruleExpCS ) )
             int alt14=2;
@@ -9677,7 +9677,7 @@
                     // InternalCompleteOCL.g:3111:1: ( rule__NavigatingArgExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgExpCSAccess().getGroup_0()); 
+                       before(grammarAccess.getNavigatingArgExpCSAccess().getGroup_0());
                     }
                     // InternalCompleteOCL.g:3112:1: ( rule__NavigatingArgExpCS__Group_0__0 )
                     // InternalCompleteOCL.g:3112:2: rule__NavigatingArgExpCS__Group_0__0
@@ -9691,7 +9691,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgExpCSAccess().getGroup_0()); 
+                       after(grammarAccess.getNavigatingArgExpCSAccess().getGroup_0());
                     }
 
                     }
@@ -9706,7 +9706,7 @@
                     // InternalCompleteOCL.g:3117:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleExpCS();
@@ -9714,7 +9714,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall_1());
                     }
 
                     }
@@ -9744,7 +9744,7 @@
     public final void rule__NavigationOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3131:1: ( ( ruleEssentialOCLNavigationOperatorName ) | ( ruleCompleteOCLNavigationOperatorName ) )
             int alt15=2;
@@ -9771,7 +9771,7 @@
                     // InternalCompleteOCL.g:3133:1: ruleEssentialOCLNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall_0()); 
+                       before(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleEssentialOCLNavigationOperatorName();
@@ -9779,7 +9779,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall_0()); 
+                       after(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall_0());
                     }
 
                     }
@@ -9794,7 +9794,7 @@
                     // InternalCompleteOCL.g:3139:1: ruleCompleteOCLNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigationOperatorNameAccess().getCompleteOCLNavigationOperatorNameParserRuleCall_1()); 
+                       before(grammarAccess.getNavigationOperatorNameAccess().getCompleteOCLNavigationOperatorNameParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCompleteOCLNavigationOperatorName();
@@ -9802,7 +9802,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigationOperatorNameAccess().getCompleteOCLNavigationOperatorNameParserRuleCall_1()); 
+                       after(grammarAccess.getNavigationOperatorNameAccess().getCompleteOCLNavigationOperatorNameParserRuleCall_1());
                     }
 
                     }
@@ -9832,7 +9832,7 @@
     public final void rule__PrimitiveTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3153:1: ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclMessage' ) | ( 'OclState' ) | ( 'OclVoid' ) )
             int alt16=10;
@@ -9903,11 +9903,11 @@
                     // InternalCompleteOCL.g:3155:1: 'Boolean'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
                     }
                     match(input,22,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
                     }
 
                     }
@@ -9922,11 +9922,11 @@
                     // InternalCompleteOCL.g:3163:1: 'Integer'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
                     }
                     match(input,23,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
                     }
 
                     }
@@ -9941,11 +9941,11 @@
                     // InternalCompleteOCL.g:3171:1: 'Real'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
                     }
                     match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
                     }
 
                     }
@@ -9960,11 +9960,11 @@
                     // InternalCompleteOCL.g:3179:1: 'String'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
                     }
                     match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
                     }
 
                     }
@@ -9979,11 +9979,11 @@
                     // InternalCompleteOCL.g:3187:1: 'UnlimitedNatural'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
                     }
                     match(input,26,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
                     }
 
                     }
@@ -9998,11 +9998,11 @@
                     // InternalCompleteOCL.g:3195:1: 'OclAny'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
                     }
                     match(input,27,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
                     }
 
                     }
@@ -10017,11 +10017,11 @@
                     // InternalCompleteOCL.g:3203:1: 'OclInvalid'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
                     }
                     match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
                     }
 
                     }
@@ -10036,11 +10036,11 @@
                     // InternalCompleteOCL.g:3211:1: 'OclMessage'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclMessageKeyword_7()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclMessageKeyword_7());
                     }
                     match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclMessageKeyword_7()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclMessageKeyword_7());
                     }
 
                     }
@@ -10055,11 +10055,11 @@
                     // InternalCompleteOCL.g:3219:1: 'OclState'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclStateKeyword_8()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclStateKeyword_8());
                     }
                     match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclStateKeyword_8()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclStateKeyword_8());
                     }
 
                     }
@@ -10074,11 +10074,11 @@
                     // InternalCompleteOCL.g:3227:1: 'OclVoid'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_9()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_9());
                     }
                     match(input,31,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_9()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_9());
                     }
 
                     }
@@ -10108,7 +10108,7 @@
     public final void rule__EssentialOCLUnaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3244:1: ( ( '-' ) | ( 'not' ) )
             int alt17=2;
@@ -10135,11 +10135,11 @@
                     // InternalCompleteOCL.g:3246:1: '-'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
+                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
                     }
                     match(input,32,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
+                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
                     }
 
                     }
@@ -10154,11 +10154,11 @@
                     // InternalCompleteOCL.g:3254:1: 'not'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
+                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
                     }
                     match(input,33,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
+                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
                     }
 
                     }
@@ -10188,7 +10188,7 @@
     public final void rule__EssentialOCLInfixOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3270:1: ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'or' ) | ( 'xor' ) | ( 'implies' ) )
             int alt18=14;
@@ -10279,11 +10279,11 @@
                     // InternalCompleteOCL.g:3272:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
                     }
                     match(input,34,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
                     }
 
                     }
@@ -10298,11 +10298,11 @@
                     // InternalCompleteOCL.g:3280:1: '/'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
                     }
                     match(input,35,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
                     }
 
                     }
@@ -10317,11 +10317,11 @@
                     // InternalCompleteOCL.g:3288:1: '+'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
                     }
                     match(input,36,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
                     }
 
                     }
@@ -10336,11 +10336,11 @@
                     // InternalCompleteOCL.g:3296:1: '-'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
                     }
                     match(input,32,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
                     }
 
                     }
@@ -10355,11 +10355,11 @@
                     // InternalCompleteOCL.g:3304:1: '>'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
                     }
                     match(input,37,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
                     }
 
                     }
@@ -10374,11 +10374,11 @@
                     // InternalCompleteOCL.g:3312:1: '<'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
                     }
                     match(input,38,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
                     }
 
                     }
@@ -10393,11 +10393,11 @@
                     // InternalCompleteOCL.g:3320:1: '>='
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
                     }
                     match(input,39,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
                     }
 
                     }
@@ -10412,11 +10412,11 @@
                     // InternalCompleteOCL.g:3328:1: '<='
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
                     }
                     match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
                     }
 
                     }
@@ -10431,11 +10431,11 @@
                     // InternalCompleteOCL.g:3336:1: '='
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
                     }
                     match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
                     }
 
                     }
@@ -10450,11 +10450,11 @@
                     // InternalCompleteOCL.g:3344:1: '<>'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
                     }
                     match(input,42,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
                     }
 
                     }
@@ -10469,11 +10469,11 @@
                     // InternalCompleteOCL.g:3352:1: 'and'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
                     }
                     match(input,43,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
                     }
 
                     }
@@ -10488,11 +10488,11 @@
                     // InternalCompleteOCL.g:3360:1: 'or'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
                     }
                     match(input,44,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
                     }
 
                     }
@@ -10507,11 +10507,11 @@
                     // InternalCompleteOCL.g:3368:1: 'xor'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
                     }
                     match(input,45,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
                     }
 
                     }
@@ -10526,11 +10526,11 @@
                     // InternalCompleteOCL.g:3376:1: 'implies'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
                     }
                     match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
                     }
 
                     }
@@ -10560,7 +10560,7 @@
     public final void rule__EssentialOCLNavigationOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3392:1: ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) )
             int alt19=4;
@@ -10601,11 +10601,11 @@
                     // InternalCompleteOCL.g:3394:1: '.'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
                     }
                     match(input,47,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
                     }
 
                     }
@@ -10620,11 +10620,11 @@
                     // InternalCompleteOCL.g:3402:1: '->'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
                     }
                     match(input,48,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
                     }
 
                     }
@@ -10639,11 +10639,11 @@
                     // InternalCompleteOCL.g:3410:1: '?.'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
                     }
                     match(input,49,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
                     }
 
                     }
@@ -10658,11 +10658,11 @@
                     // InternalCompleteOCL.g:3418:1: '?->'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
                     }
                     match(input,50,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
                     }
 
                     }
@@ -10692,7 +10692,7 @@
     public final void rule__BinaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3434:1: ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) )
             int alt20=2;
@@ -10719,7 +10719,7 @@
                     // InternalCompleteOCL.g:3436:1: ruleInfixOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
+                       before(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleInfixOperatorName();
@@ -10727,7 +10727,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
+                       after(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
                     }
 
                     }
@@ -10742,7 +10742,7 @@
                     // InternalCompleteOCL.g:3442:1: ruleNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
+                       before(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNavigationOperatorName();
@@ -10750,7 +10750,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
+                       after(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
                     }
 
                     }
@@ -10780,7 +10780,7 @@
     public final void rule__EssentialOCLUnreservedName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3456:1: ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) )
             int alt21=5;
@@ -10843,7 +10843,7 @@
                     // InternalCompleteOCL.g:3458:1: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -10851,7 +10851,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
                     }
 
                     }
@@ -10866,7 +10866,7 @@
                     // InternalCompleteOCL.g:3464:1: ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionTypeIdentifier();
@@ -10874,7 +10874,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
                     }
 
                     }
@@ -10889,7 +10889,7 @@
                     // InternalCompleteOCL.g:3470:1: rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimitiveTypeIdentifier();
@@ -10897,7 +10897,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
                     }
 
                     }
@@ -10912,11 +10912,11 @@
                     // InternalCompleteOCL.g:3476:1: 'Map'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
                     }
                     match(input,51,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
                     }
 
                     }
@@ -10931,11 +10931,11 @@
                     // InternalCompleteOCL.g:3484:1: 'Tuple'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
                     }
                     match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
                     }
 
                     }
@@ -10965,7 +10965,7 @@
     public final void rule__URIFirstPathElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3500:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) )
             int alt22=2;
@@ -10992,7 +10992,7 @@
                     // InternalCompleteOCL.g:3502:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0()); 
+                       before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0());
                     }
                     // InternalCompleteOCL.g:3503:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
                     // InternalCompleteOCL.g:3503:2: rule__URIFirstPathElementCS__ReferredElementAssignment_0
@@ -11006,7 +11006,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0()); 
+                       after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0());
                     }
 
                     }
@@ -11021,7 +11021,7 @@
                     // InternalCompleteOCL.g:3508:1: ( rule__URIFirstPathElementCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1()); 
+                       before(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1());
                     }
                     // InternalCompleteOCL.g:3509:1: ( rule__URIFirstPathElementCS__Group_1__0 )
                     // InternalCompleteOCL.g:3509:2: rule__URIFirstPathElementCS__Group_1__0
@@ -11035,7 +11035,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1()); 
+                       after(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1());
                     }
 
                     }
@@ -11065,7 +11065,7 @@
     public final void rule__CollectionTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3522:1: ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) )
             int alt23=5;
@@ -11111,11 +11111,11 @@
                     // InternalCompleteOCL.g:3524:1: 'Set'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
                     }
                     match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
                     }
 
                     }
@@ -11130,11 +11130,11 @@
                     // InternalCompleteOCL.g:3532:1: 'Bag'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
                     }
                     match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
                     }
 
                     }
@@ -11149,11 +11149,11 @@
                     // InternalCompleteOCL.g:3540:1: 'Sequence'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
                     }
                     match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
                     }
 
                     }
@@ -11168,11 +11168,11 @@
                     // InternalCompleteOCL.g:3548:1: 'Collection'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
                     }
                     match(input,56,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
                     }
 
                     }
@@ -11187,11 +11187,11 @@
                     // InternalCompleteOCL.g:3556:1: 'OrderedSet'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
                     }
                     match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
                     }
 
                     }
@@ -11221,7 +11221,7 @@
     public final void rule__CollectionLiteralPartCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3572:1: ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) )
             int alt24=2;
@@ -11377,7 +11377,7 @@
                     // InternalCompleteOCL.g:3574:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0()); 
+                       before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0());
                     }
                     // InternalCompleteOCL.g:3575:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
                     // InternalCompleteOCL.g:3575:2: rule__CollectionLiteralPartCS__Group_0__0
@@ -11391,7 +11391,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0()); 
+                       after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0());
                     }
 
                     }
@@ -11406,7 +11406,7 @@
                     // InternalCompleteOCL.g:3580:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1()); 
+                       before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1());
                     }
                     // InternalCompleteOCL.g:3581:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
                     // InternalCompleteOCL.g:3581:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1
@@ -11420,7 +11420,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1()); 
+                       after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1());
                     }
 
                     }
@@ -11450,7 +11450,7 @@
     public final void rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3594:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt25=2;
@@ -11606,7 +11606,7 @@
                     // InternalCompleteOCL.g:3596:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
+                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleExpCS();
@@ -11614,7 +11614,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
+                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
                     }
 
                     }
@@ -11629,7 +11629,7 @@
                     // InternalCompleteOCL.g:3602:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
+                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePatternExpCS();
@@ -11637,7 +11637,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
+                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
                     }
 
                     }
@@ -11667,7 +11667,7 @@
     public final void rule__PrimitiveLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3616:1: ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) )
             int alt26=6;
@@ -11719,7 +11719,7 @@
                     // InternalCompleteOCL.g:3618:1: ruleNumberLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNumberLiteralExpCS();
@@ -11727,7 +11727,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
                     }
 
                     }
@@ -11742,7 +11742,7 @@
                     // InternalCompleteOCL.g:3624:1: ruleStringLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleStringLiteralExpCS();
@@ -11750,7 +11750,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
                     }
 
                     }
@@ -11765,7 +11765,7 @@
                     // InternalCompleteOCL.g:3630:1: ruleBooleanLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleBooleanLiteralExpCS();
@@ -11773,7 +11773,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
                     }
 
                     }
@@ -11788,7 +11788,7 @@
                     // InternalCompleteOCL.g:3636:1: ruleUnlimitedNaturalLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnlimitedNaturalLiteralExpCS();
@@ -11796,7 +11796,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
                     }
 
                     }
@@ -11811,7 +11811,7 @@
                     // InternalCompleteOCL.g:3642:1: ruleInvalidLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleInvalidLiteralExpCS();
@@ -11819,7 +11819,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
                     }
 
                     }
@@ -11834,7 +11834,7 @@
                     // InternalCompleteOCL.g:3648:1: ruleNullLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNullLiteralExpCS();
@@ -11842,7 +11842,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
                     }
 
                     }
@@ -11872,7 +11872,7 @@
     public final void rule__BooleanLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3662:1: ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) )
             int alt27=2;
@@ -11899,7 +11899,7 @@
                     // InternalCompleteOCL.g:3664:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0()); 
+                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0());
                     }
                     // InternalCompleteOCL.g:3665:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
                     // InternalCompleteOCL.g:3665:2: rule__BooleanLiteralExpCS__SymbolAssignment_0
@@ -11913,7 +11913,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0()); 
+                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0());
                     }
 
                     }
@@ -11928,7 +11928,7 @@
                     // InternalCompleteOCL.g:3670:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1()); 
+                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1());
                     }
                     // InternalCompleteOCL.g:3671:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
                     // InternalCompleteOCL.g:3671:2: rule__BooleanLiteralExpCS__SymbolAssignment_1
@@ -11942,7 +11942,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1()); 
+                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1());
                     }
 
                     }
@@ -11972,7 +11972,7 @@
     public final void rule__TypeLiteralCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3684:1: ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) )
             int alt28=4;
@@ -12026,7 +12026,7 @@
                     // InternalCompleteOCL.g:3686:1: rulePrimitiveTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimitiveTypeCS();
@@ -12034,7 +12034,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
                     }
 
                     }
@@ -12049,7 +12049,7 @@
                     // InternalCompleteOCL.g:3692:1: ruleCollectionTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionTypeCS();
@@ -12057,7 +12057,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
                     }
 
                     }
@@ -12072,7 +12072,7 @@
                     // InternalCompleteOCL.g:3698:1: ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMapTypeCS();
@@ -12080,7 +12080,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
                     }
 
                     }
@@ -12095,7 +12095,7 @@
                     // InternalCompleteOCL.g:3704:1: ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTupleTypeCS();
@@ -12103,7 +12103,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
                     }
 
                     }
@@ -12133,7 +12133,7 @@
     public final void rule__TypeExpCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3718:1: ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) )
             int alt29=3;
@@ -12146,7 +12146,7 @@
                     // InternalCompleteOCL.g:3720:1: ruleTypeNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
+                       before(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeNameExpCS();
@@ -12154,7 +12154,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
+                       after(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
                     }
 
                     }
@@ -12169,7 +12169,7 @@
                     // InternalCompleteOCL.g:3726:1: ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+                       before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeLiteralCS();
@@ -12177,7 +12177,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+                       after(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
                     }
 
                     }
@@ -12192,7 +12192,7 @@
                     // InternalCompleteOCL.g:3732:1: ruleCollectionPatternCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
+                       before(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionPatternCS();
@@ -12200,7 +12200,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
+                       after(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
                     }
 
                     }
@@ -12230,7 +12230,7 @@
     public final void rule__ExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3746:1: ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) )
             int alt30=2;
@@ -12243,7 +12243,7 @@
                     // InternalCompleteOCL.g:3748:1: ( rule__ExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getExpCSAccess().getGroup_0()); 
+                       before(grammarAccess.getExpCSAccess().getGroup_0());
                     }
                     // InternalCompleteOCL.g:3749:1: ( rule__ExpCS__Group_0__0 )
                     // InternalCompleteOCL.g:3749:2: rule__ExpCS__Group_0__0
@@ -12257,7 +12257,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getExpCSAccess().getGroup_0()); 
+                       after(grammarAccess.getExpCSAccess().getGroup_0());
                     }
 
                     }
@@ -12272,7 +12272,7 @@
                     // InternalCompleteOCL.g:3754:1: rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrefixedLetExpCS();
@@ -12280,7 +12280,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
                     }
 
                     }
@@ -12310,7 +12310,7 @@
     public final void rule__PrefixedLetExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3768:1: ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) )
             int alt31=2;
@@ -12337,7 +12337,7 @@
                     // InternalCompleteOCL.g:3770:1: ( rule__PrefixedLetExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0()); 
+                       before(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0());
                     }
                     // InternalCompleteOCL.g:3771:1: ( rule__PrefixedLetExpCS__Group_0__0 )
                     // InternalCompleteOCL.g:3771:2: rule__PrefixedLetExpCS__Group_0__0
@@ -12351,7 +12351,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0()); 
+                       after(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0());
                     }
 
                     }
@@ -12366,7 +12366,7 @@
                     // InternalCompleteOCL.g:3776:1: ruleLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleLetExpCS();
@@ -12374,7 +12374,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
                     }
 
                     }
@@ -12404,7 +12404,7 @@
     public final void rule__PrefixedPrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3790:1: ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) )
             int alt32=2;
@@ -12431,7 +12431,7 @@
                     // InternalCompleteOCL.g:3792:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0()); 
+                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0());
                     }
                     // InternalCompleteOCL.g:3793:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
                     // InternalCompleteOCL.g:3793:2: rule__PrefixedPrimaryExpCS__Group_0__0
@@ -12445,7 +12445,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0()); 
+                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0());
                     }
 
                     }
@@ -12460,7 +12460,7 @@
                     // InternalCompleteOCL.g:3798:1: rulePrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimaryExpCS();
@@ -12468,7 +12468,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
                     }
 
                     }
@@ -12498,7 +12498,7 @@
     public final void rule__PrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3812:1: ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) )
             int alt33=10;
@@ -12511,7 +12511,7 @@
                     // InternalCompleteOCL.g:3814:1: ruleNestedExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNestedExpCS();
@@ -12519,7 +12519,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
                     }
 
                     }
@@ -12534,7 +12534,7 @@
                     // InternalCompleteOCL.g:3820:1: ruleIfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleIfExpCS();
@@ -12542,7 +12542,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
                     }
 
                     }
@@ -12557,7 +12557,7 @@
                     // InternalCompleteOCL.g:3826:1: ruleSelfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleSelfExpCS();
@@ -12565,7 +12565,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
                     }
 
                     }
@@ -12580,7 +12580,7 @@
                     // InternalCompleteOCL.g:3832:1: rulePrimitiveLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimitiveLiteralExpCS();
@@ -12588,7 +12588,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
                     }
 
                     }
@@ -12603,7 +12603,7 @@
                     // InternalCompleteOCL.g:3838:1: ruleTupleLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTupleLiteralExpCS();
@@ -12611,7 +12611,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
                     }
 
                     }
@@ -12626,7 +12626,7 @@
                     // InternalCompleteOCL.g:3844:1: ruleMapLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMapLiteralExpCS();
@@ -12634,7 +12634,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
                     }
 
                     }
@@ -12649,7 +12649,7 @@
                     // InternalCompleteOCL.g:3850:1: ruleCollectionLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionLiteralExpCS();
@@ -12657,7 +12657,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
                     }
 
                     }
@@ -12672,7 +12672,7 @@
                     // InternalCompleteOCL.g:3856:1: ruleLambdaLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleLambdaLiteralExpCS();
@@ -12680,7 +12680,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
                     }
 
                     }
@@ -12695,7 +12695,7 @@
                     // InternalCompleteOCL.g:3862:1: ruleTypeLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeLiteralExpCS();
@@ -12703,7 +12703,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
                     }
 
                     }
@@ -12718,7 +12718,7 @@
                     // InternalCompleteOCL.g:3868:1: ruleNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNameExpCS();
@@ -12726,7 +12726,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
                     }
 
                     }
@@ -12756,7 +12756,7 @@
     public final void rule__CurlyBracketedClauseCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3882:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_0__0 )? ) | ( ( rule__CurlyBracketedClauseCS__ValueAssignment_2_1 ) ) )
             int alt35=2;
@@ -12783,7 +12783,7 @@
                     // InternalCompleteOCL.g:3884:1: ( rule__CurlyBracketedClauseCS__Group_2_0__0 )?
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0()); 
+                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0());
                     }
                     // InternalCompleteOCL.g:3885:1: ( rule__CurlyBracketedClauseCS__Group_2_0__0 )?
                     int alt34=2;
@@ -12808,7 +12808,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0()); 
+                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0());
                     }
 
                     }
@@ -12823,7 +12823,7 @@
                     // InternalCompleteOCL.g:3890:1: ( rule__CurlyBracketedClauseCS__ValueAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1()); 
+                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1());
                     }
                     // InternalCompleteOCL.g:3891:1: ( rule__CurlyBracketedClauseCS__ValueAssignment_2_1 )
                     // InternalCompleteOCL.g:3891:2: rule__CurlyBracketedClauseCS__ValueAssignment_2_1
@@ -12837,7 +12837,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1()); 
+                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1());
                     }
 
                     }
@@ -12867,7 +12867,7 @@
     public final void rule__NavigatingArgCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3904:1: ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) )
             int alt36=2;
@@ -12894,7 +12894,7 @@
                     // InternalCompleteOCL.g:3906:1: ( rule__NavigatingArgCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0());
                     }
                     // InternalCompleteOCL.g:3907:1: ( rule__NavigatingArgCS__Group_0__0 )
                     // InternalCompleteOCL.g:3907:2: rule__NavigatingArgCS__Group_0__0
@@ -12908,7 +12908,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0());
                     }
 
                     }
@@ -12923,7 +12923,7 @@
                     // InternalCompleteOCL.g:3912:1: ( rule__NavigatingArgCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_1()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_1());
                     }
                     // InternalCompleteOCL.g:3913:1: ( rule__NavigatingArgCS__Group_1__0 )
                     // InternalCompleteOCL.g:3913:2: rule__NavigatingArgCS__Group_1__0
@@ -12937,7 +12937,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_1()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_1());
                     }
 
                     }
@@ -12967,7 +12967,7 @@
     public final void rule__NavigatingArgCS__Alternatives_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3926:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) )
             int alt37=2;
@@ -12994,7 +12994,7 @@
                     // InternalCompleteOCL.g:3928:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
                     }
                     // InternalCompleteOCL.g:3929:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
                     // InternalCompleteOCL.g:3929:2: rule__NavigatingArgCS__Group_0_1_0__0
@@ -13008,7 +13008,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
                     }
 
                     }
@@ -13023,7 +13023,7 @@
                     // InternalCompleteOCL.g:3934:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
                     }
                     // InternalCompleteOCL.g:3935:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
                     // InternalCompleteOCL.g:3935:2: rule__NavigatingArgCS__Group_0_1_1__0
@@ -13037,7 +13037,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
                     }
 
                     }
@@ -13067,7 +13067,7 @@
     public final void rule__NavigatingCommaArgCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3948:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) )
             int alt38=2;
@@ -13094,7 +13094,7 @@
                     // InternalCompleteOCL.g:3950:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0()); 
+                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
                     }
                     // InternalCompleteOCL.g:3951:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
                     // InternalCompleteOCL.g:3951:2: rule__NavigatingCommaArgCS__Group_2_0__0
@@ -13108,7 +13108,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0()); 
+                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
                     }
 
                     }
@@ -13123,7 +13123,7 @@
                     // InternalCompleteOCL.g:3956:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1()); 
+                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
                     }
                     // InternalCompleteOCL.g:3957:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
                     // InternalCompleteOCL.g:3957:2: rule__NavigatingCommaArgCS__Group_2_1__0
@@ -13137,7 +13137,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1()); 
+                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
                     }
 
                     }
@@ -13167,7 +13167,7 @@
     public final void rule__IfExpCS__OwnedConditionAlternatives_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3970:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt39=2;
@@ -13323,7 +13323,7 @@
                     // InternalCompleteOCL.g:3972:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
+                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleExpCS();
@@ -13331,7 +13331,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
+                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
                     }
 
                     }
@@ -13346,7 +13346,7 @@
                     // InternalCompleteOCL.g:3978:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
+                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePatternExpCS();
@@ -13354,7 +13354,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
+                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
                     }
 
                     }
@@ -13384,7 +13384,7 @@
     public final void rule__MultiplicityCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:3992:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
             int alt40=2;
@@ -13411,7 +13411,7 @@
                     // InternalCompleteOCL.g:3994:1: ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMultiplicityBoundsCS();
@@ -13419,7 +13419,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
                     }
 
                     }
@@ -13434,7 +13434,7 @@
                     // InternalCompleteOCL.g:4000:1: ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMultiplicityStringCS();
@@ -13442,7 +13442,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
                     }
 
                     }
@@ -13472,7 +13472,7 @@
     public final void rule__MultiplicityCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4014:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
             int alt41=2;
@@ -13499,11 +13499,11 @@
                     // InternalCompleteOCL.g:4016:1: '|?'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
                     }
                     match(input,58,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
                     }
 
                     }
@@ -13518,7 +13518,7 @@
                     // InternalCompleteOCL.g:4024:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
                     // InternalCompleteOCL.g:4025:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     // InternalCompleteOCL.g:4025:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
@@ -13532,7 +13532,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
 
                     }
@@ -13562,7 +13562,7 @@
     public final void rule__MultiplicityStringCS__StringBoundsAlternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4038:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
             int alt42=3;
@@ -13598,11 +13598,11 @@
                     // InternalCompleteOCL.g:4040:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
                     }
                     match(input,34,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
                     }
 
                     }
@@ -13617,11 +13617,11 @@
                     // InternalCompleteOCL.g:4048:1: '+'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
                     }
                     match(input,36,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
                     }
 
                     }
@@ -13636,11 +13636,11 @@
                     // InternalCompleteOCL.g:4056:1: '?'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
                     }
                     match(input,59,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
                     }
 
                     }
@@ -13670,7 +13670,7 @@
     public final void rule__TypeRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4072:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
             int alt43=2;
@@ -13697,7 +13697,7 @@
                     // InternalCompleteOCL.g:4074:1: ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+                       before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypedRefCS();
@@ -13705,7 +13705,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+                       after(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
                     }
 
                     }
@@ -13720,7 +13720,7 @@
                     // InternalCompleteOCL.g:4080:1: ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+                       before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleWildcardTypeRefCS();
@@ -13728,7 +13728,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+                       after(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
                     }
 
                     }
@@ -13758,7 +13758,7 @@
     public final void rule__ID__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4094:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
             int alt44=2;
@@ -13785,11 +13785,11 @@
                     // InternalCompleteOCL.g:4096:1: RULE_SIMPLE_ID
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+                       before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
                     }
                     match(input,RULE_SIMPLE_ID,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+                       after(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
                     }
 
                     }
@@ -13804,11 +13804,11 @@
                     // InternalCompleteOCL.g:4102:1: RULE_ESCAPED_ID
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+                       before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
                     }
                     match(input,RULE_ESCAPED_ID,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+                       after(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
                     }
 
                     }
@@ -13838,7 +13838,7 @@
     public final void rule__UPPER__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4116:1: ( ( RULE_INT ) | ( '*' ) )
             int alt45=2;
@@ -13865,11 +13865,11 @@
                     // InternalCompleteOCL.g:4118:1: RULE_INT
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+                       before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
                     }
                     match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+                       after(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
                     }
 
                     }
@@ -13884,11 +13884,11 @@
                     // InternalCompleteOCL.g:4124:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+                       before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
                     }
                     match(input,34,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+                       after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
                     }
 
                     }
@@ -13918,7 +13918,7 @@
     public final void rule__CompleteOCLDocumentCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4142:1: ( rule__CompleteOCLDocumentCS__Group__0__Impl rule__CompleteOCLDocumentCS__Group__1 )
             // InternalCompleteOCL.g:4143:2: rule__CompleteOCLDocumentCS__Group__0__Impl rule__CompleteOCLDocumentCS__Group__1
@@ -13956,7 +13956,7 @@
     public final void rule__CompleteOCLDocumentCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4154:1: ( ( ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )* ) )
             // InternalCompleteOCL.g:4155:1: ( ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )* )
@@ -13965,7 +13965,7 @@
             // InternalCompleteOCL.g:4156:1: ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsAssignment_0()); 
+               before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsAssignment_0());
             }
             // InternalCompleteOCL.g:4157:1: ( rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0 )*
             loop46:
@@ -13997,7 +13997,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsAssignment_0()); 
+               after(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsAssignment_0());
             }
 
             }
@@ -14025,7 +14025,7 @@
     public final void rule__CompleteOCLDocumentCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4171:1: ( rule__CompleteOCLDocumentCS__Group__1__Impl )
             // InternalCompleteOCL.g:4172:2: rule__CompleteOCLDocumentCS__Group__1__Impl
@@ -14058,7 +14058,7 @@
     public final void rule__CompleteOCLDocumentCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4182:1: ( ( ( rule__CompleteOCLDocumentCS__Alternatives_1 )* ) )
             // InternalCompleteOCL.g:4183:1: ( ( rule__CompleteOCLDocumentCS__Alternatives_1 )* )
@@ -14067,7 +14067,7 @@
             // InternalCompleteOCL.g:4184:1: ( rule__CompleteOCLDocumentCS__Alternatives_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCompleteOCLDocumentCSAccess().getAlternatives_1()); 
+               before(grammarAccess.getCompleteOCLDocumentCSAccess().getAlternatives_1());
             }
             // InternalCompleteOCL.g:4185:1: ( rule__CompleteOCLDocumentCS__Alternatives_1 )*
             loop47:
@@ -14099,7 +14099,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCompleteOCLDocumentCSAccess().getAlternatives_1()); 
+               after(grammarAccess.getCompleteOCLDocumentCSAccess().getAlternatives_1());
             }
 
             }
@@ -14127,7 +14127,7 @@
     public final void rule__ClassifierContextDeclCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4203:1: ( rule__ClassifierContextDeclCS__Group__0__Impl rule__ClassifierContextDeclCS__Group__1 )
             // InternalCompleteOCL.g:4204:2: rule__ClassifierContextDeclCS__Group__0__Impl rule__ClassifierContextDeclCS__Group__1
@@ -14165,7 +14165,7 @@
     public final void rule__ClassifierContextDeclCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4215:1: ( ( 'context' ) )
             // InternalCompleteOCL.g:4216:1: ( 'context' )
@@ -14174,11 +14174,11 @@
             // InternalCompleteOCL.g:4217:1: 'context'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getContextKeyword_0()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getContextKeyword_0());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getContextKeyword_0()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getContextKeyword_0());
             }
 
             }
@@ -14206,7 +14206,7 @@
     public final void rule__ClassifierContextDeclCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4234:1: ( rule__ClassifierContextDeclCS__Group__1__Impl rule__ClassifierContextDeclCS__Group__2 )
             // InternalCompleteOCL.g:4235:2: rule__ClassifierContextDeclCS__Group__1__Impl rule__ClassifierContextDeclCS__Group__2
@@ -14244,7 +14244,7 @@
     public final void rule__ClassifierContextDeclCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4246:1: ( ( ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )? ) )
             // InternalCompleteOCL.g:4247:1: ( ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )? )
@@ -14253,7 +14253,7 @@
             // InternalCompleteOCL.g:4248:1: ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureAssignment_1()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureAssignment_1());
             }
             // InternalCompleteOCL.g:4249:1: ( rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1 )?
             int alt48=2;
@@ -14278,7 +14278,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureAssignment_1()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureAssignment_1());
             }
 
             }
@@ -14306,7 +14306,7 @@
     public final void rule__ClassifierContextDeclCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4263:1: ( rule__ClassifierContextDeclCS__Group__2__Impl rule__ClassifierContextDeclCS__Group__3 )
             // InternalCompleteOCL.g:4264:2: rule__ClassifierContextDeclCS__Group__2__Impl rule__ClassifierContextDeclCS__Group__3
@@ -14344,7 +14344,7 @@
     public final void rule__ClassifierContextDeclCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4275:1: ( ( ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )? ) )
             // InternalCompleteOCL.g:4276:1: ( ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )? )
@@ -14353,7 +14353,7 @@
             // InternalCompleteOCL.g:4277:1: ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameAssignment_2()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameAssignment_2());
             }
             // InternalCompleteOCL.g:4278:1: ( rule__ClassifierContextDeclCS__SelfNameAssignment_2 )?
             int alt49=2;
@@ -14421,7 +14421,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameAssignment_2()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameAssignment_2());
             }
 
             }
@@ -14449,7 +14449,7 @@
     public final void rule__ClassifierContextDeclCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4292:1: ( rule__ClassifierContextDeclCS__Group__3__Impl rule__ClassifierContextDeclCS__Group__4 )
             // InternalCompleteOCL.g:4293:2: rule__ClassifierContextDeclCS__Group__3__Impl rule__ClassifierContextDeclCS__Group__4
@@ -14487,7 +14487,7 @@
     public final void rule__ClassifierContextDeclCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4304:1: ( ( ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 ) ) )
             // InternalCompleteOCL.g:4305:1: ( ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 ) )
@@ -14496,7 +14496,7 @@
             // InternalCompleteOCL.g:4306:1: ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNameAssignment_3()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNameAssignment_3());
             }
             // InternalCompleteOCL.g:4307:1: ( rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3 )
             // InternalCompleteOCL.g:4307:2: rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3
@@ -14510,7 +14510,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNameAssignment_3()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNameAssignment_3());
             }
 
             }
@@ -14538,7 +14538,7 @@
     public final void rule__ClassifierContextDeclCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4321:1: ( rule__ClassifierContextDeclCS__Group__4__Impl )
             // InternalCompleteOCL.g:4322:2: rule__ClassifierContextDeclCS__Group__4__Impl
@@ -14571,7 +14571,7 @@
     public final void rule__ClassifierContextDeclCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4332:1: ( ( ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) ) ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* ) ) )
             // InternalCompleteOCL.g:4333:1: ( ( ( rule__ClassifierContextDeclCS__Alternatives_4 ) ) ( ( rule__ClassifierContextDeclCS__Alternatives_4 )* ) )
@@ -14583,7 +14583,7 @@
             // InternalCompleteOCL.g:4335:1: ( rule__ClassifierContextDeclCS__Alternatives_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getAlternatives_4()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getAlternatives_4());
             }
             // InternalCompleteOCL.g:4336:1: ( rule__ClassifierContextDeclCS__Alternatives_4 )
             // InternalCompleteOCL.g:4336:2: rule__ClassifierContextDeclCS__Alternatives_4
@@ -14597,7 +14597,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getAlternatives_4()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getAlternatives_4());
             }
 
             }
@@ -14606,7 +14606,7 @@
             // InternalCompleteOCL.g:4340:1: ( rule__ClassifierContextDeclCS__Alternatives_4 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getAlternatives_4()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getAlternatives_4());
             }
             // InternalCompleteOCL.g:4341:1: ( rule__ClassifierContextDeclCS__Alternatives_4 )*
             loop50:
@@ -14638,7 +14638,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getAlternatives_4()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getAlternatives_4());
             }
 
             }
@@ -14669,7 +14669,7 @@
     public final void rule__ClassifierContextDeclCS__Group_4_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4366:1: ( rule__ClassifierContextDeclCS__Group_4_0__0__Impl rule__ClassifierContextDeclCS__Group_4_0__1 )
             // InternalCompleteOCL.g:4367:2: rule__ClassifierContextDeclCS__Group_4_0__0__Impl rule__ClassifierContextDeclCS__Group_4_0__1
@@ -14707,7 +14707,7 @@
     public final void rule__ClassifierContextDeclCS__Group_4_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4378:1: ( ( 'inv' ) )
             // InternalCompleteOCL.g:4379:1: ( 'inv' )
@@ -14716,11 +14716,11 @@
             // InternalCompleteOCL.g:4380:1: 'inv'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getInvKeyword_4_0_0()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getInvKeyword_4_0_0());
             }
             match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getInvKeyword_4_0_0()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getInvKeyword_4_0_0());
             }
 
             }
@@ -14748,7 +14748,7 @@
     public final void rule__ClassifierContextDeclCS__Group_4_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4397:1: ( rule__ClassifierContextDeclCS__Group_4_0__1__Impl )
             // InternalCompleteOCL.g:4398:2: rule__ClassifierContextDeclCS__Group_4_0__1__Impl
@@ -14781,7 +14781,7 @@
     public final void rule__ClassifierContextDeclCS__Group_4_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4408:1: ( ( ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 ) ) )
             // InternalCompleteOCL.g:4409:1: ( ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 ) )
@@ -14790,7 +14790,7 @@
             // InternalCompleteOCL.g:4410:1: ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsAssignment_4_0_1()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsAssignment_4_0_1());
             }
             // InternalCompleteOCL.g:4411:1: ( rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1 )
             // InternalCompleteOCL.g:4411:2: rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1
@@ -14804,7 +14804,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsAssignment_4_0_1()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsAssignment_4_0_1());
             }
 
             }
@@ -14832,7 +14832,7 @@
     public final void rule__ConstraintCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4429:1: ( rule__ConstraintCS__Group__0__Impl rule__ConstraintCS__Group__1 )
             // InternalCompleteOCL.g:4430:2: rule__ConstraintCS__Group__0__Impl rule__ConstraintCS__Group__1
@@ -14870,7 +14870,7 @@
     public final void rule__ConstraintCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4441:1: ( ( ( rule__ConstraintCS__Group_0__0 )? ) )
             // InternalCompleteOCL.g:4442:1: ( ( rule__ConstraintCS__Group_0__0 )? )
@@ -14879,7 +14879,7 @@
             // InternalCompleteOCL.g:4443:1: ( rule__ConstraintCS__Group_0__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getConstraintCSAccess().getGroup_0()); 
+               before(grammarAccess.getConstraintCSAccess().getGroup_0());
             }
             // InternalCompleteOCL.g:4444:1: ( rule__ConstraintCS__Group_0__0 )?
             int alt51=2;
@@ -14904,7 +14904,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getConstraintCSAccess().getGroup_0()); 
+               after(grammarAccess.getConstraintCSAccess().getGroup_0());
             }
 
             }
@@ -14932,7 +14932,7 @@
     public final void rule__ConstraintCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4458:1: ( rule__ConstraintCS__Group__1__Impl rule__ConstraintCS__Group__2 )
             // InternalCompleteOCL.g:4459:2: rule__ConstraintCS__Group__1__Impl rule__ConstraintCS__Group__2
@@ -14970,7 +14970,7 @@
     public final void rule__ConstraintCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4470:1: ( ( ':' ) )
             // InternalCompleteOCL.g:4471:1: ( ':' )
@@ -14979,11 +14979,11 @@
             // InternalCompleteOCL.g:4472:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getConstraintCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getConstraintCSAccess().getColonKeyword_1());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getConstraintCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getConstraintCSAccess().getColonKeyword_1());
             }
 
             }
@@ -15011,7 +15011,7 @@
     public final void rule__ConstraintCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4489:1: ( rule__ConstraintCS__Group__2__Impl )
             // InternalCompleteOCL.g:4490:2: rule__ConstraintCS__Group__2__Impl
@@ -15044,7 +15044,7 @@
     public final void rule__ConstraintCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4500:1: ( ( ( rule__ConstraintCS__OwnedSpecificationAssignment_2 ) ) )
             // InternalCompleteOCL.g:4501:1: ( ( rule__ConstraintCS__OwnedSpecificationAssignment_2 ) )
@@ -15053,7 +15053,7 @@
             // InternalCompleteOCL.g:4502:1: ( rule__ConstraintCS__OwnedSpecificationAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getConstraintCSAccess().getOwnedSpecificationAssignment_2()); 
+               before(grammarAccess.getConstraintCSAccess().getOwnedSpecificationAssignment_2());
             }
             // InternalCompleteOCL.g:4503:1: ( rule__ConstraintCS__OwnedSpecificationAssignment_2 )
             // InternalCompleteOCL.g:4503:2: rule__ConstraintCS__OwnedSpecificationAssignment_2
@@ -15067,7 +15067,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getConstraintCSAccess().getOwnedSpecificationAssignment_2()); 
+               after(grammarAccess.getConstraintCSAccess().getOwnedSpecificationAssignment_2());
             }
 
             }
@@ -15095,7 +15095,7 @@
     public final void rule__ConstraintCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4523:1: ( rule__ConstraintCS__Group_0__0__Impl rule__ConstraintCS__Group_0__1 )
             // InternalCompleteOCL.g:4524:2: rule__ConstraintCS__Group_0__0__Impl rule__ConstraintCS__Group_0__1
@@ -15133,7 +15133,7 @@
     public final void rule__ConstraintCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4535:1: ( ( ( rule__ConstraintCS__NameAssignment_0_0 ) ) )
             // InternalCompleteOCL.g:4536:1: ( ( rule__ConstraintCS__NameAssignment_0_0 ) )
@@ -15142,7 +15142,7 @@
             // InternalCompleteOCL.g:4537:1: ( rule__ConstraintCS__NameAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getConstraintCSAccess().getNameAssignment_0_0()); 
+               before(grammarAccess.getConstraintCSAccess().getNameAssignment_0_0());
             }
             // InternalCompleteOCL.g:4538:1: ( rule__ConstraintCS__NameAssignment_0_0 )
             // InternalCompleteOCL.g:4538:2: rule__ConstraintCS__NameAssignment_0_0
@@ -15156,7 +15156,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getConstraintCSAccess().getNameAssignment_0_0()); 
+               after(grammarAccess.getConstraintCSAccess().getNameAssignment_0_0());
             }
 
             }
@@ -15184,7 +15184,7 @@
     public final void rule__ConstraintCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4552:1: ( rule__ConstraintCS__Group_0__1__Impl )
             // InternalCompleteOCL.g:4553:2: rule__ConstraintCS__Group_0__1__Impl
@@ -15217,7 +15217,7 @@
     public final void rule__ConstraintCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4563:1: ( ( ( rule__ConstraintCS__Group_0_1__0 )? ) )
             // InternalCompleteOCL.g:4564:1: ( ( rule__ConstraintCS__Group_0_1__0 )? )
@@ -15226,7 +15226,7 @@
             // InternalCompleteOCL.g:4565:1: ( rule__ConstraintCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getConstraintCSAccess().getGroup_0_1()); 
+               before(grammarAccess.getConstraintCSAccess().getGroup_0_1());
             }
             // InternalCompleteOCL.g:4566:1: ( rule__ConstraintCS__Group_0_1__0 )?
             int alt52=2;
@@ -15251,7 +15251,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getConstraintCSAccess().getGroup_0_1()); 
+               after(grammarAccess.getConstraintCSAccess().getGroup_0_1());
             }
 
             }
@@ -15279,7 +15279,7 @@
     public final void rule__ConstraintCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4584:1: ( rule__ConstraintCS__Group_0_1__0__Impl rule__ConstraintCS__Group_0_1__1 )
             // InternalCompleteOCL.g:4585:2: rule__ConstraintCS__Group_0_1__0__Impl rule__ConstraintCS__Group_0_1__1
@@ -15317,7 +15317,7 @@
     public final void rule__ConstraintCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4596:1: ( ( '(' ) )
             // InternalCompleteOCL.g:4597:1: ( '(' )
@@ -15326,11 +15326,11 @@
             // InternalCompleteOCL.g:4598:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getConstraintCSAccess().getLeftParenthesisKeyword_0_1_0()); 
+               before(grammarAccess.getConstraintCSAccess().getLeftParenthesisKeyword_0_1_0());
             }
             match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getConstraintCSAccess().getLeftParenthesisKeyword_0_1_0()); 
+               after(grammarAccess.getConstraintCSAccess().getLeftParenthesisKeyword_0_1_0());
             }
 
             }
@@ -15358,7 +15358,7 @@
     public final void rule__ConstraintCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4615:1: ( rule__ConstraintCS__Group_0_1__1__Impl rule__ConstraintCS__Group_0_1__2 )
             // InternalCompleteOCL.g:4616:2: rule__ConstraintCS__Group_0_1__1__Impl rule__ConstraintCS__Group_0_1__2
@@ -15396,7 +15396,7 @@
     public final void rule__ConstraintCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4627:1: ( ( ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 ) ) )
             // InternalCompleteOCL.g:4628:1: ( ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 ) )
@@ -15405,7 +15405,7 @@
             // InternalCompleteOCL.g:4629:1: ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationAssignment_0_1_1()); 
+               before(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationAssignment_0_1_1());
             }
             // InternalCompleteOCL.g:4630:1: ( rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1 )
             // InternalCompleteOCL.g:4630:2: rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1
@@ -15419,7 +15419,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationAssignment_0_1_1()); 
+               after(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationAssignment_0_1_1());
             }
 
             }
@@ -15447,7 +15447,7 @@
     public final void rule__ConstraintCS__Group_0_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4644:1: ( rule__ConstraintCS__Group_0_1__2__Impl )
             // InternalCompleteOCL.g:4645:2: rule__ConstraintCS__Group_0_1__2__Impl
@@ -15480,7 +15480,7 @@
     public final void rule__ConstraintCS__Group_0_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4655:1: ( ( ')' ) )
             // InternalCompleteOCL.g:4656:1: ( ')' )
@@ -15489,11 +15489,11 @@
             // InternalCompleteOCL.g:4657:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getConstraintCSAccess().getRightParenthesisKeyword_0_1_2()); 
+               before(grammarAccess.getConstraintCSAccess().getRightParenthesisKeyword_0_1_2());
             }
             match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getConstraintCSAccess().getRightParenthesisKeyword_0_1_2()); 
+               after(grammarAccess.getConstraintCSAccess().getRightParenthesisKeyword_0_1_2());
             }
 
             }
@@ -15521,7 +15521,7 @@
     public final void rule__DefOperationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4680:1: ( rule__DefOperationCS__Group__0__Impl rule__DefOperationCS__Group__1 )
             // InternalCompleteOCL.g:4681:2: rule__DefOperationCS__Group__0__Impl rule__DefOperationCS__Group__1
@@ -15559,7 +15559,7 @@
     public final void rule__DefOperationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4692:1: ( ( ( rule__DefOperationCS__IsStaticAssignment_0 )? ) )
             // InternalCompleteOCL.g:4693:1: ( ( rule__DefOperationCS__IsStaticAssignment_0 )? )
@@ -15568,7 +15568,7 @@
             // InternalCompleteOCL.g:4694:1: ( rule__DefOperationCS__IsStaticAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getIsStaticAssignment_0()); 
+               before(grammarAccess.getDefOperationCSAccess().getIsStaticAssignment_0());
             }
             // InternalCompleteOCL.g:4695:1: ( rule__DefOperationCS__IsStaticAssignment_0 )?
             int alt53=2;
@@ -15593,7 +15593,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getIsStaticAssignment_0()); 
+               after(grammarAccess.getDefOperationCSAccess().getIsStaticAssignment_0());
             }
 
             }
@@ -15621,7 +15621,7 @@
     public final void rule__DefOperationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4709:1: ( rule__DefOperationCS__Group__1__Impl rule__DefOperationCS__Group__2 )
             // InternalCompleteOCL.g:4710:2: rule__DefOperationCS__Group__1__Impl rule__DefOperationCS__Group__2
@@ -15659,7 +15659,7 @@
     public final void rule__DefOperationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4721:1: ( ( 'def' ) )
             // InternalCompleteOCL.g:4722:1: ( 'def' )
@@ -15668,11 +15668,11 @@
             // InternalCompleteOCL.g:4723:1: 'def'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getDefKeyword_1()); 
+               before(grammarAccess.getDefOperationCSAccess().getDefKeyword_1());
             }
             match(input,65,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getDefKeyword_1()); 
+               after(grammarAccess.getDefOperationCSAccess().getDefKeyword_1());
             }
 
             }
@@ -15700,7 +15700,7 @@
     public final void rule__DefOperationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4740:1: ( rule__DefOperationCS__Group__2__Impl rule__DefOperationCS__Group__3 )
             // InternalCompleteOCL.g:4741:2: rule__DefOperationCS__Group__2__Impl rule__DefOperationCS__Group__3
@@ -15738,7 +15738,7 @@
     public final void rule__DefOperationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4752:1: ( ( ( ruleUnrestrictedName )? ) )
             // InternalCompleteOCL.g:4753:1: ( ( ruleUnrestrictedName )? )
@@ -15747,7 +15747,7 @@
             // InternalCompleteOCL.g:4754:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getUnrestrictedNameParserRuleCall_2()); 
+               before(grammarAccess.getDefOperationCSAccess().getUnrestrictedNameParserRuleCall_2());
             }
             // InternalCompleteOCL.g:4755:1: ( ruleUnrestrictedName )?
             int alt54=2;
@@ -15772,7 +15772,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getUnrestrictedNameParserRuleCall_2()); 
+               after(grammarAccess.getDefOperationCSAccess().getUnrestrictedNameParserRuleCall_2());
             }
 
             }
@@ -15800,7 +15800,7 @@
     public final void rule__DefOperationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4769:1: ( rule__DefOperationCS__Group__3__Impl rule__DefOperationCS__Group__4 )
             // InternalCompleteOCL.g:4770:2: rule__DefOperationCS__Group__3__Impl rule__DefOperationCS__Group__4
@@ -15838,7 +15838,7 @@
     public final void rule__DefOperationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4781:1: ( ( ':' ) )
             // InternalCompleteOCL.g:4782:1: ( ':' )
@@ -15847,11 +15847,11 @@
             // InternalCompleteOCL.g:4783:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getColonKeyword_3()); 
+               before(grammarAccess.getDefOperationCSAccess().getColonKeyword_3());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getColonKeyword_3()); 
+               after(grammarAccess.getDefOperationCSAccess().getColonKeyword_3());
             }
 
             }
@@ -15879,7 +15879,7 @@
     public final void rule__DefOperationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4800:1: ( rule__DefOperationCS__Group__4__Impl rule__DefOperationCS__Group__5 )
             // InternalCompleteOCL.g:4801:2: rule__DefOperationCS__Group__4__Impl rule__DefOperationCS__Group__5
@@ -15917,7 +15917,7 @@
     public final void rule__DefOperationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4812:1: ( ( ( rule__DefOperationCS__OwnedSignatureAssignment_4 )? ) )
             // InternalCompleteOCL.g:4813:1: ( ( rule__DefOperationCS__OwnedSignatureAssignment_4 )? )
@@ -15926,7 +15926,7 @@
             // InternalCompleteOCL.g:4814:1: ( rule__DefOperationCS__OwnedSignatureAssignment_4 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getOwnedSignatureAssignment_4()); 
+               before(grammarAccess.getDefOperationCSAccess().getOwnedSignatureAssignment_4());
             }
             // InternalCompleteOCL.g:4815:1: ( rule__DefOperationCS__OwnedSignatureAssignment_4 )?
             int alt55=2;
@@ -15951,7 +15951,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getOwnedSignatureAssignment_4()); 
+               after(grammarAccess.getDefOperationCSAccess().getOwnedSignatureAssignment_4());
             }
 
             }
@@ -15979,7 +15979,7 @@
     public final void rule__DefOperationCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4829:1: ( rule__DefOperationCS__Group__5__Impl rule__DefOperationCS__Group__6 )
             // InternalCompleteOCL.g:4830:2: rule__DefOperationCS__Group__5__Impl rule__DefOperationCS__Group__6
@@ -16017,7 +16017,7 @@
     public final void rule__DefOperationCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4841:1: ( ( ( rule__DefOperationCS__NameAssignment_5 ) ) )
             // InternalCompleteOCL.g:4842:1: ( ( rule__DefOperationCS__NameAssignment_5 ) )
@@ -16026,7 +16026,7 @@
             // InternalCompleteOCL.g:4843:1: ( rule__DefOperationCS__NameAssignment_5 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getNameAssignment_5()); 
+               before(grammarAccess.getDefOperationCSAccess().getNameAssignment_5());
             }
             // InternalCompleteOCL.g:4844:1: ( rule__DefOperationCS__NameAssignment_5 )
             // InternalCompleteOCL.g:4844:2: rule__DefOperationCS__NameAssignment_5
@@ -16040,7 +16040,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getNameAssignment_5()); 
+               after(grammarAccess.getDefOperationCSAccess().getNameAssignment_5());
             }
 
             }
@@ -16068,7 +16068,7 @@
     public final void rule__DefOperationCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4858:1: ( rule__DefOperationCS__Group__6__Impl rule__DefOperationCS__Group__7 )
             // InternalCompleteOCL.g:4859:2: rule__DefOperationCS__Group__6__Impl rule__DefOperationCS__Group__7
@@ -16106,7 +16106,7 @@
     public final void rule__DefOperationCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4870:1: ( ( '(' ) )
             // InternalCompleteOCL.g:4871:1: ( '(' )
@@ -16115,11 +16115,11 @@
             // InternalCompleteOCL.g:4872:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getLeftParenthesisKeyword_6()); 
+               before(grammarAccess.getDefOperationCSAccess().getLeftParenthesisKeyword_6());
             }
             match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getLeftParenthesisKeyword_6()); 
+               after(grammarAccess.getDefOperationCSAccess().getLeftParenthesisKeyword_6());
             }
 
             }
@@ -16147,7 +16147,7 @@
     public final void rule__DefOperationCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4889:1: ( rule__DefOperationCS__Group__7__Impl rule__DefOperationCS__Group__8 )
             // InternalCompleteOCL.g:4890:2: rule__DefOperationCS__Group__7__Impl rule__DefOperationCS__Group__8
@@ -16185,7 +16185,7 @@
     public final void rule__DefOperationCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4901:1: ( ( ( rule__DefOperationCS__Group_7__0 )? ) )
             // InternalCompleteOCL.g:4902:1: ( ( rule__DefOperationCS__Group_7__0 )? )
@@ -16194,7 +16194,7 @@
             // InternalCompleteOCL.g:4903:1: ( rule__DefOperationCS__Group_7__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getGroup_7()); 
+               before(grammarAccess.getDefOperationCSAccess().getGroup_7());
             }
             // InternalCompleteOCL.g:4904:1: ( rule__DefOperationCS__Group_7__0 )?
             int alt56=2;
@@ -16219,7 +16219,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getGroup_7()); 
+               after(grammarAccess.getDefOperationCSAccess().getGroup_7());
             }
 
             }
@@ -16247,7 +16247,7 @@
     public final void rule__DefOperationCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4918:1: ( rule__DefOperationCS__Group__8__Impl rule__DefOperationCS__Group__9 )
             // InternalCompleteOCL.g:4919:2: rule__DefOperationCS__Group__8__Impl rule__DefOperationCS__Group__9
@@ -16285,7 +16285,7 @@
     public final void rule__DefOperationCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4930:1: ( ( ')' ) )
             // InternalCompleteOCL.g:4931:1: ( ')' )
@@ -16294,11 +16294,11 @@
             // InternalCompleteOCL.g:4932:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getRightParenthesisKeyword_8()); 
+               before(grammarAccess.getDefOperationCSAccess().getRightParenthesisKeyword_8());
             }
             match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getRightParenthesisKeyword_8()); 
+               after(grammarAccess.getDefOperationCSAccess().getRightParenthesisKeyword_8());
             }
 
             }
@@ -16326,7 +16326,7 @@
     public final void rule__DefOperationCS__Group__9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4949:1: ( rule__DefOperationCS__Group__9__Impl rule__DefOperationCS__Group__10 )
             // InternalCompleteOCL.g:4950:2: rule__DefOperationCS__Group__9__Impl rule__DefOperationCS__Group__10
@@ -16364,7 +16364,7 @@
     public final void rule__DefOperationCS__Group__9__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4961:1: ( ( ':' ) )
             // InternalCompleteOCL.g:4962:1: ( ':' )
@@ -16373,11 +16373,11 @@
             // InternalCompleteOCL.g:4963:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getColonKeyword_9()); 
+               before(grammarAccess.getDefOperationCSAccess().getColonKeyword_9());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getColonKeyword_9()); 
+               after(grammarAccess.getDefOperationCSAccess().getColonKeyword_9());
             }
 
             }
@@ -16405,7 +16405,7 @@
     public final void rule__DefOperationCS__Group__10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4980:1: ( rule__DefOperationCS__Group__10__Impl rule__DefOperationCS__Group__11 )
             // InternalCompleteOCL.g:4981:2: rule__DefOperationCS__Group__10__Impl rule__DefOperationCS__Group__11
@@ -16443,7 +16443,7 @@
     public final void rule__DefOperationCS__Group__10__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:4992:1: ( ( ( rule__DefOperationCS__OwnedTypeAssignment_10 )? ) )
             // InternalCompleteOCL.g:4993:1: ( ( rule__DefOperationCS__OwnedTypeAssignment_10 )? )
@@ -16452,7 +16452,7 @@
             // InternalCompleteOCL.g:4994:1: ( rule__DefOperationCS__OwnedTypeAssignment_10 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getOwnedTypeAssignment_10()); 
+               before(grammarAccess.getDefOperationCSAccess().getOwnedTypeAssignment_10());
             }
             // InternalCompleteOCL.g:4995:1: ( rule__DefOperationCS__OwnedTypeAssignment_10 )?
             int alt57=2;
@@ -16477,7 +16477,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getOwnedTypeAssignment_10()); 
+               after(grammarAccess.getDefOperationCSAccess().getOwnedTypeAssignment_10());
             }
 
             }
@@ -16505,7 +16505,7 @@
     public final void rule__DefOperationCS__Group__11() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5009:1: ( rule__DefOperationCS__Group__11__Impl rule__DefOperationCS__Group__12 )
             // InternalCompleteOCL.g:5010:2: rule__DefOperationCS__Group__11__Impl rule__DefOperationCS__Group__12
@@ -16543,7 +16543,7 @@
     public final void rule__DefOperationCS__Group__11__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5021:1: ( ( '=' ) )
             // InternalCompleteOCL.g:5022:1: ( '=' )
@@ -16552,11 +16552,11 @@
             // InternalCompleteOCL.g:5023:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getEqualsSignKeyword_11()); 
+               before(grammarAccess.getDefOperationCSAccess().getEqualsSignKeyword_11());
             }
             match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getEqualsSignKeyword_11()); 
+               after(grammarAccess.getDefOperationCSAccess().getEqualsSignKeyword_11());
             }
 
             }
@@ -16584,7 +16584,7 @@
     public final void rule__DefOperationCS__Group__12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5040:1: ( rule__DefOperationCS__Group__12__Impl )
             // InternalCompleteOCL.g:5041:2: rule__DefOperationCS__Group__12__Impl
@@ -16617,7 +16617,7 @@
     public final void rule__DefOperationCS__Group__12__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5051:1: ( ( ( rule__DefOperationCS__OwnedSpecificationAssignment_12 ) ) )
             // InternalCompleteOCL.g:5052:1: ( ( rule__DefOperationCS__OwnedSpecificationAssignment_12 ) )
@@ -16626,7 +16626,7 @@
             // InternalCompleteOCL.g:5053:1: ( rule__DefOperationCS__OwnedSpecificationAssignment_12 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationAssignment_12()); 
+               before(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationAssignment_12());
             }
             // InternalCompleteOCL.g:5054:1: ( rule__DefOperationCS__OwnedSpecificationAssignment_12 )
             // InternalCompleteOCL.g:5054:2: rule__DefOperationCS__OwnedSpecificationAssignment_12
@@ -16640,7 +16640,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationAssignment_12()); 
+               after(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationAssignment_12());
             }
 
             }
@@ -16668,7 +16668,7 @@
     public final void rule__DefOperationCS__Group_7__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5094:1: ( rule__DefOperationCS__Group_7__0__Impl rule__DefOperationCS__Group_7__1 )
             // InternalCompleteOCL.g:5095:2: rule__DefOperationCS__Group_7__0__Impl rule__DefOperationCS__Group_7__1
@@ -16706,7 +16706,7 @@
     public final void rule__DefOperationCS__Group_7__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5106:1: ( ( ( rule__DefOperationCS__OwnedParametersAssignment_7_0 ) ) )
             // InternalCompleteOCL.g:5107:1: ( ( rule__DefOperationCS__OwnedParametersAssignment_7_0 ) )
@@ -16715,7 +16715,7 @@
             // InternalCompleteOCL.g:5108:1: ( rule__DefOperationCS__OwnedParametersAssignment_7_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getOwnedParametersAssignment_7_0()); 
+               before(grammarAccess.getDefOperationCSAccess().getOwnedParametersAssignment_7_0());
             }
             // InternalCompleteOCL.g:5109:1: ( rule__DefOperationCS__OwnedParametersAssignment_7_0 )
             // InternalCompleteOCL.g:5109:2: rule__DefOperationCS__OwnedParametersAssignment_7_0
@@ -16729,7 +16729,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getOwnedParametersAssignment_7_0()); 
+               after(grammarAccess.getDefOperationCSAccess().getOwnedParametersAssignment_7_0());
             }
 
             }
@@ -16757,7 +16757,7 @@
     public final void rule__DefOperationCS__Group_7__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5123:1: ( rule__DefOperationCS__Group_7__1__Impl )
             // InternalCompleteOCL.g:5124:2: rule__DefOperationCS__Group_7__1__Impl
@@ -16790,7 +16790,7 @@
     public final void rule__DefOperationCS__Group_7__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5134:1: ( ( ( rule__DefOperationCS__Group_7_1__0 )* ) )
             // InternalCompleteOCL.g:5135:1: ( ( rule__DefOperationCS__Group_7_1__0 )* )
@@ -16799,7 +16799,7 @@
             // InternalCompleteOCL.g:5136:1: ( rule__DefOperationCS__Group_7_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getGroup_7_1()); 
+               before(grammarAccess.getDefOperationCSAccess().getGroup_7_1());
             }
             // InternalCompleteOCL.g:5137:1: ( rule__DefOperationCS__Group_7_1__0 )*
             loop58:
@@ -16831,7 +16831,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getGroup_7_1()); 
+               after(grammarAccess.getDefOperationCSAccess().getGroup_7_1());
             }
 
             }
@@ -16859,7 +16859,7 @@
     public final void rule__DefOperationCS__Group_7_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5155:1: ( rule__DefOperationCS__Group_7_1__0__Impl rule__DefOperationCS__Group_7_1__1 )
             // InternalCompleteOCL.g:5156:2: rule__DefOperationCS__Group_7_1__0__Impl rule__DefOperationCS__Group_7_1__1
@@ -16897,7 +16897,7 @@
     public final void rule__DefOperationCS__Group_7_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5167:1: ( ( ',' ) )
             // InternalCompleteOCL.g:5168:1: ( ',' )
@@ -16906,11 +16906,11 @@
             // InternalCompleteOCL.g:5169:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getCommaKeyword_7_1_0()); 
+               before(grammarAccess.getDefOperationCSAccess().getCommaKeyword_7_1_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getCommaKeyword_7_1_0()); 
+               after(grammarAccess.getDefOperationCSAccess().getCommaKeyword_7_1_0());
             }
 
             }
@@ -16938,7 +16938,7 @@
     public final void rule__DefOperationCS__Group_7_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5186:1: ( rule__DefOperationCS__Group_7_1__1__Impl )
             // InternalCompleteOCL.g:5187:2: rule__DefOperationCS__Group_7_1__1__Impl
@@ -16971,7 +16971,7 @@
     public final void rule__DefOperationCS__Group_7_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5197:1: ( ( ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 ) ) )
             // InternalCompleteOCL.g:5198:1: ( ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 ) )
@@ -16980,7 +16980,7 @@
             // InternalCompleteOCL.g:5199:1: ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getOwnedParametersAssignment_7_1_1()); 
+               before(grammarAccess.getDefOperationCSAccess().getOwnedParametersAssignment_7_1_1());
             }
             // InternalCompleteOCL.g:5200:1: ( rule__DefOperationCS__OwnedParametersAssignment_7_1_1 )
             // InternalCompleteOCL.g:5200:2: rule__DefOperationCS__OwnedParametersAssignment_7_1_1
@@ -16994,7 +16994,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getOwnedParametersAssignment_7_1_1()); 
+               after(grammarAccess.getDefOperationCSAccess().getOwnedParametersAssignment_7_1_1());
             }
 
             }
@@ -17022,7 +17022,7 @@
     public final void rule__DefParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5218:1: ( rule__DefParameterCS__Group__0__Impl rule__DefParameterCS__Group__1 )
             // InternalCompleteOCL.g:5219:2: rule__DefParameterCS__Group__0__Impl rule__DefParameterCS__Group__1
@@ -17060,7 +17060,7 @@
     public final void rule__DefParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5230:1: ( ( ( rule__DefParameterCS__NameAssignment_0 ) ) )
             // InternalCompleteOCL.g:5231:1: ( ( rule__DefParameterCS__NameAssignment_0 ) )
@@ -17069,7 +17069,7 @@
             // InternalCompleteOCL.g:5232:1: ( rule__DefParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefParameterCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getDefParameterCSAccess().getNameAssignment_0());
             }
             // InternalCompleteOCL.g:5233:1: ( rule__DefParameterCS__NameAssignment_0 )
             // InternalCompleteOCL.g:5233:2: rule__DefParameterCS__NameAssignment_0
@@ -17083,7 +17083,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefParameterCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getDefParameterCSAccess().getNameAssignment_0());
             }
 
             }
@@ -17111,7 +17111,7 @@
     public final void rule__DefParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5247:1: ( rule__DefParameterCS__Group__1__Impl rule__DefParameterCS__Group__2 )
             // InternalCompleteOCL.g:5248:2: rule__DefParameterCS__Group__1__Impl rule__DefParameterCS__Group__2
@@ -17149,7 +17149,7 @@
     public final void rule__DefParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5259:1: ( ( ':' ) )
             // InternalCompleteOCL.g:5260:1: ( ':' )
@@ -17158,11 +17158,11 @@
             // InternalCompleteOCL.g:5261:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefParameterCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getDefParameterCSAccess().getColonKeyword_1());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefParameterCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getDefParameterCSAccess().getColonKeyword_1());
             }
 
             }
@@ -17190,7 +17190,7 @@
     public final void rule__DefParameterCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5278:1: ( rule__DefParameterCS__Group__2__Impl )
             // InternalCompleteOCL.g:5279:2: rule__DefParameterCS__Group__2__Impl
@@ -17223,7 +17223,7 @@
     public final void rule__DefParameterCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5289:1: ( ( ( rule__DefParameterCS__OwnedTypeAssignment_2 ) ) )
             // InternalCompleteOCL.g:5290:1: ( ( rule__DefParameterCS__OwnedTypeAssignment_2 ) )
@@ -17232,7 +17232,7 @@
             // InternalCompleteOCL.g:5291:1: ( rule__DefParameterCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefParameterCSAccess().getOwnedTypeAssignment_2()); 
+               before(grammarAccess.getDefParameterCSAccess().getOwnedTypeAssignment_2());
             }
             // InternalCompleteOCL.g:5292:1: ( rule__DefParameterCS__OwnedTypeAssignment_2 )
             // InternalCompleteOCL.g:5292:2: rule__DefParameterCS__OwnedTypeAssignment_2
@@ -17246,7 +17246,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefParameterCSAccess().getOwnedTypeAssignment_2()); 
+               after(grammarAccess.getDefParameterCSAccess().getOwnedTypeAssignment_2());
             }
 
             }
@@ -17274,7 +17274,7 @@
     public final void rule__DefPropertyCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5312:1: ( rule__DefPropertyCS__Group__0__Impl rule__DefPropertyCS__Group__1 )
             // InternalCompleteOCL.g:5313:2: rule__DefPropertyCS__Group__0__Impl rule__DefPropertyCS__Group__1
@@ -17312,7 +17312,7 @@
     public final void rule__DefPropertyCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5324:1: ( ( ( rule__DefPropertyCS__IsStaticAssignment_0 )? ) )
             // InternalCompleteOCL.g:5325:1: ( ( rule__DefPropertyCS__IsStaticAssignment_0 )? )
@@ -17321,7 +17321,7 @@
             // InternalCompleteOCL.g:5326:1: ( rule__DefPropertyCS__IsStaticAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getIsStaticAssignment_0()); 
+               before(grammarAccess.getDefPropertyCSAccess().getIsStaticAssignment_0());
             }
             // InternalCompleteOCL.g:5327:1: ( rule__DefPropertyCS__IsStaticAssignment_0 )?
             int alt59=2;
@@ -17346,7 +17346,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getIsStaticAssignment_0()); 
+               after(grammarAccess.getDefPropertyCSAccess().getIsStaticAssignment_0());
             }
 
             }
@@ -17374,7 +17374,7 @@
     public final void rule__DefPropertyCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5341:1: ( rule__DefPropertyCS__Group__1__Impl rule__DefPropertyCS__Group__2 )
             // InternalCompleteOCL.g:5342:2: rule__DefPropertyCS__Group__1__Impl rule__DefPropertyCS__Group__2
@@ -17412,7 +17412,7 @@
     public final void rule__DefPropertyCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5353:1: ( ( 'def' ) )
             // InternalCompleteOCL.g:5354:1: ( 'def' )
@@ -17421,11 +17421,11 @@
             // InternalCompleteOCL.g:5355:1: 'def'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getDefKeyword_1()); 
+               before(grammarAccess.getDefPropertyCSAccess().getDefKeyword_1());
             }
             match(input,65,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getDefKeyword_1()); 
+               after(grammarAccess.getDefPropertyCSAccess().getDefKeyword_1());
             }
 
             }
@@ -17453,7 +17453,7 @@
     public final void rule__DefPropertyCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5372:1: ( rule__DefPropertyCS__Group__2__Impl rule__DefPropertyCS__Group__3 )
             // InternalCompleteOCL.g:5373:2: rule__DefPropertyCS__Group__2__Impl rule__DefPropertyCS__Group__3
@@ -17491,7 +17491,7 @@
     public final void rule__DefPropertyCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5384:1: ( ( ( ruleUnrestrictedName )? ) )
             // InternalCompleteOCL.g:5385:1: ( ( ruleUnrestrictedName )? )
@@ -17500,7 +17500,7 @@
             // InternalCompleteOCL.g:5386:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getUnrestrictedNameParserRuleCall_2()); 
+               before(grammarAccess.getDefPropertyCSAccess().getUnrestrictedNameParserRuleCall_2());
             }
             // InternalCompleteOCL.g:5387:1: ( ruleUnrestrictedName )?
             int alt60=2;
@@ -17525,7 +17525,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getUnrestrictedNameParserRuleCall_2()); 
+               after(grammarAccess.getDefPropertyCSAccess().getUnrestrictedNameParserRuleCall_2());
             }
 
             }
@@ -17553,7 +17553,7 @@
     public final void rule__DefPropertyCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5401:1: ( rule__DefPropertyCS__Group__3__Impl rule__DefPropertyCS__Group__4 )
             // InternalCompleteOCL.g:5402:2: rule__DefPropertyCS__Group__3__Impl rule__DefPropertyCS__Group__4
@@ -17591,7 +17591,7 @@
     public final void rule__DefPropertyCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5413:1: ( ( ':' ) )
             // InternalCompleteOCL.g:5414:1: ( ':' )
@@ -17600,11 +17600,11 @@
             // InternalCompleteOCL.g:5415:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getColonKeyword_3()); 
+               before(grammarAccess.getDefPropertyCSAccess().getColonKeyword_3());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getColonKeyword_3()); 
+               after(grammarAccess.getDefPropertyCSAccess().getColonKeyword_3());
             }
 
             }
@@ -17632,7 +17632,7 @@
     public final void rule__DefPropertyCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5432:1: ( rule__DefPropertyCS__Group__4__Impl rule__DefPropertyCS__Group__5 )
             // InternalCompleteOCL.g:5433:2: rule__DefPropertyCS__Group__4__Impl rule__DefPropertyCS__Group__5
@@ -17670,7 +17670,7 @@
     public final void rule__DefPropertyCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5444:1: ( ( ( rule__DefPropertyCS__NameAssignment_4 ) ) )
             // InternalCompleteOCL.g:5445:1: ( ( rule__DefPropertyCS__NameAssignment_4 ) )
@@ -17679,7 +17679,7 @@
             // InternalCompleteOCL.g:5446:1: ( rule__DefPropertyCS__NameAssignment_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getNameAssignment_4()); 
+               before(grammarAccess.getDefPropertyCSAccess().getNameAssignment_4());
             }
             // InternalCompleteOCL.g:5447:1: ( rule__DefPropertyCS__NameAssignment_4 )
             // InternalCompleteOCL.g:5447:2: rule__DefPropertyCS__NameAssignment_4
@@ -17693,7 +17693,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getNameAssignment_4()); 
+               after(grammarAccess.getDefPropertyCSAccess().getNameAssignment_4());
             }
 
             }
@@ -17721,7 +17721,7 @@
     public final void rule__DefPropertyCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5461:1: ( rule__DefPropertyCS__Group__5__Impl rule__DefPropertyCS__Group__6 )
             // InternalCompleteOCL.g:5462:2: rule__DefPropertyCS__Group__5__Impl rule__DefPropertyCS__Group__6
@@ -17759,7 +17759,7 @@
     public final void rule__DefPropertyCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5473:1: ( ( ':' ) )
             // InternalCompleteOCL.g:5474:1: ( ':' )
@@ -17768,11 +17768,11 @@
             // InternalCompleteOCL.g:5475:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getColonKeyword_5()); 
+               before(grammarAccess.getDefPropertyCSAccess().getColonKeyword_5());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getColonKeyword_5()); 
+               after(grammarAccess.getDefPropertyCSAccess().getColonKeyword_5());
             }
 
             }
@@ -17800,7 +17800,7 @@
     public final void rule__DefPropertyCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5492:1: ( rule__DefPropertyCS__Group__6__Impl rule__DefPropertyCS__Group__7 )
             // InternalCompleteOCL.g:5493:2: rule__DefPropertyCS__Group__6__Impl rule__DefPropertyCS__Group__7
@@ -17838,7 +17838,7 @@
     public final void rule__DefPropertyCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5504:1: ( ( ( rule__DefPropertyCS__OwnedTypeAssignment_6 ) ) )
             // InternalCompleteOCL.g:5505:1: ( ( rule__DefPropertyCS__OwnedTypeAssignment_6 ) )
@@ -17847,7 +17847,7 @@
             // InternalCompleteOCL.g:5506:1: ( rule__DefPropertyCS__OwnedTypeAssignment_6 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getOwnedTypeAssignment_6()); 
+               before(grammarAccess.getDefPropertyCSAccess().getOwnedTypeAssignment_6());
             }
             // InternalCompleteOCL.g:5507:1: ( rule__DefPropertyCS__OwnedTypeAssignment_6 )
             // InternalCompleteOCL.g:5507:2: rule__DefPropertyCS__OwnedTypeAssignment_6
@@ -17861,7 +17861,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getOwnedTypeAssignment_6()); 
+               after(grammarAccess.getDefPropertyCSAccess().getOwnedTypeAssignment_6());
             }
 
             }
@@ -17889,7 +17889,7 @@
     public final void rule__DefPropertyCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5521:1: ( rule__DefPropertyCS__Group__7__Impl rule__DefPropertyCS__Group__8 )
             // InternalCompleteOCL.g:5522:2: rule__DefPropertyCS__Group__7__Impl rule__DefPropertyCS__Group__8
@@ -17927,7 +17927,7 @@
     public final void rule__DefPropertyCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5533:1: ( ( '=' ) )
             // InternalCompleteOCL.g:5534:1: ( '=' )
@@ -17936,11 +17936,11 @@
             // InternalCompleteOCL.g:5535:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getEqualsSignKeyword_7()); 
+               before(grammarAccess.getDefPropertyCSAccess().getEqualsSignKeyword_7());
             }
             match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getEqualsSignKeyword_7()); 
+               after(grammarAccess.getDefPropertyCSAccess().getEqualsSignKeyword_7());
             }
 
             }
@@ -17968,7 +17968,7 @@
     public final void rule__DefPropertyCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5552:1: ( rule__DefPropertyCS__Group__8__Impl )
             // InternalCompleteOCL.g:5553:2: rule__DefPropertyCS__Group__8__Impl
@@ -18001,7 +18001,7 @@
     public final void rule__DefPropertyCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5563:1: ( ( ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 ) ) )
             // InternalCompleteOCL.g:5564:1: ( ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 ) )
@@ -18010,7 +18010,7 @@
             // InternalCompleteOCL.g:5565:1: ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationAssignment_8()); 
+               before(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationAssignment_8());
             }
             // InternalCompleteOCL.g:5566:1: ( rule__DefPropertyCS__OwnedSpecificationAssignment_8 )
             // InternalCompleteOCL.g:5566:2: rule__DefPropertyCS__OwnedSpecificationAssignment_8
@@ -18024,7 +18024,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationAssignment_8()); 
+               after(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationAssignment_8());
             }
 
             }
@@ -18052,7 +18052,7 @@
     public final void rule__ImportCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5598:1: ( rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 )
             // InternalCompleteOCL.g:5599:2: rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1
@@ -18090,7 +18090,7 @@
     public final void rule__ImportCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5610:1: ( ( ( rule__ImportCS__Alternatives_0 ) ) )
             // InternalCompleteOCL.g:5611:1: ( ( rule__ImportCS__Alternatives_0 ) )
@@ -18099,7 +18099,7 @@
             // InternalCompleteOCL.g:5612:1: ( rule__ImportCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getAlternatives_0()); 
+               before(grammarAccess.getImportCSAccess().getAlternatives_0());
             }
             // InternalCompleteOCL.g:5613:1: ( rule__ImportCS__Alternatives_0 )
             // InternalCompleteOCL.g:5613:2: rule__ImportCS__Alternatives_0
@@ -18113,7 +18113,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getAlternatives_0()); 
+               after(grammarAccess.getImportCSAccess().getAlternatives_0());
             }
 
             }
@@ -18141,7 +18141,7 @@
     public final void rule__ImportCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5627:1: ( rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 )
             // InternalCompleteOCL.g:5628:2: rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2
@@ -18179,7 +18179,7 @@
     public final void rule__ImportCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5639:1: ( ( ( rule__ImportCS__Group_1__0 )? ) )
             // InternalCompleteOCL.g:5640:1: ( ( rule__ImportCS__Group_1__0 )? )
@@ -18188,7 +18188,7 @@
             // InternalCompleteOCL.g:5641:1: ( rule__ImportCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getGroup_1()); 
+               before(grammarAccess.getImportCSAccess().getGroup_1());
             }
             // InternalCompleteOCL.g:5642:1: ( rule__ImportCS__Group_1__0 )?
             int alt61=2;
@@ -18224,7 +18224,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getGroup_1()); 
+               after(grammarAccess.getImportCSAccess().getGroup_1());
             }
 
             }
@@ -18252,7 +18252,7 @@
     public final void rule__ImportCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5656:1: ( rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 )
             // InternalCompleteOCL.g:5657:2: rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3
@@ -18290,7 +18290,7 @@
     public final void rule__ImportCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5668:1: ( ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) )
             // InternalCompleteOCL.g:5669:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
@@ -18299,7 +18299,7 @@
             // InternalCompleteOCL.g:5670:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2()); 
+               before(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2());
             }
             // InternalCompleteOCL.g:5671:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
             // InternalCompleteOCL.g:5671:2: rule__ImportCS__OwnedPathNameAssignment_2
@@ -18313,7 +18313,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2()); 
+               after(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2());
             }
 
             }
@@ -18341,7 +18341,7 @@
     public final void rule__ImportCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5685:1: ( rule__ImportCS__Group__3__Impl )
             // InternalCompleteOCL.g:5686:2: rule__ImportCS__Group__3__Impl
@@ -18374,7 +18374,7 @@
     public final void rule__ImportCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5696:1: ( ( ( rule__ImportCS__IsAllAssignment_3 )? ) )
             // InternalCompleteOCL.g:5697:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
@@ -18383,7 +18383,7 @@
             // InternalCompleteOCL.g:5698:1: ( rule__ImportCS__IsAllAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getIsAllAssignment_3()); 
+               before(grammarAccess.getImportCSAccess().getIsAllAssignment_3());
             }
             // InternalCompleteOCL.g:5699:1: ( rule__ImportCS__IsAllAssignment_3 )?
             int alt62=2;
@@ -18408,7 +18408,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getIsAllAssignment_3()); 
+               after(grammarAccess.getImportCSAccess().getIsAllAssignment_3());
             }
 
             }
@@ -18436,7 +18436,7 @@
     public final void rule__ImportCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5721:1: ( rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 )
             // InternalCompleteOCL.g:5722:2: rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1
@@ -18474,7 +18474,7 @@
     public final void rule__ImportCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5733:1: ( ( ( rule__ImportCS__NameAssignment_1_0 ) ) )
             // InternalCompleteOCL.g:5734:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
@@ -18483,7 +18483,7 @@
             // InternalCompleteOCL.g:5735:1: ( rule__ImportCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getNameAssignment_1_0()); 
+               before(grammarAccess.getImportCSAccess().getNameAssignment_1_0());
             }
             // InternalCompleteOCL.g:5736:1: ( rule__ImportCS__NameAssignment_1_0 )
             // InternalCompleteOCL.g:5736:2: rule__ImportCS__NameAssignment_1_0
@@ -18497,7 +18497,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getNameAssignment_1_0()); 
+               after(grammarAccess.getImportCSAccess().getNameAssignment_1_0());
             }
 
             }
@@ -18525,7 +18525,7 @@
     public final void rule__ImportCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5750:1: ( rule__ImportCS__Group_1__1__Impl )
             // InternalCompleteOCL.g:5751:2: rule__ImportCS__Group_1__1__Impl
@@ -18558,7 +18558,7 @@
     public final void rule__ImportCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5761:1: ( ( ':' ) )
             // InternalCompleteOCL.g:5762:1: ( ':' )
@@ -18567,11 +18567,11 @@
             // InternalCompleteOCL.g:5763:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getColonKeyword_1_1()); 
+               before(grammarAccess.getImportCSAccess().getColonKeyword_1_1());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getColonKeyword_1_1()); 
+               after(grammarAccess.getImportCSAccess().getColonKeyword_1_1());
             }
 
             }
@@ -18599,7 +18599,7 @@
     public final void rule__OperationContextDeclCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5784:1: ( rule__OperationContextDeclCS__Group__0__Impl rule__OperationContextDeclCS__Group__1 )
             // InternalCompleteOCL.g:5785:2: rule__OperationContextDeclCS__Group__0__Impl rule__OperationContextDeclCS__Group__1
@@ -18637,7 +18637,7 @@
     public final void rule__OperationContextDeclCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5796:1: ( ( 'context' ) )
             // InternalCompleteOCL.g:5797:1: ( 'context' )
@@ -18646,11 +18646,11 @@
             // InternalCompleteOCL.g:5798:1: 'context'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getContextKeyword_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getContextKeyword_0());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getContextKeyword_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getContextKeyword_0());
             }
 
             }
@@ -18678,7 +18678,7 @@
     public final void rule__OperationContextDeclCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5815:1: ( rule__OperationContextDeclCS__Group__1__Impl rule__OperationContextDeclCS__Group__2 )
             // InternalCompleteOCL.g:5816:2: rule__OperationContextDeclCS__Group__1__Impl rule__OperationContextDeclCS__Group__2
@@ -18716,7 +18716,7 @@
     public final void rule__OperationContextDeclCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5827:1: ( ( ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )? ) )
             // InternalCompleteOCL.g:5828:1: ( ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )? )
@@ -18725,7 +18725,7 @@
             // InternalCompleteOCL.g:5829:1: ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureAssignment_1()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureAssignment_1());
             }
             // InternalCompleteOCL.g:5830:1: ( rule__OperationContextDeclCS__OwnedSignatureAssignment_1 )?
             int alt63=2;
@@ -18750,7 +18750,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureAssignment_1()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureAssignment_1());
             }
 
             }
@@ -18778,7 +18778,7 @@
     public final void rule__OperationContextDeclCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5844:1: ( rule__OperationContextDeclCS__Group__2__Impl rule__OperationContextDeclCS__Group__3 )
             // InternalCompleteOCL.g:5845:2: rule__OperationContextDeclCS__Group__2__Impl rule__OperationContextDeclCS__Group__3
@@ -18816,7 +18816,7 @@
     public final void rule__OperationContextDeclCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5856:1: ( ( ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 ) ) )
             // InternalCompleteOCL.g:5857:1: ( ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 ) )
@@ -18825,7 +18825,7 @@
             // InternalCompleteOCL.g:5858:1: ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNameAssignment_2()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNameAssignment_2());
             }
             // InternalCompleteOCL.g:5859:1: ( rule__OperationContextDeclCS__OwnedPathNameAssignment_2 )
             // InternalCompleteOCL.g:5859:2: rule__OperationContextDeclCS__OwnedPathNameAssignment_2
@@ -18839,7 +18839,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNameAssignment_2()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNameAssignment_2());
             }
 
             }
@@ -18867,7 +18867,7 @@
     public final void rule__OperationContextDeclCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5873:1: ( rule__OperationContextDeclCS__Group__3__Impl rule__OperationContextDeclCS__Group__4 )
             // InternalCompleteOCL.g:5874:2: rule__OperationContextDeclCS__Group__3__Impl rule__OperationContextDeclCS__Group__4
@@ -18905,7 +18905,7 @@
     public final void rule__OperationContextDeclCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5885:1: ( ( '(' ) )
             // InternalCompleteOCL.g:5886:1: ( '(' )
@@ -18914,11 +18914,11 @@
             // InternalCompleteOCL.g:5887:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getLeftParenthesisKeyword_3()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getLeftParenthesisKeyword_3());
             }
             match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getLeftParenthesisKeyword_3()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getLeftParenthesisKeyword_3());
             }
 
             }
@@ -18946,7 +18946,7 @@
     public final void rule__OperationContextDeclCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5904:1: ( rule__OperationContextDeclCS__Group__4__Impl rule__OperationContextDeclCS__Group__5 )
             // InternalCompleteOCL.g:5905:2: rule__OperationContextDeclCS__Group__4__Impl rule__OperationContextDeclCS__Group__5
@@ -18984,7 +18984,7 @@
     public final void rule__OperationContextDeclCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5916:1: ( ( ( rule__OperationContextDeclCS__Group_4__0 )? ) )
             // InternalCompleteOCL.g:5917:1: ( ( rule__OperationContextDeclCS__Group_4__0 )? )
@@ -18993,7 +18993,7 @@
             // InternalCompleteOCL.g:5918:1: ( rule__OperationContextDeclCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getGroup_4()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getGroup_4());
             }
             // InternalCompleteOCL.g:5919:1: ( rule__OperationContextDeclCS__Group_4__0 )?
             int alt64=2;
@@ -19018,7 +19018,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getGroup_4()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getGroup_4());
             }
 
             }
@@ -19046,7 +19046,7 @@
     public final void rule__OperationContextDeclCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5933:1: ( rule__OperationContextDeclCS__Group__5__Impl rule__OperationContextDeclCS__Group__6 )
             // InternalCompleteOCL.g:5934:2: rule__OperationContextDeclCS__Group__5__Impl rule__OperationContextDeclCS__Group__6
@@ -19084,7 +19084,7 @@
     public final void rule__OperationContextDeclCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5945:1: ( ( ')' ) )
             // InternalCompleteOCL.g:5946:1: ( ')' )
@@ -19093,11 +19093,11 @@
             // InternalCompleteOCL.g:5947:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getRightParenthesisKeyword_5()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getRightParenthesisKeyword_5());
             }
             match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getRightParenthesisKeyword_5()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getRightParenthesisKeyword_5());
             }
 
             }
@@ -19125,7 +19125,7 @@
     public final void rule__OperationContextDeclCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5964:1: ( rule__OperationContextDeclCS__Group__6__Impl rule__OperationContextDeclCS__Group__7 )
             // InternalCompleteOCL.g:5965:2: rule__OperationContextDeclCS__Group__6__Impl rule__OperationContextDeclCS__Group__7
@@ -19163,7 +19163,7 @@
     public final void rule__OperationContextDeclCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5976:1: ( ( ':' ) )
             // InternalCompleteOCL.g:5977:1: ( ':' )
@@ -19172,11 +19172,11 @@
             // InternalCompleteOCL.g:5978:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_6()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_6());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_6()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_6());
             }
 
             }
@@ -19204,7 +19204,7 @@
     public final void rule__OperationContextDeclCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:5995:1: ( rule__OperationContextDeclCS__Group__7__Impl rule__OperationContextDeclCS__Group__8 )
             // InternalCompleteOCL.g:5996:2: rule__OperationContextDeclCS__Group__7__Impl rule__OperationContextDeclCS__Group__8
@@ -19242,7 +19242,7 @@
     public final void rule__OperationContextDeclCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6007:1: ( ( ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )? ) )
             // InternalCompleteOCL.g:6008:1: ( ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )? )
@@ -19251,7 +19251,7 @@
             // InternalCompleteOCL.g:6009:1: ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeAssignment_7()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeAssignment_7());
             }
             // InternalCompleteOCL.g:6010:1: ( rule__OperationContextDeclCS__OwnedTypeAssignment_7 )?
             int alt65=2;
@@ -19276,7 +19276,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeAssignment_7()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeAssignment_7());
             }
 
             }
@@ -19304,7 +19304,7 @@
     public final void rule__OperationContextDeclCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6024:1: ( rule__OperationContextDeclCS__Group__8__Impl )
             // InternalCompleteOCL.g:6025:2: rule__OperationContextDeclCS__Group__8__Impl
@@ -19337,7 +19337,7 @@
     public final void rule__OperationContextDeclCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6035:1: ( ( ( rule__OperationContextDeclCS__Alternatives_8 )* ) )
             // InternalCompleteOCL.g:6036:1: ( ( rule__OperationContextDeclCS__Alternatives_8 )* )
@@ -19346,7 +19346,7 @@
             // InternalCompleteOCL.g:6037:1: ( rule__OperationContextDeclCS__Alternatives_8 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getAlternatives_8()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getAlternatives_8());
             }
             // InternalCompleteOCL.g:6038:1: ( rule__OperationContextDeclCS__Alternatives_8 )*
             loop66:
@@ -19378,7 +19378,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getAlternatives_8()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getAlternatives_8());
             }
 
             }
@@ -19406,7 +19406,7 @@
     public final void rule__OperationContextDeclCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6070:1: ( rule__OperationContextDeclCS__Group_4__0__Impl rule__OperationContextDeclCS__Group_4__1 )
             // InternalCompleteOCL.g:6071:2: rule__OperationContextDeclCS__Group_4__0__Impl rule__OperationContextDeclCS__Group_4__1
@@ -19444,7 +19444,7 @@
     public final void rule__OperationContextDeclCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6082:1: ( ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 ) ) )
             // InternalCompleteOCL.g:6083:1: ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 ) )
@@ -19453,7 +19453,7 @@
             // InternalCompleteOCL.g:6084:1: ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersAssignment_4_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersAssignment_4_0());
             }
             // InternalCompleteOCL.g:6085:1: ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_0 )
             // InternalCompleteOCL.g:6085:2: rule__OperationContextDeclCS__OwnedParametersAssignment_4_0
@@ -19467,7 +19467,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersAssignment_4_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersAssignment_4_0());
             }
 
             }
@@ -19495,7 +19495,7 @@
     public final void rule__OperationContextDeclCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6099:1: ( rule__OperationContextDeclCS__Group_4__1__Impl )
             // InternalCompleteOCL.g:6100:2: rule__OperationContextDeclCS__Group_4__1__Impl
@@ -19528,7 +19528,7 @@
     public final void rule__OperationContextDeclCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6110:1: ( ( ( rule__OperationContextDeclCS__Group_4_1__0 )* ) )
             // InternalCompleteOCL.g:6111:1: ( ( rule__OperationContextDeclCS__Group_4_1__0 )* )
@@ -19537,7 +19537,7 @@
             // InternalCompleteOCL.g:6112:1: ( rule__OperationContextDeclCS__Group_4_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getGroup_4_1()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getGroup_4_1());
             }
             // InternalCompleteOCL.g:6113:1: ( rule__OperationContextDeclCS__Group_4_1__0 )*
             loop67:
@@ -19569,7 +19569,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getGroup_4_1()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getGroup_4_1());
             }
 
             }
@@ -19597,7 +19597,7 @@
     public final void rule__OperationContextDeclCS__Group_4_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6131:1: ( rule__OperationContextDeclCS__Group_4_1__0__Impl rule__OperationContextDeclCS__Group_4_1__1 )
             // InternalCompleteOCL.g:6132:2: rule__OperationContextDeclCS__Group_4_1__0__Impl rule__OperationContextDeclCS__Group_4_1__1
@@ -19635,7 +19635,7 @@
     public final void rule__OperationContextDeclCS__Group_4_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6143:1: ( ( ',' ) )
             // InternalCompleteOCL.g:6144:1: ( ',' )
@@ -19644,11 +19644,11 @@
             // InternalCompleteOCL.g:6145:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getCommaKeyword_4_1_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getCommaKeyword_4_1_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getCommaKeyword_4_1_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getCommaKeyword_4_1_0());
             }
 
             }
@@ -19676,7 +19676,7 @@
     public final void rule__OperationContextDeclCS__Group_4_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6162:1: ( rule__OperationContextDeclCS__Group_4_1__1__Impl )
             // InternalCompleteOCL.g:6163:2: rule__OperationContextDeclCS__Group_4_1__1__Impl
@@ -19709,7 +19709,7 @@
     public final void rule__OperationContextDeclCS__Group_4_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6173:1: ( ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 ) ) )
             // InternalCompleteOCL.g:6174:1: ( ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 ) )
@@ -19718,7 +19718,7 @@
             // InternalCompleteOCL.g:6175:1: ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersAssignment_4_1_1()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersAssignment_4_1_1());
             }
             // InternalCompleteOCL.g:6176:1: ( rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1 )
             // InternalCompleteOCL.g:6176:2: rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1
@@ -19732,7 +19732,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersAssignment_4_1_1()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersAssignment_4_1_1());
             }
 
             }
@@ -19760,7 +19760,7 @@
     public final void rule__OperationContextDeclCS__Group_8_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6194:1: ( rule__OperationContextDeclCS__Group_8_0__0__Impl rule__OperationContextDeclCS__Group_8_0__1 )
             // InternalCompleteOCL.g:6195:2: rule__OperationContextDeclCS__Group_8_0__0__Impl rule__OperationContextDeclCS__Group_8_0__1
@@ -19798,7 +19798,7 @@
     public final void rule__OperationContextDeclCS__Group_8_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6206:1: ( ( 'pre' ) )
             // InternalCompleteOCL.g:6207:1: ( 'pre' )
@@ -19807,11 +19807,11 @@
             // InternalCompleteOCL.g:6208:1: 'pre'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getPreKeyword_8_0_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getPreKeyword_8_0_0());
             }
             match(input,67,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getPreKeyword_8_0_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getPreKeyword_8_0_0());
             }
 
             }
@@ -19839,7 +19839,7 @@
     public final void rule__OperationContextDeclCS__Group_8_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6225:1: ( rule__OperationContextDeclCS__Group_8_0__1__Impl )
             // InternalCompleteOCL.g:6226:2: rule__OperationContextDeclCS__Group_8_0__1__Impl
@@ -19872,7 +19872,7 @@
     public final void rule__OperationContextDeclCS__Group_8_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6236:1: ( ( ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 ) ) )
             // InternalCompleteOCL.g:6237:1: ( ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 ) )
@@ -19881,7 +19881,7 @@
             // InternalCompleteOCL.g:6238:1: ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsAssignment_8_0_1()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsAssignment_8_0_1());
             }
             // InternalCompleteOCL.g:6239:1: ( rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1 )
             // InternalCompleteOCL.g:6239:2: rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1
@@ -19895,7 +19895,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsAssignment_8_0_1()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsAssignment_8_0_1());
             }
 
             }
@@ -19923,7 +19923,7 @@
     public final void rule__OperationContextDeclCS__Group_8_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6257:1: ( rule__OperationContextDeclCS__Group_8_1__0__Impl rule__OperationContextDeclCS__Group_8_1__1 )
             // InternalCompleteOCL.g:6258:2: rule__OperationContextDeclCS__Group_8_1__0__Impl rule__OperationContextDeclCS__Group_8_1__1
@@ -19961,7 +19961,7 @@
     public final void rule__OperationContextDeclCS__Group_8_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6269:1: ( ( 'post' ) )
             // InternalCompleteOCL.g:6270:1: ( 'post' )
@@ -19970,11 +19970,11 @@
             // InternalCompleteOCL.g:6271:1: 'post'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getPostKeyword_8_1_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getPostKeyword_8_1_0());
             }
             match(input,68,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getPostKeyword_8_1_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getPostKeyword_8_1_0());
             }
 
             }
@@ -20002,7 +20002,7 @@
     public final void rule__OperationContextDeclCS__Group_8_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6288:1: ( rule__OperationContextDeclCS__Group_8_1__1__Impl )
             // InternalCompleteOCL.g:6289:2: rule__OperationContextDeclCS__Group_8_1__1__Impl
@@ -20035,7 +20035,7 @@
     public final void rule__OperationContextDeclCS__Group_8_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6299:1: ( ( ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 ) ) )
             // InternalCompleteOCL.g:6300:1: ( ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 ) )
@@ -20044,7 +20044,7 @@
             // InternalCompleteOCL.g:6301:1: ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsAssignment_8_1_1()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsAssignment_8_1_1());
             }
             // InternalCompleteOCL.g:6302:1: ( rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1 )
             // InternalCompleteOCL.g:6302:2: rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1
@@ -20058,7 +20058,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsAssignment_8_1_1()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsAssignment_8_1_1());
             }
 
             }
@@ -20086,7 +20086,7 @@
     public final void rule__OperationContextDeclCS__Group_8_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6320:1: ( rule__OperationContextDeclCS__Group_8_2__0__Impl rule__OperationContextDeclCS__Group_8_2__1 )
             // InternalCompleteOCL.g:6321:2: rule__OperationContextDeclCS__Group_8_2__0__Impl rule__OperationContextDeclCS__Group_8_2__1
@@ -20124,7 +20124,7 @@
     public final void rule__OperationContextDeclCS__Group_8_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6332:1: ( ( 'body' ) )
             // InternalCompleteOCL.g:6333:1: ( 'body' )
@@ -20133,11 +20133,11 @@
             // InternalCompleteOCL.g:6334:1: 'body'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getBodyKeyword_8_2_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getBodyKeyword_8_2_0());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getBodyKeyword_8_2_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getBodyKeyword_8_2_0());
             }
 
             }
@@ -20165,7 +20165,7 @@
     public final void rule__OperationContextDeclCS__Group_8_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6351:1: ( rule__OperationContextDeclCS__Group_8_2__1__Impl rule__OperationContextDeclCS__Group_8_2__2 )
             // InternalCompleteOCL.g:6352:2: rule__OperationContextDeclCS__Group_8_2__1__Impl rule__OperationContextDeclCS__Group_8_2__2
@@ -20203,7 +20203,7 @@
     public final void rule__OperationContextDeclCS__Group_8_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6363:1: ( ( ( ruleUnrestrictedName )? ) )
             // InternalCompleteOCL.g:6364:1: ( ( ruleUnrestrictedName )? )
@@ -20212,7 +20212,7 @@
             // InternalCompleteOCL.g:6365:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getUnrestrictedNameParserRuleCall_8_2_1()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getUnrestrictedNameParserRuleCall_8_2_1());
             }
             // InternalCompleteOCL.g:6366:1: ( ruleUnrestrictedName )?
             int alt68=2;
@@ -20237,7 +20237,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getUnrestrictedNameParserRuleCall_8_2_1()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getUnrestrictedNameParserRuleCall_8_2_1());
             }
 
             }
@@ -20265,7 +20265,7 @@
     public final void rule__OperationContextDeclCS__Group_8_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6380:1: ( rule__OperationContextDeclCS__Group_8_2__2__Impl rule__OperationContextDeclCS__Group_8_2__3 )
             // InternalCompleteOCL.g:6381:2: rule__OperationContextDeclCS__Group_8_2__2__Impl rule__OperationContextDeclCS__Group_8_2__3
@@ -20303,7 +20303,7 @@
     public final void rule__OperationContextDeclCS__Group_8_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6392:1: ( ( ':' ) )
             // InternalCompleteOCL.g:6393:1: ( ':' )
@@ -20312,11 +20312,11 @@
             // InternalCompleteOCL.g:6394:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_8_2_2()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_8_2_2());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_8_2_2()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_8_2_2());
             }
 
             }
@@ -20344,7 +20344,7 @@
     public final void rule__OperationContextDeclCS__Group_8_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6411:1: ( rule__OperationContextDeclCS__Group_8_2__3__Impl )
             // InternalCompleteOCL.g:6412:2: rule__OperationContextDeclCS__Group_8_2__3__Impl
@@ -20377,7 +20377,7 @@
     public final void rule__OperationContextDeclCS__Group_8_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6422:1: ( ( ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 ) ) )
             // InternalCompleteOCL.g:6423:1: ( ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 ) )
@@ -20386,7 +20386,7 @@
             // InternalCompleteOCL.g:6424:1: ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesAssignment_8_2_3()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesAssignment_8_2_3());
             }
             // InternalCompleteOCL.g:6425:1: ( rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3 )
             // InternalCompleteOCL.g:6425:2: rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3
@@ -20400,7 +20400,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesAssignment_8_2_3()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesAssignment_8_2_3());
             }
 
             }
@@ -20428,7 +20428,7 @@
     public final void rule__PackageDeclarationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6447:1: ( rule__PackageDeclarationCS__Group__0__Impl rule__PackageDeclarationCS__Group__1 )
             // InternalCompleteOCL.g:6448:2: rule__PackageDeclarationCS__Group__0__Impl rule__PackageDeclarationCS__Group__1
@@ -20466,7 +20466,7 @@
     public final void rule__PackageDeclarationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6459:1: ( ( 'package' ) )
             // InternalCompleteOCL.g:6460:1: ( 'package' )
@@ -20475,11 +20475,11 @@
             // InternalCompleteOCL.g:6461:1: 'package'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageDeclarationCSAccess().getPackageKeyword_0()); 
+               before(grammarAccess.getPackageDeclarationCSAccess().getPackageKeyword_0());
             }
             match(input,70,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageDeclarationCSAccess().getPackageKeyword_0()); 
+               after(grammarAccess.getPackageDeclarationCSAccess().getPackageKeyword_0());
             }
 
             }
@@ -20507,7 +20507,7 @@
     public final void rule__PackageDeclarationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6478:1: ( rule__PackageDeclarationCS__Group__1__Impl rule__PackageDeclarationCS__Group__2 )
             // InternalCompleteOCL.g:6479:2: rule__PackageDeclarationCS__Group__1__Impl rule__PackageDeclarationCS__Group__2
@@ -20545,7 +20545,7 @@
     public final void rule__PackageDeclarationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6490:1: ( ( ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 ) ) )
             // InternalCompleteOCL.g:6491:1: ( ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 ) )
@@ -20554,7 +20554,7 @@
             // InternalCompleteOCL.g:6492:1: ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNameAssignment_1()); 
+               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNameAssignment_1());
             }
             // InternalCompleteOCL.g:6493:1: ( rule__PackageDeclarationCS__OwnedPathNameAssignment_1 )
             // InternalCompleteOCL.g:6493:2: rule__PackageDeclarationCS__OwnedPathNameAssignment_1
@@ -20568,7 +20568,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNameAssignment_1()); 
+               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNameAssignment_1());
             }
 
             }
@@ -20596,7 +20596,7 @@
     public final void rule__PackageDeclarationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6507:1: ( rule__PackageDeclarationCS__Group__2__Impl rule__PackageDeclarationCS__Group__3 )
             // InternalCompleteOCL.g:6508:2: rule__PackageDeclarationCS__Group__2__Impl rule__PackageDeclarationCS__Group__3
@@ -20634,7 +20634,7 @@
     public final void rule__PackageDeclarationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6519:1: ( ( ( rule__PackageDeclarationCS__Group_2__0 )* ) )
             // InternalCompleteOCL.g:6520:1: ( ( rule__PackageDeclarationCS__Group_2__0 )* )
@@ -20643,7 +20643,7 @@
             // InternalCompleteOCL.g:6521:1: ( rule__PackageDeclarationCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageDeclarationCSAccess().getGroup_2()); 
+               before(grammarAccess.getPackageDeclarationCSAccess().getGroup_2());
             }
             // InternalCompleteOCL.g:6522:1: ( rule__PackageDeclarationCS__Group_2__0 )*
             loop69:
@@ -20675,7 +20675,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageDeclarationCSAccess().getGroup_2()); 
+               after(grammarAccess.getPackageDeclarationCSAccess().getGroup_2());
             }
 
             }
@@ -20703,7 +20703,7 @@
     public final void rule__PackageDeclarationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6536:1: ( rule__PackageDeclarationCS__Group__3__Impl rule__PackageDeclarationCS__Group__4 )
             // InternalCompleteOCL.g:6537:2: rule__PackageDeclarationCS__Group__3__Impl rule__PackageDeclarationCS__Group__4
@@ -20741,7 +20741,7 @@
     public final void rule__PackageDeclarationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6548:1: ( ( ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )* ) )
             // InternalCompleteOCL.g:6549:1: ( ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )* )
@@ -20750,7 +20750,7 @@
             // InternalCompleteOCL.g:6550:1: ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsAssignment_3()); 
+               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsAssignment_3());
             }
             // InternalCompleteOCL.g:6551:1: ( rule__PackageDeclarationCS__OwnedContextsAssignment_3 )*
             loop70:
@@ -20782,7 +20782,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsAssignment_3()); 
+               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsAssignment_3());
             }
 
             }
@@ -20810,7 +20810,7 @@
     public final void rule__PackageDeclarationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6565:1: ( rule__PackageDeclarationCS__Group__4__Impl )
             // InternalCompleteOCL.g:6566:2: rule__PackageDeclarationCS__Group__4__Impl
@@ -20843,7 +20843,7 @@
     public final void rule__PackageDeclarationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6576:1: ( ( 'endpackage' ) )
             // InternalCompleteOCL.g:6577:1: ( 'endpackage' )
@@ -20852,11 +20852,11 @@
             // InternalCompleteOCL.g:6578:1: 'endpackage'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageDeclarationCSAccess().getEndpackageKeyword_4()); 
+               before(grammarAccess.getPackageDeclarationCSAccess().getEndpackageKeyword_4());
             }
             match(input,71,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageDeclarationCSAccess().getEndpackageKeyword_4()); 
+               after(grammarAccess.getPackageDeclarationCSAccess().getEndpackageKeyword_4());
             }
 
             }
@@ -20884,7 +20884,7 @@
     public final void rule__PackageDeclarationCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6605:1: ( rule__PackageDeclarationCS__Group_2__0__Impl rule__PackageDeclarationCS__Group_2__1 )
             // InternalCompleteOCL.g:6606:2: rule__PackageDeclarationCS__Group_2__0__Impl rule__PackageDeclarationCS__Group_2__1
@@ -20922,7 +20922,7 @@
     public final void rule__PackageDeclarationCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6617:1: ( ( 'inv' ) )
             // InternalCompleteOCL.g:6618:1: ( 'inv' )
@@ -20931,11 +20931,11 @@
             // InternalCompleteOCL.g:6619:1: 'inv'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageDeclarationCSAccess().getInvKeyword_2_0()); 
+               before(grammarAccess.getPackageDeclarationCSAccess().getInvKeyword_2_0());
             }
             match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageDeclarationCSAccess().getInvKeyword_2_0()); 
+               after(grammarAccess.getPackageDeclarationCSAccess().getInvKeyword_2_0());
             }
 
             }
@@ -20963,7 +20963,7 @@
     public final void rule__PackageDeclarationCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6636:1: ( rule__PackageDeclarationCS__Group_2__1__Impl )
             // InternalCompleteOCL.g:6637:2: rule__PackageDeclarationCS__Group_2__1__Impl
@@ -20996,7 +20996,7 @@
     public final void rule__PackageDeclarationCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6647:1: ( ( ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 ) ) )
             // InternalCompleteOCL.g:6648:1: ( ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 ) )
@@ -21005,7 +21005,7 @@
             // InternalCompleteOCL.g:6649:1: ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsAssignment_2_1()); 
+               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsAssignment_2_1());
             }
             // InternalCompleteOCL.g:6650:1: ( rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1 )
             // InternalCompleteOCL.g:6650:2: rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1
@@ -21019,7 +21019,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsAssignment_2_1()); 
+               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsAssignment_2_1());
             }
 
             }
@@ -21047,7 +21047,7 @@
     public final void rule__ParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6668:1: ( rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 )
             // InternalCompleteOCL.g:6669:2: rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1
@@ -21085,7 +21085,7 @@
     public final void rule__ParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6680:1: ( ( ( rule__ParameterCS__Group_0__0 )? ) )
             // InternalCompleteOCL.g:6681:1: ( ( rule__ParameterCS__Group_0__0 )? )
@@ -21094,7 +21094,7 @@
             // InternalCompleteOCL.g:6682:1: ( rule__ParameterCS__Group_0__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getGroup_0()); 
+               before(grammarAccess.getParameterCSAccess().getGroup_0());
             }
             // InternalCompleteOCL.g:6683:1: ( rule__ParameterCS__Group_0__0 )?
             int alt71=2;
@@ -21162,7 +21162,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getGroup_0()); 
+               after(grammarAccess.getParameterCSAccess().getGroup_0());
             }
 
             }
@@ -21190,7 +21190,7 @@
     public final void rule__ParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6697:1: ( rule__ParameterCS__Group__1__Impl )
             // InternalCompleteOCL.g:6698:2: rule__ParameterCS__Group__1__Impl
@@ -21223,7 +21223,7 @@
     public final void rule__ParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6708:1: ( ( ( rule__ParameterCS__OwnedTypeAssignment_1 ) ) )
             // InternalCompleteOCL.g:6709:1: ( ( rule__ParameterCS__OwnedTypeAssignment_1 ) )
@@ -21232,7 +21232,7 @@
             // InternalCompleteOCL.g:6710:1: ( rule__ParameterCS__OwnedTypeAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_1()); 
+               before(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_1());
             }
             // InternalCompleteOCL.g:6711:1: ( rule__ParameterCS__OwnedTypeAssignment_1 )
             // InternalCompleteOCL.g:6711:2: rule__ParameterCS__OwnedTypeAssignment_1
@@ -21246,7 +21246,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_1()); 
+               after(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_1());
             }
 
             }
@@ -21274,7 +21274,7 @@
     public final void rule__ParameterCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6729:1: ( rule__ParameterCS__Group_0__0__Impl rule__ParameterCS__Group_0__1 )
             // InternalCompleteOCL.g:6730:2: rule__ParameterCS__Group_0__0__Impl rule__ParameterCS__Group_0__1
@@ -21312,7 +21312,7 @@
     public final void rule__ParameterCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6741:1: ( ( ( rule__ParameterCS__NameAssignment_0_0 ) ) )
             // InternalCompleteOCL.g:6742:1: ( ( rule__ParameterCS__NameAssignment_0_0 ) )
@@ -21321,7 +21321,7 @@
             // InternalCompleteOCL.g:6743:1: ( rule__ParameterCS__NameAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getNameAssignment_0_0()); 
+               before(grammarAccess.getParameterCSAccess().getNameAssignment_0_0());
             }
             // InternalCompleteOCL.g:6744:1: ( rule__ParameterCS__NameAssignment_0_0 )
             // InternalCompleteOCL.g:6744:2: rule__ParameterCS__NameAssignment_0_0
@@ -21335,7 +21335,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getNameAssignment_0_0()); 
+               after(grammarAccess.getParameterCSAccess().getNameAssignment_0_0());
             }
 
             }
@@ -21363,7 +21363,7 @@
     public final void rule__ParameterCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6758:1: ( rule__ParameterCS__Group_0__1__Impl )
             // InternalCompleteOCL.g:6759:2: rule__ParameterCS__Group_0__1__Impl
@@ -21396,7 +21396,7 @@
     public final void rule__ParameterCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6769:1: ( ( ':' ) )
             // InternalCompleteOCL.g:6770:1: ( ':' )
@@ -21405,11 +21405,11 @@
             // InternalCompleteOCL.g:6771:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getColonKeyword_0_1()); 
+               before(grammarAccess.getParameterCSAccess().getColonKeyword_0_1());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getColonKeyword_0_1()); 
+               after(grammarAccess.getParameterCSAccess().getColonKeyword_0_1());
             }
 
             }
@@ -21437,7 +21437,7 @@
     public final void rule__PropertyContextDeclCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6792:1: ( rule__PropertyContextDeclCS__Group__0__Impl rule__PropertyContextDeclCS__Group__1 )
             // InternalCompleteOCL.g:6793:2: rule__PropertyContextDeclCS__Group__0__Impl rule__PropertyContextDeclCS__Group__1
@@ -21475,7 +21475,7 @@
     public final void rule__PropertyContextDeclCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6804:1: ( ( 'context' ) )
             // InternalCompleteOCL.g:6805:1: ( 'context' )
@@ -21484,11 +21484,11 @@
             // InternalCompleteOCL.g:6806:1: 'context'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getContextKeyword_0()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getContextKeyword_0());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getContextKeyword_0()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getContextKeyword_0());
             }
 
             }
@@ -21516,7 +21516,7 @@
     public final void rule__PropertyContextDeclCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6823:1: ( rule__PropertyContextDeclCS__Group__1__Impl rule__PropertyContextDeclCS__Group__2 )
             // InternalCompleteOCL.g:6824:2: rule__PropertyContextDeclCS__Group__1__Impl rule__PropertyContextDeclCS__Group__2
@@ -21554,7 +21554,7 @@
     public final void rule__PropertyContextDeclCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6835:1: ( ( ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 ) ) )
             // InternalCompleteOCL.g:6836:1: ( ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 ) )
@@ -21563,7 +21563,7 @@
             // InternalCompleteOCL.g:6837:1: ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNameAssignment_1()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNameAssignment_1());
             }
             // InternalCompleteOCL.g:6838:1: ( rule__PropertyContextDeclCS__OwnedPathNameAssignment_1 )
             // InternalCompleteOCL.g:6838:2: rule__PropertyContextDeclCS__OwnedPathNameAssignment_1
@@ -21577,7 +21577,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNameAssignment_1()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNameAssignment_1());
             }
 
             }
@@ -21605,7 +21605,7 @@
     public final void rule__PropertyContextDeclCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6852:1: ( rule__PropertyContextDeclCS__Group__2__Impl rule__PropertyContextDeclCS__Group__3 )
             // InternalCompleteOCL.g:6853:2: rule__PropertyContextDeclCS__Group__2__Impl rule__PropertyContextDeclCS__Group__3
@@ -21643,7 +21643,7 @@
     public final void rule__PropertyContextDeclCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6864:1: ( ( ':' ) )
             // InternalCompleteOCL.g:6865:1: ( ':' )
@@ -21652,11 +21652,11 @@
             // InternalCompleteOCL.g:6866:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_2()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_2());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_2()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_2());
             }
 
             }
@@ -21684,7 +21684,7 @@
     public final void rule__PropertyContextDeclCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6883:1: ( rule__PropertyContextDeclCS__Group__3__Impl rule__PropertyContextDeclCS__Group__4 )
             // InternalCompleteOCL.g:6884:2: rule__PropertyContextDeclCS__Group__3__Impl rule__PropertyContextDeclCS__Group__4
@@ -21722,7 +21722,7 @@
     public final void rule__PropertyContextDeclCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6895:1: ( ( ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 ) ) )
             // InternalCompleteOCL.g:6896:1: ( ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 ) )
@@ -21731,7 +21731,7 @@
             // InternalCompleteOCL.g:6897:1: ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeAssignment_3()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeAssignment_3());
             }
             // InternalCompleteOCL.g:6898:1: ( rule__PropertyContextDeclCS__OwnedTypeAssignment_3 )
             // InternalCompleteOCL.g:6898:2: rule__PropertyContextDeclCS__OwnedTypeAssignment_3
@@ -21745,7 +21745,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeAssignment_3()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeAssignment_3());
             }
 
             }
@@ -21773,7 +21773,7 @@
     public final void rule__PropertyContextDeclCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6912:1: ( rule__PropertyContextDeclCS__Group__4__Impl )
             // InternalCompleteOCL.g:6913:2: rule__PropertyContextDeclCS__Group__4__Impl
@@ -21806,7 +21806,7 @@
     public final void rule__PropertyContextDeclCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6923:1: ( ( ( rule__PropertyContextDeclCS__Alternatives_4 )* ) )
             // InternalCompleteOCL.g:6924:1: ( ( rule__PropertyContextDeclCS__Alternatives_4 )* )
@@ -21815,7 +21815,7 @@
             // InternalCompleteOCL.g:6925:1: ( rule__PropertyContextDeclCS__Alternatives_4 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getAlternatives_4()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getAlternatives_4());
             }
             // InternalCompleteOCL.g:6926:1: ( rule__PropertyContextDeclCS__Alternatives_4 )*
             loop72:
@@ -21847,7 +21847,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getAlternatives_4()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getAlternatives_4());
             }
 
             }
@@ -21875,7 +21875,7 @@
     public final void rule__PropertyContextDeclCS__Group_4_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6950:1: ( rule__PropertyContextDeclCS__Group_4_0__0__Impl rule__PropertyContextDeclCS__Group_4_0__1 )
             // InternalCompleteOCL.g:6951:2: rule__PropertyContextDeclCS__Group_4_0__0__Impl rule__PropertyContextDeclCS__Group_4_0__1
@@ -21913,7 +21913,7 @@
     public final void rule__PropertyContextDeclCS__Group_4_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6962:1: ( ( 'derive' ) )
             // InternalCompleteOCL.g:6963:1: ( 'derive' )
@@ -21922,11 +21922,11 @@
             // InternalCompleteOCL.g:6964:1: 'derive'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getDeriveKeyword_4_0_0()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getDeriveKeyword_4_0_0());
             }
             match(input,72,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getDeriveKeyword_4_0_0()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getDeriveKeyword_4_0_0());
             }
 
             }
@@ -21954,7 +21954,7 @@
     public final void rule__PropertyContextDeclCS__Group_4_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6981:1: ( rule__PropertyContextDeclCS__Group_4_0__1__Impl )
             // InternalCompleteOCL.g:6982:2: rule__PropertyContextDeclCS__Group_4_0__1__Impl
@@ -21987,7 +21987,7 @@
     public final void rule__PropertyContextDeclCS__Group_4_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:6992:1: ( ( ( rule__PropertyContextDeclCS__OwnedDerivedInvariantsAssignment_4_0_1 ) ) )
             // InternalCompleteOCL.g:6993:1: ( ( rule__PropertyContextDeclCS__OwnedDerivedInvariantsAssignment_4_0_1 ) )
@@ -21996,7 +21996,7 @@
             // InternalCompleteOCL.g:6994:1: ( rule__PropertyContextDeclCS__OwnedDerivedInvariantsAssignment_4_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDerivedInvariantsAssignment_4_0_1()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDerivedInvariantsAssignment_4_0_1());
             }
             // InternalCompleteOCL.g:6995:1: ( rule__PropertyContextDeclCS__OwnedDerivedInvariantsAssignment_4_0_1 )
             // InternalCompleteOCL.g:6995:2: rule__PropertyContextDeclCS__OwnedDerivedInvariantsAssignment_4_0_1
@@ -22010,7 +22010,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDerivedInvariantsAssignment_4_0_1()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDerivedInvariantsAssignment_4_0_1());
             }
 
             }
@@ -22038,7 +22038,7 @@
     public final void rule__PropertyContextDeclCS__Group_4_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7013:1: ( rule__PropertyContextDeclCS__Group_4_1__0__Impl rule__PropertyContextDeclCS__Group_4_1__1 )
             // InternalCompleteOCL.g:7014:2: rule__PropertyContextDeclCS__Group_4_1__0__Impl rule__PropertyContextDeclCS__Group_4_1__1
@@ -22076,7 +22076,7 @@
     public final void rule__PropertyContextDeclCS__Group_4_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7025:1: ( ( 'init' ) )
             // InternalCompleteOCL.g:7026:1: ( 'init' )
@@ -22085,11 +22085,11 @@
             // InternalCompleteOCL.g:7027:1: 'init'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getInitKeyword_4_1_0()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getInitKeyword_4_1_0());
             }
             match(input,73,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getInitKeyword_4_1_0()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getInitKeyword_4_1_0());
             }
 
             }
@@ -22117,7 +22117,7 @@
     public final void rule__PropertyContextDeclCS__Group_4_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7044:1: ( rule__PropertyContextDeclCS__Group_4_1__1__Impl rule__PropertyContextDeclCS__Group_4_1__2 )
             // InternalCompleteOCL.g:7045:2: rule__PropertyContextDeclCS__Group_4_1__1__Impl rule__PropertyContextDeclCS__Group_4_1__2
@@ -22155,7 +22155,7 @@
     public final void rule__PropertyContextDeclCS__Group_4_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7056:1: ( ( ':' ) )
             // InternalCompleteOCL.g:7057:1: ( ':' )
@@ -22164,11 +22164,11 @@
             // InternalCompleteOCL.g:7058:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_4_1_1()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_4_1_1());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_4_1_1()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_4_1_1());
             }
 
             }
@@ -22196,7 +22196,7 @@
     public final void rule__PropertyContextDeclCS__Group_4_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7075:1: ( rule__PropertyContextDeclCS__Group_4_1__2__Impl )
             // InternalCompleteOCL.g:7076:2: rule__PropertyContextDeclCS__Group_4_1__2__Impl
@@ -22229,7 +22229,7 @@
     public final void rule__PropertyContextDeclCS__Group_4_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7086:1: ( ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_2 ) ) )
             // InternalCompleteOCL.g:7087:1: ( ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_2 ) )
@@ -22238,7 +22238,7 @@
             // InternalCompleteOCL.g:7088:1: ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsAssignment_4_1_2()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsAssignment_4_1_2());
             }
             // InternalCompleteOCL.g:7089:1: ( rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_2 )
             // InternalCompleteOCL.g:7089:2: rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_2
@@ -22252,7 +22252,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsAssignment_4_1_2()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsAssignment_4_1_2());
             }
 
             }
@@ -22280,7 +22280,7 @@
     public final void rule__TemplateSignatureCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7109:1: ( rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1 )
             // InternalCompleteOCL.g:7110:2: rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1
@@ -22318,7 +22318,7 @@
     public final void rule__TemplateSignatureCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7121:1: ( ( '(' ) )
             // InternalCompleteOCL.g:7122:1: ( '(' )
@@ -22327,11 +22327,11 @@
             // InternalCompleteOCL.g:7123:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0());
             }
             match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0());
             }
 
             }
@@ -22359,7 +22359,7 @@
     public final void rule__TemplateSignatureCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7140:1: ( rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2 )
             // InternalCompleteOCL.g:7141:2: rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2
@@ -22397,7 +22397,7 @@
     public final void rule__TemplateSignatureCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7152:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) ) )
             // InternalCompleteOCL.g:7153:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) )
@@ -22406,7 +22406,7 @@
             // InternalCompleteOCL.g:7154:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_1()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_1());
             }
             // InternalCompleteOCL.g:7155:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 )
             // InternalCompleteOCL.g:7155:2: rule__TemplateSignatureCS__OwnedParametersAssignment_0_1
@@ -22420,7 +22420,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_1()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_1());
             }
 
             }
@@ -22448,7 +22448,7 @@
     public final void rule__TemplateSignatureCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7169:1: ( rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3 )
             // InternalCompleteOCL.g:7170:2: rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3
@@ -22486,7 +22486,7 @@
     public final void rule__TemplateSignatureCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7181:1: ( ( ( rule__TemplateSignatureCS__Group_0_2__0 )* ) )
             // InternalCompleteOCL.g:7182:1: ( ( rule__TemplateSignatureCS__Group_0_2__0 )* )
@@ -22495,7 +22495,7 @@
             // InternalCompleteOCL.g:7183:1: ( rule__TemplateSignatureCS__Group_0_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getGroup_0_2()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getGroup_0_2());
             }
             // InternalCompleteOCL.g:7184:1: ( rule__TemplateSignatureCS__Group_0_2__0 )*
             loop73:
@@ -22527,7 +22527,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getGroup_0_2()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getGroup_0_2());
             }
 
             }
@@ -22555,7 +22555,7 @@
     public final void rule__TemplateSignatureCS__Group_0__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7198:1: ( rule__TemplateSignatureCS__Group_0__3__Impl )
             // InternalCompleteOCL.g:7199:2: rule__TemplateSignatureCS__Group_0__3__Impl
@@ -22588,7 +22588,7 @@
     public final void rule__TemplateSignatureCS__Group_0__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7209:1: ( ( ')' ) )
             // InternalCompleteOCL.g:7210:1: ( ')' )
@@ -22597,11 +22597,11 @@
             // InternalCompleteOCL.g:7211:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3());
             }
             match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3());
             }
 
             }
@@ -22629,7 +22629,7 @@
     public final void rule__TemplateSignatureCS__Group_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7236:1: ( rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1 )
             // InternalCompleteOCL.g:7237:2: rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1
@@ -22667,7 +22667,7 @@
     public final void rule__TemplateSignatureCS__Group_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7248:1: ( ( ',' ) )
             // InternalCompleteOCL.g:7249:1: ( ',' )
@@ -22676,11 +22676,11 @@
             // InternalCompleteOCL.g:7250:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0());
             }
 
             }
@@ -22708,7 +22708,7 @@
     public final void rule__TemplateSignatureCS__Group_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7267:1: ( rule__TemplateSignatureCS__Group_0_2__1__Impl )
             // InternalCompleteOCL.g:7268:2: rule__TemplateSignatureCS__Group_0_2__1__Impl
@@ -22741,7 +22741,7 @@
     public final void rule__TemplateSignatureCS__Group_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7278:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) ) )
             // InternalCompleteOCL.g:7279:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) )
@@ -22750,7 +22750,7 @@
             // InternalCompleteOCL.g:7280:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_2_1()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_2_1());
             }
             // InternalCompleteOCL.g:7281:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 )
             // InternalCompleteOCL.g:7281:2: rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1
@@ -22764,7 +22764,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_2_1()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_2_1());
             }
 
             }
@@ -22792,7 +22792,7 @@
     public final void rule__TemplateSignatureCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7299:1: ( rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1 )
             // InternalCompleteOCL.g:7300:2: rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1
@@ -22830,7 +22830,7 @@
     public final void rule__TemplateSignatureCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7311:1: ( ( '<' ) )
             // InternalCompleteOCL.g:7312:1: ( '<' )
@@ -22839,11 +22839,11 @@
             // InternalCompleteOCL.g:7313:1: '<'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0());
             }
             match(input,38,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0());
             }
 
             }
@@ -22871,7 +22871,7 @@
     public final void rule__TemplateSignatureCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7330:1: ( rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2 )
             // InternalCompleteOCL.g:7331:2: rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2
@@ -22909,7 +22909,7 @@
     public final void rule__TemplateSignatureCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7342:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) ) )
             // InternalCompleteOCL.g:7343:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) )
@@ -22918,7 +22918,7 @@
             // InternalCompleteOCL.g:7344:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_1()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_1());
             }
             // InternalCompleteOCL.g:7345:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 )
             // InternalCompleteOCL.g:7345:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1_1
@@ -22932,7 +22932,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_1()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_1());
             }
 
             }
@@ -22960,7 +22960,7 @@
     public final void rule__TemplateSignatureCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7359:1: ( rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3 )
             // InternalCompleteOCL.g:7360:2: rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3
@@ -22998,7 +22998,7 @@
     public final void rule__TemplateSignatureCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7371:1: ( ( ( rule__TemplateSignatureCS__Group_1_2__0 )* ) )
             // InternalCompleteOCL.g:7372:1: ( ( rule__TemplateSignatureCS__Group_1_2__0 )* )
@@ -23007,7 +23007,7 @@
             // InternalCompleteOCL.g:7373:1: ( rule__TemplateSignatureCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getGroup_1_2()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getGroup_1_2());
             }
             // InternalCompleteOCL.g:7374:1: ( rule__TemplateSignatureCS__Group_1_2__0 )*
             loop74:
@@ -23039,7 +23039,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getGroup_1_2()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getGroup_1_2());
             }
 
             }
@@ -23067,7 +23067,7 @@
     public final void rule__TemplateSignatureCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7388:1: ( rule__TemplateSignatureCS__Group_1__3__Impl )
             // InternalCompleteOCL.g:7389:2: rule__TemplateSignatureCS__Group_1__3__Impl
@@ -23100,7 +23100,7 @@
     public final void rule__TemplateSignatureCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7399:1: ( ( '>' ) )
             // InternalCompleteOCL.g:7400:1: ( '>' )
@@ -23109,11 +23109,11 @@
             // InternalCompleteOCL.g:7401:1: '>'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3());
             }
             match(input,37,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3());
             }
 
             }
@@ -23141,7 +23141,7 @@
     public final void rule__TemplateSignatureCS__Group_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7426:1: ( rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1 )
             // InternalCompleteOCL.g:7427:2: rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1
@@ -23179,7 +23179,7 @@
     public final void rule__TemplateSignatureCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7438:1: ( ( ',' ) )
             // InternalCompleteOCL.g:7439:1: ( ',' )
@@ -23188,11 +23188,11 @@
             // InternalCompleteOCL.g:7440:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0());
             }
 
             }
@@ -23220,7 +23220,7 @@
     public final void rule__TemplateSignatureCS__Group_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7457:1: ( rule__TemplateSignatureCS__Group_1_2__1__Impl )
             // InternalCompleteOCL.g:7458:2: rule__TemplateSignatureCS__Group_1_2__1__Impl
@@ -23253,7 +23253,7 @@
     public final void rule__TemplateSignatureCS__Group_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7468:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) ) )
             // InternalCompleteOCL.g:7469:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) )
@@ -23262,7 +23262,7 @@
             // InternalCompleteOCL.g:7470:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_2_1()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_2_1());
             }
             // InternalCompleteOCL.g:7471:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 )
             // InternalCompleteOCL.g:7471:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1
@@ -23276,7 +23276,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_2_1()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_2_1());
             }
 
             }
@@ -23304,7 +23304,7 @@
     public final void rule__NavigatingArgExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7489:1: ( rule__NavigatingArgExpCS__Group_0__0__Impl rule__NavigatingArgExpCS__Group_0__1 )
             // InternalCompleteOCL.g:7490:2: rule__NavigatingArgExpCS__Group_0__0__Impl rule__NavigatingArgExpCS__Group_0__1
@@ -23342,7 +23342,7 @@
     public final void rule__NavigatingArgExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7501:1: ( ( () ) )
             // InternalCompleteOCL.g:7502:1: ( () )
@@ -23351,15 +23351,15 @@
             // InternalCompleteOCL.g:7503:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgExpCSAccess().getOCLMessageArgCSAction_0_0()); 
+               before(grammarAccess.getNavigatingArgExpCSAccess().getOCLMessageArgCSAction_0_0());
             }
             // InternalCompleteOCL.g:7504:1: ()
-            // InternalCompleteOCL.g:7506:1: 
+            // InternalCompleteOCL.g:7506:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgExpCSAccess().getOCLMessageArgCSAction_0_0()); 
+               after(grammarAccess.getNavigatingArgExpCSAccess().getOCLMessageArgCSAction_0_0());
             }
 
             }
@@ -23383,7 +23383,7 @@
     public final void rule__NavigatingArgExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7520:1: ( rule__NavigatingArgExpCS__Group_0__1__Impl )
             // InternalCompleteOCL.g:7521:2: rule__NavigatingArgExpCS__Group_0__1__Impl
@@ -23416,7 +23416,7 @@
     public final void rule__NavigatingArgExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7531:1: ( ( '?' ) )
             // InternalCompleteOCL.g:7532:1: ( '?' )
@@ -23425,11 +23425,11 @@
             // InternalCompleteOCL.g:7533:1: '?'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgExpCSAccess().getQuestionMarkKeyword_0_1()); 
+               before(grammarAccess.getNavigatingArgExpCSAccess().getQuestionMarkKeyword_0_1());
             }
             match(input,59,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgExpCSAccess().getQuestionMarkKeyword_0_1()); 
+               after(grammarAccess.getNavigatingArgExpCSAccess().getQuestionMarkKeyword_0_1());
             }
 
             }
@@ -23457,7 +23457,7 @@
     public final void rule__URIPathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7554:1: ( rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 )
             // InternalCompleteOCL.g:7555:2: rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1
@@ -23495,7 +23495,7 @@
     public final void rule__URIPathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7566:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) )
             // InternalCompleteOCL.g:7567:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
@@ -23504,7 +23504,7 @@
             // InternalCompleteOCL.g:7568:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
             // InternalCompleteOCL.g:7569:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
             // InternalCompleteOCL.g:7569:2: rule__URIPathNameCS__OwnedPathElementsAssignment_0
@@ -23518,7 +23518,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
 
             }
@@ -23546,7 +23546,7 @@
     public final void rule__URIPathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7583:1: ( rule__URIPathNameCS__Group__1__Impl )
             // InternalCompleteOCL.g:7584:2: rule__URIPathNameCS__Group__1__Impl
@@ -23579,7 +23579,7 @@
     public final void rule__URIPathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7594:1: ( ( ( rule__URIPathNameCS__Group_1__0 )* ) )
             // InternalCompleteOCL.g:7595:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
@@ -23588,7 +23588,7 @@
             // InternalCompleteOCL.g:7596:1: ( rule__URIPathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getGroup_1()); 
+               before(grammarAccess.getURIPathNameCSAccess().getGroup_1());
             }
             // InternalCompleteOCL.g:7597:1: ( rule__URIPathNameCS__Group_1__0 )*
             loop75:
@@ -23620,7 +23620,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getGroup_1()); 
+               after(grammarAccess.getURIPathNameCSAccess().getGroup_1());
             }
 
             }
@@ -23648,7 +23648,7 @@
     public final void rule__URIPathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7615:1: ( rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 )
             // InternalCompleteOCL.g:7616:2: rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1
@@ -23686,7 +23686,7 @@
     public final void rule__URIPathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7627:1: ( ( '::' ) )
             // InternalCompleteOCL.g:7628:1: ( '::' )
@@ -23695,11 +23695,11 @@
             // InternalCompleteOCL.g:7629:1: '::'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0()); 
+               before(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
             }
             match(input,74,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0()); 
+               after(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
             }
 
             }
@@ -23727,7 +23727,7 @@
     public final void rule__URIPathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7646:1: ( rule__URIPathNameCS__Group_1__1__Impl )
             // InternalCompleteOCL.g:7647:2: rule__URIPathNameCS__Group_1__1__Impl
@@ -23760,7 +23760,7 @@
     public final void rule__URIPathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7657:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
             // InternalCompleteOCL.g:7658:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
@@ -23769,7 +23769,7 @@
             // InternalCompleteOCL.g:7659:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
             // InternalCompleteOCL.g:7660:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
             // InternalCompleteOCL.g:7660:2: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1
@@ -23783,7 +23783,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
 
             }
@@ -23811,7 +23811,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7678:1: ( rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 )
             // InternalCompleteOCL.g:7679:2: rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1
@@ -23849,7 +23849,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7690:1: ( ( () ) )
             // InternalCompleteOCL.g:7691:1: ( () )
@@ -23858,15 +23858,15 @@
             // InternalCompleteOCL.g:7692:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0());
             }
             // InternalCompleteOCL.g:7693:1: ()
-            // InternalCompleteOCL.g:7695:1: 
+            // InternalCompleteOCL.g:7695:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0());
             }
 
             }
@@ -23890,7 +23890,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7709:1: ( rule__URIFirstPathElementCS__Group_1__1__Impl )
             // InternalCompleteOCL.g:7710:2: rule__URIFirstPathElementCS__Group_1__1__Impl
@@ -23923,7 +23923,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7720:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) )
             // InternalCompleteOCL.g:7721:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
@@ -23932,7 +23932,7 @@
             // InternalCompleteOCL.g:7722:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1());
             }
             // InternalCompleteOCL.g:7723:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
             // InternalCompleteOCL.g:7723:2: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1
@@ -23946,7 +23946,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1());
             }
 
             }
@@ -23974,7 +23974,7 @@
     public final void rule__CollectionTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7741:1: ( rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 )
             // InternalCompleteOCL.g:7742:2: rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1
@@ -24012,7 +24012,7 @@
     public final void rule__CollectionTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7753:1: ( ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) )
             // InternalCompleteOCL.g:7754:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
@@ -24021,7 +24021,7 @@
             // InternalCompleteOCL.g:7755:1: ( rule__CollectionTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0());
             }
             // InternalCompleteOCL.g:7756:1: ( rule__CollectionTypeCS__NameAssignment_0 )
             // InternalCompleteOCL.g:7756:2: rule__CollectionTypeCS__NameAssignment_0
@@ -24035,7 +24035,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0());
             }
 
             }
@@ -24063,7 +24063,7 @@
     public final void rule__CollectionTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7770:1: ( rule__CollectionTypeCS__Group__1__Impl )
             // InternalCompleteOCL.g:7771:2: rule__CollectionTypeCS__Group__1__Impl
@@ -24096,7 +24096,7 @@
     public final void rule__CollectionTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7781:1: ( ( ( rule__CollectionTypeCS__Group_1__0 )? ) )
             // InternalCompleteOCL.g:7782:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
@@ -24105,7 +24105,7 @@
             // InternalCompleteOCL.g:7783:1: ( rule__CollectionTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getGroup_1()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getGroup_1());
             }
             // InternalCompleteOCL.g:7784:1: ( rule__CollectionTypeCS__Group_1__0 )?
             int alt76=2;
@@ -24130,7 +24130,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getGroup_1()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getGroup_1());
             }
 
             }
@@ -24158,7 +24158,7 @@
     public final void rule__CollectionTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7802:1: ( rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 )
             // InternalCompleteOCL.g:7803:2: rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1
@@ -24196,7 +24196,7 @@
     public final void rule__CollectionTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7814:1: ( ( '(' ) )
             // InternalCompleteOCL.g:7815:1: ( '(' )
@@ -24205,11 +24205,11 @@
             // InternalCompleteOCL.g:7816:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -24237,7 +24237,7 @@
     public final void rule__CollectionTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7833:1: ( rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 )
             // InternalCompleteOCL.g:7834:2: rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2
@@ -24275,7 +24275,7 @@
     public final void rule__CollectionTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7845:1: ( ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) )
             // InternalCompleteOCL.g:7846:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
@@ -24284,7 +24284,7 @@
             // InternalCompleteOCL.g:7847:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1());
             }
             // InternalCompleteOCL.g:7848:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
             // InternalCompleteOCL.g:7848:2: rule__CollectionTypeCS__OwnedTypeAssignment_1_1
@@ -24298,7 +24298,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1());
             }
 
             }
@@ -24326,7 +24326,7 @@
     public final void rule__CollectionTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7862:1: ( rule__CollectionTypeCS__Group_1__2__Impl )
             // InternalCompleteOCL.g:7863:2: rule__CollectionTypeCS__Group_1__2__Impl
@@ -24359,7 +24359,7 @@
     public final void rule__CollectionTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7873:1: ( ( ')' ) )
             // InternalCompleteOCL.g:7874:1: ( ')' )
@@ -24368,11 +24368,11 @@
             // InternalCompleteOCL.g:7875:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
             match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
 
             }
@@ -24400,7 +24400,7 @@
     public final void rule__MapTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7898:1: ( rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 )
             // InternalCompleteOCL.g:7899:2: rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1
@@ -24438,7 +24438,7 @@
     public final void rule__MapTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7910:1: ( ( ( rule__MapTypeCS__NameAssignment_0 ) ) )
             // InternalCompleteOCL.g:7911:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
@@ -24447,7 +24447,7 @@
             // InternalCompleteOCL.g:7912:1: ( rule__MapTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getNameAssignment_0());
             }
             // InternalCompleteOCL.g:7913:1: ( rule__MapTypeCS__NameAssignment_0 )
             // InternalCompleteOCL.g:7913:2: rule__MapTypeCS__NameAssignment_0
@@ -24461,7 +24461,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getNameAssignment_0());
             }
 
             }
@@ -24489,7 +24489,7 @@
     public final void rule__MapTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7927:1: ( rule__MapTypeCS__Group__1__Impl )
             // InternalCompleteOCL.g:7928:2: rule__MapTypeCS__Group__1__Impl
@@ -24522,7 +24522,7 @@
     public final void rule__MapTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7938:1: ( ( ( rule__MapTypeCS__Group_1__0 )? ) )
             // InternalCompleteOCL.g:7939:1: ( ( rule__MapTypeCS__Group_1__0 )? )
@@ -24531,7 +24531,7 @@
             // InternalCompleteOCL.g:7940:1: ( rule__MapTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getGroup_1()); 
+               before(grammarAccess.getMapTypeCSAccess().getGroup_1());
             }
             // InternalCompleteOCL.g:7941:1: ( rule__MapTypeCS__Group_1__0 )?
             int alt77=2;
@@ -24556,7 +24556,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getGroup_1()); 
+               after(grammarAccess.getMapTypeCSAccess().getGroup_1());
             }
 
             }
@@ -24584,7 +24584,7 @@
     public final void rule__MapTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7959:1: ( rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 )
             // InternalCompleteOCL.g:7960:2: rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1
@@ -24622,7 +24622,7 @@
     public final void rule__MapTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7971:1: ( ( '(' ) )
             // InternalCompleteOCL.g:7972:1: ( '(' )
@@ -24631,11 +24631,11 @@
             // InternalCompleteOCL.g:7973:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -24663,7 +24663,7 @@
     public final void rule__MapTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:7990:1: ( rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 )
             // InternalCompleteOCL.g:7991:2: rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2
@@ -24701,7 +24701,7 @@
     public final void rule__MapTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8002:1: ( ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) )
             // InternalCompleteOCL.g:8003:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
@@ -24710,7 +24710,7 @@
             // InternalCompleteOCL.g:8004:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1());
             }
             // InternalCompleteOCL.g:8005:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
             // InternalCompleteOCL.g:8005:2: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1
@@ -24724,7 +24724,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1());
             }
 
             }
@@ -24752,7 +24752,7 @@
     public final void rule__MapTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8019:1: ( rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 )
             // InternalCompleteOCL.g:8020:2: rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3
@@ -24790,7 +24790,7 @@
     public final void rule__MapTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8031:1: ( ( ',' ) )
             // InternalCompleteOCL.g:8032:1: ( ',' )
@@ -24799,11 +24799,11 @@
             // InternalCompleteOCL.g:8033:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); 
+               before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); 
+               after(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
             }
 
             }
@@ -24831,7 +24831,7 @@
     public final void rule__MapTypeCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8050:1: ( rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 )
             // InternalCompleteOCL.g:8051:2: rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4
@@ -24869,7 +24869,7 @@
     public final void rule__MapTypeCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8062:1: ( ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) )
             // InternalCompleteOCL.g:8063:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
@@ -24878,7 +24878,7 @@
             // InternalCompleteOCL.g:8064:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3());
             }
             // InternalCompleteOCL.g:8065:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
             // InternalCompleteOCL.g:8065:2: rule__MapTypeCS__OwnedValueTypeAssignment_1_3
@@ -24892,7 +24892,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3());
             }
 
             }
@@ -24920,7 +24920,7 @@
     public final void rule__MapTypeCS__Group_1__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8079:1: ( rule__MapTypeCS__Group_1__4__Impl )
             // InternalCompleteOCL.g:8080:2: rule__MapTypeCS__Group_1__4__Impl
@@ -24953,7 +24953,7 @@
     public final void rule__MapTypeCS__Group_1__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8090:1: ( ( ')' ) )
             // InternalCompleteOCL.g:8091:1: ( ')' )
@@ -24962,11 +24962,11 @@
             // InternalCompleteOCL.g:8092:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); 
+               before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
             }
             match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); 
+               after(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
             }
 
             }
@@ -24994,7 +24994,7 @@
     public final void rule__TupleTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8119:1: ( rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 )
             // InternalCompleteOCL.g:8120:2: rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1
@@ -25032,7 +25032,7 @@
     public final void rule__TupleTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8131:1: ( ( ( rule__TupleTypeCS__NameAssignment_0 ) ) )
             // InternalCompleteOCL.g:8132:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
@@ -25041,7 +25041,7 @@
             // InternalCompleteOCL.g:8133:1: ( rule__TupleTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0());
             }
             // InternalCompleteOCL.g:8134:1: ( rule__TupleTypeCS__NameAssignment_0 )
             // InternalCompleteOCL.g:8134:2: rule__TupleTypeCS__NameAssignment_0
@@ -25055,7 +25055,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0());
             }
 
             }
@@ -25083,7 +25083,7 @@
     public final void rule__TupleTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8148:1: ( rule__TupleTypeCS__Group__1__Impl )
             // InternalCompleteOCL.g:8149:2: rule__TupleTypeCS__Group__1__Impl
@@ -25116,7 +25116,7 @@
     public final void rule__TupleTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8159:1: ( ( ( rule__TupleTypeCS__Group_1__0 )? ) )
             // InternalCompleteOCL.g:8160:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
@@ -25125,7 +25125,7 @@
             // InternalCompleteOCL.g:8161:1: ( rule__TupleTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup_1());
             }
             // InternalCompleteOCL.g:8162:1: ( rule__TupleTypeCS__Group_1__0 )?
             int alt78=2;
@@ -25150,7 +25150,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup_1());
             }
 
             }
@@ -25178,7 +25178,7 @@
     public final void rule__TupleTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8180:1: ( rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 )
             // InternalCompleteOCL.g:8181:2: rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1
@@ -25216,7 +25216,7 @@
     public final void rule__TupleTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8192:1: ( ( '(' ) )
             // InternalCompleteOCL.g:8193:1: ( '(' )
@@ -25225,11 +25225,11 @@
             // InternalCompleteOCL.g:8194:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -25257,7 +25257,7 @@
     public final void rule__TupleTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8211:1: ( rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 )
             // InternalCompleteOCL.g:8212:2: rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2
@@ -25295,7 +25295,7 @@
     public final void rule__TupleTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8223:1: ( ( ( rule__TupleTypeCS__Group_1_1__0 )? ) )
             // InternalCompleteOCL.g:8224:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
@@ -25304,7 +25304,7 @@
             // InternalCompleteOCL.g:8225:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1());
             }
             // InternalCompleteOCL.g:8226:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             int alt79=2;
@@ -25329,7 +25329,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1());
             }
 
             }
@@ -25357,7 +25357,7 @@
     public final void rule__TupleTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8240:1: ( rule__TupleTypeCS__Group_1__2__Impl )
             // InternalCompleteOCL.g:8241:2: rule__TupleTypeCS__Group_1__2__Impl
@@ -25390,7 +25390,7 @@
     public final void rule__TupleTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8251:1: ( ( ')' ) )
             // InternalCompleteOCL.g:8252:1: ( ')' )
@@ -25399,11 +25399,11 @@
             // InternalCompleteOCL.g:8253:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
             match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               after(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
 
             }
@@ -25431,7 +25431,7 @@
     public final void rule__TupleTypeCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8276:1: ( rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 )
             // InternalCompleteOCL.g:8277:2: rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1
@@ -25469,7 +25469,7 @@
     public final void rule__TupleTypeCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8288:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) )
             // InternalCompleteOCL.g:8289:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
@@ -25478,7 +25478,7 @@
             // InternalCompleteOCL.g:8290:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0());
             }
             // InternalCompleteOCL.g:8291:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
             // InternalCompleteOCL.g:8291:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0
@@ -25492,7 +25492,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0());
             }
 
             }
@@ -25520,7 +25520,7 @@
     public final void rule__TupleTypeCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8305:1: ( rule__TupleTypeCS__Group_1_1__1__Impl )
             // InternalCompleteOCL.g:8306:2: rule__TupleTypeCS__Group_1_1__1__Impl
@@ -25553,7 +25553,7 @@
     public final void rule__TupleTypeCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8316:1: ( ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) )
             // InternalCompleteOCL.g:8317:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
@@ -25562,7 +25562,7 @@
             // InternalCompleteOCL.g:8318:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1());
             }
             // InternalCompleteOCL.g:8319:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             loop80:
@@ -25594,7 +25594,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1());
             }
 
             }
@@ -25622,7 +25622,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8337:1: ( rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 )
             // InternalCompleteOCL.g:8338:2: rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1
@@ -25660,7 +25660,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8349:1: ( ( ',' ) )
             // InternalCompleteOCL.g:8350:1: ( ',' )
@@ -25669,11 +25669,11 @@
             // InternalCompleteOCL.g:8351:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
             }
 
             }
@@ -25701,7 +25701,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8368:1: ( rule__TupleTypeCS__Group_1_1_1__1__Impl )
             // InternalCompleteOCL.g:8369:2: rule__TupleTypeCS__Group_1_1_1__1__Impl
@@ -25734,7 +25734,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8379:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) )
             // InternalCompleteOCL.g:8380:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
@@ -25743,7 +25743,7 @@
             // InternalCompleteOCL.g:8381:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1());
             }
             // InternalCompleteOCL.g:8382:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
             // InternalCompleteOCL.g:8382:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1
@@ -25757,7 +25757,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1());
             }
 
             }
@@ -25785,7 +25785,7 @@
     public final void rule__TuplePartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8400:1: ( rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 )
             // InternalCompleteOCL.g:8401:2: rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1
@@ -25823,7 +25823,7 @@
     public final void rule__TuplePartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8412:1: ( ( ( rule__TuplePartCS__NameAssignment_0 ) ) )
             // InternalCompleteOCL.g:8413:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
@@ -25832,7 +25832,7 @@
             // InternalCompleteOCL.g:8414:1: ( rule__TuplePartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTuplePartCSAccess().getNameAssignment_0());
             }
             // InternalCompleteOCL.g:8415:1: ( rule__TuplePartCS__NameAssignment_0 )
             // InternalCompleteOCL.g:8415:2: rule__TuplePartCS__NameAssignment_0
@@ -25846,7 +25846,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTuplePartCSAccess().getNameAssignment_0());
             }
 
             }
@@ -25874,7 +25874,7 @@
     public final void rule__TuplePartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8429:1: ( rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 )
             // InternalCompleteOCL.g:8430:2: rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2
@@ -25912,7 +25912,7 @@
     public final void rule__TuplePartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8441:1: ( ( ':' ) )
             // InternalCompleteOCL.g:8442:1: ( ':' )
@@ -25921,11 +25921,11 @@
             // InternalCompleteOCL.g:8443:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
             }
 
             }
@@ -25953,7 +25953,7 @@
     public final void rule__TuplePartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8460:1: ( rule__TuplePartCS__Group__2__Impl )
             // InternalCompleteOCL.g:8461:2: rule__TuplePartCS__Group__2__Impl
@@ -25986,7 +25986,7 @@
     public final void rule__TuplePartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8471:1: ( ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) )
             // InternalCompleteOCL.g:8472:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
@@ -25995,7 +25995,7 @@
             // InternalCompleteOCL.g:8473:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2()); 
+               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2());
             }
             // InternalCompleteOCL.g:8474:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
             // InternalCompleteOCL.g:8474:2: rule__TuplePartCS__OwnedTypeAssignment_2
@@ -26009,7 +26009,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2()); 
+               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2());
             }
 
             }
@@ -26037,7 +26037,7 @@
     public final void rule__CollectionLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8494:1: ( rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 )
             // InternalCompleteOCL.g:8495:2: rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1
@@ -26075,7 +26075,7 @@
     public final void rule__CollectionLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8506:1: ( ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) )
             // InternalCompleteOCL.g:8507:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
@@ -26084,7 +26084,7 @@
             // InternalCompleteOCL.g:8508:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
             // InternalCompleteOCL.g:8509:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
             // InternalCompleteOCL.g:8509:2: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0
@@ -26098,7 +26098,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
 
             }
@@ -26126,7 +26126,7 @@
     public final void rule__CollectionLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8523:1: ( rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 )
             // InternalCompleteOCL.g:8524:2: rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2
@@ -26164,7 +26164,7 @@
     public final void rule__CollectionLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8535:1: ( ( '{' ) )
             // InternalCompleteOCL.g:8536:1: ( '{' )
@@ -26173,11 +26173,11 @@
             // InternalCompleteOCL.g:8537:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,75,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -26205,7 +26205,7 @@
     public final void rule__CollectionLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8554:1: ( rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 )
             // InternalCompleteOCL.g:8555:2: rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3
@@ -26243,7 +26243,7 @@
     public final void rule__CollectionLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8566:1: ( ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) )
             // InternalCompleteOCL.g:8567:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
@@ -26252,7 +26252,7 @@
             // InternalCompleteOCL.g:8568:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2());
             }
             // InternalCompleteOCL.g:8569:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             int alt81=2;
@@ -26277,7 +26277,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2());
             }
 
             }
@@ -26305,7 +26305,7 @@
     public final void rule__CollectionLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8583:1: ( rule__CollectionLiteralExpCS__Group__3__Impl )
             // InternalCompleteOCL.g:8584:2: rule__CollectionLiteralExpCS__Group__3__Impl
@@ -26338,7 +26338,7 @@
     public final void rule__CollectionLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8594:1: ( ( '}' ) )
             // InternalCompleteOCL.g:8595:1: ( '}' )
@@ -26347,11 +26347,11 @@
             // InternalCompleteOCL.g:8596:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,76,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -26379,7 +26379,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8621:1: ( rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 )
             // InternalCompleteOCL.g:8622:2: rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1
@@ -26417,7 +26417,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8633:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
             // InternalCompleteOCL.g:8634:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
@@ -26426,7 +26426,7 @@
             // InternalCompleteOCL.g:8635:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
             // InternalCompleteOCL.g:8636:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
             // InternalCompleteOCL.g:8636:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0
@@ -26440,7 +26440,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
 
             }
@@ -26468,7 +26468,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8650:1: ( rule__CollectionLiteralExpCS__Group_2__1__Impl )
             // InternalCompleteOCL.g:8651:2: rule__CollectionLiteralExpCS__Group_2__1__Impl
@@ -26501,7 +26501,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8661:1: ( ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) )
             // InternalCompleteOCL.g:8662:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
@@ -26510,7 +26510,7 @@
             // InternalCompleteOCL.g:8663:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1());
             }
             // InternalCompleteOCL.g:8664:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             loop82:
@@ -26542,7 +26542,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1());
             }
 
             }
@@ -26570,7 +26570,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8682:1: ( rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 )
             // InternalCompleteOCL.g:8683:2: rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1
@@ -26608,7 +26608,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8694:1: ( ( ',' ) )
             // InternalCompleteOCL.g:8695:1: ( ',' )
@@ -26617,11 +26617,11 @@
             // InternalCompleteOCL.g:8696:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
 
             }
@@ -26649,7 +26649,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8713:1: ( rule__CollectionLiteralExpCS__Group_2_1__1__Impl )
             // InternalCompleteOCL.g:8714:2: rule__CollectionLiteralExpCS__Group_2_1__1__Impl
@@ -26682,7 +26682,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8724:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
             // InternalCompleteOCL.g:8725:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
@@ -26691,7 +26691,7 @@
             // InternalCompleteOCL.g:8726:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
             // InternalCompleteOCL.g:8727:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             // InternalCompleteOCL.g:8727:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1
@@ -26705,7 +26705,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
 
             }
@@ -26733,7 +26733,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8745:1: ( rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 )
             // InternalCompleteOCL.g:8746:2: rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1
@@ -26771,7 +26771,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8757:1: ( ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) )
             // InternalCompleteOCL.g:8758:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
@@ -26780,7 +26780,7 @@
             // InternalCompleteOCL.g:8759:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0());
             }
             // InternalCompleteOCL.g:8760:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
             // InternalCompleteOCL.g:8760:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0
@@ -26794,7 +26794,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0());
             }
 
             }
@@ -26822,7 +26822,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8774:1: ( rule__CollectionLiteralPartCS__Group_0__1__Impl )
             // InternalCompleteOCL.g:8775:2: rule__CollectionLiteralPartCS__Group_0__1__Impl
@@ -26855,7 +26855,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8785:1: ( ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) )
             // InternalCompleteOCL.g:8786:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
@@ -26864,7 +26864,7 @@
             // InternalCompleteOCL.g:8787:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1());
             }
             // InternalCompleteOCL.g:8788:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             int alt83=2;
@@ -26889,7 +26889,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1());
             }
 
             }
@@ -26917,7 +26917,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8806:1: ( rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 )
             // InternalCompleteOCL.g:8807:2: rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1
@@ -26955,7 +26955,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8818:1: ( ( '..' ) )
             // InternalCompleteOCL.g:8819:1: ( '..' )
@@ -26964,11 +26964,11 @@
             // InternalCompleteOCL.g:8820:1: '..'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
             }
             match(input,77,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
             }
 
             }
@@ -26996,7 +26996,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8837:1: ( rule__CollectionLiteralPartCS__Group_0_1__1__Impl )
             // InternalCompleteOCL.g:8838:2: rule__CollectionLiteralPartCS__Group_0_1__1__Impl
@@ -27029,7 +27029,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8848:1: ( ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) )
             // InternalCompleteOCL.g:8849:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
@@ -27038,7 +27038,7 @@
             // InternalCompleteOCL.g:8850:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1());
             }
             // InternalCompleteOCL.g:8851:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
             // InternalCompleteOCL.g:8851:2: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1
@@ -27052,7 +27052,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1());
             }
 
             }
@@ -27080,7 +27080,7 @@
     public final void rule__CollectionPatternCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8869:1: ( rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 )
             // InternalCompleteOCL.g:8870:2: rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1
@@ -27118,7 +27118,7 @@
     public final void rule__CollectionPatternCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8881:1: ( ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) )
             // InternalCompleteOCL.g:8882:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
@@ -27127,7 +27127,7 @@
             // InternalCompleteOCL.g:8883:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0());
             }
             // InternalCompleteOCL.g:8884:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
             // InternalCompleteOCL.g:8884:2: rule__CollectionPatternCS__OwnedTypeAssignment_0
@@ -27141,7 +27141,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0());
             }
 
             }
@@ -27169,7 +27169,7 @@
     public final void rule__CollectionPatternCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8898:1: ( rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 )
             // InternalCompleteOCL.g:8899:2: rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2
@@ -27207,7 +27207,7 @@
     public final void rule__CollectionPatternCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8910:1: ( ( '{' ) )
             // InternalCompleteOCL.g:8911:1: ( '{' )
@@ -27216,11 +27216,11 @@
             // InternalCompleteOCL.g:8912:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,75,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -27248,7 +27248,7 @@
     public final void rule__CollectionPatternCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8929:1: ( rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 )
             // InternalCompleteOCL.g:8930:2: rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3
@@ -27286,7 +27286,7 @@
     public final void rule__CollectionPatternCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8941:1: ( ( ( rule__CollectionPatternCS__Group_2__0 )? ) )
             // InternalCompleteOCL.g:8942:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
@@ -27295,7 +27295,7 @@
             // InternalCompleteOCL.g:8943:1: ( rule__CollectionPatternCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2());
             }
             // InternalCompleteOCL.g:8944:1: ( rule__CollectionPatternCS__Group_2__0 )?
             int alt84=2;
@@ -27320,7 +27320,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2());
             }
 
             }
@@ -27348,7 +27348,7 @@
     public final void rule__CollectionPatternCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8958:1: ( rule__CollectionPatternCS__Group__3__Impl )
             // InternalCompleteOCL.g:8959:2: rule__CollectionPatternCS__Group__3__Impl
@@ -27381,7 +27381,7 @@
     public final void rule__CollectionPatternCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8969:1: ( ( '}' ) )
             // InternalCompleteOCL.g:8970:1: ( '}' )
@@ -27390,11 +27390,11 @@
             // InternalCompleteOCL.g:8971:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,76,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -27422,7 +27422,7 @@
     public final void rule__CollectionPatternCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:8996:1: ( rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 )
             // InternalCompleteOCL.g:8997:2: rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1
@@ -27460,7 +27460,7 @@
     public final void rule__CollectionPatternCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9008:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) )
             // InternalCompleteOCL.g:9009:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
@@ -27469,7 +27469,7 @@
             // InternalCompleteOCL.g:9010:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0());
             }
             // InternalCompleteOCL.g:9011:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
             // InternalCompleteOCL.g:9011:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_0
@@ -27483,7 +27483,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0());
             }
 
             }
@@ -27511,7 +27511,7 @@
     public final void rule__CollectionPatternCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9025:1: ( rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 )
             // InternalCompleteOCL.g:9026:2: rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2
@@ -27549,7 +27549,7 @@
     public final void rule__CollectionPatternCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9037:1: ( ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) )
             // InternalCompleteOCL.g:9038:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
@@ -27558,7 +27558,7 @@
             // InternalCompleteOCL.g:9039:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1());
             }
             // InternalCompleteOCL.g:9040:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             loop85:
@@ -27590,7 +27590,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1());
             }
 
             }
@@ -27618,7 +27618,7 @@
     public final void rule__CollectionPatternCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9054:1: ( rule__CollectionPatternCS__Group_2__2__Impl )
             // InternalCompleteOCL.g:9055:2: rule__CollectionPatternCS__Group_2__2__Impl
@@ -27651,7 +27651,7 @@
     public final void rule__CollectionPatternCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9065:1: ( ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) )
             // InternalCompleteOCL.g:9066:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
@@ -27660,7 +27660,7 @@
             // InternalCompleteOCL.g:9067:1: ( rule__CollectionPatternCS__Group_2_2__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2());
             }
             // InternalCompleteOCL.g:9068:1: ( rule__CollectionPatternCS__Group_2_2__0 )
             // InternalCompleteOCL.g:9068:2: rule__CollectionPatternCS__Group_2_2__0
@@ -27674,7 +27674,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2());
             }
 
             }
@@ -27702,7 +27702,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9088:1: ( rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 )
             // InternalCompleteOCL.g:9089:2: rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1
@@ -27740,7 +27740,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9100:1: ( ( ',' ) )
             // InternalCompleteOCL.g:9101:1: ( ',' )
@@ -27749,11 +27749,11 @@
             // InternalCompleteOCL.g:9102:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
             }
 
             }
@@ -27781,7 +27781,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9119:1: ( rule__CollectionPatternCS__Group_2_1__1__Impl )
             // InternalCompleteOCL.g:9120:2: rule__CollectionPatternCS__Group_2_1__1__Impl
@@ -27814,7 +27814,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9130:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) )
             // InternalCompleteOCL.g:9131:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
@@ -27823,7 +27823,7 @@
             // InternalCompleteOCL.g:9132:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1());
             }
             // InternalCompleteOCL.g:9133:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
             // InternalCompleteOCL.g:9133:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1
@@ -27837,7 +27837,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1());
             }
 
             }
@@ -27865,7 +27865,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9151:1: ( rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 )
             // InternalCompleteOCL.g:9152:2: rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1
@@ -27903,7 +27903,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9163:1: ( ( '++' ) )
             // InternalCompleteOCL.g:9164:1: ( '++' )
@@ -27912,11 +27912,11 @@
             // InternalCompleteOCL.g:9165:1: '++'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
             }
             match(input,78,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
             }
 
             }
@@ -27944,7 +27944,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9182:1: ( rule__CollectionPatternCS__Group_2_2__1__Impl )
             // InternalCompleteOCL.g:9183:2: rule__CollectionPatternCS__Group_2_2__1__Impl
@@ -27977,7 +27977,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9193:1: ( ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) )
             // InternalCompleteOCL.g:9194:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
@@ -27986,7 +27986,7 @@
             // InternalCompleteOCL.g:9195:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1());
             }
             // InternalCompleteOCL.g:9196:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
             // InternalCompleteOCL.g:9196:2: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1
@@ -28000,7 +28000,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1());
             }
 
             }
@@ -28028,7 +28028,7 @@
     public final void rule__ShadowPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9214:1: ( rule__ShadowPartCS__Group__0__Impl rule__ShadowPartCS__Group__1 )
             // InternalCompleteOCL.g:9215:2: rule__ShadowPartCS__Group__0__Impl rule__ShadowPartCS__Group__1
@@ -28066,7 +28066,7 @@
     public final void rule__ShadowPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9226:1: ( ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0 ) ) )
             // InternalCompleteOCL.g:9227:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0 ) )
@@ -28075,7 +28075,7 @@
             // InternalCompleteOCL.g:9228:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0()); 
+               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0());
             }
             // InternalCompleteOCL.g:9229:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0 )
             // InternalCompleteOCL.g:9229:2: rule__ShadowPartCS__ReferredPropertyAssignment_0
@@ -28089,7 +28089,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0()); 
+               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0());
             }
 
             }
@@ -28117,7 +28117,7 @@
     public final void rule__ShadowPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9243:1: ( rule__ShadowPartCS__Group__1__Impl rule__ShadowPartCS__Group__2 )
             // InternalCompleteOCL.g:9244:2: rule__ShadowPartCS__Group__1__Impl rule__ShadowPartCS__Group__2
@@ -28155,7 +28155,7 @@
     public final void rule__ShadowPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9255:1: ( ( '=' ) )
             // InternalCompleteOCL.g:9256:1: ( '=' )
@@ -28164,11 +28164,11 @@
             // InternalCompleteOCL.g:9257:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); 
+               before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
             }
             match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); 
+               after(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
             }
 
             }
@@ -28196,7 +28196,7 @@
     public final void rule__ShadowPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9274:1: ( rule__ShadowPartCS__Group__2__Impl )
             // InternalCompleteOCL.g:9275:2: rule__ShadowPartCS__Group__2__Impl
@@ -28229,7 +28229,7 @@
     public final void rule__ShadowPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9285:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 ) ) )
             // InternalCompleteOCL.g:9286:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 ) )
@@ -28238,7 +28238,7 @@
             // InternalCompleteOCL.g:9287:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2()); 
+               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2());
             }
             // InternalCompleteOCL.g:9288:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 )
             // InternalCompleteOCL.g:9288:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_2
@@ -28252,7 +28252,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2()); 
+               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2());
             }
 
             }
@@ -28280,7 +28280,7 @@
     public final void rule__PatternExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9308:1: ( rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 )
             // InternalCompleteOCL.g:9309:2: rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1
@@ -28318,7 +28318,7 @@
     public final void rule__PatternExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9320:1: ( ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) )
             // InternalCompleteOCL.g:9321:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
@@ -28327,7 +28327,7 @@
             // InternalCompleteOCL.g:9322:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0()); 
+               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0());
             }
             // InternalCompleteOCL.g:9323:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             int alt86=2;
@@ -28352,7 +28352,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0()); 
+               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0());
             }
 
             }
@@ -28380,7 +28380,7 @@
     public final void rule__PatternExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9337:1: ( rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 )
             // InternalCompleteOCL.g:9338:2: rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2
@@ -28418,7 +28418,7 @@
     public final void rule__PatternExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9349:1: ( ( ':' ) )
             // InternalCompleteOCL.g:9350:1: ( ':' )
@@ -28427,11 +28427,11 @@
             // InternalCompleteOCL.g:9351:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
             }
 
             }
@@ -28459,7 +28459,7 @@
     public final void rule__PatternExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9368:1: ( rule__PatternExpCS__Group__2__Impl )
             // InternalCompleteOCL.g:9369:2: rule__PatternExpCS__Group__2__Impl
@@ -28492,7 +28492,7 @@
     public final void rule__PatternExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9379:1: ( ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) )
             // InternalCompleteOCL.g:9380:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
@@ -28501,7 +28501,7 @@
             // InternalCompleteOCL.g:9381:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2()); 
+               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2());
             }
             // InternalCompleteOCL.g:9382:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
             // InternalCompleteOCL.g:9382:2: rule__PatternExpCS__OwnedPatternTypeAssignment_2
@@ -28515,7 +28515,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2()); 
+               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2());
             }
 
             }
@@ -28543,7 +28543,7 @@
     public final void rule__LambdaLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9402:1: ( rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 )
             // InternalCompleteOCL.g:9403:2: rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1
@@ -28581,7 +28581,7 @@
     public final void rule__LambdaLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9414:1: ( ( 'Lambda' ) )
             // InternalCompleteOCL.g:9415:1: ( 'Lambda' )
@@ -28590,11 +28590,11 @@
             // InternalCompleteOCL.g:9416:1: 'Lambda'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
             }
             match(input,79,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
             }
 
             }
@@ -28622,7 +28622,7 @@
     public final void rule__LambdaLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9433:1: ( rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 )
             // InternalCompleteOCL.g:9434:2: rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2
@@ -28660,7 +28660,7 @@
     public final void rule__LambdaLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9445:1: ( ( '{' ) )
             // InternalCompleteOCL.g:9446:1: ( '{' )
@@ -28669,11 +28669,11 @@
             // InternalCompleteOCL.g:9447:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,75,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -28701,7 +28701,7 @@
     public final void rule__LambdaLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9464:1: ( rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 )
             // InternalCompleteOCL.g:9465:2: rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3
@@ -28739,7 +28739,7 @@
     public final void rule__LambdaLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9476:1: ( ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) )
             // InternalCompleteOCL.g:9477:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
@@ -28748,7 +28748,7 @@
             // InternalCompleteOCL.g:9478:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2());
             }
             // InternalCompleteOCL.g:9479:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
             // InternalCompleteOCL.g:9479:2: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2
@@ -28762,7 +28762,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2());
             }
 
             }
@@ -28790,7 +28790,7 @@
     public final void rule__LambdaLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9493:1: ( rule__LambdaLiteralExpCS__Group__3__Impl )
             // InternalCompleteOCL.g:9494:2: rule__LambdaLiteralExpCS__Group__3__Impl
@@ -28823,7 +28823,7 @@
     public final void rule__LambdaLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9504:1: ( ( '}' ) )
             // InternalCompleteOCL.g:9505:1: ( '}' )
@@ -28832,11 +28832,11 @@
             // InternalCompleteOCL.g:9506:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,76,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -28864,7 +28864,7 @@
     public final void rule__MapLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9531:1: ( rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 )
             // InternalCompleteOCL.g:9532:2: rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1
@@ -28902,7 +28902,7 @@
     public final void rule__MapLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9543:1: ( ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) )
             // InternalCompleteOCL.g:9544:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
@@ -28911,7 +28911,7 @@
             // InternalCompleteOCL.g:9545:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
             // InternalCompleteOCL.g:9546:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
             // InternalCompleteOCL.g:9546:2: rule__MapLiteralExpCS__OwnedTypeAssignment_0
@@ -28925,7 +28925,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
 
             }
@@ -28953,7 +28953,7 @@
     public final void rule__MapLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9560:1: ( rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 )
             // InternalCompleteOCL.g:9561:2: rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2
@@ -28991,7 +28991,7 @@
     public final void rule__MapLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9572:1: ( ( '{' ) )
             // InternalCompleteOCL.g:9573:1: ( '{' )
@@ -29000,11 +29000,11 @@
             // InternalCompleteOCL.g:9574:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,75,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -29032,7 +29032,7 @@
     public final void rule__MapLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9591:1: ( rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 )
             // InternalCompleteOCL.g:9592:2: rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3
@@ -29070,7 +29070,7 @@
     public final void rule__MapLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9603:1: ( ( ( rule__MapLiteralExpCS__Group_2__0 )? ) )
             // InternalCompleteOCL.g:9604:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
@@ -29079,7 +29079,7 @@
             // InternalCompleteOCL.g:9605:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2());
             }
             // InternalCompleteOCL.g:9606:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             int alt87=2;
@@ -29104,7 +29104,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2());
             }
 
             }
@@ -29132,7 +29132,7 @@
     public final void rule__MapLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9620:1: ( rule__MapLiteralExpCS__Group__3__Impl )
             // InternalCompleteOCL.g:9621:2: rule__MapLiteralExpCS__Group__3__Impl
@@ -29165,7 +29165,7 @@
     public final void rule__MapLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9631:1: ( ( '}' ) )
             // InternalCompleteOCL.g:9632:1: ( '}' )
@@ -29174,11 +29174,11 @@
             // InternalCompleteOCL.g:9633:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,76,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -29206,7 +29206,7 @@
     public final void rule__MapLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9658:1: ( rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 )
             // InternalCompleteOCL.g:9659:2: rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1
@@ -29244,7 +29244,7 @@
     public final void rule__MapLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9670:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
             // InternalCompleteOCL.g:9671:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
@@ -29253,7 +29253,7 @@
             // InternalCompleteOCL.g:9672:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
             // InternalCompleteOCL.g:9673:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
             // InternalCompleteOCL.g:9673:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0
@@ -29267,7 +29267,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
 
             }
@@ -29295,7 +29295,7 @@
     public final void rule__MapLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9687:1: ( rule__MapLiteralExpCS__Group_2__1__Impl )
             // InternalCompleteOCL.g:9688:2: rule__MapLiteralExpCS__Group_2__1__Impl
@@ -29328,7 +29328,7 @@
     public final void rule__MapLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9698:1: ( ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) )
             // InternalCompleteOCL.g:9699:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
@@ -29337,7 +29337,7 @@
             // InternalCompleteOCL.g:9700:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1());
             }
             // InternalCompleteOCL.g:9701:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             loop88:
@@ -29369,7 +29369,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1());
             }
 
             }
@@ -29397,7 +29397,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9719:1: ( rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 )
             // InternalCompleteOCL.g:9720:2: rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1
@@ -29435,7 +29435,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9731:1: ( ( ',' ) )
             // InternalCompleteOCL.g:9732:1: ( ',' )
@@ -29444,11 +29444,11 @@
             // InternalCompleteOCL.g:9733:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
 
             }
@@ -29476,7 +29476,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9750:1: ( rule__MapLiteralExpCS__Group_2_1__1__Impl )
             // InternalCompleteOCL.g:9751:2: rule__MapLiteralExpCS__Group_2_1__1__Impl
@@ -29509,7 +29509,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9761:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
             // InternalCompleteOCL.g:9762:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
@@ -29518,7 +29518,7 @@
             // InternalCompleteOCL.g:9763:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
             // InternalCompleteOCL.g:9764:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             // InternalCompleteOCL.g:9764:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1
@@ -29532,7 +29532,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
 
             }
@@ -29560,7 +29560,7 @@
     public final void rule__MapLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9782:1: ( rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 )
             // InternalCompleteOCL.g:9783:2: rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1
@@ -29598,7 +29598,7 @@
     public final void rule__MapLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9794:1: ( ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) )
             // InternalCompleteOCL.g:9795:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
@@ -29607,7 +29607,7 @@
             // InternalCompleteOCL.g:9796:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0());
             }
             // InternalCompleteOCL.g:9797:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
             // InternalCompleteOCL.g:9797:2: rule__MapLiteralPartCS__OwnedKeyAssignment_0
@@ -29621,7 +29621,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0());
             }
 
             }
@@ -29649,7 +29649,7 @@
     public final void rule__MapLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9811:1: ( rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 )
             // InternalCompleteOCL.g:9812:2: rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2
@@ -29687,7 +29687,7 @@
     public final void rule__MapLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9823:1: ( ( '<-' ) )
             // InternalCompleteOCL.g:9824:1: ( '<-' )
@@ -29696,11 +29696,11 @@
             // InternalCompleteOCL.g:9825:1: '<-'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
             }
             match(input,80,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
             }
 
             }
@@ -29728,7 +29728,7 @@
     public final void rule__MapLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9842:1: ( rule__MapLiteralPartCS__Group__2__Impl )
             // InternalCompleteOCL.g:9843:2: rule__MapLiteralPartCS__Group__2__Impl
@@ -29761,7 +29761,7 @@
     public final void rule__MapLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9853:1: ( ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) )
             // InternalCompleteOCL.g:9854:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
@@ -29770,7 +29770,7 @@
             // InternalCompleteOCL.g:9855:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2());
             }
             // InternalCompleteOCL.g:9856:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
             // InternalCompleteOCL.g:9856:2: rule__MapLiteralPartCS__OwnedValueAssignment_2
@@ -29784,7 +29784,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2());
             }
 
             }
@@ -29812,7 +29812,7 @@
     public final void rule__TupleLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9876:1: ( rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 )
             // InternalCompleteOCL.g:9877:2: rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1
@@ -29850,7 +29850,7 @@
     public final void rule__TupleLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9888:1: ( ( 'Tuple' ) )
             // InternalCompleteOCL.g:9889:1: ( 'Tuple' )
@@ -29859,11 +29859,11 @@
             // InternalCompleteOCL.g:9890:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
             }
 
             }
@@ -29891,7 +29891,7 @@
     public final void rule__TupleLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9907:1: ( rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 )
             // InternalCompleteOCL.g:9908:2: rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2
@@ -29929,7 +29929,7 @@
     public final void rule__TupleLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9919:1: ( ( '{' ) )
             // InternalCompleteOCL.g:9920:1: ( '{' )
@@ -29938,11 +29938,11 @@
             // InternalCompleteOCL.g:9921:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,75,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -29970,7 +29970,7 @@
     public final void rule__TupleLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9938:1: ( rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 )
             // InternalCompleteOCL.g:9939:2: rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3
@@ -30008,7 +30008,7 @@
     public final void rule__TupleLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9950:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) )
             // InternalCompleteOCL.g:9951:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
@@ -30017,7 +30017,7 @@
             // InternalCompleteOCL.g:9952:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2());
             }
             // InternalCompleteOCL.g:9953:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
             // InternalCompleteOCL.g:9953:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_2
@@ -30031,7 +30031,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2());
             }
 
             }
@@ -30059,7 +30059,7 @@
     public final void rule__TupleLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9967:1: ( rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 )
             // InternalCompleteOCL.g:9968:2: rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4
@@ -30097,7 +30097,7 @@
     public final void rule__TupleLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9979:1: ( ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) )
             // InternalCompleteOCL.g:9980:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
@@ -30106,7 +30106,7 @@
             // InternalCompleteOCL.g:9981:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3());
             }
             // InternalCompleteOCL.g:9982:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             loop89:
@@ -30138,7 +30138,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3());
             }
 
             }
@@ -30166,7 +30166,7 @@
     public final void rule__TupleLiteralExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:9996:1: ( rule__TupleLiteralExpCS__Group__4__Impl )
             // InternalCompleteOCL.g:9997:2: rule__TupleLiteralExpCS__Group__4__Impl
@@ -30199,7 +30199,7 @@
     public final void rule__TupleLiteralExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10007:1: ( ( '}' ) )
             // InternalCompleteOCL.g:10008:1: ( '}' )
@@ -30208,11 +30208,11 @@
             // InternalCompleteOCL.g:10009:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
             }
             match(input,76,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
             }
 
             }
@@ -30240,7 +30240,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10036:1: ( rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 )
             // InternalCompleteOCL.g:10037:2: rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1
@@ -30278,7 +30278,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10048:1: ( ( ',' ) )
             // InternalCompleteOCL.g:10049:1: ( ',' )
@@ -30287,11 +30287,11 @@
             // InternalCompleteOCL.g:10050:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
             }
 
             }
@@ -30319,7 +30319,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10067:1: ( rule__TupleLiteralExpCS__Group_3__1__Impl )
             // InternalCompleteOCL.g:10068:2: rule__TupleLiteralExpCS__Group_3__1__Impl
@@ -30352,7 +30352,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10078:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) )
             // InternalCompleteOCL.g:10079:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
@@ -30361,7 +30361,7 @@
             // InternalCompleteOCL.g:10080:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1());
             }
             // InternalCompleteOCL.g:10081:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
             // InternalCompleteOCL.g:10081:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1
@@ -30375,7 +30375,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1());
             }
 
             }
@@ -30403,7 +30403,7 @@
     public final void rule__TupleLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10099:1: ( rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 )
             // InternalCompleteOCL.g:10100:2: rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1
@@ -30441,7 +30441,7 @@
     public final void rule__TupleLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10111:1: ( ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) )
             // InternalCompleteOCL.g:10112:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
@@ -30450,7 +30450,7 @@
             // InternalCompleteOCL.g:10113:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0());
             }
             // InternalCompleteOCL.g:10114:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
             // InternalCompleteOCL.g:10114:2: rule__TupleLiteralPartCS__NameAssignment_0
@@ -30464,7 +30464,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0());
             }
 
             }
@@ -30492,7 +30492,7 @@
     public final void rule__TupleLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10128:1: ( rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 )
             // InternalCompleteOCL.g:10129:2: rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2
@@ -30530,7 +30530,7 @@
     public final void rule__TupleLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10140:1: ( ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) )
             // InternalCompleteOCL.g:10141:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
@@ -30539,7 +30539,7 @@
             // InternalCompleteOCL.g:10142:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1());
             }
             // InternalCompleteOCL.g:10143:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             int alt90=2;
@@ -30564,7 +30564,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1());
             }
 
             }
@@ -30592,7 +30592,7 @@
     public final void rule__TupleLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10157:1: ( rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 )
             // InternalCompleteOCL.g:10158:2: rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3
@@ -30630,7 +30630,7 @@
     public final void rule__TupleLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10169:1: ( ( '=' ) )
             // InternalCompleteOCL.g:10170:1: ( '=' )
@@ -30639,11 +30639,11 @@
             // InternalCompleteOCL.g:10171:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
             }
             match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
             }
 
             }
@@ -30671,7 +30671,7 @@
     public final void rule__TupleLiteralPartCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10188:1: ( rule__TupleLiteralPartCS__Group__3__Impl )
             // InternalCompleteOCL.g:10189:2: rule__TupleLiteralPartCS__Group__3__Impl
@@ -30704,7 +30704,7 @@
     public final void rule__TupleLiteralPartCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10199:1: ( ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) )
             // InternalCompleteOCL.g:10200:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
@@ -30713,7 +30713,7 @@
             // InternalCompleteOCL.g:10201:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3());
             }
             // InternalCompleteOCL.g:10202:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
             // InternalCompleteOCL.g:10202:2: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3
@@ -30727,7 +30727,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3());
             }
 
             }
@@ -30755,7 +30755,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10224:1: ( rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 )
             // InternalCompleteOCL.g:10225:2: rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1
@@ -30793,7 +30793,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10236:1: ( ( ':' ) )
             // InternalCompleteOCL.g:10237:1: ( ':' )
@@ -30802,11 +30802,11 @@
             // InternalCompleteOCL.g:10238:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
             }
 
             }
@@ -30834,7 +30834,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10255:1: ( rule__TupleLiteralPartCS__Group_1__1__Impl )
             // InternalCompleteOCL.g:10256:2: rule__TupleLiteralPartCS__Group_1__1__Impl
@@ -30867,7 +30867,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10266:1: ( ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) )
             // InternalCompleteOCL.g:10267:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
@@ -30876,7 +30876,7 @@
             // InternalCompleteOCL.g:10268:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1());
             }
             // InternalCompleteOCL.g:10269:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
             // InternalCompleteOCL.g:10269:2: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1
@@ -30890,7 +30890,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1());
             }
 
             }
@@ -30918,7 +30918,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10287:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 )
             // InternalCompleteOCL.g:10288:2: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1
@@ -30956,7 +30956,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10299:1: ( ( () ) )
             // InternalCompleteOCL.g:10300:1: ( () )
@@ -30965,15 +30965,15 @@
             // InternalCompleteOCL.g:10301:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0());
             }
             // InternalCompleteOCL.g:10302:1: ()
-            // InternalCompleteOCL.g:10304:1: 
+            // InternalCompleteOCL.g:10304:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0());
             }
 
             }
@@ -30997,7 +30997,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10318:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl )
             // InternalCompleteOCL.g:10319:2: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl
@@ -31030,7 +31030,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10329:1: ( ( '*' ) )
             // InternalCompleteOCL.g:10330:1: ( '*' )
@@ -31039,11 +31039,11 @@
             // InternalCompleteOCL.g:10331:1: '*'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
             }
             match(input,34,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
             }
 
             }
@@ -31071,7 +31071,7 @@
     public final void rule__InvalidLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10352:1: ( rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 )
             // InternalCompleteOCL.g:10353:2: rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1
@@ -31109,7 +31109,7 @@
     public final void rule__InvalidLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10364:1: ( ( () ) )
             // InternalCompleteOCL.g:10365:1: ( () )
@@ -31118,15 +31118,15 @@
             // InternalCompleteOCL.g:10366:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0()); 
+               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0());
             }
             // InternalCompleteOCL.g:10367:1: ()
-            // InternalCompleteOCL.g:10369:1: 
+            // InternalCompleteOCL.g:10369:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0()); 
+               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0());
             }
 
             }
@@ -31150,7 +31150,7 @@
     public final void rule__InvalidLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10383:1: ( rule__InvalidLiteralExpCS__Group__1__Impl )
             // InternalCompleteOCL.g:10384:2: rule__InvalidLiteralExpCS__Group__1__Impl
@@ -31183,7 +31183,7 @@
     public final void rule__InvalidLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10394:1: ( ( 'invalid' ) )
             // InternalCompleteOCL.g:10395:1: ( 'invalid' )
@@ -31192,11 +31192,11 @@
             // InternalCompleteOCL.g:10396:1: 'invalid'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); 
+               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
             }
             match(input,81,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); 
+               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
             }
 
             }
@@ -31224,7 +31224,7 @@
     public final void rule__NullLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10417:1: ( rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 )
             // InternalCompleteOCL.g:10418:2: rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1
@@ -31262,7 +31262,7 @@
     public final void rule__NullLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10429:1: ( ( () ) )
             // InternalCompleteOCL.g:10430:1: ( () )
@@ -31271,15 +31271,15 @@
             // InternalCompleteOCL.g:10431:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0()); 
+               before(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0());
             }
             // InternalCompleteOCL.g:10432:1: ()
-            // InternalCompleteOCL.g:10434:1: 
+            // InternalCompleteOCL.g:10434:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0()); 
+               after(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0());
             }
 
             }
@@ -31303,7 +31303,7 @@
     public final void rule__NullLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10448:1: ( rule__NullLiteralExpCS__Group__1__Impl )
             // InternalCompleteOCL.g:10449:2: rule__NullLiteralExpCS__Group__1__Impl
@@ -31336,7 +31336,7 @@
     public final void rule__NullLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10459:1: ( ( 'null' ) )
             // InternalCompleteOCL.g:10460:1: ( 'null' )
@@ -31345,11 +31345,11 @@
             // InternalCompleteOCL.g:10461:1: 'null'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); 
+               before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); 
+               after(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
             }
 
             }
@@ -31377,7 +31377,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10482:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 )
             // InternalCompleteOCL.g:10483:2: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1
@@ -31415,7 +31415,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10494:1: ( ( ruleTypeLiteralCS ) )
             // InternalCompleteOCL.g:10495:1: ( ruleTypeLiteralCS )
@@ -31424,7 +31424,7 @@
             // InternalCompleteOCL.g:10496:1: ruleTypeLiteralCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeLiteralCS();
@@ -31432,7 +31432,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
             }
 
             }
@@ -31460,7 +31460,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10511:1: ( rule__TypeLiteralWithMultiplicityCS__Group__1__Impl )
             // InternalCompleteOCL.g:10512:2: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl
@@ -31493,7 +31493,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10522:1: ( ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) )
             // InternalCompleteOCL.g:10523:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
@@ -31502,7 +31502,7 @@
             // InternalCompleteOCL.g:10524:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1());
             }
             // InternalCompleteOCL.g:10525:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             int alt91=2;
@@ -31527,7 +31527,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1());
             }
 
             }
@@ -31555,7 +31555,7 @@
     public final void rule__TypeNameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10543:1: ( rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 )
             // InternalCompleteOCL.g:10544:2: rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1
@@ -31593,7 +31593,7 @@
     public final void rule__TypeNameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10555:1: ( ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) )
             // InternalCompleteOCL.g:10556:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
@@ -31602,7 +31602,7 @@
             // InternalCompleteOCL.g:10557:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
             // InternalCompleteOCL.g:10558:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
             // InternalCompleteOCL.g:10558:2: rule__TypeNameExpCS__OwnedPathNameAssignment_0
@@ -31616,7 +31616,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
 
             }
@@ -31644,7 +31644,7 @@
     public final void rule__TypeNameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10572:1: ( rule__TypeNameExpCS__Group__1__Impl )
             // InternalCompleteOCL.g:10573:2: rule__TypeNameExpCS__Group__1__Impl
@@ -31677,7 +31677,7 @@
     public final void rule__TypeNameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10583:1: ( ( ( rule__TypeNameExpCS__Group_1__0 )? ) )
             // InternalCompleteOCL.g:10584:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
@@ -31686,7 +31686,7 @@
             // InternalCompleteOCL.g:10585:1: ( rule__TypeNameExpCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1());
             }
             // InternalCompleteOCL.g:10586:1: ( rule__TypeNameExpCS__Group_1__0 )?
             int alt92=2;
@@ -31711,7 +31711,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1());
             }
 
             }
@@ -31739,7 +31739,7 @@
     public final void rule__TypeNameExpCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10604:1: ( rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 )
             // InternalCompleteOCL.g:10605:2: rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1
@@ -31777,7 +31777,7 @@
     public final void rule__TypeNameExpCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10616:1: ( ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) )
             // InternalCompleteOCL.g:10617:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
@@ -31786,7 +31786,7 @@
             // InternalCompleteOCL.g:10618:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0());
             }
             // InternalCompleteOCL.g:10619:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
             // InternalCompleteOCL.g:10619:2: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0
@@ -31800,7 +31800,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0());
             }
 
             }
@@ -31828,7 +31828,7 @@
     public final void rule__TypeNameExpCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10633:1: ( rule__TypeNameExpCS__Group_1__1__Impl )
             // InternalCompleteOCL.g:10634:2: rule__TypeNameExpCS__Group_1__1__Impl
@@ -31861,7 +31861,7 @@
     public final void rule__TypeNameExpCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10644:1: ( ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) )
             // InternalCompleteOCL.g:10645:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
@@ -31870,7 +31870,7 @@
             // InternalCompleteOCL.g:10646:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1());
             }
             // InternalCompleteOCL.g:10647:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             int alt93=2;
@@ -31895,7 +31895,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1());
             }
 
             }
@@ -31923,7 +31923,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10665:1: ( rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 )
             // InternalCompleteOCL.g:10666:2: rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1
@@ -31961,7 +31961,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10677:1: ( ( '{' ) )
             // InternalCompleteOCL.g:10678:1: ( '{' )
@@ -31970,11 +31970,11 @@
             // InternalCompleteOCL.g:10679:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
             }
             match(input,75,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
             }
 
             }
@@ -32002,7 +32002,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10696:1: ( rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 )
             // InternalCompleteOCL.g:10697:2: rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2
@@ -32040,7 +32040,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10708:1: ( ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) )
             // InternalCompleteOCL.g:10709:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
@@ -32049,7 +32049,7 @@
             // InternalCompleteOCL.g:10710:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1());
             }
             // InternalCompleteOCL.g:10711:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
             // InternalCompleteOCL.g:10711:2: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1
@@ -32063,7 +32063,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1());
             }
 
             }
@@ -32091,7 +32091,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10725:1: ( rule__TypeNameExpCS__Group_1_1__2__Impl )
             // InternalCompleteOCL.g:10726:2: rule__TypeNameExpCS__Group_1_1__2__Impl
@@ -32124,7 +32124,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10736:1: ( ( '}' ) )
             // InternalCompleteOCL.g:10737:1: ( '}' )
@@ -32133,11 +32133,11 @@
             // InternalCompleteOCL.g:10738:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
             }
             match(input,76,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
             }
 
             }
@@ -32165,7 +32165,7 @@
     public final void rule__TypeExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10761:1: ( rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 )
             // InternalCompleteOCL.g:10762:2: rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1
@@ -32203,7 +32203,7 @@
     public final void rule__TypeExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10773:1: ( ( ( rule__TypeExpCS__Alternatives_0 ) ) )
             // InternalCompleteOCL.g:10774:1: ( ( rule__TypeExpCS__Alternatives_0 ) )
@@ -32212,7 +32212,7 @@
             // InternalCompleteOCL.g:10775:1: ( rule__TypeExpCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getAlternatives_0()); 
+               before(grammarAccess.getTypeExpCSAccess().getAlternatives_0());
             }
             // InternalCompleteOCL.g:10776:1: ( rule__TypeExpCS__Alternatives_0 )
             // InternalCompleteOCL.g:10776:2: rule__TypeExpCS__Alternatives_0
@@ -32226,7 +32226,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getAlternatives_0()); 
+               after(grammarAccess.getTypeExpCSAccess().getAlternatives_0());
             }
 
             }
@@ -32254,7 +32254,7 @@
     public final void rule__TypeExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10790:1: ( rule__TypeExpCS__Group__1__Impl )
             // InternalCompleteOCL.g:10791:2: rule__TypeExpCS__Group__1__Impl
@@ -32287,7 +32287,7 @@
     public final void rule__TypeExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10801:1: ( ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) )
             // InternalCompleteOCL.g:10802:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
@@ -32296,7 +32296,7 @@
             // InternalCompleteOCL.g:10803:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1()); 
+               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1());
             }
             // InternalCompleteOCL.g:10804:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             int alt94=2;
@@ -32321,7 +32321,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1()); 
+               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1());
             }
 
             }
@@ -32349,7 +32349,7 @@
     public final void rule__ExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10822:1: ( rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 )
             // InternalCompleteOCL.g:10823:2: rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1
@@ -32387,7 +32387,7 @@
     public final void rule__ExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10834:1: ( ( rulePrefixedPrimaryExpCS ) )
             // InternalCompleteOCL.g:10835:1: ( rulePrefixedPrimaryExpCS )
@@ -32396,7 +32396,7 @@
             // InternalCompleteOCL.g:10836:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
+               before(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrefixedPrimaryExpCS();
@@ -32404,7 +32404,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
+               after(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
             }
 
             }
@@ -32432,7 +32432,7 @@
     public final void rule__ExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10851:1: ( rule__ExpCS__Group_0__1__Impl )
             // InternalCompleteOCL.g:10852:2: rule__ExpCS__Group_0__1__Impl
@@ -32465,7 +32465,7 @@
     public final void rule__ExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10862:1: ( ( ( rule__ExpCS__Group_0_1__0 )? ) )
             // InternalCompleteOCL.g:10863:1: ( ( rule__ExpCS__Group_0_1__0 )? )
@@ -32474,7 +32474,7 @@
             // InternalCompleteOCL.g:10864:1: ( rule__ExpCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getGroup_0_1()); 
+               before(grammarAccess.getExpCSAccess().getGroup_0_1());
             }
             // InternalCompleteOCL.g:10865:1: ( rule__ExpCS__Group_0_1__0 )?
             int alt95=2;
@@ -32499,7 +32499,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getGroup_0_1()); 
+               after(grammarAccess.getExpCSAccess().getGroup_0_1());
             }
 
             }
@@ -32527,7 +32527,7 @@
     public final void rule__ExpCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10883:1: ( rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 )
             // InternalCompleteOCL.g:10884:2: rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1
@@ -32565,7 +32565,7 @@
     public final void rule__ExpCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10895:1: ( ( () ) )
             // InternalCompleteOCL.g:10896:1: ( () )
@@ -32574,15 +32574,15 @@
             // InternalCompleteOCL.g:10897:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0()); 
+               before(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0());
             }
             // InternalCompleteOCL.g:10898:1: ()
-            // InternalCompleteOCL.g:10900:1: 
+            // InternalCompleteOCL.g:10900:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0()); 
+               after(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0());
             }
 
             }
@@ -32606,7 +32606,7 @@
     public final void rule__ExpCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10914:1: ( rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 )
             // InternalCompleteOCL.g:10915:2: rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2
@@ -32644,7 +32644,7 @@
     public final void rule__ExpCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10926:1: ( ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) )
             // InternalCompleteOCL.g:10927:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
@@ -32653,7 +32653,7 @@
             // InternalCompleteOCL.g:10928:1: ( rule__ExpCS__NameAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1()); 
+               before(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1());
             }
             // InternalCompleteOCL.g:10929:1: ( rule__ExpCS__NameAssignment_0_1_1 )
             // InternalCompleteOCL.g:10929:2: rule__ExpCS__NameAssignment_0_1_1
@@ -32667,7 +32667,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1()); 
+               after(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1());
             }
 
             }
@@ -32695,7 +32695,7 @@
     public final void rule__ExpCS__Group_0_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10943:1: ( rule__ExpCS__Group_0_1__2__Impl )
             // InternalCompleteOCL.g:10944:2: rule__ExpCS__Group_0_1__2__Impl
@@ -32728,7 +32728,7 @@
     public final void rule__ExpCS__Group_0_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10954:1: ( ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) )
             // InternalCompleteOCL.g:10955:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
@@ -32737,7 +32737,7 @@
             // InternalCompleteOCL.g:10956:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2()); 
+               before(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2());
             }
             // InternalCompleteOCL.g:10957:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
             // InternalCompleteOCL.g:10957:2: rule__ExpCS__OwnedRightAssignment_0_1_2
@@ -32751,7 +32751,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2()); 
+               after(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2());
             }
 
             }
@@ -32779,7 +32779,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10977:1: ( rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 )
             // InternalCompleteOCL.g:10978:2: rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1
@@ -32817,7 +32817,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:10989:1: ( ( () ) )
             // InternalCompleteOCL.g:10990:1: ( () )
@@ -32826,15 +32826,15 @@
             // InternalCompleteOCL.g:10991:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0());
             }
             // InternalCompleteOCL.g:10992:1: ()
-            // InternalCompleteOCL.g:10994:1: 
+            // InternalCompleteOCL.g:10994:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0());
             }
 
             }
@@ -32858,7 +32858,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11008:1: ( rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 )
             // InternalCompleteOCL.g:11009:2: rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2
@@ -32896,7 +32896,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11020:1: ( ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) )
             // InternalCompleteOCL.g:11021:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
@@ -32905,7 +32905,7 @@
             // InternalCompleteOCL.g:11022:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1());
             }
             // InternalCompleteOCL.g:11023:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
             // InternalCompleteOCL.g:11023:2: rule__PrefixedLetExpCS__NameAssignment_0_1
@@ -32919,7 +32919,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1());
             }
 
             }
@@ -32947,7 +32947,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11037:1: ( rule__PrefixedLetExpCS__Group_0__2__Impl )
             // InternalCompleteOCL.g:11038:2: rule__PrefixedLetExpCS__Group_0__2__Impl
@@ -32980,7 +32980,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11048:1: ( ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) )
             // InternalCompleteOCL.g:11049:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
@@ -32989,7 +32989,7 @@
             // InternalCompleteOCL.g:11050:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2());
             }
             // InternalCompleteOCL.g:11051:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
             // InternalCompleteOCL.g:11051:2: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2
@@ -33003,7 +33003,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2());
             }
 
             }
@@ -33031,7 +33031,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11071:1: ( rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 )
             // InternalCompleteOCL.g:11072:2: rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1
@@ -33069,7 +33069,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11083:1: ( ( () ) )
             // InternalCompleteOCL.g:11084:1: ( () )
@@ -33078,15 +33078,15 @@
             // InternalCompleteOCL.g:11085:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0());
             }
             // InternalCompleteOCL.g:11086:1: ()
-            // InternalCompleteOCL.g:11088:1: 
+            // InternalCompleteOCL.g:11088:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0());
             }
 
             }
@@ -33110,7 +33110,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11102:1: ( rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 )
             // InternalCompleteOCL.g:11103:2: rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2
@@ -33148,7 +33148,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11114:1: ( ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) )
             // InternalCompleteOCL.g:11115:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
@@ -33157,7 +33157,7 @@
             // InternalCompleteOCL.g:11116:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1());
             }
             // InternalCompleteOCL.g:11117:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
             // InternalCompleteOCL.g:11117:2: rule__PrefixedPrimaryExpCS__NameAssignment_0_1
@@ -33171,7 +33171,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1());
             }
 
             }
@@ -33199,7 +33199,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11131:1: ( rule__PrefixedPrimaryExpCS__Group_0__2__Impl )
             // InternalCompleteOCL.g:11132:2: rule__PrefixedPrimaryExpCS__Group_0__2__Impl
@@ -33232,7 +33232,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11142:1: ( ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) )
             // InternalCompleteOCL.g:11143:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
@@ -33241,7 +33241,7 @@
             // InternalCompleteOCL.g:11144:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2());
             }
             // InternalCompleteOCL.g:11145:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
             // InternalCompleteOCL.g:11145:2: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2
@@ -33255,7 +33255,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2());
             }
 
             }
@@ -33283,7 +33283,7 @@
     public final void rule__NameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11165:1: ( rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 )
             // InternalCompleteOCL.g:11166:2: rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1
@@ -33321,7 +33321,7 @@
     public final void rule__NameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11177:1: ( ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) )
             // InternalCompleteOCL.g:11178:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
@@ -33330,7 +33330,7 @@
             // InternalCompleteOCL.g:11179:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
             // InternalCompleteOCL.g:11180:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
             // InternalCompleteOCL.g:11180:2: rule__NameExpCS__OwnedPathNameAssignment_0
@@ -33344,7 +33344,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
 
             }
@@ -33372,7 +33372,7 @@
     public final void rule__NameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11194:1: ( rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 )
             // InternalCompleteOCL.g:11195:2: rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2
@@ -33410,7 +33410,7 @@
     public final void rule__NameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11206:1: ( ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) )
             // InternalCompleteOCL.g:11207:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
@@ -33419,7 +33419,7 @@
             // InternalCompleteOCL.g:11208:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1());
             }
             // InternalCompleteOCL.g:11209:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             loop96:
@@ -33451,7 +33451,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1());
             }
 
             }
@@ -33479,7 +33479,7 @@
     public final void rule__NameExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11223:1: ( rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 )
             // InternalCompleteOCL.g:11224:2: rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3
@@ -33517,7 +33517,7 @@
     public final void rule__NameExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11235:1: ( ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) )
             // InternalCompleteOCL.g:11236:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
@@ -33526,7 +33526,7 @@
             // InternalCompleteOCL.g:11237:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2());
             }
             // InternalCompleteOCL.g:11238:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             int alt97=2;
@@ -33551,7 +33551,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2());
             }
 
             }
@@ -33579,7 +33579,7 @@
     public final void rule__NameExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11252:1: ( rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 )
             // InternalCompleteOCL.g:11253:2: rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4
@@ -33617,7 +33617,7 @@
     public final void rule__NameExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11264:1: ( ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) )
             // InternalCompleteOCL.g:11265:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
@@ -33626,7 +33626,7 @@
             // InternalCompleteOCL.g:11266:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3());
             }
             // InternalCompleteOCL.g:11267:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             int alt98=2;
@@ -33651,7 +33651,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3());
             }
 
             }
@@ -33679,7 +33679,7 @@
     public final void rule__NameExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11281:1: ( rule__NameExpCS__Group__4__Impl )
             // InternalCompleteOCL.g:11282:2: rule__NameExpCS__Group__4__Impl
@@ -33712,7 +33712,7 @@
     public final void rule__NameExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11292:1: ( ( ( rule__NameExpCS__Group_4__0 )? ) )
             // InternalCompleteOCL.g:11293:1: ( ( rule__NameExpCS__Group_4__0 )? )
@@ -33721,7 +33721,7 @@
             // InternalCompleteOCL.g:11294:1: ( rule__NameExpCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getGroup_4()); 
+               before(grammarAccess.getNameExpCSAccess().getGroup_4());
             }
             // InternalCompleteOCL.g:11295:1: ( rule__NameExpCS__Group_4__0 )?
             int alt99=2;
@@ -33746,7 +33746,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getGroup_4()); 
+               after(grammarAccess.getNameExpCSAccess().getGroup_4());
             }
 
             }
@@ -33774,7 +33774,7 @@
     public final void rule__NameExpCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11319:1: ( rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 )
             // InternalCompleteOCL.g:11320:2: rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1
@@ -33812,7 +33812,7 @@
     public final void rule__NameExpCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11331:1: ( ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) )
             // InternalCompleteOCL.g:11332:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
@@ -33821,7 +33821,7 @@
             // InternalCompleteOCL.g:11333:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0()); 
+               before(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0());
             }
             // InternalCompleteOCL.g:11334:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
             // InternalCompleteOCL.g:11334:2: rule__NameExpCS__IsPreAssignment_4_0
@@ -33835,7 +33835,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0()); 
+               after(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0());
             }
 
             }
@@ -33863,7 +33863,7 @@
     public final void rule__NameExpCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11348:1: ( rule__NameExpCS__Group_4__1__Impl )
             // InternalCompleteOCL.g:11349:2: rule__NameExpCS__Group_4__1__Impl
@@ -33896,7 +33896,7 @@
     public final void rule__NameExpCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11359:1: ( ( 'pre' ) )
             // InternalCompleteOCL.g:11360:1: ( 'pre' )
@@ -33905,11 +33905,11 @@
             // InternalCompleteOCL.g:11361:1: 'pre'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); 
+               before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
             }
             match(input,67,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); 
+               after(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
             }
 
             }
@@ -33937,7 +33937,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11382:1: ( rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 )
             // InternalCompleteOCL.g:11383:2: rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1
@@ -33975,7 +33975,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11394:1: ( ( () ) )
             // InternalCompleteOCL.g:11395:1: ( () )
@@ -33984,15 +33984,15 @@
             // InternalCompleteOCL.g:11396:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0());
             }
             // InternalCompleteOCL.g:11397:1: ()
-            // InternalCompleteOCL.g:11399:1: 
+            // InternalCompleteOCL.g:11399:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0());
             }
 
             }
@@ -34016,7 +34016,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11413:1: ( rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 )
             // InternalCompleteOCL.g:11414:2: rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2
@@ -34054,7 +34054,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11425:1: ( ( '{' ) )
             // InternalCompleteOCL.g:11426:1: ( '{' )
@@ -34063,11 +34063,11 @@
             // InternalCompleteOCL.g:11427:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,75,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -34095,7 +34095,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11444:1: ( rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 )
             // InternalCompleteOCL.g:11445:2: rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3
@@ -34133,7 +34133,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11456:1: ( ( ( rule__CurlyBracketedClauseCS__Alternatives_2 ) ) )
             // InternalCompleteOCL.g:11457:1: ( ( rule__CurlyBracketedClauseCS__Alternatives_2 ) )
@@ -34142,7 +34142,7 @@
             // InternalCompleteOCL.g:11458:1: ( rule__CurlyBracketedClauseCS__Alternatives_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2());
             }
             // InternalCompleteOCL.g:11459:1: ( rule__CurlyBracketedClauseCS__Alternatives_2 )
             // InternalCompleteOCL.g:11459:2: rule__CurlyBracketedClauseCS__Alternatives_2
@@ -34156,7 +34156,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2());
             }
 
             }
@@ -34184,7 +34184,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11473:1: ( rule__CurlyBracketedClauseCS__Group__3__Impl )
             // InternalCompleteOCL.g:11474:2: rule__CurlyBracketedClauseCS__Group__3__Impl
@@ -34217,7 +34217,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11484:1: ( ( '}' ) )
             // InternalCompleteOCL.g:11485:1: ( '}' )
@@ -34226,11 +34226,11 @@
             // InternalCompleteOCL.g:11486:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,76,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -34258,7 +34258,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11511:1: ( rule__CurlyBracketedClauseCS__Group_2_0__0__Impl rule__CurlyBracketedClauseCS__Group_2_0__1 )
             // InternalCompleteOCL.g:11512:2: rule__CurlyBracketedClauseCS__Group_2_0__0__Impl rule__CurlyBracketedClauseCS__Group_2_0__1
@@ -34296,7 +34296,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11523:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 ) ) )
             // InternalCompleteOCL.g:11524:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 ) )
@@ -34305,7 +34305,7 @@
             // InternalCompleteOCL.g:11525:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0());
             }
             // InternalCompleteOCL.g:11526:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 )
             // InternalCompleteOCL.g:11526:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0
@@ -34319,7 +34319,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0());
             }
 
             }
@@ -34347,7 +34347,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11540:1: ( rule__CurlyBracketedClauseCS__Group_2_0__1__Impl )
             // InternalCompleteOCL.g:11541:2: rule__CurlyBracketedClauseCS__Group_2_0__1__Impl
@@ -34380,7 +34380,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11551:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )* ) )
             // InternalCompleteOCL.g:11552:1: ( ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )* )
@@ -34389,7 +34389,7 @@
             // InternalCompleteOCL.g:11553:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1());
             }
             // InternalCompleteOCL.g:11554:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )*
             loop100:
@@ -34421,7 +34421,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1());
             }
 
             }
@@ -34449,7 +34449,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11572:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_0_1__1 )
             // InternalCompleteOCL.g:11573:2: rule__CurlyBracketedClauseCS__Group_2_0_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_0_1__1
@@ -34487,7 +34487,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11584:1: ( ( ',' ) )
             // InternalCompleteOCL.g:11585:1: ( ',' )
@@ -34496,11 +34496,11 @@
             // InternalCompleteOCL.g:11586:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
             }
 
             }
@@ -34528,7 +34528,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11603:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__1__Impl )
             // InternalCompleteOCL.g:11604:2: rule__CurlyBracketedClauseCS__Group_2_0_1__1__Impl
@@ -34561,7 +34561,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11614:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 ) ) )
             // InternalCompleteOCL.g:11615:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 ) )
@@ -34570,7 +34570,7 @@
             // InternalCompleteOCL.g:11616:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1());
             }
             // InternalCompleteOCL.g:11617:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 )
             // InternalCompleteOCL.g:11617:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1
@@ -34584,7 +34584,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1());
             }
 
             }
@@ -34612,7 +34612,7 @@
     public final void rule__RoundBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11635:1: ( rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 )
             // InternalCompleteOCL.g:11636:2: rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1
@@ -34650,7 +34650,7 @@
     public final void rule__RoundBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11647:1: ( ( () ) )
             // InternalCompleteOCL.g:11648:1: ( () )
@@ -34659,15 +34659,15 @@
             // InternalCompleteOCL.g:11649:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0());
             }
             // InternalCompleteOCL.g:11650:1: ()
-            // InternalCompleteOCL.g:11652:1: 
+            // InternalCompleteOCL.g:11652:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0());
             }
 
             }
@@ -34691,7 +34691,7 @@
     public final void rule__RoundBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11666:1: ( rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 )
             // InternalCompleteOCL.g:11667:2: rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2
@@ -34729,7 +34729,7 @@
     public final void rule__RoundBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11678:1: ( ( '(' ) )
             // InternalCompleteOCL.g:11679:1: ( '(' )
@@ -34738,11 +34738,11 @@
             // InternalCompleteOCL.g:11680:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
             }
             match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
             }
 
             }
@@ -34770,7 +34770,7 @@
     public final void rule__RoundBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11697:1: ( rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 )
             // InternalCompleteOCL.g:11698:2: rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3
@@ -34808,7 +34808,7 @@
     public final void rule__RoundBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11709:1: ( ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) )
             // InternalCompleteOCL.g:11710:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
@@ -34817,7 +34817,7 @@
             // InternalCompleteOCL.g:11711:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2());
             }
             // InternalCompleteOCL.g:11712:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             int alt101=2;
@@ -34842,7 +34842,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2());
             }
 
             }
@@ -34870,7 +34870,7 @@
     public final void rule__RoundBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11726:1: ( rule__RoundBracketedClauseCS__Group__3__Impl )
             // InternalCompleteOCL.g:11727:2: rule__RoundBracketedClauseCS__Group__3__Impl
@@ -34903,7 +34903,7 @@
     public final void rule__RoundBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11737:1: ( ( ')' ) )
             // InternalCompleteOCL.g:11738:1: ( ')' )
@@ -34912,11 +34912,11 @@
             // InternalCompleteOCL.g:11739:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
             }
             match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
             }
 
             }
@@ -34944,7 +34944,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11764:1: ( rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 )
             // InternalCompleteOCL.g:11765:2: rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1
@@ -34982,7 +34982,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11776:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) )
             // InternalCompleteOCL.g:11777:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
@@ -34991,7 +34991,7 @@
             // InternalCompleteOCL.g:11778:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0());
             }
             // InternalCompleteOCL.g:11779:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
             // InternalCompleteOCL.g:11779:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0
@@ -35005,7 +35005,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0());
             }
 
             }
@@ -35033,7 +35033,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11793:1: ( rule__RoundBracketedClauseCS__Group_2__1__Impl rule__RoundBracketedClauseCS__Group_2__2 )
             // InternalCompleteOCL.g:11794:2: rule__RoundBracketedClauseCS__Group_2__1__Impl rule__RoundBracketedClauseCS__Group_2__2
@@ -35071,7 +35071,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11805:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) )
             // InternalCompleteOCL.g:11806:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
@@ -35080,7 +35080,7 @@
             // InternalCompleteOCL.g:11807:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1());
             }
             // InternalCompleteOCL.g:11808:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             loop102:
@@ -35112,7 +35112,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1());
             }
 
             }
@@ -35140,7 +35140,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11822:1: ( rule__RoundBracketedClauseCS__Group_2__2__Impl rule__RoundBracketedClauseCS__Group_2__3 )
             // InternalCompleteOCL.g:11823:2: rule__RoundBracketedClauseCS__Group_2__2__Impl rule__RoundBracketedClauseCS__Group_2__3
@@ -35178,7 +35178,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11834:1: ( ( ( rule__RoundBracketedClauseCS__Group_2_2__0 )? ) )
             // InternalCompleteOCL.g:11835:1: ( ( rule__RoundBracketedClauseCS__Group_2_2__0 )? )
@@ -35187,7 +35187,7 @@
             // InternalCompleteOCL.g:11836:1: ( rule__RoundBracketedClauseCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2());
             }
             // InternalCompleteOCL.g:11837:1: ( rule__RoundBracketedClauseCS__Group_2_2__0 )?
             int alt103=2;
@@ -35212,7 +35212,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2());
             }
 
             }
@@ -35240,7 +35240,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11851:1: ( rule__RoundBracketedClauseCS__Group_2__3__Impl )
             // InternalCompleteOCL.g:11852:2: rule__RoundBracketedClauseCS__Group_2__3__Impl
@@ -35273,7 +35273,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11862:1: ( ( ( rule__RoundBracketedClauseCS__Group_2_3__0 )* ) )
             // InternalCompleteOCL.g:11863:1: ( ( rule__RoundBracketedClauseCS__Group_2_3__0 )* )
@@ -35282,7 +35282,7 @@
             // InternalCompleteOCL.g:11864:1: ( rule__RoundBracketedClauseCS__Group_2_3__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3());
             }
             // InternalCompleteOCL.g:11865:1: ( rule__RoundBracketedClauseCS__Group_2_3__0 )*
             loop104:
@@ -35314,7 +35314,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3());
             }
 
             }
@@ -35342,7 +35342,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11887:1: ( rule__RoundBracketedClauseCS__Group_2_2__0__Impl rule__RoundBracketedClauseCS__Group_2_2__1 )
             // InternalCompleteOCL.g:11888:2: rule__RoundBracketedClauseCS__Group_2_2__0__Impl rule__RoundBracketedClauseCS__Group_2_2__1
@@ -35380,7 +35380,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11899:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 ) ) )
             // InternalCompleteOCL.g:11900:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 ) )
@@ -35389,7 +35389,7 @@
             // InternalCompleteOCL.g:11901:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0());
             }
             // InternalCompleteOCL.g:11902:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 )
             // InternalCompleteOCL.g:11902:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0
@@ -35403,7 +35403,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0());
             }
 
             }
@@ -35431,7 +35431,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11916:1: ( rule__RoundBracketedClauseCS__Group_2_2__1__Impl )
             // InternalCompleteOCL.g:11917:2: rule__RoundBracketedClauseCS__Group_2_2__1__Impl
@@ -35464,7 +35464,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11927:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )* ) )
             // InternalCompleteOCL.g:11928:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )* )
@@ -35473,7 +35473,7 @@
             // InternalCompleteOCL.g:11929:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1());
             }
             // InternalCompleteOCL.g:11930:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )*
             loop105:
@@ -35505,7 +35505,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1());
             }
 
             }
@@ -35533,7 +35533,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11948:1: ( rule__RoundBracketedClauseCS__Group_2_3__0__Impl rule__RoundBracketedClauseCS__Group_2_3__1 )
             // InternalCompleteOCL.g:11949:2: rule__RoundBracketedClauseCS__Group_2_3__0__Impl rule__RoundBracketedClauseCS__Group_2_3__1
@@ -35571,7 +35571,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11960:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 ) ) )
             // InternalCompleteOCL.g:11961:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 ) )
@@ -35580,7 +35580,7 @@
             // InternalCompleteOCL.g:11962:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0());
             }
             // InternalCompleteOCL.g:11963:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 )
             // InternalCompleteOCL.g:11963:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0
@@ -35594,7 +35594,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0());
             }
 
             }
@@ -35622,7 +35622,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11977:1: ( rule__RoundBracketedClauseCS__Group_2_3__1__Impl )
             // InternalCompleteOCL.g:11978:2: rule__RoundBracketedClauseCS__Group_2_3__1__Impl
@@ -35655,7 +35655,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:11988:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )* ) )
             // InternalCompleteOCL.g:11989:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )* )
@@ -35664,7 +35664,7 @@
             // InternalCompleteOCL.g:11990:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1());
             }
             // InternalCompleteOCL.g:11991:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )*
             loop106:
@@ -35696,7 +35696,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1());
             }
 
             }
@@ -35724,7 +35724,7 @@
     public final void rule__SquareBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12009:1: ( rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 )
             // InternalCompleteOCL.g:12010:2: rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1
@@ -35762,7 +35762,7 @@
     public final void rule__SquareBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12021:1: ( ( '[' ) )
             // InternalCompleteOCL.g:12022:1: ( '[' )
@@ -35771,11 +35771,11 @@
             // InternalCompleteOCL.g:12023:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
             }
 
             }
@@ -35803,7 +35803,7 @@
     public final void rule__SquareBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12040:1: ( rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 )
             // InternalCompleteOCL.g:12041:2: rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2
@@ -35841,7 +35841,7 @@
     public final void rule__SquareBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12052:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) )
             // InternalCompleteOCL.g:12053:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
@@ -35850,7 +35850,7 @@
             // InternalCompleteOCL.g:12054:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1());
             }
             // InternalCompleteOCL.g:12055:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
             // InternalCompleteOCL.g:12055:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1
@@ -35864,7 +35864,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1());
             }
 
             }
@@ -35892,7 +35892,7 @@
     public final void rule__SquareBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12069:1: ( rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 )
             // InternalCompleteOCL.g:12070:2: rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3
@@ -35930,7 +35930,7 @@
     public final void rule__SquareBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12081:1: ( ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) )
             // InternalCompleteOCL.g:12082:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
@@ -35939,7 +35939,7 @@
             // InternalCompleteOCL.g:12083:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2());
             }
             // InternalCompleteOCL.g:12084:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             loop107:
@@ -35971,7 +35971,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2());
             }
 
             }
@@ -35999,7 +35999,7 @@
     public final void rule__SquareBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12098:1: ( rule__SquareBracketedClauseCS__Group__3__Impl )
             // InternalCompleteOCL.g:12099:2: rule__SquareBracketedClauseCS__Group__3__Impl
@@ -36032,7 +36032,7 @@
     public final void rule__SquareBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12109:1: ( ( ']' ) )
             // InternalCompleteOCL.g:12110:1: ( ']' )
@@ -36041,11 +36041,11 @@
             // InternalCompleteOCL.g:12111:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
             }
 
             }
@@ -36073,7 +36073,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12136:1: ( rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 )
             // InternalCompleteOCL.g:12137:2: rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1
@@ -36111,7 +36111,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12148:1: ( ( ',' ) )
             // InternalCompleteOCL.g:12149:1: ( ',' )
@@ -36120,11 +36120,11 @@
             // InternalCompleteOCL.g:12150:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
             }
 
             }
@@ -36152,7 +36152,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12167:1: ( rule__SquareBracketedClauseCS__Group_2__1__Impl )
             // InternalCompleteOCL.g:12168:2: rule__SquareBracketedClauseCS__Group_2__1__Impl
@@ -36185,7 +36185,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12178:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) )
             // InternalCompleteOCL.g:12179:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
@@ -36194,7 +36194,7 @@
             // InternalCompleteOCL.g:12180:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1());
             }
             // InternalCompleteOCL.g:12181:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
             // InternalCompleteOCL.g:12181:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1
@@ -36208,7 +36208,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1());
             }
 
             }
@@ -36236,7 +36236,7 @@
     public final void rule__NavigatingArgCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12199:1: ( rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 )
             // InternalCompleteOCL.g:12200:2: rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1
@@ -36274,7 +36274,7 @@
     public final void rule__NavigatingArgCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12211:1: ( ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) )
             // InternalCompleteOCL.g:12212:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
@@ -36283,7 +36283,7 @@
             // InternalCompleteOCL.g:12213:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0());
             }
             // InternalCompleteOCL.g:12214:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
             // InternalCompleteOCL.g:12214:2: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0
@@ -36297,7 +36297,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0());
             }
 
             }
@@ -36325,7 +36325,7 @@
     public final void rule__NavigatingArgCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12228:1: ( rule__NavigatingArgCS__Group_0__1__Impl )
             // InternalCompleteOCL.g:12229:2: rule__NavigatingArgCS__Group_0__1__Impl
@@ -36358,7 +36358,7 @@
     public final void rule__NavigatingArgCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12239:1: ( ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) )
             // InternalCompleteOCL.g:12240:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
@@ -36367,7 +36367,7 @@
             // InternalCompleteOCL.g:12241:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1());
             }
             // InternalCompleteOCL.g:12242:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             int alt108=2;
@@ -36392,7 +36392,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1());
             }
 
             }
@@ -36420,7 +36420,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12260:1: ( rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 )
             // InternalCompleteOCL.g:12261:2: rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1
@@ -36458,7 +36458,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12272:1: ( ( ':' ) )
             // InternalCompleteOCL.g:12273:1: ( ':' )
@@ -36467,11 +36467,11 @@
             // InternalCompleteOCL.g:12274:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
             }
 
             }
@@ -36499,7 +36499,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12291:1: ( rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 )
             // InternalCompleteOCL.g:12292:2: rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2
@@ -36537,7 +36537,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12303:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 ) ) )
             // InternalCompleteOCL.g:12304:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 ) )
@@ -36546,7 +36546,7 @@
             // InternalCompleteOCL.g:12305:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1());
             }
             // InternalCompleteOCL.g:12306:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 )
             // InternalCompleteOCL.g:12306:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1
@@ -36560,7 +36560,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1());
             }
 
             }
@@ -36588,7 +36588,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12320:1: ( rule__NavigatingArgCS__Group_0_1_0__2__Impl )
             // InternalCompleteOCL.g:12321:2: rule__NavigatingArgCS__Group_0_1_0__2__Impl
@@ -36621,7 +36621,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12331:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) )
             // InternalCompleteOCL.g:12332:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
@@ -36630,7 +36630,7 @@
             // InternalCompleteOCL.g:12333:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2());
             }
             // InternalCompleteOCL.g:12334:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             int alt109=2;
@@ -36655,7 +36655,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2());
             }
 
             }
@@ -36683,7 +36683,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12354:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 )
             // InternalCompleteOCL.g:12355:2: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1
@@ -36721,7 +36721,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12366:1: ( ( '=' ) )
             // InternalCompleteOCL.g:12367:1: ( '=' )
@@ -36730,11 +36730,11 @@
             // InternalCompleteOCL.g:12368:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
             }
             match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
             }
 
             }
@@ -36762,7 +36762,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12385:1: ( rule__NavigatingArgCS__Group_0_1_0_2__1__Impl )
             // InternalCompleteOCL.g:12386:2: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl
@@ -36795,7 +36795,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12396:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) )
             // InternalCompleteOCL.g:12397:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
@@ -36804,7 +36804,7 @@
             // InternalCompleteOCL.g:12398:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1());
             }
             // InternalCompleteOCL.g:12399:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
             // InternalCompleteOCL.g:12399:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1
@@ -36818,7 +36818,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1());
             }
 
             }
@@ -36846,7 +36846,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12417:1: ( rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 )
             // InternalCompleteOCL.g:12418:2: rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1
@@ -36884,7 +36884,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12429:1: ( ( 'in' ) )
             // InternalCompleteOCL.g:12430:1: ( 'in' )
@@ -36893,11 +36893,11 @@
             // InternalCompleteOCL.g:12431:1: 'in'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
             }
 
             }
@@ -36925,7 +36925,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12448:1: ( rule__NavigatingArgCS__Group_0_1_1__1__Impl )
             // InternalCompleteOCL.g:12449:2: rule__NavigatingArgCS__Group_0_1_1__1__Impl
@@ -36958,7 +36958,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12459:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 ) ) )
             // InternalCompleteOCL.g:12460:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 ) )
@@ -36967,7 +36967,7 @@
             // InternalCompleteOCL.g:12461:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1());
             }
             // InternalCompleteOCL.g:12462:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 )
             // InternalCompleteOCL.g:12462:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1
@@ -36981,7 +36981,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1());
             }
 
             }
@@ -37009,7 +37009,7 @@
     public final void rule__NavigatingArgCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12480:1: ( rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 )
             // InternalCompleteOCL.g:12481:2: rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1
@@ -37047,7 +37047,7 @@
     public final void rule__NavigatingArgCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12492:1: ( ( ':' ) )
             // InternalCompleteOCL.g:12493:1: ( ':' )
@@ -37056,11 +37056,11 @@
             // InternalCompleteOCL.g:12494:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
             }
 
             }
@@ -37088,7 +37088,7 @@
     public final void rule__NavigatingArgCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12511:1: ( rule__NavigatingArgCS__Group_1__1__Impl )
             // InternalCompleteOCL.g:12512:2: rule__NavigatingArgCS__Group_1__1__Impl
@@ -37121,7 +37121,7 @@
     public final void rule__NavigatingArgCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12522:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) )
             // InternalCompleteOCL.g:12523:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
@@ -37130,7 +37130,7 @@
             // InternalCompleteOCL.g:12524:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1());
             }
             // InternalCompleteOCL.g:12525:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
             // InternalCompleteOCL.g:12525:2: rule__NavigatingArgCS__OwnedTypeAssignment_1_1
@@ -37144,7 +37144,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1());
             }
 
             }
@@ -37172,7 +37172,7 @@
     public final void rule__NavigatingBarArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12543:1: ( rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 )
             // InternalCompleteOCL.g:12544:2: rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1
@@ -37210,7 +37210,7 @@
     public final void rule__NavigatingBarArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12555:1: ( ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) )
             // InternalCompleteOCL.g:12556:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
@@ -37219,7 +37219,7 @@
             // InternalCompleteOCL.g:12557:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0());
             }
             // InternalCompleteOCL.g:12558:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
             // InternalCompleteOCL.g:12558:2: rule__NavigatingBarArgCS__PrefixAssignment_0
@@ -37233,7 +37233,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0());
             }
 
             }
@@ -37261,7 +37261,7 @@
     public final void rule__NavigatingBarArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12572:1: ( rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 )
             // InternalCompleteOCL.g:12573:2: rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2
@@ -37299,7 +37299,7 @@
     public final void rule__NavigatingBarArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12584:1: ( ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) )
             // InternalCompleteOCL.g:12585:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
@@ -37308,7 +37308,7 @@
             // InternalCompleteOCL.g:12586:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
             // InternalCompleteOCL.g:12587:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
             // InternalCompleteOCL.g:12587:2: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1
@@ -37322,7 +37322,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
 
             }
@@ -37350,7 +37350,7 @@
     public final void rule__NavigatingBarArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12601:1: ( rule__NavigatingBarArgCS__Group__2__Impl )
             // InternalCompleteOCL.g:12602:2: rule__NavigatingBarArgCS__Group__2__Impl
@@ -37383,7 +37383,7 @@
     public final void rule__NavigatingBarArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12612:1: ( ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) )
             // InternalCompleteOCL.g:12613:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
@@ -37392,7 +37392,7 @@
             // InternalCompleteOCL.g:12614:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2());
             }
             // InternalCompleteOCL.g:12615:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             int alt110=2;
@@ -37417,7 +37417,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2());
             }
 
             }
@@ -37445,7 +37445,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12635:1: ( rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 )
             // InternalCompleteOCL.g:12636:2: rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1
@@ -37483,7 +37483,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12647:1: ( ( ':' ) )
             // InternalCompleteOCL.g:12648:1: ( ':' )
@@ -37492,11 +37492,11 @@
             // InternalCompleteOCL.g:12649:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -37524,7 +37524,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12666:1: ( rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 )
             // InternalCompleteOCL.g:12667:2: rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2
@@ -37562,7 +37562,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12678:1: ( ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) )
             // InternalCompleteOCL.g:12679:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
@@ -37571,7 +37571,7 @@
             // InternalCompleteOCL.g:12680:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1());
             }
             // InternalCompleteOCL.g:12681:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
             // InternalCompleteOCL.g:12681:2: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1
@@ -37585,7 +37585,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1());
             }
 
             }
@@ -37613,7 +37613,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12695:1: ( rule__NavigatingBarArgCS__Group_2__2__Impl )
             // InternalCompleteOCL.g:12696:2: rule__NavigatingBarArgCS__Group_2__2__Impl
@@ -37646,7 +37646,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12706:1: ( ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) )
             // InternalCompleteOCL.g:12707:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
@@ -37655,7 +37655,7 @@
             // InternalCompleteOCL.g:12708:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2());
             }
             // InternalCompleteOCL.g:12709:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             int alt111=2;
@@ -37680,7 +37680,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2());
             }
 
             }
@@ -37708,7 +37708,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12729:1: ( rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 )
             // InternalCompleteOCL.g:12730:2: rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1
@@ -37746,7 +37746,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12741:1: ( ( '=' ) )
             // InternalCompleteOCL.g:12742:1: ( '=' )
@@ -37755,11 +37755,11 @@
             // InternalCompleteOCL.g:12743:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
             match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
 
             }
@@ -37787,7 +37787,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12760:1: ( rule__NavigatingBarArgCS__Group_2_2__1__Impl )
             // InternalCompleteOCL.g:12761:2: rule__NavigatingBarArgCS__Group_2_2__1__Impl
@@ -37820,7 +37820,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12771:1: ( ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
             // InternalCompleteOCL.g:12772:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
@@ -37829,7 +37829,7 @@
             // InternalCompleteOCL.g:12773:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
             // InternalCompleteOCL.g:12774:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
             // InternalCompleteOCL.g:12774:2: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1
@@ -37843,7 +37843,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
 
             }
@@ -37871,7 +37871,7 @@
     public final void rule__NavigatingCommaArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12792:1: ( rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 )
             // InternalCompleteOCL.g:12793:2: rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1
@@ -37909,7 +37909,7 @@
     public final void rule__NavigatingCommaArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12804:1: ( ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) )
             // InternalCompleteOCL.g:12805:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
@@ -37918,7 +37918,7 @@
             // InternalCompleteOCL.g:12806:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0());
             }
             // InternalCompleteOCL.g:12807:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
             // InternalCompleteOCL.g:12807:2: rule__NavigatingCommaArgCS__PrefixAssignment_0
@@ -37932,7 +37932,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0());
             }
 
             }
@@ -37960,7 +37960,7 @@
     public final void rule__NavigatingCommaArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12821:1: ( rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 )
             // InternalCompleteOCL.g:12822:2: rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2
@@ -37998,7 +37998,7 @@
     public final void rule__NavigatingCommaArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12833:1: ( ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) )
             // InternalCompleteOCL.g:12834:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
@@ -38007,7 +38007,7 @@
             // InternalCompleteOCL.g:12835:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
             // InternalCompleteOCL.g:12836:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
             // InternalCompleteOCL.g:12836:2: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1
@@ -38021,7 +38021,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
 
             }
@@ -38049,7 +38049,7 @@
     public final void rule__NavigatingCommaArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12850:1: ( rule__NavigatingCommaArgCS__Group__2__Impl )
             // InternalCompleteOCL.g:12851:2: rule__NavigatingCommaArgCS__Group__2__Impl
@@ -38082,7 +38082,7 @@
     public final void rule__NavigatingCommaArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12861:1: ( ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) )
             // InternalCompleteOCL.g:12862:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
@@ -38091,7 +38091,7 @@
             // InternalCompleteOCL.g:12863:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2());
             }
             // InternalCompleteOCL.g:12864:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             int alt112=2;
@@ -38116,7 +38116,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2());
             }
 
             }
@@ -38144,7 +38144,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12884:1: ( rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 )
             // InternalCompleteOCL.g:12885:2: rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1
@@ -38182,7 +38182,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12896:1: ( ( ':' ) )
             // InternalCompleteOCL.g:12897:1: ( ':' )
@@ -38191,11 +38191,11 @@
             // InternalCompleteOCL.g:12898:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
             }
 
             }
@@ -38223,7 +38223,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12915:1: ( rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 )
             // InternalCompleteOCL.g:12916:2: rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2
@@ -38261,7 +38261,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12927:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 ) ) )
             // InternalCompleteOCL.g:12928:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 ) )
@@ -38270,7 +38270,7 @@
             // InternalCompleteOCL.g:12929:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1());
             }
             // InternalCompleteOCL.g:12930:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 )
             // InternalCompleteOCL.g:12930:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1
@@ -38284,7 +38284,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1());
             }
 
             }
@@ -38312,7 +38312,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12944:1: ( rule__NavigatingCommaArgCS__Group_2_0__2__Impl )
             // InternalCompleteOCL.g:12945:2: rule__NavigatingCommaArgCS__Group_2_0__2__Impl
@@ -38345,7 +38345,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12955:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) )
             // InternalCompleteOCL.g:12956:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
@@ -38354,7 +38354,7 @@
             // InternalCompleteOCL.g:12957:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2());
             }
             // InternalCompleteOCL.g:12958:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             int alt113=2;
@@ -38379,7 +38379,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2());
             }
 
             }
@@ -38407,7 +38407,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12978:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 )
             // InternalCompleteOCL.g:12979:2: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1
@@ -38445,7 +38445,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:12990:1: ( ( '=' ) )
             // InternalCompleteOCL.g:12991:1: ( '=' )
@@ -38454,11 +38454,11 @@
             // InternalCompleteOCL.g:12992:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
             }
             match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
             }
 
             }
@@ -38486,7 +38486,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13009:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl )
             // InternalCompleteOCL.g:13010:2: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl
@@ -38519,7 +38519,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13020:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) )
             // InternalCompleteOCL.g:13021:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
@@ -38528,7 +38528,7 @@
             // InternalCompleteOCL.g:13022:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1());
             }
             // InternalCompleteOCL.g:13023:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
             // InternalCompleteOCL.g:13023:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1
@@ -38542,7 +38542,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1());
             }
 
             }
@@ -38570,7 +38570,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13041:1: ( rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 )
             // InternalCompleteOCL.g:13042:2: rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1
@@ -38608,7 +38608,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13053:1: ( ( 'in' ) )
             // InternalCompleteOCL.g:13054:1: ( 'in' )
@@ -38617,11 +38617,11 @@
             // InternalCompleteOCL.g:13055:1: 'in'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
             }
 
             }
@@ -38649,7 +38649,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13072:1: ( rule__NavigatingCommaArgCS__Group_2_1__1__Impl )
             // InternalCompleteOCL.g:13073:2: rule__NavigatingCommaArgCS__Group_2_1__1__Impl
@@ -38682,7 +38682,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13083:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 ) ) )
             // InternalCompleteOCL.g:13084:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 ) )
@@ -38691,7 +38691,7 @@
             // InternalCompleteOCL.g:13085:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1());
             }
             // InternalCompleteOCL.g:13086:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 )
             // InternalCompleteOCL.g:13086:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1
@@ -38705,7 +38705,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1());
             }
 
             }
@@ -38733,7 +38733,7 @@
     public final void rule__NavigatingSemiArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13104:1: ( rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 )
             // InternalCompleteOCL.g:13105:2: rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1
@@ -38771,7 +38771,7 @@
     public final void rule__NavigatingSemiArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13116:1: ( ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) )
             // InternalCompleteOCL.g:13117:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
@@ -38780,7 +38780,7 @@
             // InternalCompleteOCL.g:13118:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0());
             }
             // InternalCompleteOCL.g:13119:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
             // InternalCompleteOCL.g:13119:2: rule__NavigatingSemiArgCS__PrefixAssignment_0
@@ -38794,7 +38794,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0());
             }
 
             }
@@ -38822,7 +38822,7 @@
     public final void rule__NavigatingSemiArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13133:1: ( rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 )
             // InternalCompleteOCL.g:13134:2: rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2
@@ -38860,7 +38860,7 @@
     public final void rule__NavigatingSemiArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13145:1: ( ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) )
             // InternalCompleteOCL.g:13146:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
@@ -38869,7 +38869,7 @@
             // InternalCompleteOCL.g:13147:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
             // InternalCompleteOCL.g:13148:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
             // InternalCompleteOCL.g:13148:2: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1
@@ -38883,7 +38883,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
 
             }
@@ -38911,7 +38911,7 @@
     public final void rule__NavigatingSemiArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13162:1: ( rule__NavigatingSemiArgCS__Group__2__Impl )
             // InternalCompleteOCL.g:13163:2: rule__NavigatingSemiArgCS__Group__2__Impl
@@ -38944,7 +38944,7 @@
     public final void rule__NavigatingSemiArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13173:1: ( ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) )
             // InternalCompleteOCL.g:13174:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
@@ -38953,7 +38953,7 @@
             // InternalCompleteOCL.g:13175:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2());
             }
             // InternalCompleteOCL.g:13176:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             int alt114=2;
@@ -38978,7 +38978,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2());
             }
 
             }
@@ -39006,7 +39006,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13196:1: ( rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 )
             // InternalCompleteOCL.g:13197:2: rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1
@@ -39044,7 +39044,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13208:1: ( ( ':' ) )
             // InternalCompleteOCL.g:13209:1: ( ':' )
@@ -39053,11 +39053,11 @@
             // InternalCompleteOCL.g:13210:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -39085,7 +39085,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13227:1: ( rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 )
             // InternalCompleteOCL.g:13228:2: rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2
@@ -39123,7 +39123,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13239:1: ( ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) )
             // InternalCompleteOCL.g:13240:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
@@ -39132,7 +39132,7 @@
             // InternalCompleteOCL.g:13241:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1());
             }
             // InternalCompleteOCL.g:13242:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
             // InternalCompleteOCL.g:13242:2: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1
@@ -39146,7 +39146,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1());
             }
 
             }
@@ -39174,7 +39174,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13256:1: ( rule__NavigatingSemiArgCS__Group_2__2__Impl )
             // InternalCompleteOCL.g:13257:2: rule__NavigatingSemiArgCS__Group_2__2__Impl
@@ -39207,7 +39207,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13267:1: ( ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) )
             // InternalCompleteOCL.g:13268:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
@@ -39216,7 +39216,7 @@
             // InternalCompleteOCL.g:13269:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2());
             }
             // InternalCompleteOCL.g:13270:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             int alt115=2;
@@ -39241,7 +39241,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2());
             }
 
             }
@@ -39269,7 +39269,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13290:1: ( rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 )
             // InternalCompleteOCL.g:13291:2: rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1
@@ -39307,7 +39307,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13302:1: ( ( '=' ) )
             // InternalCompleteOCL.g:13303:1: ( '=' )
@@ -39316,11 +39316,11 @@
             // InternalCompleteOCL.g:13304:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
             match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
 
             }
@@ -39348,7 +39348,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13321:1: ( rule__NavigatingSemiArgCS__Group_2_2__1__Impl )
             // InternalCompleteOCL.g:13322:2: rule__NavigatingSemiArgCS__Group_2_2__1__Impl
@@ -39381,7 +39381,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13332:1: ( ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
             // InternalCompleteOCL.g:13333:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
@@ -39390,7 +39390,7 @@
             // InternalCompleteOCL.g:13334:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
             // InternalCompleteOCL.g:13335:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
             // InternalCompleteOCL.g:13335:2: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1
@@ -39404,7 +39404,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
 
             }
@@ -39432,7 +39432,7 @@
     public final void rule__IfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13353:1: ( rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 )
             // InternalCompleteOCL.g:13354:2: rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1
@@ -39470,7 +39470,7 @@
     public final void rule__IfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13365:1: ( ( 'if' ) )
             // InternalCompleteOCL.g:13366:1: ( 'if' )
@@ -39479,11 +39479,11 @@
             // InternalCompleteOCL.g:13367:1: 'if'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); 
+               before(grammarAccess.getIfExpCSAccess().getIfKeyword_0());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); 
+               after(grammarAccess.getIfExpCSAccess().getIfKeyword_0());
             }
 
             }
@@ -39511,7 +39511,7 @@
     public final void rule__IfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13384:1: ( rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 )
             // InternalCompleteOCL.g:13385:2: rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2
@@ -39549,7 +39549,7 @@
     public final void rule__IfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13396:1: ( ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) )
             // InternalCompleteOCL.g:13397:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
@@ -39558,7 +39558,7 @@
             // InternalCompleteOCL.g:13398:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1());
             }
             // InternalCompleteOCL.g:13399:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
             // InternalCompleteOCL.g:13399:2: rule__IfExpCS__OwnedConditionAssignment_1
@@ -39572,7 +39572,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1());
             }
 
             }
@@ -39600,7 +39600,7 @@
     public final void rule__IfExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13413:1: ( rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 )
             // InternalCompleteOCL.g:13414:2: rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3
@@ -39638,7 +39638,7 @@
     public final void rule__IfExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13425:1: ( ( 'then' ) )
             // InternalCompleteOCL.g:13426:1: ( 'then' )
@@ -39647,11 +39647,11 @@
             // InternalCompleteOCL.g:13427:1: 'then'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); 
+               before(grammarAccess.getIfExpCSAccess().getThenKeyword_2());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); 
+               after(grammarAccess.getIfExpCSAccess().getThenKeyword_2());
             }
 
             }
@@ -39679,7 +39679,7 @@
     public final void rule__IfExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13444:1: ( rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 )
             // InternalCompleteOCL.g:13445:2: rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4
@@ -39717,7 +39717,7 @@
     public final void rule__IfExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13456:1: ( ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) )
             // InternalCompleteOCL.g:13457:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
@@ -39726,7 +39726,7 @@
             // InternalCompleteOCL.g:13458:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
             // InternalCompleteOCL.g:13459:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
             // InternalCompleteOCL.g:13459:2: rule__IfExpCS__OwnedThenExpressionAssignment_3
@@ -39740,7 +39740,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
 
             }
@@ -39768,7 +39768,7 @@
     public final void rule__IfExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13473:1: ( rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 )
             // InternalCompleteOCL.g:13474:2: rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5
@@ -39806,7 +39806,7 @@
     public final void rule__IfExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13485:1: ( ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) )
             // InternalCompleteOCL.g:13486:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
@@ -39815,7 +39815,7 @@
             // InternalCompleteOCL.g:13487:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4());
             }
             // InternalCompleteOCL.g:13488:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             loop116:
@@ -39847,7 +39847,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4());
             }
 
             }
@@ -39875,7 +39875,7 @@
     public final void rule__IfExpCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13502:1: ( rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 )
             // InternalCompleteOCL.g:13503:2: rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6
@@ -39913,7 +39913,7 @@
     public final void rule__IfExpCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13514:1: ( ( 'else' ) )
             // InternalCompleteOCL.g:13515:1: ( 'else' )
@@ -39922,11 +39922,11 @@
             // InternalCompleteOCL.g:13516:1: 'else'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); 
+               before(grammarAccess.getIfExpCSAccess().getElseKeyword_5());
             }
             match(input,88,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); 
+               after(grammarAccess.getIfExpCSAccess().getElseKeyword_5());
             }
 
             }
@@ -39954,7 +39954,7 @@
     public final void rule__IfExpCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13533:1: ( rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 )
             // InternalCompleteOCL.g:13534:2: rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7
@@ -39992,7 +39992,7 @@
     public final void rule__IfExpCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13545:1: ( ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) )
             // InternalCompleteOCL.g:13546:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
@@ -40001,7 +40001,7 @@
             // InternalCompleteOCL.g:13547:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6());
             }
             // InternalCompleteOCL.g:13548:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
             // InternalCompleteOCL.g:13548:2: rule__IfExpCS__OwnedElseExpressionAssignment_6
@@ -40015,7 +40015,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6());
             }
 
             }
@@ -40043,7 +40043,7 @@
     public final void rule__IfExpCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13562:1: ( rule__IfExpCS__Group__7__Impl )
             // InternalCompleteOCL.g:13563:2: rule__IfExpCS__Group__7__Impl
@@ -40076,7 +40076,7 @@
     public final void rule__IfExpCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13573:1: ( ( 'endif' ) )
             // InternalCompleteOCL.g:13574:1: ( 'endif' )
@@ -40085,11 +40085,11 @@
             // InternalCompleteOCL.g:13575:1: 'endif'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); 
+               before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
             }
             match(input,89,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); 
+               after(grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
             }
 
             }
@@ -40117,7 +40117,7 @@
     public final void rule__ElseIfThenExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13608:1: ( rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 )
             // InternalCompleteOCL.g:13609:2: rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1
@@ -40155,7 +40155,7 @@
     public final void rule__ElseIfThenExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13620:1: ( ( 'elseif' ) )
             // InternalCompleteOCL.g:13621:1: ( 'elseif' )
@@ -40164,11 +40164,11 @@
             // InternalCompleteOCL.g:13622:1: 'elseif'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
             }
             match(input,90,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
             }
 
             }
@@ -40196,7 +40196,7 @@
     public final void rule__ElseIfThenExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13639:1: ( rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 )
             // InternalCompleteOCL.g:13640:2: rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2
@@ -40234,7 +40234,7 @@
     public final void rule__ElseIfThenExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13651:1: ( ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) )
             // InternalCompleteOCL.g:13652:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
@@ -40243,7 +40243,7 @@
             // InternalCompleteOCL.g:13653:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1());
             }
             // InternalCompleteOCL.g:13654:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
             // InternalCompleteOCL.g:13654:2: rule__ElseIfThenExpCS__OwnedConditionAssignment_1
@@ -40257,7 +40257,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1());
             }
 
             }
@@ -40285,7 +40285,7 @@
     public final void rule__ElseIfThenExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13668:1: ( rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 )
             // InternalCompleteOCL.g:13669:2: rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3
@@ -40323,7 +40323,7 @@
     public final void rule__ElseIfThenExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13680:1: ( ( 'then' ) )
             // InternalCompleteOCL.g:13681:1: ( 'then' )
@@ -40332,11 +40332,11 @@
             // InternalCompleteOCL.g:13682:1: 'then'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
             }
 
             }
@@ -40364,7 +40364,7 @@
     public final void rule__ElseIfThenExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13699:1: ( rule__ElseIfThenExpCS__Group__3__Impl )
             // InternalCompleteOCL.g:13700:2: rule__ElseIfThenExpCS__Group__3__Impl
@@ -40397,7 +40397,7 @@
     public final void rule__ElseIfThenExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13710:1: ( ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) )
             // InternalCompleteOCL.g:13711:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
@@ -40406,7 +40406,7 @@
             // InternalCompleteOCL.g:13712:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
             // InternalCompleteOCL.g:13713:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
             // InternalCompleteOCL.g:13713:2: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3
@@ -40420,7 +40420,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
 
             }
@@ -40448,7 +40448,7 @@
     public final void rule__LetExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13735:1: ( rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 )
             // InternalCompleteOCL.g:13736:2: rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1
@@ -40486,7 +40486,7 @@
     public final void rule__LetExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13747:1: ( ( 'let' ) )
             // InternalCompleteOCL.g:13748:1: ( 'let' )
@@ -40495,11 +40495,11 @@
             // InternalCompleteOCL.g:13749:1: 'let'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); 
+               before(grammarAccess.getLetExpCSAccess().getLetKeyword_0());
             }
             match(input,91,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); 
+               after(grammarAccess.getLetExpCSAccess().getLetKeyword_0());
             }
 
             }
@@ -40527,7 +40527,7 @@
     public final void rule__LetExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13766:1: ( rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 )
             // InternalCompleteOCL.g:13767:2: rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2
@@ -40565,7 +40565,7 @@
     public final void rule__LetExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13778:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) )
             // InternalCompleteOCL.g:13779:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
@@ -40574,7 +40574,7 @@
             // InternalCompleteOCL.g:13780:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1());
             }
             // InternalCompleteOCL.g:13781:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
             // InternalCompleteOCL.g:13781:2: rule__LetExpCS__OwnedVariablesAssignment_1
@@ -40588,7 +40588,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1());
             }
 
             }
@@ -40616,7 +40616,7 @@
     public final void rule__LetExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13795:1: ( rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 )
             // InternalCompleteOCL.g:13796:2: rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3
@@ -40654,7 +40654,7 @@
     public final void rule__LetExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13807:1: ( ( ( rule__LetExpCS__Group_2__0 )* ) )
             // InternalCompleteOCL.g:13808:1: ( ( rule__LetExpCS__Group_2__0 )* )
@@ -40663,7 +40663,7 @@
             // InternalCompleteOCL.g:13809:1: ( rule__LetExpCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getGroup_2()); 
+               before(grammarAccess.getLetExpCSAccess().getGroup_2());
             }
             // InternalCompleteOCL.g:13810:1: ( rule__LetExpCS__Group_2__0 )*
             loop117:
@@ -40695,7 +40695,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getGroup_2()); 
+               after(grammarAccess.getLetExpCSAccess().getGroup_2());
             }
 
             }
@@ -40723,7 +40723,7 @@
     public final void rule__LetExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13824:1: ( rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 )
             // InternalCompleteOCL.g:13825:2: rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4
@@ -40761,7 +40761,7 @@
     public final void rule__LetExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13836:1: ( ( 'in' ) )
             // InternalCompleteOCL.g:13837:1: ( 'in' )
@@ -40770,11 +40770,11 @@
             // InternalCompleteOCL.g:13838:1: 'in'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getInKeyword_3()); 
+               before(grammarAccess.getLetExpCSAccess().getInKeyword_3());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getInKeyword_3()); 
+               after(grammarAccess.getLetExpCSAccess().getInKeyword_3());
             }
 
             }
@@ -40802,7 +40802,7 @@
     public final void rule__LetExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13855:1: ( rule__LetExpCS__Group__4__Impl )
             // InternalCompleteOCL.g:13856:2: rule__LetExpCS__Group__4__Impl
@@ -40835,7 +40835,7 @@
     public final void rule__LetExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13866:1: ( ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) )
             // InternalCompleteOCL.g:13867:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
@@ -40844,7 +40844,7 @@
             // InternalCompleteOCL.g:13868:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4());
             }
             // InternalCompleteOCL.g:13869:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
             // InternalCompleteOCL.g:13869:2: rule__LetExpCS__OwnedInExpressionAssignment_4
@@ -40858,7 +40858,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4());
             }
 
             }
@@ -40886,7 +40886,7 @@
     public final void rule__LetExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13893:1: ( rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 )
             // InternalCompleteOCL.g:13894:2: rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1
@@ -40924,7 +40924,7 @@
     public final void rule__LetExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13905:1: ( ( ',' ) )
             // InternalCompleteOCL.g:13906:1: ( ',' )
@@ -40933,11 +40933,11 @@
             // InternalCompleteOCL.g:13907:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); 
+               before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); 
+               after(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
             }
 
             }
@@ -40965,7 +40965,7 @@
     public final void rule__LetExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13924:1: ( rule__LetExpCS__Group_2__1__Impl )
             // InternalCompleteOCL.g:13925:2: rule__LetExpCS__Group_2__1__Impl
@@ -40998,7 +40998,7 @@
     public final void rule__LetExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13935:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) )
             // InternalCompleteOCL.g:13936:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
@@ -41007,7 +41007,7 @@
             // InternalCompleteOCL.g:13937:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1());
             }
             // InternalCompleteOCL.g:13938:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
             // InternalCompleteOCL.g:13938:2: rule__LetExpCS__OwnedVariablesAssignment_2_1
@@ -41021,7 +41021,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1());
             }
 
             }
@@ -41049,7 +41049,7 @@
     public final void rule__LetVariableCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13956:1: ( rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 )
             // InternalCompleteOCL.g:13957:2: rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1
@@ -41087,7 +41087,7 @@
     public final void rule__LetVariableCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13968:1: ( ( ( rule__LetVariableCS__NameAssignment_0 ) ) )
             // InternalCompleteOCL.g:13969:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
@@ -41096,7 +41096,7 @@
             // InternalCompleteOCL.g:13970:1: ( rule__LetVariableCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getNameAssignment_0());
             }
             // InternalCompleteOCL.g:13971:1: ( rule__LetVariableCS__NameAssignment_0 )
             // InternalCompleteOCL.g:13971:2: rule__LetVariableCS__NameAssignment_0
@@ -41110,7 +41110,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getNameAssignment_0());
             }
 
             }
@@ -41138,7 +41138,7 @@
     public final void rule__LetVariableCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13985:1: ( rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 )
             // InternalCompleteOCL.g:13986:2: rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2
@@ -41176,7 +41176,7 @@
     public final void rule__LetVariableCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:13997:1: ( ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) )
             // InternalCompleteOCL.g:13998:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
@@ -41185,7 +41185,7 @@
             // InternalCompleteOCL.g:13999:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1());
             }
             // InternalCompleteOCL.g:14000:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             int alt118=2;
@@ -41210,7 +41210,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1());
             }
 
             }
@@ -41238,7 +41238,7 @@
     public final void rule__LetVariableCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14014:1: ( rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 )
             // InternalCompleteOCL.g:14015:2: rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3
@@ -41276,7 +41276,7 @@
     public final void rule__LetVariableCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14026:1: ( ( ( rule__LetVariableCS__Group_2__0 )? ) )
             // InternalCompleteOCL.g:14027:1: ( ( rule__LetVariableCS__Group_2__0 )? )
@@ -41285,7 +41285,7 @@
             // InternalCompleteOCL.g:14028:1: ( rule__LetVariableCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getGroup_2()); 
+               before(grammarAccess.getLetVariableCSAccess().getGroup_2());
             }
             // InternalCompleteOCL.g:14029:1: ( rule__LetVariableCS__Group_2__0 )?
             int alt119=2;
@@ -41310,7 +41310,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getGroup_2()); 
+               after(grammarAccess.getLetVariableCSAccess().getGroup_2());
             }
 
             }
@@ -41338,7 +41338,7 @@
     public final void rule__LetVariableCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14043:1: ( rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 )
             // InternalCompleteOCL.g:14044:2: rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4
@@ -41376,7 +41376,7 @@
     public final void rule__LetVariableCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14055:1: ( ( '=' ) )
             // InternalCompleteOCL.g:14056:1: ( '=' )
@@ -41385,11 +41385,11 @@
             // InternalCompleteOCL.g:14057:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); 
+               before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
             }
             match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); 
+               after(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
             }
 
             }
@@ -41417,7 +41417,7 @@
     public final void rule__LetVariableCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14074:1: ( rule__LetVariableCS__Group__4__Impl )
             // InternalCompleteOCL.g:14075:2: rule__LetVariableCS__Group__4__Impl
@@ -41450,7 +41450,7 @@
     public final void rule__LetVariableCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14085:1: ( ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) )
             // InternalCompleteOCL.g:14086:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
@@ -41459,7 +41459,7 @@
             // InternalCompleteOCL.g:14087:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4());
             }
             // InternalCompleteOCL.g:14088:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
             // InternalCompleteOCL.g:14088:2: rule__LetVariableCS__OwnedInitExpressionAssignment_4
@@ -41473,7 +41473,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4());
             }
 
             }
@@ -41501,7 +41501,7 @@
     public final void rule__LetVariableCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14112:1: ( rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 )
             // InternalCompleteOCL.g:14113:2: rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1
@@ -41539,7 +41539,7 @@
     public final void rule__LetVariableCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14124:1: ( ( ':' ) )
             // InternalCompleteOCL.g:14125:1: ( ':' )
@@ -41548,11 +41548,11 @@
             // InternalCompleteOCL.g:14126:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -41580,7 +41580,7 @@
     public final void rule__LetVariableCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14143:1: ( rule__LetVariableCS__Group_2__1__Impl )
             // InternalCompleteOCL.g:14144:2: rule__LetVariableCS__Group_2__1__Impl
@@ -41613,7 +41613,7 @@
     public final void rule__LetVariableCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14154:1: ( ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) )
             // InternalCompleteOCL.g:14155:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
@@ -41622,7 +41622,7 @@
             // InternalCompleteOCL.g:14156:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1());
             }
             // InternalCompleteOCL.g:14157:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
             // InternalCompleteOCL.g:14157:2: rule__LetVariableCS__OwnedTypeAssignment_2_1
@@ -41636,7 +41636,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1());
             }
 
             }
@@ -41664,7 +41664,7 @@
     public final void rule__NestedExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14175:1: ( rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 )
             // InternalCompleteOCL.g:14176:2: rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1
@@ -41702,7 +41702,7 @@
     public final void rule__NestedExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14187:1: ( ( '(' ) )
             // InternalCompleteOCL.g:14188:1: ( '(' )
@@ -41711,11 +41711,11 @@
             // InternalCompleteOCL.g:14189:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); 
+               before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
             }
             match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); 
+               after(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
             }
 
             }
@@ -41743,7 +41743,7 @@
     public final void rule__NestedExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14206:1: ( rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 )
             // InternalCompleteOCL.g:14207:2: rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2
@@ -41781,7 +41781,7 @@
     public final void rule__NestedExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14218:1: ( ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) )
             // InternalCompleteOCL.g:14219:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
@@ -41790,7 +41790,7 @@
             // InternalCompleteOCL.g:14220:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1()); 
+               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1());
             }
             // InternalCompleteOCL.g:14221:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
             // InternalCompleteOCL.g:14221:2: rule__NestedExpCS__OwnedExpressionAssignment_1
@@ -41804,7 +41804,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1()); 
+               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1());
             }
 
             }
@@ -41832,7 +41832,7 @@
     public final void rule__NestedExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14235:1: ( rule__NestedExpCS__Group__2__Impl )
             // InternalCompleteOCL.g:14236:2: rule__NestedExpCS__Group__2__Impl
@@ -41865,7 +41865,7 @@
     public final void rule__NestedExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14246:1: ( ( ')' ) )
             // InternalCompleteOCL.g:14247:1: ( ')' )
@@ -41874,11 +41874,11 @@
             // InternalCompleteOCL.g:14248:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); 
+               before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
             }
             match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); 
+               after(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
             }
 
             }
@@ -41906,7 +41906,7 @@
     public final void rule__SelfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14271:1: ( rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 )
             // InternalCompleteOCL.g:14272:2: rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1
@@ -41944,7 +41944,7 @@
     public final void rule__SelfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14283:1: ( ( () ) )
             // InternalCompleteOCL.g:14284:1: ( () )
@@ -41953,15 +41953,15 @@
             // InternalCompleteOCL.g:14285:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0()); 
+               before(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0());
             }
             // InternalCompleteOCL.g:14286:1: ()
-            // InternalCompleteOCL.g:14288:1: 
+            // InternalCompleteOCL.g:14288:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0()); 
+               after(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0());
             }
 
             }
@@ -41985,7 +41985,7 @@
     public final void rule__SelfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14302:1: ( rule__SelfExpCS__Group__1__Impl )
             // InternalCompleteOCL.g:14303:2: rule__SelfExpCS__Group__1__Impl
@@ -42018,7 +42018,7 @@
     public final void rule__SelfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14313:1: ( ( 'self' ) )
             // InternalCompleteOCL.g:14314:1: ( 'self' )
@@ -42027,11 +42027,11 @@
             // InternalCompleteOCL.g:14315:1: 'self'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); 
+               before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
             }
             match(input,92,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); 
+               after(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
             }
 
             }
@@ -42059,7 +42059,7 @@
     public final void rule__MultiplicityBoundsCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14336:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
             // InternalCompleteOCL.g:14337:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
@@ -42097,7 +42097,7 @@
     public final void rule__MultiplicityBoundsCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14348:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
             // InternalCompleteOCL.g:14349:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
@@ -42106,7 +42106,7 @@
             // InternalCompleteOCL.g:14350:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
             // InternalCompleteOCL.g:14351:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             // InternalCompleteOCL.g:14351:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
@@ -42120,7 +42120,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
 
             }
@@ -42148,7 +42148,7 @@
     public final void rule__MultiplicityBoundsCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14365:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
             // InternalCompleteOCL.g:14366:2: rule__MultiplicityBoundsCS__Group__1__Impl
@@ -42181,7 +42181,7 @@
     public final void rule__MultiplicityBoundsCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14376:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
             // InternalCompleteOCL.g:14377:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
@@ -42190,7 +42190,7 @@
             // InternalCompleteOCL.g:14378:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
             // InternalCompleteOCL.g:14379:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             int alt120=2;
@@ -42215,7 +42215,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
 
             }
@@ -42243,7 +42243,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14397:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
             // InternalCompleteOCL.g:14398:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
@@ -42281,7 +42281,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14409:1: ( ( '..' ) )
             // InternalCompleteOCL.g:14410:1: ( '..' )
@@ -42290,11 +42290,11 @@
             // InternalCompleteOCL.g:14411:1: '..'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
             }
             match(input,77,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
             }
 
             }
@@ -42322,7 +42322,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14428:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
             // InternalCompleteOCL.g:14429:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
@@ -42355,7 +42355,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14439:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
             // InternalCompleteOCL.g:14440:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
@@ -42364,7 +42364,7 @@
             // InternalCompleteOCL.g:14441:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
             // InternalCompleteOCL.g:14442:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             // InternalCompleteOCL.g:14442:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
@@ -42378,7 +42378,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
 
             }
@@ -42406,7 +42406,7 @@
     public final void rule__MultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14460:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
             // InternalCompleteOCL.g:14461:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
@@ -42444,7 +42444,7 @@
     public final void rule__MultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14472:1: ( ( '[' ) )
             // InternalCompleteOCL.g:14473:1: ( '[' )
@@ -42453,11 +42453,11 @@
             // InternalCompleteOCL.g:14474:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
             }
 
             }
@@ -42485,7 +42485,7 @@
     public final void rule__MultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14491:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
             // InternalCompleteOCL.g:14492:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
@@ -42523,7 +42523,7 @@
     public final void rule__MultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14503:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
             // InternalCompleteOCL.g:14504:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
@@ -42532,7 +42532,7 @@
             // InternalCompleteOCL.g:14505:1: ( rule__MultiplicityCS__Alternatives_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1()); 
+               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
             // InternalCompleteOCL.g:14506:1: ( rule__MultiplicityCS__Alternatives_1 )
             // InternalCompleteOCL.g:14506:2: rule__MultiplicityCS__Alternatives_1
@@ -42546,7 +42546,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_1()); 
+               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
 
             }
@@ -42574,7 +42574,7 @@
     public final void rule__MultiplicityCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14520:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
             // InternalCompleteOCL.g:14521:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
@@ -42612,7 +42612,7 @@
     public final void rule__MultiplicityCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14532:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
             // InternalCompleteOCL.g:14533:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
@@ -42621,7 +42621,7 @@
             // InternalCompleteOCL.g:14534:1: ( rule__MultiplicityCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
             // InternalCompleteOCL.g:14535:1: ( rule__MultiplicityCS__Alternatives_2 )?
             int alt121=2;
@@ -42646,7 +42646,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
 
             }
@@ -42674,7 +42674,7 @@
     public final void rule__MultiplicityCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14549:1: ( rule__MultiplicityCS__Group__3__Impl )
             // InternalCompleteOCL.g:14550:2: rule__MultiplicityCS__Group__3__Impl
@@ -42707,7 +42707,7 @@
     public final void rule__MultiplicityCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14560:1: ( ( ']' ) )
             // InternalCompleteOCL.g:14561:1: ( ']' )
@@ -42716,11 +42716,11 @@
             // InternalCompleteOCL.g:14562:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); 
+               before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); 
+               after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
             }
 
             }
@@ -42748,7 +42748,7 @@
     public final void rule__PathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14587:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
             // InternalCompleteOCL.g:14588:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
@@ -42786,7 +42786,7 @@
     public final void rule__PathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14599:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
             // InternalCompleteOCL.g:14600:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
@@ -42795,7 +42795,7 @@
             // InternalCompleteOCL.g:14601:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
             // InternalCompleteOCL.g:14602:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             // InternalCompleteOCL.g:14602:2: rule__PathNameCS__OwnedPathElementsAssignment_0
@@ -42809,7 +42809,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
 
             }
@@ -42837,7 +42837,7 @@
     public final void rule__PathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14616:1: ( rule__PathNameCS__Group__1__Impl )
             // InternalCompleteOCL.g:14617:2: rule__PathNameCS__Group__1__Impl
@@ -42870,7 +42870,7 @@
     public final void rule__PathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14627:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
             // InternalCompleteOCL.g:14628:1: ( ( rule__PathNameCS__Group_1__0 )* )
@@ -42879,7 +42879,7 @@
             // InternalCompleteOCL.g:14629:1: ( rule__PathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getGroup_1()); 
+               before(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
             // InternalCompleteOCL.g:14630:1: ( rule__PathNameCS__Group_1__0 )*
             loop122:
@@ -42911,7 +42911,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getGroup_1()); 
+               after(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
 
             }
@@ -42939,7 +42939,7 @@
     public final void rule__PathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14648:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
             // InternalCompleteOCL.g:14649:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
@@ -42977,7 +42977,7 @@
     public final void rule__PathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14660:1: ( ( '::' ) )
             // InternalCompleteOCL.g:14661:1: ( '::' )
@@ -42986,11 +42986,11 @@
             // InternalCompleteOCL.g:14662:1: '::'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); 
+               before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
             }
             match(input,74,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); 
+               after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
             }
 
             }
@@ -43018,7 +43018,7 @@
     public final void rule__PathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14679:1: ( rule__PathNameCS__Group_1__1__Impl )
             // InternalCompleteOCL.g:14680:2: rule__PathNameCS__Group_1__1__Impl
@@ -43051,7 +43051,7 @@
     public final void rule__PathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14690:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
             // InternalCompleteOCL.g:14691:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
@@ -43060,7 +43060,7 @@
             // InternalCompleteOCL.g:14692:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
             // InternalCompleteOCL.g:14693:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             // InternalCompleteOCL.g:14693:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
@@ -43074,7 +43074,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
 
             }
@@ -43102,7 +43102,7 @@
     public final void rule__TemplateBindingCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14711:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
             // InternalCompleteOCL.g:14712:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
@@ -43140,7 +43140,7 @@
     public final void rule__TemplateBindingCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14723:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
             // InternalCompleteOCL.g:14724:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
@@ -43149,7 +43149,7 @@
             // InternalCompleteOCL.g:14725:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
             // InternalCompleteOCL.g:14726:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             // InternalCompleteOCL.g:14726:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
@@ -43163,7 +43163,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
 
             }
@@ -43191,7 +43191,7 @@
     public final void rule__TemplateBindingCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14740:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
             // InternalCompleteOCL.g:14741:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
@@ -43229,7 +43229,7 @@
     public final void rule__TemplateBindingCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14752:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
             // InternalCompleteOCL.g:14753:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
@@ -43238,7 +43238,7 @@
             // InternalCompleteOCL.g:14754:1: ( rule__TemplateBindingCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getGroup_1()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
             // InternalCompleteOCL.g:14755:1: ( rule__TemplateBindingCS__Group_1__0 )*
             loop123:
@@ -43270,7 +43270,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getGroup_1()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
 
             }
@@ -43298,7 +43298,7 @@
     public final void rule__TemplateBindingCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14769:1: ( rule__TemplateBindingCS__Group__2__Impl )
             // InternalCompleteOCL.g:14770:2: rule__TemplateBindingCS__Group__2__Impl
@@ -43331,7 +43331,7 @@
     public final void rule__TemplateBindingCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14780:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
             // InternalCompleteOCL.g:14781:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
@@ -43340,7 +43340,7 @@
             // InternalCompleteOCL.g:14782:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
             // InternalCompleteOCL.g:14783:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             int alt124=2;
@@ -43365,7 +43365,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
 
             }
@@ -43393,7 +43393,7 @@
     public final void rule__TemplateBindingCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14803:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
             // InternalCompleteOCL.g:14804:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
@@ -43431,7 +43431,7 @@
     public final void rule__TemplateBindingCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14815:1: ( ( ',' ) )
             // InternalCompleteOCL.g:14816:1: ( ',' )
@@ -43440,11 +43440,11 @@
             // InternalCompleteOCL.g:14817:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
             }
 
             }
@@ -43472,7 +43472,7 @@
     public final void rule__TemplateBindingCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14834:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
             // InternalCompleteOCL.g:14835:2: rule__TemplateBindingCS__Group_1__1__Impl
@@ -43505,7 +43505,7 @@
     public final void rule__TemplateBindingCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14845:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
             // InternalCompleteOCL.g:14846:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
@@ -43514,7 +43514,7 @@
             // InternalCompleteOCL.g:14847:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
             // InternalCompleteOCL.g:14848:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             // InternalCompleteOCL.g:14848:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
@@ -43528,7 +43528,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
 
             }
@@ -43556,7 +43556,7 @@
     public final void rule__TypeParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14866:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
             // InternalCompleteOCL.g:14867:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
@@ -43594,7 +43594,7 @@
     public final void rule__TypeParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14878:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
             // InternalCompleteOCL.g:14879:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
@@ -43603,7 +43603,7 @@
             // InternalCompleteOCL.g:14880:1: ( rule__TypeParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
             // InternalCompleteOCL.g:14881:1: ( rule__TypeParameterCS__NameAssignment_0 )
             // InternalCompleteOCL.g:14881:2: rule__TypeParameterCS__NameAssignment_0
@@ -43617,7 +43617,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
 
             }
@@ -43645,7 +43645,7 @@
     public final void rule__TypeParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14895:1: ( rule__TypeParameterCS__Group__1__Impl )
             // InternalCompleteOCL.g:14896:2: rule__TypeParameterCS__Group__1__Impl
@@ -43678,7 +43678,7 @@
     public final void rule__TypeParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14906:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
             // InternalCompleteOCL.g:14907:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
@@ -43687,7 +43687,7 @@
             // InternalCompleteOCL.g:14908:1: ( rule__TypeParameterCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
             // InternalCompleteOCL.g:14909:1: ( rule__TypeParameterCS__Group_1__0 )?
             int alt125=2;
@@ -43712,7 +43712,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
 
             }
@@ -43740,7 +43740,7 @@
     public final void rule__TypeParameterCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14927:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
             // InternalCompleteOCL.g:14928:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
@@ -43778,7 +43778,7 @@
     public final void rule__TypeParameterCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14939:1: ( ( 'extends' ) )
             // InternalCompleteOCL.g:14940:1: ( 'extends' )
@@ -43787,11 +43787,11 @@
             // InternalCompleteOCL.g:14941:1: 'extends'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
             }
             match(input,93,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
             }
 
             }
@@ -43819,7 +43819,7 @@
     public final void rule__TypeParameterCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14958:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
             // InternalCompleteOCL.g:14959:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
@@ -43857,7 +43857,7 @@
     public final void rule__TypeParameterCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14970:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
             // InternalCompleteOCL.g:14971:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
@@ -43866,7 +43866,7 @@
             // InternalCompleteOCL.g:14972:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
             // InternalCompleteOCL.g:14973:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             // InternalCompleteOCL.g:14973:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
@@ -43880,7 +43880,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
 
             }
@@ -43908,7 +43908,7 @@
     public final void rule__TypeParameterCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14987:1: ( rule__TypeParameterCS__Group_1__2__Impl )
             // InternalCompleteOCL.g:14988:2: rule__TypeParameterCS__Group_1__2__Impl
@@ -43941,7 +43941,7 @@
     public final void rule__TypeParameterCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:14998:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
             // InternalCompleteOCL.g:14999:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
@@ -43950,7 +43950,7 @@
             // InternalCompleteOCL.g:15000:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
             // InternalCompleteOCL.g:15001:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             loop126:
@@ -43982,7 +43982,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup_1_2()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
 
             }
@@ -44010,7 +44010,7 @@
     public final void rule__TypeParameterCS__Group_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15021:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
             // InternalCompleteOCL.g:15022:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
@@ -44048,7 +44048,7 @@
     public final void rule__TypeParameterCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15033:1: ( ( '&&' ) )
             // InternalCompleteOCL.g:15034:1: ( '&&' )
@@ -44057,11 +44057,11 @@
             // InternalCompleteOCL.g:15035:1: '&&'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
             }
             match(input,94,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
             }
 
             }
@@ -44089,7 +44089,7 @@
     public final void rule__TypeParameterCS__Group_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15052:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
             // InternalCompleteOCL.g:15053:2: rule__TypeParameterCS__Group_1_2__1__Impl
@@ -44122,7 +44122,7 @@
     public final void rule__TypeParameterCS__Group_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15063:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
             // InternalCompleteOCL.g:15064:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
@@ -44131,7 +44131,7 @@
             // InternalCompleteOCL.g:15065:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
             // InternalCompleteOCL.g:15066:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             // InternalCompleteOCL.g:15066:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
@@ -44145,7 +44145,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
 
             }
@@ -44173,7 +44173,7 @@
     public final void rule__TypedTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15084:1: ( rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 )
             // InternalCompleteOCL.g:15085:2: rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1
@@ -44211,7 +44211,7 @@
     public final void rule__TypedTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15096:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) )
             // InternalCompleteOCL.g:15097:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
@@ -44220,7 +44220,7 @@
             // InternalCompleteOCL.g:15098:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0());
             }
             // InternalCompleteOCL.g:15099:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
             // InternalCompleteOCL.g:15099:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0
@@ -44234,7 +44234,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0());
             }
 
             }
@@ -44262,7 +44262,7 @@
     public final void rule__TypedTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15113:1: ( rule__TypedTypeRefCS__Group__1__Impl )
             // InternalCompleteOCL.g:15114:2: rule__TypedTypeRefCS__Group__1__Impl
@@ -44295,7 +44295,7 @@
     public final void rule__TypedTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15124:1: ( ( ( rule__TypedTypeRefCS__Group_1__0 )? ) )
             // InternalCompleteOCL.g:15125:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
@@ -44304,7 +44304,7 @@
             // InternalCompleteOCL.g:15126:1: ( rule__TypedTypeRefCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1());
             }
             // InternalCompleteOCL.g:15127:1: ( rule__TypedTypeRefCS__Group_1__0 )?
             int alt127=2;
@@ -44329,7 +44329,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1());
             }
 
             }
@@ -44357,7 +44357,7 @@
     public final void rule__TypedTypeRefCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15145:1: ( rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 )
             // InternalCompleteOCL.g:15146:2: rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1
@@ -44395,7 +44395,7 @@
     public final void rule__TypedTypeRefCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15157:1: ( ( '(' ) )
             // InternalCompleteOCL.g:15158:1: ( '(' )
@@ -44404,11 +44404,11 @@
             // InternalCompleteOCL.g:15159:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -44436,7 +44436,7 @@
     public final void rule__TypedTypeRefCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15176:1: ( rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 )
             // InternalCompleteOCL.g:15177:2: rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2
@@ -44474,7 +44474,7 @@
     public final void rule__TypedTypeRefCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15188:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) )
             // InternalCompleteOCL.g:15189:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
@@ -44483,7 +44483,7 @@
             // InternalCompleteOCL.g:15190:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1());
             }
             // InternalCompleteOCL.g:15191:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
             // InternalCompleteOCL.g:15191:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1
@@ -44497,7 +44497,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1());
             }
 
             }
@@ -44525,7 +44525,7 @@
     public final void rule__TypedTypeRefCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15205:1: ( rule__TypedTypeRefCS__Group_1__2__Impl )
             // InternalCompleteOCL.g:15206:2: rule__TypedTypeRefCS__Group_1__2__Impl
@@ -44558,7 +44558,7 @@
     public final void rule__TypedTypeRefCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15216:1: ( ( ')' ) )
             // InternalCompleteOCL.g:15217:1: ( ')' )
@@ -44567,11 +44567,11 @@
             // InternalCompleteOCL.g:15218:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
             }
             match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
             }
 
             }
@@ -44599,7 +44599,7 @@
     public final void rule__WildcardTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15241:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
             // InternalCompleteOCL.g:15242:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
@@ -44637,7 +44637,7 @@
     public final void rule__WildcardTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15253:1: ( ( () ) )
             // InternalCompleteOCL.g:15254:1: ( () )
@@ -44646,15 +44646,15 @@
             // InternalCompleteOCL.g:15255:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
             // InternalCompleteOCL.g:15256:1: ()
-            // InternalCompleteOCL.g:15258:1: 
+            // InternalCompleteOCL.g:15258:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
 
             }
@@ -44678,7 +44678,7 @@
     public final void rule__WildcardTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15272:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
             // InternalCompleteOCL.g:15273:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
@@ -44716,7 +44716,7 @@
     public final void rule__WildcardTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15284:1: ( ( '?' ) )
             // InternalCompleteOCL.g:15285:1: ( '?' )
@@ -44725,11 +44725,11 @@
             // InternalCompleteOCL.g:15286:1: '?'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
             }
             match(input,59,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
             }
 
             }
@@ -44757,7 +44757,7 @@
     public final void rule__WildcardTypeRefCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15303:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
             // InternalCompleteOCL.g:15304:2: rule__WildcardTypeRefCS__Group__2__Impl
@@ -44790,7 +44790,7 @@
     public final void rule__WildcardTypeRefCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15314:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
             // InternalCompleteOCL.g:15315:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
@@ -44799,7 +44799,7 @@
             // InternalCompleteOCL.g:15316:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
             // InternalCompleteOCL.g:15317:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             int alt128=2;
@@ -44824,7 +44824,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
 
             }
@@ -44852,7 +44852,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15337:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
             // InternalCompleteOCL.g:15338:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
@@ -44890,7 +44890,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15349:1: ( ( 'extends' ) )
             // InternalCompleteOCL.g:15350:1: ( 'extends' )
@@ -44899,11 +44899,11 @@
             // InternalCompleteOCL.g:15351:1: 'extends'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
             }
             match(input,93,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
             }
 
             }
@@ -44931,7 +44931,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15368:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
             // InternalCompleteOCL.g:15369:2: rule__WildcardTypeRefCS__Group_2__1__Impl
@@ -44964,7 +44964,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15379:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
             // InternalCompleteOCL.g:15380:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
@@ -44973,7 +44973,7 @@
             // InternalCompleteOCL.g:15381:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
             // InternalCompleteOCL.g:15382:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             // InternalCompleteOCL.g:15382:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
@@ -44987,7 +44987,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
 
             }
@@ -45015,7 +45015,7 @@
     public final void rule__CompleteOCLDocumentCS__OwnedImportsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15401:1: ( ( ruleImportCS ) )
             // InternalCompleteOCL.g:15402:1: ( ruleImportCS )
@@ -45024,7 +45024,7 @@
             // InternalCompleteOCL.g:15403:1: ruleImportCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsImportCSParserRuleCall_0_0()); 
+               before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsImportCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleImportCS();
@@ -45032,7 +45032,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsImportCSParserRuleCall_0_0()); 
+               after(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsImportCSParserRuleCall_0_0());
             }
 
             }
@@ -45060,7 +45060,7 @@
     public final void rule__CompleteOCLDocumentCS__OwnedPackagesAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15416:1: ( ( rulePackageDeclarationCS ) )
             // InternalCompleteOCL.g:15417:1: ( rulePackageDeclarationCS )
@@ -45069,7 +45069,7 @@
             // InternalCompleteOCL.g:15418:1: rulePackageDeclarationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesPackageDeclarationCSParserRuleCall_1_0_0()); 
+               before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesPackageDeclarationCSParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePackageDeclarationCS();
@@ -45077,7 +45077,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesPackageDeclarationCSParserRuleCall_1_0_0()); 
+               after(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesPackageDeclarationCSParserRuleCall_1_0_0());
             }
 
             }
@@ -45105,7 +45105,7 @@
     public final void rule__CompleteOCLDocumentCS__OwnedContextsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15431:1: ( ( ruleContextDeclCS ) )
             // InternalCompleteOCL.g:15432:1: ( ruleContextDeclCS )
@@ -45114,7 +45114,7 @@
             // InternalCompleteOCL.g:15433:1: ruleContextDeclCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsContextDeclCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsContextDeclCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleContextDeclCS();
@@ -45122,7 +45122,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsContextDeclCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsContextDeclCSParserRuleCall_1_1_0());
             }
 
             }
@@ -45150,7 +45150,7 @@
     public final void rule__ClassifierContextDeclCS__OwnedSignatureAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15446:1: ( ( ruleTemplateSignatureCS ) )
             // InternalCompleteOCL.g:15447:1: ( ruleTemplateSignatureCS )
@@ -45159,7 +45159,7 @@
             // InternalCompleteOCL.g:15448:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateSignatureCS();
@@ -45167,7 +45167,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
             }
 
             }
@@ -45195,7 +45195,7 @@
     public final void rule__ClassifierContextDeclCS__SelfNameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15461:1: ( ( ruleUnrestrictedName ) )
             // InternalCompleteOCL.g:15462:1: ( ruleUnrestrictedName )
@@ -45204,7 +45204,7 @@
             // InternalCompleteOCL.g:15463:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameUnrestrictedNameParserRuleCall_2_0()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameUnrestrictedNameParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -45212,7 +45212,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameUnrestrictedNameParserRuleCall_2_0()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameUnrestrictedNameParserRuleCall_2_0());
             }
 
             }
@@ -45240,7 +45240,7 @@
     public final void rule__ClassifierContextDeclCS__OwnedPathNameAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15476:1: ( ( rulePathNameCS ) )
             // InternalCompleteOCL.g:15477:1: ( rulePathNameCS )
@@ -45249,7 +45249,7 @@
             // InternalCompleteOCL.g:15478:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -45257,7 +45257,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0());
             }
 
             }
@@ -45285,7 +45285,7 @@
     public final void rule__ClassifierContextDeclCS__OwnedInvariantsAssignment_4_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15491:1: ( ( ruleConstraintCS ) )
             // InternalCompleteOCL.g:15492:1: ( ruleConstraintCS )
@@ -45294,7 +45294,7 @@
             // InternalCompleteOCL.g:15493:1: ruleConstraintCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_4_0_1_0()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_4_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleConstraintCS();
@@ -45302,7 +45302,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_4_0_1_0()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_4_0_1_0());
             }
 
             }
@@ -45330,7 +45330,7 @@
     public final void rule__ClassifierContextDeclCS__OwnedDefinitionsAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15506:1: ( ( ruleDefCS ) )
             // InternalCompleteOCL.g:15507:1: ( ruleDefCS )
@@ -45339,7 +45339,7 @@
             // InternalCompleteOCL.g:15508:1: ruleDefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsDefCSParserRuleCall_4_1_0()); 
+               before(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsDefCSParserRuleCall_4_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleDefCS();
@@ -45347,7 +45347,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsDefCSParserRuleCall_4_1_0()); 
+               after(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsDefCSParserRuleCall_4_1_0());
             }
 
             }
@@ -45375,7 +45375,7 @@
     public final void rule__ConstraintCS__NameAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15521:1: ( ( ruleUnrestrictedName ) )
             // InternalCompleteOCL.g:15522:1: ( ruleUnrestrictedName )
@@ -45384,7 +45384,7 @@
             // InternalCompleteOCL.g:15523:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0()); 
+               before(grammarAccess.getConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -45392,7 +45392,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0()); 
+               after(grammarAccess.getConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
             }
 
             }
@@ -45420,7 +45420,7 @@
     public final void rule__ConstraintCS__OwnedMessageSpecificationAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15536:1: ( ( ruleSpecificationCS ) )
             // InternalCompleteOCL.g:15537:1: ( ruleSpecificationCS )
@@ -45429,7 +45429,7 @@
             // InternalCompleteOCL.g:15538:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_0_1_1_0()); 
+               before(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -45437,7 +45437,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_0_1_1_0()); 
+               after(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_0_1_1_0());
             }
 
             }
@@ -45465,7 +45465,7 @@
     public final void rule__ConstraintCS__OwnedSpecificationAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15551:1: ( ( ruleSpecificationCS ) )
             // InternalCompleteOCL.g:15552:1: ( ruleSpecificationCS )
@@ -45474,7 +45474,7 @@
             // InternalCompleteOCL.g:15553:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_2_0()); 
+               before(grammarAccess.getConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -45482,7 +45482,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_2_0()); 
+               after(grammarAccess.getConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_2_0());
             }
 
             }
@@ -45510,7 +45510,7 @@
     public final void rule__DefOperationCS__IsStaticAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15566:1: ( ( ( 'static' ) ) )
             // InternalCompleteOCL.g:15567:1: ( ( 'static' ) )
@@ -45519,23 +45519,23 @@
             // InternalCompleteOCL.g:15568:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0()); 
+               before(grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0());
             }
             // InternalCompleteOCL.g:15569:1: ( 'static' )
             // InternalCompleteOCL.g:15570:1: 'static'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0()); 
+               before(grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0());
             }
             match(input,95,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0()); 
+               after(grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0()); 
+               after(grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0());
             }
 
             }
@@ -45563,7 +45563,7 @@
     public final void rule__DefOperationCS__OwnedSignatureAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15589:1: ( ( ruleTemplateSignatureCS ) )
             // InternalCompleteOCL.g:15590:1: ( ruleTemplateSignatureCS )
@@ -45572,7 +45572,7 @@
             // InternalCompleteOCL.g:15591:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_4_0()); 
+               before(grammarAccess.getDefOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateSignatureCS();
@@ -45580,7 +45580,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_4_0()); 
+               after(grammarAccess.getDefOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_4_0());
             }
 
             }
@@ -45608,7 +45608,7 @@
     public final void rule__DefOperationCS__NameAssignment_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15604:1: ( ( ruleUnrestrictedName ) )
             // InternalCompleteOCL.g:15605:1: ( ruleUnrestrictedName )
@@ -45617,7 +45617,7 @@
             // InternalCompleteOCL.g:15606:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getNameUnrestrictedNameParserRuleCall_5_0()); 
+               before(grammarAccess.getDefOperationCSAccess().getNameUnrestrictedNameParserRuleCall_5_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -45625,7 +45625,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getNameUnrestrictedNameParserRuleCall_5_0()); 
+               after(grammarAccess.getDefOperationCSAccess().getNameUnrestrictedNameParserRuleCall_5_0());
             }
 
             }
@@ -45653,7 +45653,7 @@
     public final void rule__DefOperationCS__OwnedParametersAssignment_7_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15619:1: ( ( ruleDefParameterCS ) )
             // InternalCompleteOCL.g:15620:1: ( ruleDefParameterCS )
@@ -45662,7 +45662,7 @@
             // InternalCompleteOCL.g:15621:1: ruleDefParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_0_0()); 
+               before(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleDefParameterCS();
@@ -45670,7 +45670,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_0_0()); 
+               after(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_0_0());
             }
 
             }
@@ -45698,7 +45698,7 @@
     public final void rule__DefOperationCS__OwnedParametersAssignment_7_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15634:1: ( ( ruleDefParameterCS ) )
             // InternalCompleteOCL.g:15635:1: ( ruleDefParameterCS )
@@ -45707,7 +45707,7 @@
             // InternalCompleteOCL.g:15636:1: ruleDefParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_1_1_0()); 
+               before(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleDefParameterCS();
@@ -45715,7 +45715,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_1_1_0()); 
+               after(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_1_1_0());
             }
 
             }
@@ -45743,7 +45743,7 @@
     public final void rule__DefOperationCS__OwnedTypeAssignment_10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15649:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:15650:1: ( ruleTypeExpCS )
@@ -45752,7 +45752,7 @@
             // InternalCompleteOCL.g:15651:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getOwnedTypeTypeExpCSParserRuleCall_10_0()); 
+               before(grammarAccess.getDefOperationCSAccess().getOwnedTypeTypeExpCSParserRuleCall_10_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -45760,7 +45760,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getOwnedTypeTypeExpCSParserRuleCall_10_0()); 
+               after(grammarAccess.getDefOperationCSAccess().getOwnedTypeTypeExpCSParserRuleCall_10_0());
             }
 
             }
@@ -45788,7 +45788,7 @@
     public final void rule__DefOperationCS__OwnedSpecificationAssignment_12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15664:1: ( ( ruleSpecificationCS ) )
             // InternalCompleteOCL.g:15665:1: ( ruleSpecificationCS )
@@ -45797,7 +45797,7 @@
             // InternalCompleteOCL.g:15666:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_12_0()); 
+               before(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_12_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -45805,7 +45805,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_12_0()); 
+               after(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_12_0());
             }
 
             }
@@ -45833,7 +45833,7 @@
     public final void rule__DefParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15679:1: ( ( ruleUnrestrictedName ) )
             // InternalCompleteOCL.g:15680:1: ( ruleUnrestrictedName )
@@ -45842,7 +45842,7 @@
             // InternalCompleteOCL.g:15681:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getDefParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -45850,7 +45850,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getDefParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -45878,7 +45878,7 @@
     public final void rule__DefParameterCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15694:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:15695:1: ( ruleTypeExpCS )
@@ -45887,7 +45887,7 @@
             // InternalCompleteOCL.g:15696:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getDefParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -45895,7 +45895,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getDefParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
             }
 
             }
@@ -45923,7 +45923,7 @@
     public final void rule__DefPropertyCS__IsStaticAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15709:1: ( ( ( 'static' ) ) )
             // InternalCompleteOCL.g:15710:1: ( ( 'static' ) )
@@ -45932,23 +45932,23 @@
             // InternalCompleteOCL.g:15711:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0()); 
+               before(grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0());
             }
             // InternalCompleteOCL.g:15712:1: ( 'static' )
             // InternalCompleteOCL.g:15713:1: 'static'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0()); 
+               before(grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0());
             }
             match(input,95,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0()); 
+               after(grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0()); 
+               after(grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0());
             }
 
             }
@@ -45976,7 +45976,7 @@
     public final void rule__DefPropertyCS__NameAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15732:1: ( ( ruleUnrestrictedName ) )
             // InternalCompleteOCL.g:15733:1: ( ruleUnrestrictedName )
@@ -45985,7 +45985,7 @@
             // InternalCompleteOCL.g:15734:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getNameUnrestrictedNameParserRuleCall_4_0()); 
+               before(grammarAccess.getDefPropertyCSAccess().getNameUnrestrictedNameParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -45993,7 +45993,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getNameUnrestrictedNameParserRuleCall_4_0()); 
+               after(grammarAccess.getDefPropertyCSAccess().getNameUnrestrictedNameParserRuleCall_4_0());
             }
 
             }
@@ -46021,7 +46021,7 @@
     public final void rule__DefPropertyCS__OwnedTypeAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15747:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:15748:1: ( ruleTypeExpCS )
@@ -46030,7 +46030,7 @@
             // InternalCompleteOCL.g:15749:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getOwnedTypeTypeExpCSParserRuleCall_6_0()); 
+               before(grammarAccess.getDefPropertyCSAccess().getOwnedTypeTypeExpCSParserRuleCall_6_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -46038,7 +46038,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getOwnedTypeTypeExpCSParserRuleCall_6_0()); 
+               after(grammarAccess.getDefPropertyCSAccess().getOwnedTypeTypeExpCSParserRuleCall_6_0());
             }
 
             }
@@ -46066,7 +46066,7 @@
     public final void rule__DefPropertyCS__OwnedSpecificationAssignment_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15762:1: ( ( ruleSpecificationCS ) )
             // InternalCompleteOCL.g:15763:1: ( ruleSpecificationCS )
@@ -46075,7 +46075,7 @@
             // InternalCompleteOCL.g:15764:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_8_0()); 
+               before(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_8_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -46083,7 +46083,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_8_0()); 
+               after(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_8_0());
             }
 
             }
@@ -46111,7 +46111,7 @@
     public final void rule__ImportCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15777:1: ( ( ruleIdentifier ) )
             // InternalCompleteOCL.g:15778:1: ( ruleIdentifier )
@@ -46120,7 +46120,7 @@
             // InternalCompleteOCL.g:15779:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0()); 
+               before(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -46128,7 +46128,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0()); 
+               after(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0());
             }
 
             }
@@ -46156,7 +46156,7 @@
     public final void rule__ImportCS__OwnedPathNameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15792:1: ( ( ruleURIPathNameCS ) )
             // InternalCompleteOCL.g:15793:1: ( ruleURIPathNameCS )
@@ -46165,7 +46165,7 @@
             // InternalCompleteOCL.g:15794:1: ruleURIPathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0()); 
+               before(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleURIPathNameCS();
@@ -46173,7 +46173,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0()); 
+               after(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
             }
 
             }
@@ -46201,7 +46201,7 @@
     public final void rule__ImportCS__IsAllAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15807:1: ( ( ( '::*' ) ) )
             // InternalCompleteOCL.g:15808:1: ( ( '::*' ) )
@@ -46210,23 +46210,23 @@
             // InternalCompleteOCL.g:15809:1: ( '::*' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); 
+               before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
             // InternalCompleteOCL.g:15810:1: ( '::*' )
             // InternalCompleteOCL.g:15811:1: '::*'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); 
+               before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); 
+               after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); 
+               after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
 
             }
@@ -46254,7 +46254,7 @@
     public final void rule__OperationContextDeclCS__OwnedSignatureAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15830:1: ( ( ruleTemplateSignatureCS ) )
             // InternalCompleteOCL.g:15831:1: ( ruleTemplateSignatureCS )
@@ -46263,7 +46263,7 @@
             // InternalCompleteOCL.g:15832:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateSignatureCS();
@@ -46271,7 +46271,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
             }
 
             }
@@ -46299,7 +46299,7 @@
     public final void rule__OperationContextDeclCS__OwnedPathNameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15845:1: ( ( rulePathNameCS ) )
             // InternalCompleteOCL.g:15846:1: ( rulePathNameCS )
@@ -46308,7 +46308,7 @@
             // InternalCompleteOCL.g:15847:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -46316,7 +46316,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0());
             }
 
             }
@@ -46344,7 +46344,7 @@
     public final void rule__OperationContextDeclCS__OwnedParametersAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15860:1: ( ( ruleParameterCS ) )
             // InternalCompleteOCL.g:15861:1: ( ruleParameterCS )
@@ -46353,7 +46353,7 @@
             // InternalCompleteOCL.g:15862:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_0_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleParameterCS();
@@ -46361,7 +46361,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_0_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_0_0());
             }
 
             }
@@ -46389,7 +46389,7 @@
     public final void rule__OperationContextDeclCS__OwnedParametersAssignment_4_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15875:1: ( ( ruleParameterCS ) )
             // InternalCompleteOCL.g:15876:1: ( ruleParameterCS )
@@ -46398,7 +46398,7 @@
             // InternalCompleteOCL.g:15877:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_1_1_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleParameterCS();
@@ -46406,7 +46406,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_1_1_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_1_1_0());
             }
 
             }
@@ -46434,7 +46434,7 @@
     public final void rule__OperationContextDeclCS__OwnedTypeAssignment_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15890:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:15891:1: ( ruleTypeExpCS )
@@ -46443,7 +46443,7 @@
             // InternalCompleteOCL.g:15892:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_7_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_7_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -46451,7 +46451,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_7_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_7_0());
             }
 
             }
@@ -46479,7 +46479,7 @@
     public final void rule__OperationContextDeclCS__OwnedPreconditionsAssignment_8_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15905:1: ( ( ruleConstraintCS ) )
             // InternalCompleteOCL.g:15906:1: ( ruleConstraintCS )
@@ -46488,7 +46488,7 @@
             // InternalCompleteOCL.g:15907:1: ruleConstraintCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsConstraintCSParserRuleCall_8_0_1_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsConstraintCSParserRuleCall_8_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleConstraintCS();
@@ -46496,7 +46496,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsConstraintCSParserRuleCall_8_0_1_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsConstraintCSParserRuleCall_8_0_1_0());
             }
 
             }
@@ -46524,7 +46524,7 @@
     public final void rule__OperationContextDeclCS__OwnedPostconditionsAssignment_8_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15920:1: ( ( ruleConstraintCS ) )
             // InternalCompleteOCL.g:15921:1: ( ruleConstraintCS )
@@ -46533,7 +46533,7 @@
             // InternalCompleteOCL.g:15922:1: ruleConstraintCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsConstraintCSParserRuleCall_8_1_1_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsConstraintCSParserRuleCall_8_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleConstraintCS();
@@ -46541,7 +46541,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsConstraintCSParserRuleCall_8_1_1_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsConstraintCSParserRuleCall_8_1_1_0());
             }
 
             }
@@ -46569,7 +46569,7 @@
     public final void rule__OperationContextDeclCS__OwnedBodiesAssignment_8_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15935:1: ( ( ruleSpecificationCS ) )
             // InternalCompleteOCL.g:15936:1: ( ruleSpecificationCS )
@@ -46578,7 +46578,7 @@
             // InternalCompleteOCL.g:15937:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesSpecificationCSParserRuleCall_8_2_3_0()); 
+               before(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesSpecificationCSParserRuleCall_8_2_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -46586,7 +46586,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesSpecificationCSParserRuleCall_8_2_3_0()); 
+               after(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesSpecificationCSParserRuleCall_8_2_3_0());
             }
 
             }
@@ -46614,7 +46614,7 @@
     public final void rule__PackageDeclarationCS__OwnedPathNameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15950:1: ( ( rulePathNameCS ) )
             // InternalCompleteOCL.g:15951:1: ( rulePathNameCS )
@@ -46623,7 +46623,7 @@
             // InternalCompleteOCL.g:15952:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); 
+               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -46631,7 +46631,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); 
+               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
             }
 
             }
@@ -46659,7 +46659,7 @@
     public final void rule__PackageDeclarationCS__OwnedInvariantsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15965:1: ( ( ruleConstraintCS ) )
             // InternalCompleteOCL.g:15966:1: ( ruleConstraintCS )
@@ -46668,7 +46668,7 @@
             // InternalCompleteOCL.g:15967:1: ruleConstraintCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleConstraintCS();
@@ -46676,7 +46676,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_2_1_0());
             }
 
             }
@@ -46704,7 +46704,7 @@
     public final void rule__PackageDeclarationCS__OwnedContextsAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15980:1: ( ( ruleContextDeclCS ) )
             // InternalCompleteOCL.g:15981:1: ( ruleContextDeclCS )
@@ -46713,7 +46713,7 @@
             // InternalCompleteOCL.g:15982:1: ruleContextDeclCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsContextDeclCSParserRuleCall_3_0()); 
+               before(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsContextDeclCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleContextDeclCS();
@@ -46721,7 +46721,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsContextDeclCSParserRuleCall_3_0()); 
+               after(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsContextDeclCSParserRuleCall_3_0());
             }
 
             }
@@ -46749,7 +46749,7 @@
     public final void rule__ParameterCS__NameAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:15995:1: ( ( ruleUnrestrictedName ) )
             // InternalCompleteOCL.g:15996:1: ( ruleUnrestrictedName )
@@ -46758,7 +46758,7 @@
             // InternalCompleteOCL.g:15997:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0()); 
+               before(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -46766,7 +46766,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0()); 
+               after(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
             }
 
             }
@@ -46794,7 +46794,7 @@
     public final void rule__ParameterCS__OwnedTypeAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16010:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:16011:1: ( ruleTypeExpCS )
@@ -46803,7 +46803,7 @@
             // InternalCompleteOCL.g:16012:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -46811,7 +46811,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_0());
             }
 
             }
@@ -46839,7 +46839,7 @@
     public final void rule__PropertyContextDeclCS__OwnedPathNameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16025:1: ( ( rulePathNameCS ) )
             // InternalCompleteOCL.g:16026:1: ( rulePathNameCS )
@@ -46848,7 +46848,7 @@
             // InternalCompleteOCL.g:16027:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -46856,7 +46856,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
             }
 
             }
@@ -46884,7 +46884,7 @@
     public final void rule__PropertyContextDeclCS__OwnedTypeAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16040:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:16041:1: ( ruleTypeExpCS )
@@ -46893,7 +46893,7 @@
             // InternalCompleteOCL.g:16042:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_3_0()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -46901,7 +46901,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_3_0()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_3_0());
             }
 
             }
@@ -46929,7 +46929,7 @@
     public final void rule__PropertyContextDeclCS__OwnedDerivedInvariantsAssignment_4_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16055:1: ( ( ruleConstraintCS ) )
             // InternalCompleteOCL.g:16056:1: ( ruleConstraintCS )
@@ -46938,7 +46938,7 @@
             // InternalCompleteOCL.g:16057:1: ruleConstraintCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDerivedInvariantsConstraintCSParserRuleCall_4_0_1_0()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDerivedInvariantsConstraintCSParserRuleCall_4_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleConstraintCS();
@@ -46946,7 +46946,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDerivedInvariantsConstraintCSParserRuleCall_4_0_1_0()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDerivedInvariantsConstraintCSParserRuleCall_4_0_1_0());
             }
 
             }
@@ -46974,7 +46974,7 @@
     public final void rule__PropertyContextDeclCS__OwnedDefaultExpressionsAssignment_4_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16070:1: ( ( ruleSpecificationCS ) )
             // InternalCompleteOCL.g:16071:1: ( ruleSpecificationCS )
@@ -46983,7 +46983,7 @@
             // InternalCompleteOCL.g:16072:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_1_2_0()); 
+               before(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_1_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -46991,7 +46991,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_1_2_0()); 
+               after(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_1_2_0());
             }
 
             }
@@ -47019,7 +47019,7 @@
     public final void rule__SpecificationCS__OwnedExpressionAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16085:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:16086:1: ( ruleExpCS )
@@ -47028,7 +47028,7 @@
             // InternalCompleteOCL.g:16087:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0()); 
+               before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -47036,7 +47036,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0()); 
+               after(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0());
             }
 
             }
@@ -47064,7 +47064,7 @@
     public final void rule__SpecificationCS__ExprStringAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16100:1: ( ( RULE_UNQUOTED_STRING ) )
             // InternalCompleteOCL.g:16101:1: ( RULE_UNQUOTED_STRING )
@@ -47073,11 +47073,11 @@
             // InternalCompleteOCL.g:16102:1: RULE_UNQUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0()); 
+               before(grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0());
             }
             match(input,RULE_UNQUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0()); 
+               after(grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0());
             }
 
             }
@@ -47105,7 +47105,7 @@
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16115:1: ( ( ruleTypeParameterCS ) )
             // InternalCompleteOCL.g:16116:1: ( ruleTypeParameterCS )
@@ -47114,7 +47114,7 @@
             // InternalCompleteOCL.g:16117:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeParameterCS();
@@ -47122,7 +47122,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0());
             }
 
             }
@@ -47150,7 +47150,7 @@
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16130:1: ( ( ruleTypeParameterCS ) )
             // InternalCompleteOCL.g:16131:1: ( ruleTypeParameterCS )
@@ -47159,7 +47159,7 @@
             // InternalCompleteOCL.g:16132:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeParameterCS();
@@ -47167,7 +47167,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0());
             }
 
             }
@@ -47195,7 +47195,7 @@
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16145:1: ( ( ruleTypeParameterCS ) )
             // InternalCompleteOCL.g:16146:1: ( ruleTypeParameterCS )
@@ -47204,7 +47204,7 @@
             // InternalCompleteOCL.g:16147:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeParameterCS();
@@ -47212,7 +47212,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0());
             }
 
             }
@@ -47240,7 +47240,7 @@
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16160:1: ( ( ruleTypeParameterCS ) )
             // InternalCompleteOCL.g:16161:1: ( ruleTypeParameterCS )
@@ -47249,7 +47249,7 @@
             // InternalCompleteOCL.g:16162:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeParameterCS();
@@ -47257,7 +47257,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0());
             }
 
             }
@@ -47285,7 +47285,7 @@
     public final void rule__URIPathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16176:1: ( ( ruleURIFirstPathElementCS ) )
             // InternalCompleteOCL.g:16177:1: ( ruleURIFirstPathElementCS )
@@ -47294,7 +47294,7 @@
             // InternalCompleteOCL.g:16178:1: ruleURIFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0()); 
+               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleURIFirstPathElementCS();
@@ -47302,7 +47302,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0()); 
+               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
             }
 
             }
@@ -47330,7 +47330,7 @@
     public final void rule__URIPathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16191:1: ( ( ruleNextPathElementCS ) )
             // InternalCompleteOCL.g:16192:1: ( ruleNextPathElementCS )
@@ -47339,7 +47339,7 @@
             // InternalCompleteOCL.g:16193:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNextPathElementCS();
@@ -47347,7 +47347,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
 
             }
@@ -47375,7 +47375,7 @@
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16206:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalCompleteOCL.g:16207:1: ( ( ruleUnrestrictedName ) )
@@ -47384,13 +47384,13 @@
             // InternalCompleteOCL.g:16208:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
             }
             // InternalCompleteOCL.g:16209:1: ( ruleUnrestrictedName )
             // InternalCompleteOCL.g:16210:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -47398,13 +47398,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
             }
 
             }
@@ -47432,7 +47432,7 @@
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16225:1: ( ( ( ruleURI ) ) )
             // InternalCompleteOCL.g:16226:1: ( ( ruleURI ) )
@@ -47441,13 +47441,13 @@
             // InternalCompleteOCL.g:16227:1: ( ruleURI )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
             }
             // InternalCompleteOCL.g:16228:1: ( ruleURI )
             // InternalCompleteOCL.g:16229:1: ruleURI
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleURI();
@@ -47455,13 +47455,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
             }
 
             }
@@ -47489,7 +47489,7 @@
     public final void rule__PrimitiveTypeCS__NameAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16244:1: ( ( rulePrimitiveTypeIdentifier ) )
             // InternalCompleteOCL.g:16245:1: ( rulePrimitiveTypeIdentifier )
@@ -47498,7 +47498,7 @@
             // InternalCompleteOCL.g:16246:1: rulePrimitiveTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
+               before(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrimitiveTypeIdentifier();
@@ -47506,7 +47506,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
+               after(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
             }
 
             }
@@ -47534,7 +47534,7 @@
     public final void rule__CollectionTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16259:1: ( ( ruleCollectionTypeIdentifier ) )
             // InternalCompleteOCL.g:16260:1: ( ruleCollectionTypeIdentifier )
@@ -47543,7 +47543,7 @@
             // InternalCompleteOCL.g:16261:1: ruleCollectionTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionTypeIdentifier();
@@ -47551,7 +47551,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
             }
 
             }
@@ -47579,7 +47579,7 @@
     public final void rule__CollectionTypeCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16274:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:16275:1: ( ruleTypeExpCS )
@@ -47588,7 +47588,7 @@
             // InternalCompleteOCL.g:16276:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -47596,7 +47596,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -47624,7 +47624,7 @@
     public final void rule__MapTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16289:1: ( ( ( 'Map' ) ) )
             // InternalCompleteOCL.g:16290:1: ( ( 'Map' ) )
@@ -47633,23 +47633,23 @@
             // InternalCompleteOCL.g:16291:1: ( 'Map' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
             // InternalCompleteOCL.g:16292:1: ( 'Map' )
             // InternalCompleteOCL.g:16293:1: 'Map'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
             match(input,51,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
 
             }
@@ -47677,7 +47677,7 @@
     public final void rule__MapTypeCS__OwnedKeyTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16312:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:16313:1: ( ruleTypeExpCS )
@@ -47686,7 +47686,7 @@
             // InternalCompleteOCL.g:16314:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -47694,7 +47694,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -47722,7 +47722,7 @@
     public final void rule__MapTypeCS__OwnedValueTypeAssignment_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16327:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:16328:1: ( ruleTypeExpCS )
@@ -47731,7 +47731,7 @@
             // InternalCompleteOCL.g:16329:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -47739,7 +47739,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
             }
 
             }
@@ -47767,7 +47767,7 @@
     public final void rule__TupleTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16342:1: ( ( ( 'Tuple' ) ) )
             // InternalCompleteOCL.g:16343:1: ( ( 'Tuple' ) )
@@ -47776,23 +47776,23 @@
             // InternalCompleteOCL.g:16344:1: ( 'Tuple' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
             // InternalCompleteOCL.g:16345:1: ( 'Tuple' )
             // InternalCompleteOCL.g:16346:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
 
             }
@@ -47820,7 +47820,7 @@
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16365:1: ( ( ruleTuplePartCS ) )
             // InternalCompleteOCL.g:16366:1: ( ruleTuplePartCS )
@@ -47829,7 +47829,7 @@
             // InternalCompleteOCL.g:16367:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTuplePartCS();
@@ -47837,7 +47837,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
             }
 
             }
@@ -47865,7 +47865,7 @@
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16380:1: ( ( ruleTuplePartCS ) )
             // InternalCompleteOCL.g:16381:1: ( ruleTuplePartCS )
@@ -47874,7 +47874,7 @@
             // InternalCompleteOCL.g:16382:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTuplePartCS();
@@ -47882,7 +47882,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
             }
 
             }
@@ -47910,7 +47910,7 @@
     public final void rule__TuplePartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16395:1: ( ( ruleUnrestrictedName ) )
             // InternalCompleteOCL.g:16396:1: ( ruleUnrestrictedName )
@@ -47919,7 +47919,7 @@
             // InternalCompleteOCL.g:16397:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -47927,7 +47927,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -47955,7 +47955,7 @@
     public final void rule__TuplePartCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16410:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:16411:1: ( ruleTypeExpCS )
@@ -47964,7 +47964,7 @@
             // InternalCompleteOCL.g:16412:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -47972,7 +47972,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
             }
 
             }
@@ -48000,7 +48000,7 @@
     public final void rule__CollectionLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16425:1: ( ( ruleCollectionTypeCS ) )
             // InternalCompleteOCL.g:16426:1: ( ruleCollectionTypeCS )
@@ -48009,7 +48009,7 @@
             // InternalCompleteOCL.g:16427:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionTypeCS();
@@ -48017,7 +48017,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
 
             }
@@ -48045,7 +48045,7 @@
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16440:1: ( ( ruleCollectionLiteralPartCS ) )
             // InternalCompleteOCL.g:16441:1: ( ruleCollectionLiteralPartCS )
@@ -48054,7 +48054,7 @@
             // InternalCompleteOCL.g:16442:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionLiteralPartCS();
@@ -48062,7 +48062,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
             }
 
             }
@@ -48090,7 +48090,7 @@
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16455:1: ( ( ruleCollectionLiteralPartCS ) )
             // InternalCompleteOCL.g:16456:1: ( ruleCollectionLiteralPartCS )
@@ -48099,7 +48099,7 @@
             // InternalCompleteOCL.g:16457:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionLiteralPartCS();
@@ -48107,7 +48107,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -48135,7 +48135,7 @@
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16470:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:16471:1: ( ruleExpCS )
@@ -48144,7 +48144,7 @@
             // InternalCompleteOCL.g:16472:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -48152,7 +48152,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
             }
 
             }
@@ -48180,7 +48180,7 @@
     public final void rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16485:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:16486:1: ( ruleExpCS )
@@ -48189,7 +48189,7 @@
             // InternalCompleteOCL.g:16487:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -48197,7 +48197,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
             }
 
             }
@@ -48225,7 +48225,7 @@
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16500:1: ( ( rulePatternExpCS ) )
             // InternalCompleteOCL.g:16501:1: ( rulePatternExpCS )
@@ -48234,7 +48234,7 @@
             // InternalCompleteOCL.g:16502:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePatternExpCS();
@@ -48242,7 +48242,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
             }
 
             }
@@ -48270,7 +48270,7 @@
     public final void rule__CollectionPatternCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16515:1: ( ( ruleCollectionTypeCS ) )
             // InternalCompleteOCL.g:16516:1: ( ruleCollectionTypeCS )
@@ -48279,7 +48279,7 @@
             // InternalCompleteOCL.g:16517:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionTypeCS();
@@ -48287,7 +48287,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
 
             }
@@ -48315,7 +48315,7 @@
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16530:1: ( ( rulePatternExpCS ) )
             // InternalCompleteOCL.g:16531:1: ( rulePatternExpCS )
@@ -48324,7 +48324,7 @@
             // InternalCompleteOCL.g:16532:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePatternExpCS();
@@ -48332,7 +48332,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
             }
 
             }
@@ -48360,7 +48360,7 @@
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16545:1: ( ( rulePatternExpCS ) )
             // InternalCompleteOCL.g:16546:1: ( rulePatternExpCS )
@@ -48369,7 +48369,7 @@
             // InternalCompleteOCL.g:16547:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePatternExpCS();
@@ -48377,7 +48377,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -48405,7 +48405,7 @@
     public final void rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16560:1: ( ( ruleIdentifier ) )
             // InternalCompleteOCL.g:16561:1: ( ruleIdentifier )
@@ -48414,7 +48414,7 @@
             // InternalCompleteOCL.g:16562:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -48422,7 +48422,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
             }
 
             }
@@ -48450,7 +48450,7 @@
     public final void rule__ShadowPartCS__ReferredPropertyAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16575:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalCompleteOCL.g:16576:1: ( ( ruleUnrestrictedName ) )
@@ -48459,13 +48459,13 @@
             // InternalCompleteOCL.g:16577:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
+               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
             }
             // InternalCompleteOCL.g:16578:1: ( ruleUnrestrictedName )
             // InternalCompleteOCL.g:16579:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1()); 
+               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -48473,13 +48473,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1()); 
+               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
+               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
             }
 
             }
@@ -48507,7 +48507,7 @@
     public final void rule__ShadowPartCS__OwnedInitExpressionAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16594:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 ) ) )
             // InternalCompleteOCL.g:16595:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 ) )
@@ -48516,7 +48516,7 @@
             // InternalCompleteOCL.g:16596:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0()); 
+               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0());
             }
             // InternalCompleteOCL.g:16597:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 )
             // InternalCompleteOCL.g:16597:2: rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0
@@ -48530,7 +48530,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0()); 
+               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0());
             }
 
             }
@@ -48558,7 +48558,7 @@
     public final void rule__PatternExpCS__PatternVariableNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16610:1: ( ( ruleUnrestrictedName ) )
             // InternalCompleteOCL.g:16611:1: ( ruleUnrestrictedName )
@@ -48567,7 +48567,7 @@
             // InternalCompleteOCL.g:16612:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -48575,7 +48575,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -48603,7 +48603,7 @@
     public final void rule__PatternExpCS__OwnedPatternTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16625:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:16626:1: ( ruleTypeExpCS )
@@ -48612,7 +48612,7 @@
             // InternalCompleteOCL.g:16627:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -48620,7 +48620,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
             }
 
             }
@@ -48648,7 +48648,7 @@
     public final void rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16640:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:16641:1: ( ruleExpCS )
@@ -48657,7 +48657,7 @@
             // InternalCompleteOCL.g:16642:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -48665,7 +48665,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
             }
 
             }
@@ -48693,7 +48693,7 @@
     public final void rule__MapLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16655:1: ( ( ruleMapTypeCS ) )
             // InternalCompleteOCL.g:16656:1: ( ruleMapTypeCS )
@@ -48702,7 +48702,7 @@
             // InternalCompleteOCL.g:16657:1: ruleMapTypeCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMapTypeCS();
@@ -48710,7 +48710,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
             }
 
             }
@@ -48738,7 +48738,7 @@
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16670:1: ( ( ruleMapLiteralPartCS ) )
             // InternalCompleteOCL.g:16671:1: ( ruleMapLiteralPartCS )
@@ -48747,7 +48747,7 @@
             // InternalCompleteOCL.g:16672:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMapLiteralPartCS();
@@ -48755,7 +48755,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
             }
 
             }
@@ -48783,7 +48783,7 @@
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16685:1: ( ( ruleMapLiteralPartCS ) )
             // InternalCompleteOCL.g:16686:1: ( ruleMapLiteralPartCS )
@@ -48792,7 +48792,7 @@
             // InternalCompleteOCL.g:16687:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMapLiteralPartCS();
@@ -48800,7 +48800,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -48828,7 +48828,7 @@
     public final void rule__MapLiteralPartCS__OwnedKeyAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16700:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:16701:1: ( ruleExpCS )
@@ -48837,7 +48837,7 @@
             // InternalCompleteOCL.g:16702:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -48845,7 +48845,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
             }
 
             }
@@ -48873,7 +48873,7 @@
     public final void rule__MapLiteralPartCS__OwnedValueAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16715:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:16716:1: ( ruleExpCS )
@@ -48882,7 +48882,7 @@
             // InternalCompleteOCL.g:16717:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -48890,7 +48890,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
             }
 
             }
@@ -48918,7 +48918,7 @@
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16730:1: ( ( ruleTupleLiteralPartCS ) )
             // InternalCompleteOCL.g:16731:1: ( ruleTupleLiteralPartCS )
@@ -48927,7 +48927,7 @@
             // InternalCompleteOCL.g:16732:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTupleLiteralPartCS();
@@ -48935,7 +48935,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
             }
 
             }
@@ -48963,7 +48963,7 @@
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16745:1: ( ( ruleTupleLiteralPartCS ) )
             // InternalCompleteOCL.g:16746:1: ( ruleTupleLiteralPartCS )
@@ -48972,7 +48972,7 @@
             // InternalCompleteOCL.g:16747:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTupleLiteralPartCS();
@@ -48980,7 +48980,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
             }
 
             }
@@ -49008,7 +49008,7 @@
     public final void rule__TupleLiteralPartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16760:1: ( ( ruleUnrestrictedName ) )
             // InternalCompleteOCL.g:16761:1: ( ruleUnrestrictedName )
@@ -49017,7 +49017,7 @@
             // InternalCompleteOCL.g:16762:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -49025,7 +49025,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -49053,7 +49053,7 @@
     public final void rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16775:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:16776:1: ( ruleTypeExpCS )
@@ -49062,7 +49062,7 @@
             // InternalCompleteOCL.g:16777:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -49070,7 +49070,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -49098,7 +49098,7 @@
     public final void rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16790:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:16791:1: ( ruleExpCS )
@@ -49107,7 +49107,7 @@
             // InternalCompleteOCL.g:16792:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -49115,7 +49115,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
             }
 
             }
@@ -49143,7 +49143,7 @@
     public final void rule__NumberLiteralExpCS__SymbolAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16805:1: ( ( ruleNUMBER_LITERAL ) )
             // InternalCompleteOCL.g:16806:1: ( ruleNUMBER_LITERAL )
@@ -49152,7 +49152,7 @@
             // InternalCompleteOCL.g:16807:1: ruleNUMBER_LITERAL
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
+               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNUMBER_LITERAL();
@@ -49160,7 +49160,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
+               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
             }
 
             }
@@ -49188,7 +49188,7 @@
     public final void rule__StringLiteralExpCS__SegmentsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16820:1: ( ( ruleStringLiteral ) )
             // InternalCompleteOCL.g:16821:1: ( ruleStringLiteral )
@@ -49197,7 +49197,7 @@
             // InternalCompleteOCL.g:16822:1: ruleStringLiteral
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
+               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleStringLiteral();
@@ -49205,7 +49205,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
+               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
             }
 
             }
@@ -49233,7 +49233,7 @@
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16835:1: ( ( ( 'true' ) ) )
             // InternalCompleteOCL.g:16836:1: ( ( 'true' ) )
@@ -49242,23 +49242,23 @@
             // InternalCompleteOCL.g:16837:1: ( 'true' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
             // InternalCompleteOCL.g:16838:1: ( 'true' )
             // InternalCompleteOCL.g:16839:1: 'true'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
 
             }
@@ -49286,7 +49286,7 @@
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16858:1: ( ( ( 'false' ) ) )
             // InternalCompleteOCL.g:16859:1: ( ( 'false' ) )
@@ -49295,23 +49295,23 @@
             // InternalCompleteOCL.g:16860:1: ( 'false' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
             // InternalCompleteOCL.g:16861:1: ( 'false' )
             // InternalCompleteOCL.g:16862:1: 'false'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
 
             }
@@ -49339,7 +49339,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16881:1: ( ( ruleMultiplicityCS ) )
             // InternalCompleteOCL.g:16882:1: ( ruleMultiplicityCS )
@@ -49348,7 +49348,7 @@
             // InternalCompleteOCL.g:16883:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -49356,7 +49356,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
 
             }
@@ -49384,7 +49384,7 @@
     public final void rule__TypeLiteralExpCS__OwnedTypeAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16896:1: ( ( ruleTypeLiteralWithMultiplicityCS ) )
             // InternalCompleteOCL.g:16897:1: ( ruleTypeLiteralWithMultiplicityCS )
@@ -49393,7 +49393,7 @@
             // InternalCompleteOCL.g:16898:1: ruleTypeLiteralWithMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
+               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeLiteralWithMultiplicityCS();
@@ -49401,7 +49401,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
+               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
             }
 
             }
@@ -49429,7 +49429,7 @@
     public final void rule__TypeNameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16911:1: ( ( rulePathNameCS ) )
             // InternalCompleteOCL.g:16912:1: ( rulePathNameCS )
@@ -49438,7 +49438,7 @@
             // InternalCompleteOCL.g:16913:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -49446,7 +49446,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
 
             }
@@ -49474,7 +49474,7 @@
     public final void rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16926:1: ( ( ruleCurlyBracketedClauseCS ) )
             // InternalCompleteOCL.g:16927:1: ( ruleCurlyBracketedClauseCS )
@@ -49483,7 +49483,7 @@
             // InternalCompleteOCL.g:16928:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCurlyBracketedClauseCS();
@@ -49491,7 +49491,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
             }
 
             }
@@ -49519,7 +49519,7 @@
     public final void rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16941:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:16942:1: ( ruleExpCS )
@@ -49528,7 +49528,7 @@
             // InternalCompleteOCL.g:16943:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -49536,7 +49536,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
             }
 
             }
@@ -49564,7 +49564,7 @@
     public final void rule__TypeExpCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16956:1: ( ( ruleMultiplicityCS ) )
             // InternalCompleteOCL.g:16957:1: ( ruleMultiplicityCS )
@@ -49573,7 +49573,7 @@
             // InternalCompleteOCL.g:16958:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -49581,7 +49581,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
 
             }
@@ -49609,7 +49609,7 @@
     public final void rule__ExpCS__NameAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16971:1: ( ( ruleBinaryOperatorName ) )
             // InternalCompleteOCL.g:16972:1: ( ruleBinaryOperatorName )
@@ -49618,7 +49618,7 @@
             // InternalCompleteOCL.g:16973:1: ruleBinaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
+               before(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleBinaryOperatorName();
@@ -49626,7 +49626,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
+               after(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
             }
 
             }
@@ -49654,7 +49654,7 @@
     public final void rule__ExpCS__OwnedRightAssignment_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:16986:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:16987:1: ( ruleExpCS )
@@ -49663,7 +49663,7 @@
             // InternalCompleteOCL.g:16988:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
+               before(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -49671,7 +49671,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
+               after(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
             }
 
             }
@@ -49699,7 +49699,7 @@
     public final void rule__PrefixedLetExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17001:1: ( ( ruleUnaryOperatorName ) )
             // InternalCompleteOCL.g:17002:1: ( ruleUnaryOperatorName )
@@ -49708,7 +49708,7 @@
             // InternalCompleteOCL.g:17003:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnaryOperatorName();
@@ -49716,7 +49716,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
 
             }
@@ -49744,7 +49744,7 @@
     public final void rule__PrefixedLetExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17016:1: ( ( rulePrefixedLetExpCS ) )
             // InternalCompleteOCL.g:17017:1: ( rulePrefixedLetExpCS )
@@ -49753,7 +49753,7 @@
             // InternalCompleteOCL.g:17018:1: rulePrefixedLetExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrefixedLetExpCS();
@@ -49761,7 +49761,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
             }
 
             }
@@ -49789,7 +49789,7 @@
     public final void rule__PrefixedPrimaryExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17031:1: ( ( ruleUnaryOperatorName ) )
             // InternalCompleteOCL.g:17032:1: ( ruleUnaryOperatorName )
@@ -49798,7 +49798,7 @@
             // InternalCompleteOCL.g:17033:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnaryOperatorName();
@@ -49806,7 +49806,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
 
             }
@@ -49834,7 +49834,7 @@
     public final void rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17046:1: ( ( rulePrefixedPrimaryExpCS ) )
             // InternalCompleteOCL.g:17047:1: ( rulePrefixedPrimaryExpCS )
@@ -49843,7 +49843,7 @@
             // InternalCompleteOCL.g:17048:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrefixedPrimaryExpCS();
@@ -49851,7 +49851,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
             }
 
             }
@@ -49879,7 +49879,7 @@
     public final void rule__NameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17061:1: ( ( rulePathNameCS ) )
             // InternalCompleteOCL.g:17062:1: ( rulePathNameCS )
@@ -49888,7 +49888,7 @@
             // InternalCompleteOCL.g:17063:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -49896,7 +49896,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
 
             }
@@ -49924,7 +49924,7 @@
     public final void rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17076:1: ( ( ruleSquareBracketedClauseCS ) )
             // InternalCompleteOCL.g:17077:1: ( ruleSquareBracketedClauseCS )
@@ -49933,7 +49933,7 @@
             // InternalCompleteOCL.g:17078:1: ruleSquareBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSquareBracketedClauseCS();
@@ -49941,7 +49941,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
             }
 
             }
@@ -49969,7 +49969,7 @@
     public final void rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17091:1: ( ( ruleRoundBracketedClauseCS ) )
             // InternalCompleteOCL.g:17092:1: ( ruleRoundBracketedClauseCS )
@@ -49978,7 +49978,7 @@
             // InternalCompleteOCL.g:17093:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleRoundBracketedClauseCS();
@@ -49986,7 +49986,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
             }
 
             }
@@ -50014,7 +50014,7 @@
     public final void rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17106:1: ( ( ruleCurlyBracketedClauseCS ) )
             // InternalCompleteOCL.g:17107:1: ( ruleCurlyBracketedClauseCS )
@@ -50023,7 +50023,7 @@
             // InternalCompleteOCL.g:17108:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCurlyBracketedClauseCS();
@@ -50031,7 +50031,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
             }
 
             }
@@ -50059,7 +50059,7 @@
     public final void rule__NameExpCS__IsPreAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17121:1: ( ( ( '@' ) ) )
             // InternalCompleteOCL.g:17122:1: ( ( '@' ) )
@@ -50068,23 +50068,23 @@
             // InternalCompleteOCL.g:17123:1: ( '@' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
             // InternalCompleteOCL.g:17124:1: ( '@' )
             // InternalCompleteOCL.g:17125:1: '@'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
 
             }
@@ -50112,7 +50112,7 @@
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17144:1: ( ( ruleShadowPartCS ) )
             // InternalCompleteOCL.g:17145:1: ( ruleShadowPartCS )
@@ -50121,7 +50121,7 @@
             // InternalCompleteOCL.g:17146:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleShadowPartCS();
@@ -50129,7 +50129,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
             }
 
             }
@@ -50157,7 +50157,7 @@
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17159:1: ( ( ruleShadowPartCS ) )
             // InternalCompleteOCL.g:17160:1: ( ruleShadowPartCS )
@@ -50166,7 +50166,7 @@
             // InternalCompleteOCL.g:17161:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleShadowPartCS();
@@ -50174,7 +50174,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
             }
 
             }
@@ -50202,7 +50202,7 @@
     public final void rule__CurlyBracketedClauseCS__ValueAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17174:1: ( ( ruleStringLiteral ) )
             // InternalCompleteOCL.g:17175:1: ( ruleStringLiteral )
@@ -50211,7 +50211,7 @@
             // InternalCompleteOCL.g:17176:1: ruleStringLiteral
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleStringLiteral();
@@ -50219,7 +50219,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
             }
 
             }
@@ -50247,7 +50247,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17189:1: ( ( ruleNavigatingArgCS ) )
             // InternalCompleteOCL.g:17190:1: ( ruleNavigatingArgCS )
@@ -50256,7 +50256,7 @@
             // InternalCompleteOCL.g:17191:1: ruleNavigatingArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgCS();
@@ -50264,7 +50264,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
             }
 
             }
@@ -50292,7 +50292,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17204:1: ( ( ruleNavigatingCommaArgCS ) )
             // InternalCompleteOCL.g:17205:1: ( ruleNavigatingCommaArgCS )
@@ -50301,7 +50301,7 @@
             // InternalCompleteOCL.g:17206:1: ruleNavigatingCommaArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingCommaArgCS();
@@ -50309,7 +50309,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
             }
 
             }
@@ -50337,7 +50337,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17219:1: ( ( ruleNavigatingSemiArgCS ) )
             // InternalCompleteOCL.g:17220:1: ( ruleNavigatingSemiArgCS )
@@ -50346,7 +50346,7 @@
             // InternalCompleteOCL.g:17221:1: ruleNavigatingSemiArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingSemiArgCS();
@@ -50354,7 +50354,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
             }
 
             }
@@ -50382,7 +50382,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17234:1: ( ( ruleNavigatingCommaArgCS ) )
             // InternalCompleteOCL.g:17235:1: ( ruleNavigatingCommaArgCS )
@@ -50391,7 +50391,7 @@
             // InternalCompleteOCL.g:17236:1: ruleNavigatingCommaArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingCommaArgCS();
@@ -50399,7 +50399,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
             }
 
             }
@@ -50427,7 +50427,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17249:1: ( ( ruleNavigatingBarArgCS ) )
             // InternalCompleteOCL.g:17250:1: ( ruleNavigatingBarArgCS )
@@ -50436,7 +50436,7 @@
             // InternalCompleteOCL.g:17251:1: ruleNavigatingBarArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingBarArgCS();
@@ -50444,7 +50444,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
             }
 
             }
@@ -50472,7 +50472,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17264:1: ( ( ruleNavigatingCommaArgCS ) )
             // InternalCompleteOCL.g:17265:1: ( ruleNavigatingCommaArgCS )
@@ -50481,7 +50481,7 @@
             // InternalCompleteOCL.g:17266:1: ruleNavigatingCommaArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingCommaArgCS();
@@ -50489,7 +50489,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
             }
 
             }
@@ -50517,7 +50517,7 @@
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17279:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17280:1: ( ruleExpCS )
@@ -50526,7 +50526,7 @@
             // InternalCompleteOCL.g:17281:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -50534,7 +50534,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
             }
 
             }
@@ -50562,7 +50562,7 @@
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17294:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17295:1: ( ruleExpCS )
@@ -50571,7 +50571,7 @@
             // InternalCompleteOCL.g:17296:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -50579,7 +50579,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -50607,7 +50607,7 @@
     public final void rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17309:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalCompleteOCL.g:17310:1: ( ruleNavigatingArgExpCS )
@@ -50616,7 +50616,7 @@
             // InternalCompleteOCL.g:17311:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -50624,7 +50624,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
             }
 
             }
@@ -50652,7 +50652,7 @@
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17324:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:17325:1: ( ruleTypeExpCS )
@@ -50661,7 +50661,7 @@
             // InternalCompleteOCL.g:17326:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -50669,7 +50669,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
             }
 
             }
@@ -50697,7 +50697,7 @@
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17339:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17340:1: ( ruleExpCS )
@@ -50706,7 +50706,7 @@
             // InternalCompleteOCL.g:17341:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -50714,7 +50714,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
             }
 
             }
@@ -50742,7 +50742,7 @@
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17354:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17355:1: ( ruleExpCS )
@@ -50751,7 +50751,7 @@
             // InternalCompleteOCL.g:17356:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -50759,7 +50759,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
             }
 
             }
@@ -50787,7 +50787,7 @@
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17369:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:17370:1: ( ruleTypeExpCS )
@@ -50796,7 +50796,7 @@
             // InternalCompleteOCL.g:17371:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -50804,7 +50804,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -50832,7 +50832,7 @@
     public final void rule__NavigatingBarArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17384:1: ( ( ( '|' ) ) )
             // InternalCompleteOCL.g:17385:1: ( ( '|' ) )
@@ -50841,23 +50841,23 @@
             // InternalCompleteOCL.g:17386:1: ( '|' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
             // InternalCompleteOCL.g:17387:1: ( '|' )
             // InternalCompleteOCL.g:17388:1: '|'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
 
             }
@@ -50885,7 +50885,7 @@
     public final void rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17407:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalCompleteOCL.g:17408:1: ( ruleNavigatingArgExpCS )
@@ -50894,7 +50894,7 @@
             // InternalCompleteOCL.g:17409:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -50902,7 +50902,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
 
             }
@@ -50930,7 +50930,7 @@
     public final void rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17422:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:17423:1: ( ruleTypeExpCS )
@@ -50939,7 +50939,7 @@
             // InternalCompleteOCL.g:17424:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -50947,7 +50947,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -50975,7 +50975,7 @@
     public final void rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17437:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17438:1: ( ruleExpCS )
@@ -50984,7 +50984,7 @@
             // InternalCompleteOCL.g:17439:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -50992,7 +50992,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
 
             }
@@ -51020,7 +51020,7 @@
     public final void rule__NavigatingCommaArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17452:1: ( ( ( ',' ) ) )
             // InternalCompleteOCL.g:17453:1: ( ( ',' ) )
@@ -51029,23 +51029,23 @@
             // InternalCompleteOCL.g:17454:1: ( ',' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
             // InternalCompleteOCL.g:17455:1: ( ',' )
             // InternalCompleteOCL.g:17456:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
 
             }
@@ -51073,7 +51073,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17475:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalCompleteOCL.g:17476:1: ( ruleNavigatingArgExpCS )
@@ -51082,7 +51082,7 @@
             // InternalCompleteOCL.g:17477:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -51090,7 +51090,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
 
             }
@@ -51118,7 +51118,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17490:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:17491:1: ( ruleTypeExpCS )
@@ -51127,7 +51127,7 @@
             // InternalCompleteOCL.g:17492:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -51135,7 +51135,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
             }
 
             }
@@ -51163,7 +51163,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17505:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17506:1: ( ruleExpCS )
@@ -51172,7 +51172,7 @@
             // InternalCompleteOCL.g:17507:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -51180,7 +51180,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
             }
 
             }
@@ -51208,7 +51208,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17520:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17521:1: ( ruleExpCS )
@@ -51217,7 +51217,7 @@
             // InternalCompleteOCL.g:17522:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -51225,7 +51225,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -51253,7 +51253,7 @@
     public final void rule__NavigatingSemiArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17535:1: ( ( ( ';' ) ) )
             // InternalCompleteOCL.g:17536:1: ( ( ';' ) )
@@ -51262,23 +51262,23 @@
             // InternalCompleteOCL.g:17537:1: ( ';' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
             // InternalCompleteOCL.g:17538:1: ( ';' )
             // InternalCompleteOCL.g:17539:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
 
             }
@@ -51306,7 +51306,7 @@
     public final void rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17558:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalCompleteOCL.g:17559:1: ( ruleNavigatingArgExpCS )
@@ -51315,7 +51315,7 @@
             // InternalCompleteOCL.g:17560:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -51323,7 +51323,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
 
             }
@@ -51351,7 +51351,7 @@
     public final void rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17573:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:17574:1: ( ruleTypeExpCS )
@@ -51360,7 +51360,7 @@
             // InternalCompleteOCL.g:17575:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -51368,7 +51368,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -51396,7 +51396,7 @@
     public final void rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17588:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17589:1: ( ruleExpCS )
@@ -51405,7 +51405,7 @@
             // InternalCompleteOCL.g:17590:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -51413,7 +51413,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
 
             }
@@ -51441,7 +51441,7 @@
     public final void rule__IfExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17603:1: ( ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) )
             // InternalCompleteOCL.g:17604:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
@@ -51450,7 +51450,7 @@
             // InternalCompleteOCL.g:17605:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0());
             }
             // InternalCompleteOCL.g:17606:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
             // InternalCompleteOCL.g:17606:2: rule__IfExpCS__OwnedConditionAlternatives_1_0
@@ -51464,7 +51464,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0());
             }
 
             }
@@ -51492,7 +51492,7 @@
     public final void rule__IfExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17619:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17620:1: ( ruleExpCS )
@@ -51501,7 +51501,7 @@
             // InternalCompleteOCL.g:17621:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -51509,7 +51509,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
 
             }
@@ -51537,7 +51537,7 @@
     public final void rule__IfExpCS__OwnedIfThenExpressionsAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17634:1: ( ( ruleElseIfThenExpCS ) )
             // InternalCompleteOCL.g:17635:1: ( ruleElseIfThenExpCS )
@@ -51546,7 +51546,7 @@
             // InternalCompleteOCL.g:17636:1: ruleElseIfThenExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleElseIfThenExpCS();
@@ -51554,7 +51554,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
             }
 
             }
@@ -51582,7 +51582,7 @@
     public final void rule__IfExpCS__OwnedElseExpressionAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17649:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17650:1: ( ruleExpCS )
@@ -51591,7 +51591,7 @@
             // InternalCompleteOCL.g:17651:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -51599,7 +51599,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
             }
 
             }
@@ -51627,7 +51627,7 @@
     public final void rule__ElseIfThenExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17664:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17665:1: ( ruleExpCS )
@@ -51636,7 +51636,7 @@
             // InternalCompleteOCL.g:17666:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -51644,7 +51644,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
             }
 
             }
@@ -51672,7 +51672,7 @@
     public final void rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17679:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17680:1: ( ruleExpCS )
@@ -51681,7 +51681,7 @@
             // InternalCompleteOCL.g:17681:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -51689,7 +51689,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
 
             }
@@ -51717,7 +51717,7 @@
     public final void rule__LetExpCS__OwnedVariablesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17694:1: ( ( ruleLetVariableCS ) )
             // InternalCompleteOCL.g:17695:1: ( ruleLetVariableCS )
@@ -51726,7 +51726,7 @@
             // InternalCompleteOCL.g:17696:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLetVariableCS();
@@ -51734,7 +51734,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
             }
 
             }
@@ -51762,7 +51762,7 @@
     public final void rule__LetExpCS__OwnedVariablesAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17709:1: ( ( ruleLetVariableCS ) )
             // InternalCompleteOCL.g:17710:1: ( ruleLetVariableCS )
@@ -51771,7 +51771,7 @@
             // InternalCompleteOCL.g:17711:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLetVariableCS();
@@ -51779,7 +51779,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
             }
 
             }
@@ -51807,7 +51807,7 @@
     public final void rule__LetExpCS__OwnedInExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17724:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17725:1: ( ruleExpCS )
@@ -51816,7 +51816,7 @@
             // InternalCompleteOCL.g:17726:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -51824,7 +51824,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
             }
 
             }
@@ -51852,7 +51852,7 @@
     public final void rule__LetVariableCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17739:1: ( ( ruleUnrestrictedName ) )
             // InternalCompleteOCL.g:17740:1: ( ruleUnrestrictedName )
@@ -51861,7 +51861,7 @@
             // InternalCompleteOCL.g:17741:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -51869,7 +51869,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -51897,7 +51897,7 @@
     public final void rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17754:1: ( ( ruleRoundBracketedClauseCS ) )
             // InternalCompleteOCL.g:17755:1: ( ruleRoundBracketedClauseCS )
@@ -51906,7 +51906,7 @@
             // InternalCompleteOCL.g:17756:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleRoundBracketedClauseCS();
@@ -51914,7 +51914,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
             }
 
             }
@@ -51942,7 +51942,7 @@
     public final void rule__LetVariableCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17769:1: ( ( ruleTypeExpCS ) )
             // InternalCompleteOCL.g:17770:1: ( ruleTypeExpCS )
@@ -51951,7 +51951,7 @@
             // InternalCompleteOCL.g:17771:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -51959,7 +51959,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -51987,7 +51987,7 @@
     public final void rule__LetVariableCS__OwnedInitExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17784:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17785:1: ( ruleExpCS )
@@ -51996,7 +51996,7 @@
             // InternalCompleteOCL.g:17786:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -52004,7 +52004,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
             }
 
             }
@@ -52032,7 +52032,7 @@
     public final void rule__NestedExpCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17799:1: ( ( ruleExpCS ) )
             // InternalCompleteOCL.g:17800:1: ( ruleExpCS )
@@ -52041,7 +52041,7 @@
             // InternalCompleteOCL.g:17801:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -52049,7 +52049,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
             }
 
             }
@@ -52077,7 +52077,7 @@
     public final void rule__MultiplicityBoundsCS__LowerBoundAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17814:1: ( ( ruleLOWER ) )
             // InternalCompleteOCL.g:17815:1: ( ruleLOWER )
@@ -52086,7 +52086,7 @@
             // InternalCompleteOCL.g:17816:1: ruleLOWER
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLOWER();
@@ -52094,7 +52094,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
             }
 
             }
@@ -52122,7 +52122,7 @@
     public final void rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17829:1: ( ( ruleUPPER ) )
             // InternalCompleteOCL.g:17830:1: ( ruleUPPER )
@@ -52131,7 +52131,7 @@
             // InternalCompleteOCL.g:17831:1: ruleUPPER
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUPPER();
@@ -52139,7 +52139,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
             }
 
             }
@@ -52167,7 +52167,7 @@
     public final void rule__MultiplicityCS__IsNullFreeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17844:1: ( ( ( '|1' ) ) )
             // InternalCompleteOCL.g:17845:1: ( ( '|1' ) )
@@ -52176,23 +52176,23 @@
             // InternalCompleteOCL.g:17846:1: ( '|1' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
             // InternalCompleteOCL.g:17847:1: ( '|1' )
             // InternalCompleteOCL.g:17848:1: '|1'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
             match(input,102,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
 
             }
@@ -52220,7 +52220,7 @@
     public final void rule__MultiplicityStringCS__StringBoundsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17867:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
             // InternalCompleteOCL.g:17868:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
@@ -52229,7 +52229,7 @@
             // InternalCompleteOCL.g:17869:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0()); 
+               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
             // InternalCompleteOCL.g:17870:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             // InternalCompleteOCL.g:17870:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
@@ -52243,7 +52243,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0()); 
+               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
 
             }
@@ -52271,7 +52271,7 @@
     public final void rule__PathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17883:1: ( ( ruleFirstPathElementCS ) )
             // InternalCompleteOCL.g:17884:1: ( ruleFirstPathElementCS )
@@ -52280,7 +52280,7 @@
             // InternalCompleteOCL.g:17885:1: ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleFirstPathElementCS();
@@ -52288,7 +52288,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
             }
 
             }
@@ -52316,7 +52316,7 @@
     public final void rule__PathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17898:1: ( ( ruleNextPathElementCS ) )
             // InternalCompleteOCL.g:17899:1: ( ruleNextPathElementCS )
@@ -52325,7 +52325,7 @@
             // InternalCompleteOCL.g:17900:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNextPathElementCS();
@@ -52333,7 +52333,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
 
             }
@@ -52361,7 +52361,7 @@
     public final void rule__FirstPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17913:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalCompleteOCL.g:17914:1: ( ( ruleUnrestrictedName ) )
@@ -52370,13 +52370,13 @@
             // InternalCompleteOCL.g:17915:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
             // InternalCompleteOCL.g:17916:1: ( ruleUnrestrictedName )
             // InternalCompleteOCL.g:17917:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -52384,13 +52384,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
 
             }
@@ -52418,7 +52418,7 @@
     public final void rule__NextPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17932:1: ( ( ( ruleUnreservedName ) ) )
             // InternalCompleteOCL.g:17933:1: ( ( ruleUnreservedName ) )
@@ -52427,13 +52427,13 @@
             // InternalCompleteOCL.g:17934:1: ( ruleUnreservedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
             // InternalCompleteOCL.g:17935:1: ( ruleUnreservedName )
             // InternalCompleteOCL.g:17936:1: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnreservedName();
@@ -52441,13 +52441,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
 
             }
@@ -52475,7 +52475,7 @@
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17951:1: ( ( ruleTemplateParameterSubstitutionCS ) )
             // InternalCompleteOCL.g:17952:1: ( ruleTemplateParameterSubstitutionCS )
@@ -52484,7 +52484,7 @@
             // InternalCompleteOCL.g:17953:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateParameterSubstitutionCS();
@@ -52492,7 +52492,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
             }
 
             }
@@ -52520,7 +52520,7 @@
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17966:1: ( ( ruleTemplateParameterSubstitutionCS ) )
             // InternalCompleteOCL.g:17967:1: ( ruleTemplateParameterSubstitutionCS )
@@ -52529,7 +52529,7 @@
             // InternalCompleteOCL.g:17968:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateParameterSubstitutionCS();
@@ -52537,7 +52537,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
             }
 
             }
@@ -52565,7 +52565,7 @@
     public final void rule__TemplateBindingCS__OwnedMultiplicityAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17981:1: ( ( ruleMultiplicityCS ) )
             // InternalCompleteOCL.g:17982:1: ( ruleMultiplicityCS )
@@ -52574,7 +52574,7 @@
             // InternalCompleteOCL.g:17983:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -52582,7 +52582,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
             }
 
             }
@@ -52610,7 +52610,7 @@
     public final void rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:17996:1: ( ( ruleTypeRefCS ) )
             // InternalCompleteOCL.g:17997:1: ( ruleTypeRefCS )
@@ -52619,7 +52619,7 @@
             // InternalCompleteOCL.g:17998:1: ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeRefCS();
@@ -52627,7 +52627,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
             }
 
             }
@@ -52655,7 +52655,7 @@
     public final void rule__TypeParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:18011:1: ( ( ruleUnrestrictedName ) )
             // InternalCompleteOCL.g:18012:1: ( ruleUnrestrictedName )
@@ -52664,7 +52664,7 @@
             // InternalCompleteOCL.g:18013:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -52672,7 +52672,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -52700,7 +52700,7 @@
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:18026:1: ( ( ruleTypedRefCS ) )
             // InternalCompleteOCL.g:18027:1: ( ruleTypedRefCS )
@@ -52709,7 +52709,7 @@
             // InternalCompleteOCL.g:18028:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -52717,7 +52717,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
             }
 
             }
@@ -52745,7 +52745,7 @@
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:18041:1: ( ( ruleTypedRefCS ) )
             // InternalCompleteOCL.g:18042:1: ( ruleTypedRefCS )
@@ -52754,7 +52754,7 @@
             // InternalCompleteOCL.g:18043:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -52762,7 +52762,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
             }
 
             }
@@ -52790,7 +52790,7 @@
     public final void rule__TypedTypeRefCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:18056:1: ( ( rulePathNameCS ) )
             // InternalCompleteOCL.g:18057:1: ( rulePathNameCS )
@@ -52799,7 +52799,7 @@
             // InternalCompleteOCL.g:18058:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -52807,7 +52807,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
 
             }
@@ -52835,7 +52835,7 @@
     public final void rule__TypedTypeRefCS__OwnedBindingAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:18071:1: ( ( ruleTemplateBindingCS ) )
             // InternalCompleteOCL.g:18072:1: ( ruleTemplateBindingCS )
@@ -52844,7 +52844,7 @@
             // InternalCompleteOCL.g:18073:1: ruleTemplateBindingCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateBindingCS();
@@ -52852,7 +52852,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
             }
 
             }
@@ -52880,7 +52880,7 @@
     public final void rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalCompleteOCL.g:18086:1: ( ( ruleTypedRefCS ) )
             // InternalCompleteOCL.g:18087:1: ( ruleTypedRefCS )
@@ -52889,7 +52889,7 @@
             // InternalCompleteOCL.g:18088:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -52897,7 +52897,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
             }
 
             }
@@ -52920,7 +52920,7 @@
     // $ANTLR end "rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1"
 
     // $ANTLR start synpred5_InternalCompleteOCL
-    public final void synpred5_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred5_InternalCompleteOCL_fragment() throws RecognitionException {
         // InternalCompleteOCL.g:2870:1: ( ( rulePropertyContextDeclCS ) )
         // InternalCompleteOCL.g:2870:1: ( rulePropertyContextDeclCS )
         {
@@ -52928,7 +52928,7 @@
         // InternalCompleteOCL.g:2871:1: rulePropertyContextDeclCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getContextDeclCSAccess().getPropertyContextDeclCSParserRuleCall_0()); 
+           before(grammarAccess.getContextDeclCSAccess().getPropertyContextDeclCSParserRuleCall_0());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         rulePropertyContextDeclCS();
@@ -52944,7 +52944,7 @@
     // $ANTLR end synpred5_InternalCompleteOCL
 
     // $ANTLR start synpred6_InternalCompleteOCL
-    public final void synpred6_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred6_InternalCompleteOCL_fragment() throws RecognitionException {
         // InternalCompleteOCL.g:2876:6: ( ( ruleClassifierContextDeclCS ) )
         // InternalCompleteOCL.g:2876:6: ( ruleClassifierContextDeclCS )
         {
@@ -52952,7 +52952,7 @@
         // InternalCompleteOCL.g:2877:1: ruleClassifierContextDeclCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getContextDeclCSAccess().getClassifierContextDeclCSParserRuleCall_1()); 
+           before(grammarAccess.getContextDeclCSAccess().getClassifierContextDeclCSParserRuleCall_1());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleClassifierContextDeclCS();
@@ -52968,7 +52968,7 @@
     // $ANTLR end synpred6_InternalCompleteOCL
 
     // $ANTLR start synpred69_InternalCompleteOCL
-    public final void synpred69_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred69_InternalCompleteOCL_fragment() throws RecognitionException {
         // InternalCompleteOCL.g:3725:6: ( ( ruleTypeLiteralCS ) )
         // InternalCompleteOCL.g:3725:6: ( ruleTypeLiteralCS )
         {
@@ -52976,7 +52976,7 @@
         // InternalCompleteOCL.g:3726:1: ruleTypeLiteralCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+           before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleTypeLiteralCS();
@@ -52992,7 +52992,7 @@
     // $ANTLR end synpred69_InternalCompleteOCL
 
     // $ANTLR start synpred70_InternalCompleteOCL
-    public final void synpred70_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred70_InternalCompleteOCL_fragment() throws RecognitionException {
         // InternalCompleteOCL.g:3747:1: ( ( ( rule__ExpCS__Group_0__0 ) ) )
         // InternalCompleteOCL.g:3747:1: ( ( rule__ExpCS__Group_0__0 ) )
         {
@@ -53000,7 +53000,7 @@
         // InternalCompleteOCL.g:3748:1: ( rule__ExpCS__Group_0__0 )
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getExpCSAccess().getGroup_0()); 
+           before(grammarAccess.getExpCSAccess().getGroup_0());
         }
         // InternalCompleteOCL.g:3749:1: ( rule__ExpCS__Group_0__0 )
         // InternalCompleteOCL.g:3749:2: rule__ExpCS__Group_0__0
@@ -53022,7 +53022,7 @@
     // $ANTLR end synpred70_InternalCompleteOCL
 
     // $ANTLR start synpred77_InternalCompleteOCL
-    public final void synpred77_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred77_InternalCompleteOCL_fragment() throws RecognitionException {
         // InternalCompleteOCL.g:3837:6: ( ( ruleTupleLiteralExpCS ) )
         // InternalCompleteOCL.g:3837:6: ( ruleTupleLiteralExpCS )
         {
@@ -53030,7 +53030,7 @@
         // InternalCompleteOCL.g:3838:1: ruleTupleLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleTupleLiteralExpCS();
@@ -53046,7 +53046,7 @@
     // $ANTLR end synpred77_InternalCompleteOCL
 
     // $ANTLR start synpred78_InternalCompleteOCL
-    public final void synpred78_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred78_InternalCompleteOCL_fragment() throws RecognitionException {
         // InternalCompleteOCL.g:3843:6: ( ( ruleMapLiteralExpCS ) )
         // InternalCompleteOCL.g:3843:6: ( ruleMapLiteralExpCS )
         {
@@ -53054,7 +53054,7 @@
         // InternalCompleteOCL.g:3844:1: ruleMapLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleMapLiteralExpCS();
@@ -53070,7 +53070,7 @@
     // $ANTLR end synpred78_InternalCompleteOCL
 
     // $ANTLR start synpred79_InternalCompleteOCL
-    public final void synpred79_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred79_InternalCompleteOCL_fragment() throws RecognitionException {
         // InternalCompleteOCL.g:3849:6: ( ( ruleCollectionLiteralExpCS ) )
         // InternalCompleteOCL.g:3849:6: ( ruleCollectionLiteralExpCS )
         {
@@ -53078,7 +53078,7 @@
         // InternalCompleteOCL.g:3850:1: ruleCollectionLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleCollectionLiteralExpCS();
@@ -53094,7 +53094,7 @@
     // $ANTLR end synpred79_InternalCompleteOCL
 
     // $ANTLR start synpred81_InternalCompleteOCL
-    public final void synpred81_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred81_InternalCompleteOCL_fragment() throws RecognitionException {
         // InternalCompleteOCL.g:3861:6: ( ( ruleTypeLiteralExpCS ) )
         // InternalCompleteOCL.g:3861:6: ( ruleTypeLiteralExpCS )
         {
@@ -53102,7 +53102,7 @@
         // InternalCompleteOCL.g:3862:1: ruleTypeLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleTypeLiteralExpCS();
@@ -53344,10 +53344,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA29_16 = input.LA(1);
 
-                         
+
                         int index29_16 = input.index();
                         input.rewind();
                         s = -1;
@@ -53355,14 +53355,14 @@
 
                         else if ( (true) ) {s = 23;}
 
-                         
+
                         input.seek(index29_16);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA29_17 = input.LA(1);
 
-                         
+
                         int index29_17 = input.index();
                         input.rewind();
                         s = -1;
@@ -53370,14 +53370,14 @@
 
                         else if ( (true) ) {s = 23;}
 
-                         
+
                         input.seek(index29_17);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA29_18 = input.LA(1);
 
-                         
+
                         int index29_18 = input.index();
                         input.rewind();
                         s = -1;
@@ -53385,14 +53385,14 @@
 
                         else if ( (true) ) {s = 23;}
 
-                         
+
                         input.seek(index29_18);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA29_19 = input.LA(1);
 
-                         
+
                         int index29_19 = input.index();
                         input.rewind();
                         s = -1;
@@ -53400,14 +53400,14 @@
 
                         else if ( (true) ) {s = 23;}
 
-                         
+
                         input.seek(index29_19);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA29_20 = input.LA(1);
 
-                         
+
                         int index29_20 = input.index();
                         input.rewind();
                         s = -1;
@@ -53415,7 +53415,7 @@
 
                         else if ( (true) ) {s = 23;}
 
-                         
+
                         input.seek(index29_20);
                         if ( s>=0 ) return s;
                         break;
@@ -53499,10 +53499,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA30_1 = input.LA(1);
 
-                         
+
                         int index30_1 = input.index();
                         input.rewind();
                         s = -1;
@@ -53510,14 +53510,14 @@
 
                         else if ( (true) ) {s = 36;}
 
-                         
+
                         input.seek(index30_1);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA30_2 = input.LA(1);
 
-                         
+
                         int index30_2 = input.index();
                         input.rewind();
                         s = -1;
@@ -53525,7 +53525,7 @@
 
                         else if ( (true) ) {s = 36;}
 
-                         
+
                         input.seek(index30_2);
                         if ( s>=0 ) return s;
                         break;
@@ -53606,10 +53606,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA33_11 = input.LA(1);
 
-                         
+
                         int index33_11 = input.index();
                         input.rewind();
                         s = -1;
@@ -53617,14 +53617,14 @@
 
                         else if ( (synpred81_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index33_11);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA33_12 = input.LA(1);
 
-                         
+
                         int index33_12 = input.index();
                         input.rewind();
                         s = -1;
@@ -53632,14 +53632,14 @@
 
                         else if ( (synpred81_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index33_12);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA33_13 = input.LA(1);
 
-                         
+
                         int index33_13 = input.index();
                         input.rewind();
                         s = -1;
@@ -53647,14 +53647,14 @@
 
                         else if ( (synpred81_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index33_13);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA33_14 = input.LA(1);
 
-                         
+
                         int index33_14 = input.index();
                         input.rewind();
                         s = -1;
@@ -53662,14 +53662,14 @@
 
                         else if ( (synpred81_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index33_14);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA33_15 = input.LA(1);
 
-                         
+
                         int index33_15 = input.index();
                         input.rewind();
                         s = -1;
@@ -53677,14 +53677,14 @@
 
                         else if ( (synpred81_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index33_15);
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA33_16 = input.LA(1);
 
-                         
+
                         int index33_16 = input.index();
                         input.rewind();
                         s = -1;
@@ -53692,14 +53692,14 @@
 
                         else if ( (synpred81_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index33_16);
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA33_17 = input.LA(1);
 
-                         
+
                         int index33_17 = input.index();
                         input.rewind();
                         s = -1;
@@ -53707,7 +53707,7 @@
 
                         else if ( (synpred81_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index33_17);
                         if ( s>=0 ) return s;
                         break;
@@ -53719,9 +53719,9 @@
             throw nvae;
         }
     }
- 
 
-    
+
+
     private static class FollowSets000 {
         public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
         public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/internal/CompleteOCLActivator.java b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/internal/CompleteOCLActivator.java
index b62583b..94aca62 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/internal/CompleteOCLActivator.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl.ui/src-gen/org/eclipse/ocl/xtext/completeocl/ui/internal/CompleteOCLActivator.java
@@ -26,35 +26,35 @@
 
 /**
  * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
+ * introduced subclass.
  */
 public class CompleteOCLActivator extends AbstractUIPlugin {
-	
+
 	public static final String ORG_ECLIPSE_OCL_XTEXT_COMPLETEOCL_COMPLETEOCL = "org.eclipse.ocl.xtext.completeocl.CompleteOCL";
-	
+
 	private static final Logger logger = Logger.getLogger(CompleteOCLActivator.class);
-	
+
 	private static CompleteOCLActivator INSTANCE;
-	
+
 	private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1));
-	
+
 	@Override
 	public void start(BundleContext context) throws Exception {
 		super.start(context);
 		INSTANCE = this;
 	}
-	
+
 	@Override
 	public void stop(BundleContext context) throws Exception {
 		injectors.clear();
 		INSTANCE = null;
 		super.stop(context);
 	}
-	
+
 	public static CompleteOCLActivator getInstance() {
 		return INSTANCE;
 	}
-	
+
 	public Injector getInjector(String language) {
 		synchronized (injectors) {
 			Injector injector = injectors.get(language);
@@ -64,7 +64,7 @@
 			return injector;
 		}
 	}
-	
+
 	protected Injector createInjector(String language) {
 		try {
 			Module runtimeModule = getRuntimeModule(language);
@@ -83,20 +83,20 @@
 		if (ORG_ECLIPSE_OCL_XTEXT_COMPLETEOCL_COMPLETEOCL.equals(grammar)) {
 			return new org.eclipse.ocl.xtext.completeocl.CompleteOCLRuntimeModule();
 		}
-		
+
 		throw new IllegalArgumentException(grammar);
 	}
-	
+
 	protected Module getUiModule(String grammar) {
 		if (ORG_ECLIPSE_OCL_XTEXT_COMPLETEOCL_COMPLETEOCL.equals(grammar)) {
 			return new org.eclipse.ocl.xtext.completeocl.ui.CompleteOCLUiModule(this);
 		}
-		
+
 		throw new IllegalArgumentException(grammar);
 	}
-	
+
 	protected Module getSharedStateModule() {
 		return new SharedStateModule();
 	}
-	
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSContainmentVisitor.java b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSContainmentVisitor.java
index b8f5f48..8302a0c 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSContainmentVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSContainmentVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSLeft2RightVisitor.java b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSLeft2RightVisitor.java
index 34bd870..6bcbdd3 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSLeft2RightVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSLeft2RightVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSPostOrderVisitor.java b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSPostOrderVisitor.java
index 33f6fe1..e0fe3cf 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSPostOrderVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSPostOrderVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSPreOrderVisitor.java b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSPreOrderVisitor.java
index b6a1f4b..5276d0b 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSPreOrderVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSPreOrderVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSVisitor.java b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSVisitor.java
index 9c9ffac..b00dfc6 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractCompleteOCLCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -26,7 +26,7 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractCompleteOCLCSVisitor(C context) {
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractDelegatingCompleteOCLCSVisitor.java b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractDelegatingCompleteOCLCSVisitor.java
index dc2a6d7..a982732 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractDelegatingCompleteOCLCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractDelegatingCompleteOCLCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractExtendingCompleteOCLCSVisitor.java b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractExtendingCompleteOCLCSVisitor.java
index ec79d3e..d307db9 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractExtendingCompleteOCLCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractExtendingCompleteOCLCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -30,12 +30,12 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractExtendingCompleteOCLCSVisitor(C context) {
 		super(context);
-	}	
+	}
 
 	@Override
 	public R visitClassifierContextDeclCS(org.eclipse.ocl.xtext.completeoclcs.@NonNull ClassifierContextDeclCS object) {
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractNullCompleteOCLCSVisitor.java b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractNullCompleteOCLCSVisitor.java
index 4e518b1..7ec39c6 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractNullCompleteOCLCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/AbstractNullCompleteOCLCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -22,7 +22,7 @@
  * An AbstractNullCompleteOCLCSVisitor provides a default implementation for each
  * visitXxx method that returns null.
  *
- * @deprecated Explicit 'Null' functionality is obsolete with Java 8 @Nullable annotations.  
+ * @deprecated Explicit 'Null' functionality is obsolete with Java 8 @Nullable annotations.
  */
  @Deprecated
 public abstract class AbstractNullCompleteOCLCSVisitor<@Nullable R, C>
@@ -30,12 +30,12 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractNullCompleteOCLCSVisitor(C context) {
 		super(context);
-	}	
+	}
 
 	@Override
 	public R visitClassifierContextDeclCS(org.eclipse.ocl.xtext.completeoclcs.@NonNull ClassifierContextDeclCS object) {
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/CompleteOCLCSVisitor.java b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/CompleteOCLCSVisitor.java
index 298078a..0cdb9f8 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/CompleteOCLCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/CompleteOCLCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -18,6 +18,7 @@
 import org.eclipse.jdt.annotation.NonNull;
 
 /**
+ * @noimplement This interface is not intended to be implemented by clients.
  */
 public interface CompleteOCLCSVisitor<R> extends org.eclipse.ocl.xtext.essentialoclcs.util.EssentialOCLCSVisitor<R>
 {
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/DecorableCompleteOCLCSVisitor.java b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/DecorableCompleteOCLCSVisitor.java
index edd6fe3..9e16ec5 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/DecorableCompleteOCLCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/emf-gen/org/eclipse/ocl/xtext/completeoclcs/util/DecorableCompleteOCLCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/AbstractCompleteOCLRuntimeModule.java b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/AbstractCompleteOCLRuntimeModule.java
index 332c715..42f8992 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/AbstractCompleteOCLRuntimeModule.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/AbstractCompleteOCLRuntimeModule.java
@@ -30,16 +30,16 @@
 		properties = tryBindProperties(binder, "org/eclipse/ocl/xtext/completeocl/CompleteOCL.properties");
 		super.configure(binder);
 	}
-	
+
 	public void configureLanguageName(Binder binder) {
 		binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.eclipse.ocl.xtext.completeocl.CompleteOCL");
 	}
-	
+
 	public void configureFileExtensions(Binder binder) {
 		if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
 			binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("ocl");
 	}
-	
+
 	// contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
 	public java.lang.ClassLoader bindClassLoaderToInstance() {
 		return getClass().getClassLoader();
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 736e511..dd5eb80 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
@@ -9,7 +9,7 @@
  *     E.D.Willink - initial API and implementation
  *******************************************************************************
  * This code is 100% auto-generated
- * from: E:\GIT\org.eclipse.ocl\examples..\..\plugins\org.eclipse.ocl.xtext.completeocl\src-gen\org\eclipse\ocl\xtext\completeocl\CompleteOCL.xtextbin
+ * from: E:\GIT\org.eclipse.ocl\plugins..\..\plugins\org.eclipse.ocl.xtext.completeocl\src-gen\org\eclipse\ocl\xtext\completeocl\CompleteOCL.xtextbin
  * by: org.eclipse.ocl.examples.build.xtend.generateGrammar.xtend
  *
  * Do not edit it.
@@ -73,7 +73,7 @@
 
 	/*
 	 * This class should be bound to org.eclipse.xtext.service.GrammarProvider.
-	 */ 
+	 */
 	@Singleton
 	public static class GrammarProvider extends org.eclipse.xtext.service.GrammarProvider
 	{
@@ -87,7 +87,7 @@
 			return CompleteOCLGrammarResource.GRAMMAR;
 		}
 	}
-	
+
 	private static class _CompleteOCL
 	{
 		private static final @NonNull ReferencedMetamodel MM = createReferencedMetamodel(org.eclipse.ocl.xtext.completeoclcs.CompleteOCLCSPackage.eINSTANCE, null); // http://www.eclipse.org/ocl/2015/CompleteOCLCS
@@ -95,13 +95,13 @@
 		private static final @NonNull ReferencedMetamodel MM_ecore = createReferencedMetamodel(org.eclipse.emf.ecore.EcorePackage.eINSTANCE, "ecore"); // http://www.eclipse.org/emf/2002/Ecore
 		private static final @NonNull ReferencedMetamodel MM_essentialocl = createReferencedMetamodel(org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.eINSTANCE, "essentialocl"); // http://www.eclipse.org/ocl/2015/EssentialOCLCS
 		private static final @NonNull ReferencedMetamodel MM_pivot = createReferencedMetamodel(org.eclipse.ocl.pivot.PivotPackage.eINSTANCE, "pivot"); // http://www.eclipse.org/ocl/2015/Pivot
-		
+
 		private static final @NonNull TerminalRule TR_UNQUOTED_STRING = createTerminalRule("UNQUOTED_STRING", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initTerminalRules() {
 			TR_UNQUOTED_STRING.setAlternatives(createKeyword("\u00A3$%^\u00A3$%^"));
 		}
-		
+
 		private static final @NonNull ParserRule PR_ClassifierContextDeclCS = createParserRule("ClassifierContextDeclCS", createTypeRef(MM, org.eclipse.ocl.xtext.completeoclcs.CompleteOCLCSPackage.Literals.CLASSIFIER_CONTEXT_DECL_CS));
 		private static final @NonNull ParserRule PR_CompleteOCLDocumentCS = createParserRule("CompleteOCLDocumentCS", createTypeRef(MM, org.eclipse.ocl.xtext.completeoclcs.CompleteOCLCSPackage.Literals.COMPLETE_OCL_DOCUMENT_CS));
 		private static final @NonNull ParserRule PR_CompleteOCLNavigationOperatorName = createParserRule("CompleteOCLNavigationOperatorName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
@@ -123,7 +123,7 @@
 		private static final @NonNull ParserRule PR_TemplateSignatureCS = createParserRule("TemplateSignatureCS", createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.TEMPLATE_SIGNATURE_CS));
 		private static final @NonNull ParserRule PR_TypedRefCS = createParserRule("TypedRefCS", createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.TYPED_REF_CS));
 		private static final @NonNull ParserRule PR_UnrestrictedName = createParserRule("UnrestrictedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initParserRules() {
 			PR_ClassifierContextDeclCS.setAlternatives(createGroup(createKeyword("context"), setCardinality("?", createAssignment("ownedSignature", "=", createRuleCall(PR_TemplateSignatureCS))), setCardinality("?", createAssignment("selfName", "=", createRuleCall(PR_UnrestrictedName))), createAssignment("ownedPathName", "=", createRuleCall(_Base.PR_PathNameCS)), setCardinality("+", createAlternatives(createGroup(createKeyword("inv"), createAssignment("ownedInvariants", "+=", createRuleCall(PR_ConstraintCS))), createAssignment("ownedDefinitions", "+=", createRuleCall(PR_DefCS))))));
 			PR_CompleteOCLDocumentCS.setAlternatives(createGroup(setCardinality("*", createAssignment("ownedImports", "+=", createRuleCall(PR_ImportCS))), setCardinality("*", createAlternatives(createAssignment("ownedPackages", "+=", createRuleCall(PR_PackageDeclarationCS)), createAssignment("ownedContexts", "+=", createRuleCall(PR_ContextDeclCS))))));
@@ -147,7 +147,7 @@
 			PR_TypedRefCS.setAlternatives(createAlternatives(createRuleCall(_EssentialOCL.PR_TypeLiteralCS), createRuleCall(_Base.PR_TypedTypeRefCS)));
 			PR_UnrestrictedName.setAlternatives(createAlternatives(createRuleCall(_EssentialOCL.PR_EssentialOCLUnrestrictedName), createKeyword("import"), createKeyword("include"), createKeyword("library")));
 		}
-		
+
 		private static @NonNull Grammar initGrammar() {
 			initTerminalRules();
 			initParserRules();
@@ -192,14 +192,14 @@
 			return grammar;
 		}
 	}
-	
+
 	private static class _EssentialOCL
 	{
 		private static final @NonNull ReferencedMetamodel MM = createReferencedMetamodel(org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.eINSTANCE, null); // http://www.eclipse.org/ocl/2015/EssentialOCLCS
 		private static final @NonNull ReferencedMetamodel MM_base = createReferencedMetamodel(org.eclipse.ocl.xtext.basecs.BaseCSPackage.eINSTANCE, "base"); // http://www.eclipse.org/ocl/2015/BaseCS
 		private static final @NonNull ReferencedMetamodel MM_ecore = createReferencedMetamodel(org.eclipse.emf.ecore.EcorePackage.eINSTANCE, "ecore"); // http://www.eclipse.org/emf/2002/Ecore
 		private static final @NonNull ReferencedMetamodel MM_pivot = createReferencedMetamodel(org.eclipse.ocl.pivot.PivotPackage.eINSTANCE, "pivot"); // http://www.eclipse.org/ocl/2015/Pivot
-		
+
 		private static final @NonNull ParserRule PR_BinaryOperatorName = createParserRule("BinaryOperatorName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_BooleanLiteralExpCS = createParserRule("BooleanLiteralExpCS", createTypeRef(MM, org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.Literals.BOOLEAN_LITERAL_EXP_CS));
 		private static final @NonNull ParserRule PR_CollectionLiteralExpCS = createParserRule("CollectionLiteralExpCS", createTypeRef(MM, org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.Literals.COLLECTION_LITERAL_EXP_CS));
@@ -263,7 +263,7 @@
 		private static final @NonNull ParserRule PR_UnlimitedNaturalLiteralExpCS = createParserRule("UnlimitedNaturalLiteralExpCS", createTypeRef(MM, org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.Literals.UNLIMITED_NATURAL_LITERAL_EXP_CS));
 		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_UnrestrictedName = createParserRule("UnrestrictedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initParserRules() {
 			PR_BinaryOperatorName.setAlternatives(createAlternatives(createRuleCall(PR_InfixOperatorName), createRuleCall(_CompleteOCL.PR_NavigationOperatorName)));
 			PR_BooleanLiteralExpCS.setAlternatives(createAlternatives(createAssignment("symbol", "=", createKeyword("true")), createAssignment("symbol", "=", createKeyword("false"))));
@@ -329,7 +329,7 @@
 			PR_UnreservedName.setAlternatives(createRuleCall(PR_EssentialOCLUnreservedName));
 			PR_UnrestrictedName.setAlternatives(createRuleCall(PR_EssentialOCLUnrestrictedName));
 		}
-		
+
 		private static @NonNull Grammar initGrammar() {
 			initParserRules();
 			Grammar grammar = G_EssentialOCL;
@@ -413,13 +413,13 @@
 			return grammar;
 		}
 	}
-	
+
 	private static class _Base
 	{
 		private static final @NonNull ReferencedMetamodel MM = createReferencedMetamodel(org.eclipse.ocl.xtext.basecs.BaseCSPackage.eINSTANCE, null); // http://www.eclipse.org/ocl/2015/BaseCS
 		private static final @NonNull ReferencedMetamodel MM_ecore = createReferencedMetamodel(org.eclipse.emf.ecore.EcorePackage.eINSTANCE, "ecore"); // http://www.eclipse.org/emf/2002/Ecore
 		private static final @NonNull ReferencedMetamodel MM_pivot = createReferencedMetamodel(org.eclipse.ocl.pivot.PivotPackage.eINSTANCE, "pivot"); // http://www.eclipse.org/ocl/2015/Pivot
-		
+
 		private static final @NonNull TerminalRule TR_ANY_OTHER = createTerminalRule("ANY_OTHER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_DOUBLE_QUOTED_STRING = createTerminalRule("DOUBLE_QUOTED_STRING", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_ESCAPED_CHARACTER = createTerminalRule("ESCAPED_CHARACTER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
@@ -432,7 +432,7 @@
 		private static final @NonNull TerminalRule TR_SINGLE_QUOTED_STRING = createTerminalRule("SINGLE_QUOTED_STRING", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_SL_COMMENT = createTerminalRule("SL_COMMENT", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_WS = createTerminalRule("WS", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initTerminalRules() {
 			TR_ANY_OTHER.setAlternatives(createWildcard());
 			TR_DOUBLE_QUOTED_STRING.setAlternatives(createGroup(createKeyword("\""), setCardinality("*", createAlternatives(createRuleCall(TR_ESCAPED_CHARACTER), createNegatedToken(createAlternatives(createKeyword("\\"), createKeyword("\""))))), createKeyword("\"")));
@@ -449,7 +449,7 @@
 			TR_SL_COMMENT.setAlternatives(createGroup(createKeyword("--"), setCardinality("*", createNegatedToken(createAlternatives(createKeyword("\n"), createKeyword("\r")))), setCardinality("?", createGroup(setCardinality("?", createKeyword("\r")), createKeyword("\n")))));
 			TR_WS.setAlternatives(setCardinality("+", createAlternatives(createKeyword(" "), createKeyword("\t"), createKeyword("\r"), createKeyword("\n"))));
 		}
-		
+
 		private static final @NonNull ParserRule PR_FirstPathElementCS = createParserRule("FirstPathElementCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.PATH_ELEMENT_CS));
 		private static final @NonNull ParserRule PR_ID = createParserRule("ID", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_Identifier = createParserRule("Identifier", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
@@ -473,7 +473,7 @@
 		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_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));
-		
+
 		private static void initParserRules() {
 			PR_FirstPathElementCS.setAlternatives(createAssignment("referredElement", "=", createCrossReference(createTypeRef(MM_pivot, org.eclipse.ocl.pivot.PivotPackage.Literals.NAMED_ELEMENT), createRuleCall(_CompleteOCL.PR_UnrestrictedName))));
 			PR_ID.setAlternatives(createAlternatives(createRuleCall(TR_SIMPLE_ID), createRuleCall(TR_ESCAPED_ID)));
@@ -499,7 +499,7 @@
 			PR_UnrestrictedName.setAlternatives(createRuleCall(PR_Identifier));
 			PR_WildcardTypeRefCS.setAlternatives(createGroup(createAction(null, null, createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.WILDCARD_TYPE_REF_CS)), createKeyword("?"), setCardinality("?", createGroup(createKeyword("extends"), createAssignment("ownedExtends", "=", createRuleCall(_CompleteOCL.PR_TypedRefCS))))));
 		}
-		
+
 		private static @NonNull Grammar initGrammar() {
 			initTerminalRules();
 			initParserRules();
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/CompleteOCLStandaloneSetupGenerated.java b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/CompleteOCLStandaloneSetupGenerated.java
index b12fe17..8a6f704 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/CompleteOCLStandaloneSetupGenerated.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/CompleteOCLStandaloneSetupGenerated.java
@@ -31,18 +31,18 @@
 		register(injector);
 		return injector;
 	}
-	
+
 	public Injector createInjector() {
 		return Guice.createInjector(new org.eclipse.ocl.xtext.completeocl.CompleteOCLRuntimeModule());
 	}
-	
+
 	public void register(Injector injector) {
 
 		org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class);
 		org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class);
 		Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("ocl", resourceFactory);
 		org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("ocl", serviceProvider);
-		
+
 
 
 
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/CompleteOCLAntlrTokenFileProvider.java b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/CompleteOCLAntlrTokenFileProvider.java
index a20c71b..729383a 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/CompleteOCLAntlrTokenFileProvider.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/CompleteOCLAntlrTokenFileProvider.java
@@ -14,7 +14,7 @@
 import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider;
 
 public class CompleteOCLAntlrTokenFileProvider implements IAntlrTokenFileProvider {
-	
+
 	@Override
 	public InputStream getAntlrTokenFile() {
 		ClassLoader classLoader = getClass().getClassLoader();
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/CompleteOCLParser.java b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/CompleteOCLParser.java
index 9e33f43..d5c5961 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/CompleteOCLParser.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/parser/antlr/CompleteOCLParser.java
@@ -16,31 +16,31 @@
 import org.eclipse.ocl.xtext.completeocl.services.CompleteOCLGrammarAccess;
 
 public class CompleteOCLParser extends org.eclipse.xtext.parser.antlr.AbstractAntlrParser {
-	
+
 	@Inject
 	private CompleteOCLGrammarAccess grammarAccess;
-	
+
 	@Override
 	protected void setInitialHiddenTokens(XtextTokenStream tokenStream) {
 		tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT");
 	}
-	
+
 	@Override
 	protected org.eclipse.ocl.xtext.completeocl.parser.antlr.internal.InternalCompleteOCLParser createParser(XtextTokenStream stream) {
 		return new org.eclipse.ocl.xtext.completeocl.parser.antlr.internal.InternalCompleteOCLParser(stream, getGrammarAccess());
 	}
-	
-	@Override 
+
+	@Override
 	protected String getDefaultRuleName() {
 		return "CompleteOCLDocumentCS";
 	}
-	
+
 	public CompleteOCLGrammarAccess getGrammarAccess() {
 		return this.grammarAccess;
 	}
-	
+
 	public void setGrammarAccess(CompleteOCLGrammarAccess grammarAccess) {
 		this.grammarAccess = grammarAccess;
 	}
-	
+
 }
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 89b22c3..55a3e9b 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
@@ -13,19 +13,19 @@
 options {
 	superClass=AbstractInternalAntlrParser;
 	backtrack=true;
-	
+
 }
 
 @lexer::header {
 package org.eclipse.ocl.xtext.completeocl.parser.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.parser.antlr.Lexer;
 }
 
 @parser::header {
-package org.eclipse.ocl.xtext.completeocl.parser.antlr.internal; 
+package org.eclipse.ocl.xtext.completeocl.parser.antlr.internal;
 
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
@@ -46,63 +46,63 @@
   This grammar contains a lot of empty actions to work around a bug in ANTLR.
   Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases.
 */
- 
+
  	private CompleteOCLGrammarAccess grammarAccess;
- 	
+
     public InternalCompleteOCLParser(TokenStream input, CompleteOCLGrammarAccess grammarAccess) {
         this(input);
         this.grammarAccess = grammarAccess;
         registerRules(grammarAccess.getGrammar());
     }
-    
+
     @Override
     protected String getFirstRuleName() {
-    	return "CompleteOCLDocumentCS";	
+    	return "CompleteOCLDocumentCS";
    	}
-   	
+
    	@Override
    	protected CompleteOCLGrammarAccess getGrammarAccess() {
    		return grammarAccess;
    	}
 }
 
-@rulecatch { 
-    catch (RecognitionException re) { 
-        recover(input,re); 
+@rulecatch {
+    catch (RecognitionException re) {
+        recover(input,re);
         appendSkippedTokens();
-    } 
+    }
 }
 
 
 
 
 // Entry rule entryRuleCompleteOCLDocumentCS
-entryRuleCompleteOCLDocumentCS returns [EObject current=null] 
+entryRuleCompleteOCLDocumentCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCompleteOCLDocumentCSRule()); }
-	 iv_ruleCompleteOCLDocumentCS=ruleCompleteOCLDocumentCS 
-	 { $current=$iv_ruleCompleteOCLDocumentCS.current; } 
-	 EOF 
+	 iv_ruleCompleteOCLDocumentCS=ruleCompleteOCLDocumentCS
+	 { $current=$iv_ruleCompleteOCLDocumentCS.current; }
+	 EOF
 ;
 
 // Rule CompleteOCLDocumentCS
-ruleCompleteOCLDocumentCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCompleteOCLDocumentCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsImportCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsImportCSParserRuleCall_0_0());
 	    }
 		lv_ownedImports_0_0=ruleImportCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCompleteOCLDocumentCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedImports",
-        		lv_ownedImports_0_0, 
+        		lv_ownedImports_0_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ImportCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -110,17 +110,17 @@
 )
 )*((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesPackageDeclarationCSParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesPackageDeclarationCSParserRuleCall_1_0_0());
 	    }
 		lv_ownedPackages_1_0=rulePackageDeclarationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCompleteOCLDocumentCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPackages",
-        		lv_ownedPackages_1_0, 
+        		lv_ownedPackages_1_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.PackageDeclarationCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -129,17 +129,17 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsContextDeclCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsContextDeclCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedContexts_2_0=ruleContextDeclCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCompleteOCLDocumentCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedContexts",
-        		lv_ownedContexts_2_0, 
+        		lv_ownedContexts_2_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ContextDeclCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -153,31 +153,31 @@
 
 
 // Entry rule entryRuleCompleteOCLNavigationOperatorName
-entryRuleCompleteOCLNavigationOperatorName returns [String current=null] 
+entryRuleCompleteOCLNavigationOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getCompleteOCLNavigationOperatorNameRule()); } 
-	 iv_ruleCompleteOCLNavigationOperatorName=ruleCompleteOCLNavigationOperatorName 
-	 { $current=$iv_ruleCompleteOCLNavigationOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getCompleteOCLNavigationOperatorNameRule()); }
+	 iv_ruleCompleteOCLNavigationOperatorName=ruleCompleteOCLNavigationOperatorName
+	 { $current=$iv_ruleCompleteOCLNavigationOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule CompleteOCLNavigationOperatorName
-ruleCompleteOCLNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleCompleteOCLNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='^' 
+	kw='^'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentKeyword_0());
     }
 
     |
-	kw='^^' 
+	kw='^^'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentCircumflexAccentKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentCircumflexAccentKeyword_1());
     }
 )
     ;
@@ -187,36 +187,36 @@
 
 
 // Entry rule entryRuleClassifierContextDeclCS
-entryRuleClassifierContextDeclCS returns [EObject current=null] 
+entryRuleClassifierContextDeclCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getClassifierContextDeclCSRule()); }
-	 iv_ruleClassifierContextDeclCS=ruleClassifierContextDeclCS 
-	 { $current=$iv_ruleClassifierContextDeclCS.current; } 
-	 EOF 
+	 iv_ruleClassifierContextDeclCS=ruleClassifierContextDeclCS
+	 { $current=$iv_ruleClassifierContextDeclCS.current; }
+	 EOF
 ;
 
 // Rule ClassifierContextDeclCS
-ruleClassifierContextDeclCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleClassifierContextDeclCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='context' 
+(	otherlv_0='context'
     {
     	newLeafNode(otherlv_0, grammarAccess.getClassifierContextDeclCSAccess().getContextKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
 	    }
 		lv_ownedSignature_1_0=ruleTemplateSignatureCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSignature",
-        		lv_ownedSignature_1_0, 
+        		lv_ownedSignature_1_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TemplateSignatureCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -224,17 +224,17 @@
 )
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameUnrestrictedNameParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameUnrestrictedNameParserRuleCall_2_0());
 	    }
 		lv_selfName_2_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"selfName",
-        		lv_selfName_2_0, 
+        		lv_selfName_2_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -242,39 +242,39 @@
 )
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0());
 	    }
 		lv_ownedPathName_3_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_3_0, 
+        		lv_ownedPathName_3_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)((	otherlv_4='inv' 
+)((	otherlv_4='inv'
     {
     	newLeafNode(otherlv_4, grammarAccess.getClassifierContextDeclCSAccess().getInvKeyword_4_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_4_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_4_0_1_0());
 	    }
 		lv_ownedInvariants_5_0=ruleConstraintCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedInvariants",
-        		lv_ownedInvariants_5_0, 
+        		lv_ownedInvariants_5_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -283,17 +283,17 @@
 ))
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsDefCSParserRuleCall_4_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsDefCSParserRuleCall_4_1_0());
 	    }
 		lv_ownedDefinitions_6_0=ruleDefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDefinitions",
-        		lv_ownedDefinitions_6_0, 
+        		lv_ownedDefinitions_6_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.DefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -307,80 +307,80 @@
 
 
 // Entry rule entryRuleConstraintCS
-entryRuleConstraintCS returns [EObject current=null] 
+entryRuleConstraintCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getConstraintCSRule()); }
-	 iv_ruleConstraintCS=ruleConstraintCS 
-	 { $current=$iv_ruleConstraintCS.current; } 
-	 EOF 
+	 iv_ruleConstraintCS=ruleConstraintCS
+	 { $current=$iv_ruleConstraintCS.current; }
+	 EOF
 ;
 
 // Rule ConstraintCS
-ruleConstraintCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleConstraintCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getConstraintCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getConstraintCSAccess().getLeftParenthesisKeyword_0_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_0_1_1_0());
 	    }
 		lv_ownedMessageSpecification_2_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getConstraintCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMessageSpecification",
-        		lv_ownedMessageSpecification_2_0, 
+        		lv_ownedMessageSpecification_2_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=')' 
+)	otherlv_3=')'
     {
     	newLeafNode(otherlv_3, grammarAccess.getConstraintCSAccess().getRightParenthesisKeyword_0_1_2());
     }
-)?)?	otherlv_4=':' 
+)?)?	otherlv_4=':'
     {
     	newLeafNode(otherlv_4, grammarAccess.getConstraintCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_2_0());
 	    }
 		lv_ownedSpecification_5_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getConstraintCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSpecification",
-        		lv_ownedSpecification_5_0, 
+        		lv_ownedSpecification_5_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -394,55 +394,55 @@
 
 
 // Entry rule entryRuleContextDeclCS
-entryRuleContextDeclCS returns [EObject current=null] 
+entryRuleContextDeclCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getContextDeclCSRule()); }
-	 iv_ruleContextDeclCS=ruleContextDeclCS 
-	 { $current=$iv_ruleContextDeclCS.current; } 
-	 EOF 
+	 iv_ruleContextDeclCS=ruleContextDeclCS
+	 { $current=$iv_ruleContextDeclCS.current; }
+	 EOF
 ;
 
 // Rule ContextDeclCS
-ruleContextDeclCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleContextDeclCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getContextDeclCSAccess().getPropertyContextDeclCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getContextDeclCSAccess().getPropertyContextDeclCSParserRuleCall_0());
     }
     this_PropertyContextDeclCS_0=rulePropertyContextDeclCS
-    { 
-        $current = $this_PropertyContextDeclCS_0.current; 
+    {
+        $current = $this_PropertyContextDeclCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getContextDeclCSAccess().getClassifierContextDeclCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getContextDeclCSAccess().getClassifierContextDeclCSParserRuleCall_1());
     }
     this_ClassifierContextDeclCS_1=ruleClassifierContextDeclCS
-    { 
-        $current = $this_ClassifierContextDeclCS_1.current; 
+    {
+        $current = $this_ClassifierContextDeclCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getContextDeclCSAccess().getOperationContextDeclCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getContextDeclCSAccess().getOperationContextDeclCSParserRuleCall_2());
     }
     this_OperationContextDeclCS_2=ruleOperationContextDeclCS
-    { 
-        $current = $this_OperationContextDeclCS_2.current; 
+    {
+        $current = $this_OperationContextDeclCS_2.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -453,42 +453,42 @@
 
 
 // Entry rule entryRuleDefCS
-entryRuleDefCS returns [EObject current=null] 
+entryRuleDefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getDefCSRule()); }
-	 iv_ruleDefCS=ruleDefCS 
-	 { $current=$iv_ruleDefCS.current; } 
-	 EOF 
+	 iv_ruleDefCS=ruleDefCS
+	 { $current=$iv_ruleDefCS.current; }
+	 EOF
 ;
 
 // Rule DefCS
-ruleDefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleDefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getDefCSAccess().getDefOperationCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getDefCSAccess().getDefOperationCSParserRuleCall_0());
     }
     this_DefOperationCS_0=ruleDefOperationCS
-    { 
-        $current = $this_DefOperationCS_0.current; 
+    {
+        $current = $this_DefOperationCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getDefCSAccess().getDefPropertyCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getDefCSAccess().getDefPropertyCSParserRuleCall_1());
     }
     this_DefPropertyCS_1=ruleDefPropertyCS
-    { 
-        $current = $this_DefPropertyCS_1.current; 
+    {
+        $current = $this_DefPropertyCS_1.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -499,26 +499,26 @@
 
 
 // Entry rule entryRuleDefOperationCS
-entryRuleDefOperationCS returns [EObject current=null] 
+entryRuleDefOperationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getDefOperationCSRule()); }
-	 iv_ruleDefOperationCS=ruleDefOperationCS 
-	 { $current=$iv_ruleDefOperationCS.current; } 
-	 EOF 
+	 iv_ruleDefOperationCS=ruleDefOperationCS
+	 { $current=$iv_ruleDefOperationCS.current; }
+	 EOF
 ;
 
 // Rule DefOperationCS
-ruleDefOperationCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleDefOperationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_isStatic_0_0=	'static' 
+		lv_isStatic_0_0=	'static'
     {
         newLeafNode(lv_isStatic_0_0, grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getDefOperationCSRule());
@@ -527,38 +527,38 @@
 	    }
 
 )
-)?	otherlv_1='def' 
+)?	otherlv_1='def'
     {
     	newLeafNode(otherlv_1, grammarAccess.getDefOperationCSAccess().getDefKeyword_1());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getDefOperationCSAccess().getUnrestrictedNameParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getDefOperationCSAccess().getUnrestrictedNameParserRuleCall_2());
     }
 ruleUnrestrictedName
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
-)?	otherlv_3=':' 
+)?	otherlv_3=':'
     {
     	newLeafNode(otherlv_3, grammarAccess.getDefOperationCSAccess().getColonKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_4_0());
 	    }
 		lv_ownedSignature_4_0=ruleTemplateSignatureCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSignature",
-        		lv_ownedSignature_4_0, 
+        		lv_ownedSignature_4_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TemplateSignatureCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -566,109 +566,109 @@
 )
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getNameUnrestrictedNameParserRuleCall_5_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getNameUnrestrictedNameParserRuleCall_5_0());
 	    }
 		lv_name_5_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_5_0, 
+        		lv_name_5_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_6='(' 
+)	otherlv_6='('
     {
     	newLeafNode(otherlv_6, grammarAccess.getDefOperationCSAccess().getLeftParenthesisKeyword_6());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_0_0());
 	    }
 		lv_ownedParameters_7_0=ruleDefParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_7_0, 
+        		lv_ownedParameters_7_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.DefParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_8=',' 
+)(	otherlv_8=','
     {
     	newLeafNode(otherlv_8, grammarAccess.getDefOperationCSAccess().getCommaKeyword_7_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_1_1_0());
 	    }
 		lv_ownedParameters_9_0=ruleDefParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_9_0, 
+        		lv_ownedParameters_9_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.DefParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_10=')' 
+))*)?	otherlv_10=')'
     {
     	newLeafNode(otherlv_10, grammarAccess.getDefOperationCSAccess().getRightParenthesisKeyword_8());
     }
-	otherlv_11=':' 
+	otherlv_11=':'
     {
     	newLeafNode(otherlv_11, grammarAccess.getDefOperationCSAccess().getColonKeyword_9());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedTypeTypeExpCSParserRuleCall_10_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedTypeTypeExpCSParserRuleCall_10_0());
 	    }
 		lv_ownedType_12_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_12_0, 
+        		lv_ownedType_12_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_13='=' 
+)?	otherlv_13='='
     {
     	newLeafNode(otherlv_13, grammarAccess.getDefOperationCSAccess().getEqualsSignKeyword_11());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_12_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_12_0());
 	    }
 		lv_ownedSpecification_14_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSpecification",
-        		lv_ownedSpecification_14_0, 
+        		lv_ownedSpecification_14_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -682,54 +682,54 @@
 
 
 // Entry rule entryRuleDefParameterCS
-entryRuleDefParameterCS returns [EObject current=null] 
+entryRuleDefParameterCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getDefParameterCSRule()); }
-	 iv_ruleDefParameterCS=ruleDefParameterCS 
-	 { $current=$iv_ruleDefParameterCS.current; } 
-	 EOF 
+	 iv_ruleDefParameterCS=ruleDefParameterCS
+	 { $current=$iv_ruleDefParameterCS.current; }
+	 EOF
 ;
 
 // Rule DefParameterCS
-ruleDefParameterCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleDefParameterCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDefParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDefParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDefParameterCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1=':' 
+)	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getDefParameterCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDefParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDefParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDefParameterCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -743,26 +743,26 @@
 
 
 // Entry rule entryRuleDefPropertyCS
-entryRuleDefPropertyCS returns [EObject current=null] 
+entryRuleDefPropertyCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getDefPropertyCSRule()); }
-	 iv_ruleDefPropertyCS=ruleDefPropertyCS 
-	 { $current=$iv_ruleDefPropertyCS.current; } 
-	 EOF 
+	 iv_ruleDefPropertyCS=ruleDefPropertyCS
+	 { $current=$iv_ruleDefPropertyCS.current; }
+	 EOF
 ;
 
 // Rule DefPropertyCS
-ruleDefPropertyCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleDefPropertyCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_isStatic_0_0=	'static' 
+		lv_isStatic_0_0=	'static'
     {
         newLeafNode(lv_isStatic_0_0, grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getDefPropertyCSRule());
@@ -771,82 +771,82 @@
 	    }
 
 )
-)?	otherlv_1='def' 
+)?	otherlv_1='def'
     {
     	newLeafNode(otherlv_1, grammarAccess.getDefPropertyCSAccess().getDefKeyword_1());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getUnrestrictedNameParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getUnrestrictedNameParserRuleCall_2());
     }
 ruleUnrestrictedName
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
-)?	otherlv_3=':' 
+)?	otherlv_3=':'
     {
     	newLeafNode(otherlv_3, grammarAccess.getDefPropertyCSAccess().getColonKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getNameUnrestrictedNameParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getNameUnrestrictedNameParserRuleCall_4_0());
 	    }
 		lv_name_4_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDefPropertyCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_4_0, 
+        		lv_name_4_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_5=':' 
+)	otherlv_5=':'
     {
     	newLeafNode(otherlv_5, grammarAccess.getDefPropertyCSAccess().getColonKeyword_5());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getOwnedTypeTypeExpCSParserRuleCall_6_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getOwnedTypeTypeExpCSParserRuleCall_6_0());
 	    }
 		lv_ownedType_6_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDefPropertyCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_6_0, 
+        		lv_ownedType_6_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_7='=' 
+)	otherlv_7='='
     {
     	newLeafNode(otherlv_7, grammarAccess.getDefPropertyCSAccess().getEqualsSignKeyword_7());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_8_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_8_0());
 	    }
 		lv_ownedSpecification_8_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDefPropertyCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSpecification",
-        		lv_ownedSpecification_8_0, 
+        		lv_ownedSpecification_8_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -860,68 +860,68 @@
 
 
 // Entry rule entryRuleImportCS
-entryRuleImportCS returns [EObject current=null] 
+entryRuleImportCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getImportCSRule()); }
-	 iv_ruleImportCS=ruleImportCS 
-	 { $current=$iv_ruleImportCS.current; } 
-	 EOF 
+	 iv_ruleImportCS=ruleImportCS
+	 { $current=$iv_ruleImportCS.current; }
+	 EOF
 ;
 
 // Rule ImportCS
-ruleImportCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleImportCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-((	otherlv_0='import' 
+((	otherlv_0='import'
     {
     	newLeafNode(otherlv_0, grammarAccess.getImportCSAccess().getImportKeyword_0_0());
     }
 
-    |	otherlv_1='include' 
+    |	otherlv_1='include'
     {
     	newLeafNode(otherlv_1, grammarAccess.getImportCSAccess().getIncludeKeyword_0_1());
     }
 
-    |	otherlv_2='library' 
+    |	otherlv_2='library'
     {
     	newLeafNode(otherlv_2, grammarAccess.getImportCSAccess().getLibraryKeyword_0_2());
     }
 )((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0());
 	    }
 		lv_name_3_0=ruleIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getImportCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_3_0, 
+        		lv_name_3_0,
         		"org.eclipse.ocl.xtext.base.Base.Identifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_4=':' 
+)	otherlv_4=':'
     {
     	newLeafNode(otherlv_4, grammarAccess.getImportCSAccess().getColonKeyword_1_1());
     }
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
 	    }
 		lv_ownedPathName_5_0=ruleURIPathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getImportCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_5_0, 
+        		lv_ownedPathName_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIPathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -929,11 +929,11 @@
 )
 )(
 (
-		lv_isAll_6_0=	'::*' 
+		lv_isAll_6_0=	'::*'
     {
         newLeafNode(lv_isAll_6_0, grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getImportCSRule());
@@ -950,36 +950,36 @@
 
 
 // Entry rule entryRuleOperationContextDeclCS
-entryRuleOperationContextDeclCS returns [EObject current=null] 
+entryRuleOperationContextDeclCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getOperationContextDeclCSRule()); }
-	 iv_ruleOperationContextDeclCS=ruleOperationContextDeclCS 
-	 { $current=$iv_ruleOperationContextDeclCS.current; } 
-	 EOF 
+	 iv_ruleOperationContextDeclCS=ruleOperationContextDeclCS
+	 { $current=$iv_ruleOperationContextDeclCS.current; }
+	 EOF
 ;
 
 // Rule OperationContextDeclCS
-ruleOperationContextDeclCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleOperationContextDeclCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='context' 
+(	otherlv_0='context'
     {
     	newLeafNode(otherlv_0, grammarAccess.getOperationContextDeclCSAccess().getContextKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
 	    }
 		lv_ownedSignature_1_0=ruleTemplateSignatureCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSignature",
-        		lv_ownedSignature_1_0, 
+        		lv_ownedSignature_1_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TemplateSignatureCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -987,170 +987,170 @@
 )
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0());
 	    }
 		lv_ownedPathName_2_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_2_0, 
+        		lv_ownedPathName_2_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3='(' 
+)	otherlv_3='('
     {
     	newLeafNode(otherlv_3, grammarAccess.getOperationContextDeclCSAccess().getLeftParenthesisKeyword_3());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_0_0());
 	    }
 		lv_ownedParameters_4_0=ruleParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_4_0, 
+        		lv_ownedParameters_4_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_5=',' 
+)(	otherlv_5=','
     {
     	newLeafNode(otherlv_5, grammarAccess.getOperationContextDeclCSAccess().getCommaKeyword_4_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_1_1_0());
 	    }
 		lv_ownedParameters_6_0=ruleParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_6_0, 
+        		lv_ownedParameters_6_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_7=')' 
+))*)?	otherlv_7=')'
     {
     	newLeafNode(otherlv_7, grammarAccess.getOperationContextDeclCSAccess().getRightParenthesisKeyword_5());
     }
-	otherlv_8=':' 
+	otherlv_8=':'
     {
     	newLeafNode(otherlv_8, grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_6());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_7_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_7_0());
 	    }
 		lv_ownedType_9_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_9_0, 
+        		lv_ownedType_9_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?((	otherlv_10='pre' 
+)?((	otherlv_10='pre'
     {
     	newLeafNode(otherlv_10, grammarAccess.getOperationContextDeclCSAccess().getPreKeyword_8_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsConstraintCSParserRuleCall_8_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsConstraintCSParserRuleCall_8_0_1_0());
 	    }
 		lv_ownedPreconditions_11_0=ruleConstraintCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPreconditions",
-        		lv_ownedPreconditions_11_0, 
+        		lv_ownedPreconditions_11_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 ))
-    |(	otherlv_12='post' 
+    |(	otherlv_12='post'
     {
     	newLeafNode(otherlv_12, grammarAccess.getOperationContextDeclCSAccess().getPostKeyword_8_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsConstraintCSParserRuleCall_8_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsConstraintCSParserRuleCall_8_1_1_0());
 	    }
 		lv_ownedPostconditions_13_0=ruleConstraintCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPostconditions",
-        		lv_ownedPostconditions_13_0, 
+        		lv_ownedPostconditions_13_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 ))
-    |(	otherlv_14='body' 
+    |(	otherlv_14='body'
     {
     	newLeafNode(otherlv_14, grammarAccess.getOperationContextDeclCSAccess().getBodyKeyword_8_2_0());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getUnrestrictedNameParserRuleCall_8_2_1()); 
+    {
+        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getUnrestrictedNameParserRuleCall_8_2_1());
     }
 ruleUnrestrictedName
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
-)?	otherlv_16=':' 
+)?	otherlv_16=':'
     {
     	newLeafNode(otherlv_16, grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_8_2_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesSpecificationCSParserRuleCall_8_2_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesSpecificationCSParserRuleCall_8_2_3_0());
 	    }
 		lv_ownedBodies_17_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedBodies",
-        		lv_ownedBodies_17_0, 
+        		lv_ownedBodies_17_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1164,58 +1164,58 @@
 
 
 // Entry rule entryRulePackageDeclarationCS
-entryRulePackageDeclarationCS returns [EObject current=null] 
+entryRulePackageDeclarationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPackageDeclarationCSRule()); }
-	 iv_rulePackageDeclarationCS=rulePackageDeclarationCS 
-	 { $current=$iv_rulePackageDeclarationCS.current; } 
-	 EOF 
+	 iv_rulePackageDeclarationCS=rulePackageDeclarationCS
+	 { $current=$iv_rulePackageDeclarationCS.current; }
+	 EOF
 ;
 
 // Rule PackageDeclarationCS
-rulePackageDeclarationCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePackageDeclarationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='package' 
+(	otherlv_0='package'
     {
     	newLeafNode(otherlv_0, grammarAccess.getPackageDeclarationCSAccess().getPackageKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
 	    }
 		lv_ownedPathName_1_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageDeclarationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_1_0, 
+        		lv_ownedPathName_1_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2='inv' 
+)(	otherlv_2='inv'
     {
     	newLeafNode(otherlv_2, grammarAccess.getPackageDeclarationCSAccess().getInvKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedInvariants_3_0=ruleConstraintCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageDeclarationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedInvariants",
-        		lv_ownedInvariants_3_0, 
+        		lv_ownedInvariants_3_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1223,23 +1223,23 @@
 )
 ))*(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsContextDeclCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsContextDeclCSParserRuleCall_3_0());
 	    }
 		lv_ownedContexts_4_0=ruleContextDeclCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageDeclarationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedContexts",
-        		lv_ownedContexts_4_0, 
+        		lv_ownedContexts_4_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ContextDeclCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_5='endpackage' 
+)*	otherlv_5='endpackage'
     {
     	newLeafNode(otherlv_5, grammarAccess.getPackageDeclarationCSAccess().getEndpackageKeyword_4());
     }
@@ -1251,54 +1251,54 @@
 
 
 // Entry rule entryRuleParameterCS
-entryRuleParameterCS returns [EObject current=null] 
+entryRuleParameterCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getParameterCSRule()); }
-	 iv_ruleParameterCS=ruleParameterCS 
-	 { $current=$iv_ruleParameterCS.current; } 
-	 EOF 
+	 iv_ruleParameterCS=ruleParameterCS
+	 { $current=$iv_ruleParameterCS.current; }
+	 EOF
 ;
 
 // Rule ParameterCS
-ruleParameterCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleParameterCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getParameterCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1=':' 
+)	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getParameterCSAccess().getColonKeyword_0_1());
     }
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getParameterCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1312,107 +1312,107 @@
 
 
 // Entry rule entryRulePropertyContextDeclCS
-entryRulePropertyContextDeclCS returns [EObject current=null] 
+entryRulePropertyContextDeclCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPropertyContextDeclCSRule()); }
-	 iv_rulePropertyContextDeclCS=rulePropertyContextDeclCS 
-	 { $current=$iv_rulePropertyContextDeclCS.current; } 
-	 EOF 
+	 iv_rulePropertyContextDeclCS=rulePropertyContextDeclCS
+	 { $current=$iv_rulePropertyContextDeclCS.current; }
+	 EOF
 ;
 
 // Rule PropertyContextDeclCS
-rulePropertyContextDeclCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePropertyContextDeclCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='context' 
+(	otherlv_0='context'
     {
     	newLeafNode(otherlv_0, grammarAccess.getPropertyContextDeclCSAccess().getContextKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
 	    }
 		lv_ownedPathName_1_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPropertyContextDeclCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_1_0, 
+        		lv_ownedPathName_1_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_2=':' 
+)	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_3_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPropertyContextDeclCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)((	otherlv_4='derive' 
+)((	otherlv_4='derive'
     {
     	newLeafNode(otherlv_4, grammarAccess.getPropertyContextDeclCSAccess().getDeriveKeyword_4_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDerivedInvariantsConstraintCSParserRuleCall_4_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDerivedInvariantsConstraintCSParserRuleCall_4_0_1_0());
 	    }
 		lv_ownedDerivedInvariants_5_0=ruleConstraintCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPropertyContextDeclCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDerivedInvariants",
-        		lv_ownedDerivedInvariants_5_0, 
+        		lv_ownedDerivedInvariants_5_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 ))
-    |(	otherlv_6='init' 
+    |(	otherlv_6='init'
     {
     	newLeafNode(otherlv_6, grammarAccess.getPropertyContextDeclCSAccess().getInitKeyword_4_1_0());
     }
-	otherlv_7=':' 
+	otherlv_7=':'
     {
     	newLeafNode(otherlv_7, grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_4_1_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_1_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_1_2_0());
 	    }
 		lv_ownedDefaultExpressions_8_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPropertyContextDeclCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDefaultExpressions",
-        		lv_ownedDefaultExpressions_8_0, 
+        		lv_ownedDefaultExpressions_8_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1426,32 +1426,32 @@
 
 
 // Entry rule entryRuleSpecificationCS
-entryRuleSpecificationCS returns [EObject current=null] 
+entryRuleSpecificationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getSpecificationCSRule()); }
-	 iv_ruleSpecificationCS=ruleSpecificationCS 
-	 { $current=$iv_ruleSpecificationCS.current; } 
-	 EOF 
+	 iv_ruleSpecificationCS=ruleSpecificationCS
+	 { $current=$iv_ruleSpecificationCS.current; }
+	 EOF
 ;
 
 // Rule SpecificationCS
-ruleSpecificationCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleSpecificationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0());
 	    }
 		lv_ownedExpression_0_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getSpecificationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_0_0, 
+        		lv_ownedExpression_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1462,16 +1462,16 @@
 (
 		lv_exprString_1_0=RULE_UNQUOTED_STRING
 		{
-			newLeafNode(lv_exprString_1_0, grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0()); 
+			newLeafNode(lv_exprString_1_0, grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getSpecificationCSRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"exprString",
-        		lv_exprString_1_0, 
+        		lv_exprString_1_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UNQUOTED_STRING");
 	    }
 
@@ -1484,113 +1484,113 @@
 
 
 // Entry rule entryRuleTemplateSignatureCS
-entryRuleTemplateSignatureCS returns [EObject current=null] 
+entryRuleTemplateSignatureCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTemplateSignatureCSRule()); }
-	 iv_ruleTemplateSignatureCS=ruleTemplateSignatureCS 
-	 { $current=$iv_ruleTemplateSignatureCS.current; } 
-	 EOF 
+	 iv_ruleTemplateSignatureCS=ruleTemplateSignatureCS
+	 { $current=$iv_ruleTemplateSignatureCS.current; }
+	 EOF
 ;
 
 // Rule TemplateSignatureCS
-ruleTemplateSignatureCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTemplateSignatureCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-((	otherlv_0='(' 
+((	otherlv_0='('
     {
     	newLeafNode(otherlv_0, grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0());
 	    }
 		lv_ownedParameters_1_0=ruleTypeParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_1_0, 
+        		lv_ownedParameters_1_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=',' 
+)(	otherlv_2=','
     {
     	newLeafNode(otherlv_2, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0());
 	    }
 		lv_ownedParameters_3_0=ruleTypeParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_3_0, 
+        		lv_ownedParameters_3_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_4=')' 
+))*	otherlv_4=')'
     {
     	newLeafNode(otherlv_4, grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3());
     }
 )
-    |(	otherlv_5='<' 
+    |(	otherlv_5='<'
     {
     	newLeafNode(otherlv_5, grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedParameters_6_0=ruleTypeParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_6_0, 
+        		lv_ownedParameters_6_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_7=',' 
+)(	otherlv_7=','
     {
     	newLeafNode(otherlv_7, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0());
 	    }
 		lv_ownedParameters_8_0=ruleTypeParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_8_0, 
+        		lv_ownedParameters_8_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_9='>' 
+))*	otherlv_9='>'
     {
     	newLeafNode(otherlv_9, grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3());
     }
@@ -1602,42 +1602,42 @@
 
 
 // Entry rule entryRuleTypedRefCS
-entryRuleTypedRefCS returns [EObject current=null] 
+entryRuleTypedRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypedRefCSRule()); }
-	 iv_ruleTypedRefCS=ruleTypedRefCS 
-	 { $current=$iv_ruleTypedRefCS.current; } 
-	 EOF 
+	 iv_ruleTypedRefCS=ruleTypedRefCS
+	 { $current=$iv_ruleTypedRefCS.current; }
+	 EOF
 ;
 
 // Rule TypedRefCS
-ruleTypedRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypedRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0());
     }
     this_TypeLiteralCS_0=ruleTypeLiteralCS
-    { 
-        $current = $this_TypeLiteralCS_0.current; 
+    {
+        $current = $this_TypeLiteralCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1());
     }
     this_TypedTypeRefCS_1=ruleTypedTypeRefCS
-    { 
-        $current = $this_TypedTypeRefCS_1.current; 
+    {
+        $current = $this_TypedTypeRefCS_1.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -1648,50 +1648,50 @@
 
 
 // Entry rule entryRuleUnrestrictedName
-entryRuleUnrestrictedName returns [String current=null] 
+entryRuleUnrestrictedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnrestrictedNameRule()); } 
-	 iv_ruleUnrestrictedName=ruleUnrestrictedName 
-	 { $current=$iv_ruleUnrestrictedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnrestrictedNameRule()); }
+	 iv_ruleUnrestrictedName=ruleUnrestrictedName
+	 { $current=$iv_ruleUnrestrictedName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnrestrictedName
-ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0());
     }
     this_EssentialOCLUnrestrictedName_0=ruleEssentialOCLUnrestrictedName    {
 		$current.merge(this_EssentialOCLUnrestrictedName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-	kw='import' 
+	kw='import'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getImportKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getImportKeyword_1());
     }
 
     |
-	kw='include' 
+	kw='include'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getIncludeKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getIncludeKeyword_2());
     }
 
     |
-	kw='library' 
+	kw='library'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getLibraryKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getLibraryKeyword_3());
     }
 )
     ;
@@ -1701,43 +1701,43 @@
 
 
 // Entry rule entryRuleNavigatingArgExpCS
-entryRuleNavigatingArgExpCS returns [EObject current=null] 
+entryRuleNavigatingArgExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingArgExpCSRule()); }
-	 iv_ruleNavigatingArgExpCS=ruleNavigatingArgExpCS 
-	 { $current=$iv_ruleNavigatingArgExpCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingArgExpCS=ruleNavigatingArgExpCS
+	 { $current=$iv_ruleNavigatingArgExpCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingArgExpCS
-ruleNavigatingArgExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingArgExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getNavigatingArgExpCSAccess().getOCLMessageArgCSAction_0_0(),
             $current);
     }
-)	otherlv_1='?' 
+)	otherlv_1='?'
     {
     	newLeafNode(otherlv_1, grammarAccess.getNavigatingArgExpCSAccess().getQuestionMarkKeyword_0_1());
     }
 )
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall_1());
     }
     this_ExpCS_2=ruleExpCS
-    { 
-        $current = $this_ExpCS_2.current; 
+    {
+        $current = $this_ExpCS_2.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -1748,40 +1748,40 @@
 
 
 // Entry rule entryRuleNavigationOperatorName
-entryRuleNavigationOperatorName returns [String current=null] 
+entryRuleNavigationOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getNavigationOperatorNameRule()); } 
-	 iv_ruleNavigationOperatorName=ruleNavigationOperatorName 
-	 { $current=$iv_ruleNavigationOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getNavigationOperatorNameRule()); }
+	 iv_ruleNavigationOperatorName=ruleNavigationOperatorName
+	 { $current=$iv_ruleNavigationOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule NavigationOperatorName
-ruleNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall_0());
     }
     this_EssentialOCLNavigationOperatorName_0=ruleEssentialOCLNavigationOperatorName    {
 		$current.merge(this_EssentialOCLNavigationOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getCompleteOCLNavigationOperatorNameParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getCompleteOCLNavigationOperatorNameParserRuleCall_1());
     }
     this_CompleteOCLNavigationOperatorName_1=ruleCompleteOCLNavigationOperatorName    {
 		$current.merge(this_CompleteOCLNavigationOperatorName_1);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 )
@@ -1792,87 +1792,87 @@
 
 
 // Entry rule entryRulePrimitiveTypeIdentifier
-entryRulePrimitiveTypeIdentifier returns [String current=null] 
+entryRulePrimitiveTypeIdentifier returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule()); } 
-	 iv_rulePrimitiveTypeIdentifier=rulePrimitiveTypeIdentifier 
-	 { $current=$iv_rulePrimitiveTypeIdentifier.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule()); }
+	 iv_rulePrimitiveTypeIdentifier=rulePrimitiveTypeIdentifier
+	 { $current=$iv_rulePrimitiveTypeIdentifier.current.getText(); }
+	 EOF
 ;
 
 // Rule PrimitiveTypeIdentifier
-rulePrimitiveTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+rulePrimitiveTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='Boolean' 
+	kw='Boolean'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
     }
 
     |
-	kw='Integer' 
+	kw='Integer'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
     }
 
     |
-	kw='Real' 
+	kw='Real'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
     }
 
     |
-	kw='String' 
+	kw='String'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
     }
 
     |
-	kw='UnlimitedNatural' 
+	kw='UnlimitedNatural'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
     }
 
     |
-	kw='OclAny' 
+	kw='OclAny'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
     }
 
     |
-	kw='OclInvalid' 
+	kw='OclInvalid'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
     }
 
     |
-	kw='OclMessage' 
+	kw='OclMessage'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclMessageKeyword_7()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclMessageKeyword_7());
     }
 
     |
-	kw='OclState' 
+	kw='OclState'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclStateKeyword_8()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclStateKeyword_8());
     }
 
     |
-	kw='OclVoid' 
+	kw='OclVoid'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_9()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_9());
     }
 )
     ;
@@ -1886,31 +1886,31 @@
 
 
 // Entry rule entryRuleEssentialOCLUnaryOperatorName
-entryRuleEssentialOCLUnaryOperatorName returns [String current=null] 
+entryRuleEssentialOCLUnaryOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); } 
-	 iv_ruleEssentialOCLUnaryOperatorName=ruleEssentialOCLUnaryOperatorName 
-	 { $current=$iv_ruleEssentialOCLUnaryOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); }
+	 iv_ruleEssentialOCLUnaryOperatorName=ruleEssentialOCLUnaryOperatorName
+	 { $current=$iv_ruleEssentialOCLUnaryOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnaryOperatorName
-ruleEssentialOCLUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='-' 
+	kw='-'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
     }
 
     |
-	kw='not' 
+	kw='not'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
     }
 )
     ;
@@ -1920,115 +1920,115 @@
 
 
 // Entry rule entryRuleEssentialOCLInfixOperatorName
-entryRuleEssentialOCLInfixOperatorName returns [String current=null] 
+entryRuleEssentialOCLInfixOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule()); } 
-	 iv_ruleEssentialOCLInfixOperatorName=ruleEssentialOCLInfixOperatorName 
-	 { $current=$iv_ruleEssentialOCLInfixOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule()); }
+	 iv_ruleEssentialOCLInfixOperatorName=ruleEssentialOCLInfixOperatorName
+	 { $current=$iv_ruleEssentialOCLInfixOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLInfixOperatorName
-ruleEssentialOCLInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='*' 
+	kw='*'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
     }
 
     |
-	kw='/' 
+	kw='/'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
     }
 
     |
-	kw='+' 
+	kw='+'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
     }
 
     |
-	kw='-' 
+	kw='-'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
     }
 
     |
-	kw='>' 
+	kw='>'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
     }
 
     |
-	kw='<' 
+	kw='<'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
     }
 
     |
-	kw='>=' 
+	kw='>='
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
     }
 
     |
-	kw='<=' 
+	kw='<='
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
     }
 
     |
-	kw='=' 
+	kw='='
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
     }
 
     |
-	kw='<>' 
+	kw='<>'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
     }
 
     |
-	kw='and' 
+	kw='and'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
     }
 
     |
-	kw='or' 
+	kw='or'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
     }
 
     |
-	kw='xor' 
+	kw='xor'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
     }
 
     |
-	kw='implies' 
+	kw='implies'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
     }
 )
     ;
@@ -2038,45 +2038,45 @@
 
 
 // Entry rule entryRuleEssentialOCLNavigationOperatorName
-entryRuleEssentialOCLNavigationOperatorName returns [String current=null] 
+entryRuleEssentialOCLNavigationOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); } 
-	 iv_ruleEssentialOCLNavigationOperatorName=ruleEssentialOCLNavigationOperatorName 
-	 { $current=$iv_ruleEssentialOCLNavigationOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); }
+	 iv_ruleEssentialOCLNavigationOperatorName=ruleEssentialOCLNavigationOperatorName
+	 { $current=$iv_ruleEssentialOCLNavigationOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLNavigationOperatorName
-ruleEssentialOCLNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='.' 
+	kw='.'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
     }
 
     |
-	kw='->' 
+	kw='->'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
     }
 
     |
-	kw='?.' 
+	kw='?.'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
     }
 
     |
-	kw='?->' 
+	kw='?->'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
     }
 )
     ;
@@ -2086,40 +2086,40 @@
 
 
 // Entry rule entryRuleBinaryOperatorName
-entryRuleBinaryOperatorName returns [String current=null] 
+entryRuleBinaryOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getBinaryOperatorNameRule()); } 
-	 iv_ruleBinaryOperatorName=ruleBinaryOperatorName 
-	 { $current=$iv_ruleBinaryOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getBinaryOperatorNameRule()); }
+	 iv_ruleBinaryOperatorName=ruleBinaryOperatorName
+	 { $current=$iv_ruleBinaryOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule BinaryOperatorName
-ruleBinaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleBinaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
     }
     this_InfixOperatorName_0=ruleInfixOperatorName    {
 		$current.merge(this_InfixOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
     }
     this_NavigationOperatorName_1=ruleNavigationOperatorName    {
 		$current.merge(this_NavigationOperatorName_1);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 )
@@ -2130,28 +2130,28 @@
 
 
 // Entry rule entryRuleInfixOperatorName
-entryRuleInfixOperatorName returns [String current=null] 
+entryRuleInfixOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getInfixOperatorNameRule()); } 
-	 iv_ruleInfixOperatorName=ruleInfixOperatorName 
-	 { $current=$iv_ruleInfixOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getInfixOperatorNameRule()); }
+	 iv_ruleInfixOperatorName=ruleInfixOperatorName
+	 { $current=$iv_ruleInfixOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule InfixOperatorName
-ruleInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
     }
     this_EssentialOCLInfixOperatorName_0=ruleEssentialOCLInfixOperatorName    {
 		$current.merge(this_EssentialOCLInfixOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -2162,28 +2162,28 @@
 
 
 // Entry rule entryRuleUnaryOperatorName
-entryRuleUnaryOperatorName returns [String current=null] 
+entryRuleUnaryOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnaryOperatorNameRule()); } 
-	 iv_ruleUnaryOperatorName=ruleUnaryOperatorName 
-	 { $current=$iv_ruleUnaryOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnaryOperatorNameRule()); }
+	 iv_ruleUnaryOperatorName=ruleUnaryOperatorName
+	 { $current=$iv_ruleUnaryOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnaryOperatorName
-ruleUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
     }
     this_EssentialOCLUnaryOperatorName_0=ruleEssentialOCLUnaryOperatorName    {
 		$current.merge(this_EssentialOCLUnaryOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -2194,28 +2194,28 @@
 
 
 // Entry rule entryRuleEssentialOCLUnrestrictedName
-entryRuleEssentialOCLUnrestrictedName returns [String current=null] 
+entryRuleEssentialOCLUnrestrictedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule()); } 
-	 iv_ruleEssentialOCLUnrestrictedName=ruleEssentialOCLUnrestrictedName 
-	 { $current=$iv_ruleEssentialOCLUnrestrictedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule()); }
+	 iv_ruleEssentialOCLUnrestrictedName=ruleEssentialOCLUnrestrictedName
+	 { $current=$iv_ruleEssentialOCLUnrestrictedName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnrestrictedName
-ruleEssentialOCLUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
     }
     this_Identifier_0=ruleIdentifier    {
 		$current.merge(this_Identifier_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -2226,67 +2226,67 @@
 
 
 // Entry rule entryRuleEssentialOCLUnreservedName
-entryRuleEssentialOCLUnreservedName returns [String current=null] 
+entryRuleEssentialOCLUnreservedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule()); } 
-	 iv_ruleEssentialOCLUnreservedName=ruleEssentialOCLUnreservedName 
-	 { $current=$iv_ruleEssentialOCLUnreservedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule()); }
+	 iv_ruleEssentialOCLUnreservedName=ruleEssentialOCLUnreservedName
+	 { $current=$iv_ruleEssentialOCLUnreservedName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnreservedName
-ruleEssentialOCLUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
     }
     this_UnrestrictedName_0=ruleUnrestrictedName    {
 		$current.merge(this_UnrestrictedName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
     }
     this_CollectionTypeIdentifier_1=ruleCollectionTypeIdentifier    {
 		$current.merge(this_CollectionTypeIdentifier_1);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
     }
     this_PrimitiveTypeIdentifier_2=rulePrimitiveTypeIdentifier    {
 		$current.merge(this_PrimitiveTypeIdentifier_2);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-	kw='Map' 
+	kw='Map'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
     }
 
     |
-	kw='Tuple' 
+	kw='Tuple'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
     }
 )
     ;
@@ -2296,28 +2296,28 @@
 
 
 // Entry rule entryRuleUnreservedName
-entryRuleUnreservedName returns [String current=null] 
+entryRuleUnreservedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnreservedNameRule()); } 
-	 iv_ruleUnreservedName=ruleUnreservedName 
-	 { $current=$iv_ruleUnreservedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnreservedNameRule()); }
+	 iv_ruleUnreservedName=ruleUnreservedName
+	 { $current=$iv_ruleUnreservedName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnreservedName
-ruleUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
     }
     this_EssentialOCLUnreservedName_0=ruleEssentialOCLUnreservedName    {
 		$current.merge(this_EssentialOCLUnreservedName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -2328,54 +2328,54 @@
 
 
 // Entry rule entryRuleURIPathNameCS
-entryRuleURIPathNameCS returns [EObject current=null] 
+entryRuleURIPathNameCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getURIPathNameCSRule()); }
-	 iv_ruleURIPathNameCS=ruleURIPathNameCS 
-	 { $current=$iv_ruleURIPathNameCS.current; } 
-	 EOF 
+	 iv_ruleURIPathNameCS=ruleURIPathNameCS
+	 { $current=$iv_ruleURIPathNameCS.current; }
+	 EOF
 ;
 
 // Rule URIPathNameCS
-ruleURIPathNameCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleURIPathNameCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathElements_0_0=ruleURIFirstPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getURIPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_0_0, 
+        		lv_ownedPathElements_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIFirstPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='::' 
+)(	otherlv_1='::'
     {
     	newLeafNode(otherlv_1, grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedPathElements_2_0=ruleNextPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getURIPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_2_0, 
+        		lv_ownedPathElements_2_0,
         		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2389,41 +2389,41 @@
 
 
 // Entry rule entryRuleURIFirstPathElementCS
-entryRuleURIFirstPathElementCS returns [EObject current=null] 
+entryRuleURIFirstPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getURIFirstPathElementCSRule()); }
-	 iv_ruleURIFirstPathElementCS=ruleURIFirstPathElementCS 
-	 { $current=$iv_ruleURIFirstPathElementCS.current; } 
-	 EOF 
+	 iv_ruleURIFirstPathElementCS=ruleURIFirstPathElementCS
+	 { $current=$iv_ruleURIFirstPathElementCS.current; }
+	 EOF
 ;
 
 // Rule URIFirstPathElementCS
-ruleURIFirstPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleURIFirstPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 )
     |((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
@@ -2432,18 +2432,18 @@
     }
 )(
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
 	    }
-		ruleURI		{ 
+		ruleURI		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -2456,32 +2456,32 @@
 
 
 // Entry rule entryRulePrimitiveTypeCS
-entryRulePrimitiveTypeCS returns [EObject current=null] 
+entryRulePrimitiveTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrimitiveTypeCSRule()); }
-	 iv_rulePrimitiveTypeCS=rulePrimitiveTypeCS 
-	 { $current=$iv_rulePrimitiveTypeCS.current; } 
-	 EOF 
+	 iv_rulePrimitiveTypeCS=rulePrimitiveTypeCS
+	 { $current=$iv_rulePrimitiveTypeCS.current; }
+	 EOF
 ;
 
 // Rule PrimitiveTypeCS
-rulePrimitiveTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrimitiveTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
 	    }
 		lv_name_0_0=rulePrimitiveTypeIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrimitiveTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.PrimitiveTypeIdentifier");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2495,52 +2495,52 @@
 
 
 // Entry rule entryRuleCollectionTypeIdentifier
-entryRuleCollectionTypeIdentifier returns [String current=null] 
+entryRuleCollectionTypeIdentifier returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule()); } 
-	 iv_ruleCollectionTypeIdentifier=ruleCollectionTypeIdentifier 
-	 { $current=$iv_ruleCollectionTypeIdentifier.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule()); }
+	 iv_ruleCollectionTypeIdentifier=ruleCollectionTypeIdentifier
+	 { $current=$iv_ruleCollectionTypeIdentifier.current.getText(); }
+	 EOF
 ;
 
 // Rule CollectionTypeIdentifier
-ruleCollectionTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleCollectionTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='Set' 
+	kw='Set'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
     }
 
     |
-	kw='Bag' 
+	kw='Bag'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
     }
 
     |
-	kw='Sequence' 
+	kw='Sequence'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
     }
 
     |
-	kw='Collection' 
+	kw='Collection'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
     }
 
     |
-	kw='OrderedSet' 
+	kw='OrderedSet'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
     }
 )
     ;
@@ -2550,60 +2550,60 @@
 
 
 // Entry rule entryRuleCollectionTypeCS
-entryRuleCollectionTypeCS returns [EObject current=null] 
+entryRuleCollectionTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionTypeCSRule()); }
-	 iv_ruleCollectionTypeCS=ruleCollectionTypeCS 
-	 { $current=$iv_ruleCollectionTypeCS.current; } 
-	 EOF 
+	 iv_ruleCollectionTypeCS=ruleCollectionTypeCS
+	 { $current=$iv_ruleCollectionTypeCS.current; }
+	 EOF
 ;
 
 // Rule CollectionTypeCS
-ruleCollectionTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleCollectionTypeIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeIdentifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=')' 
+)	otherlv_3=')'
     {
     	newLeafNode(otherlv_3, grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
     }
@@ -2615,26 +2615,26 @@
 
 
 // Entry rule entryRuleMapTypeCS
-entryRuleMapTypeCS returns [EObject current=null] 
+entryRuleMapTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMapTypeCSRule()); }
-	 iv_ruleMapTypeCS=ruleMapTypeCS 
-	 { $current=$iv_ruleMapTypeCS.current; } 
-	 EOF 
+	 iv_ruleMapTypeCS=ruleMapTypeCS
+	 { $current=$iv_ruleMapTypeCS.current; }
+	 EOF
 ;
 
 // Rule MapTypeCS
-ruleMapTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMapTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_name_0_0=	'Map' 
+		lv_name_0_0=	'Map'
     {
         newLeafNode(lv_name_0_0, grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMapTypeCSRule());
@@ -2643,51 +2643,51 @@
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedKeyType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedKeyType",
-        		lv_ownedKeyType_2_0, 
+        		lv_ownedKeyType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=',' 
+)	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
 	    }
 		lv_ownedValueType_4_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedValueType",
-        		lv_ownedValueType_4_0, 
+        		lv_ownedValueType_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_5=')' 
+)	otherlv_5=')'
     {
     	newLeafNode(otherlv_5, grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
     }
@@ -2699,26 +2699,26 @@
 
 
 // Entry rule entryRuleTupleTypeCS
-entryRuleTupleTypeCS returns [EObject current=null] 
+entryRuleTupleTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTupleTypeCSRule()); }
-	 iv_ruleTupleTypeCS=ruleTupleTypeCS 
-	 { $current=$iv_ruleTupleTypeCS.current; } 
-	 EOF 
+	 iv_ruleTupleTypeCS=ruleTupleTypeCS
+	 { $current=$iv_ruleTupleTypeCS.current; }
+	 EOF
 ;
 
 // Rule TupleTypeCS
-ruleTupleTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTupleTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_name_0_0=	'Tuple' 
+		lv_name_0_0=	'Tuple'
     {
         newLeafNode(lv_name_0_0, grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getTupleTypeCSRule());
@@ -2727,51 +2727,51 @@
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
 	    }
 		lv_ownedParts_2_0=ruleTuplePartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleTuplePartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_5=')' 
+))*)?	otherlv_5=')'
     {
     	newLeafNode(otherlv_5, grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
     }
@@ -2783,54 +2783,54 @@
 
 
 // Entry rule entryRuleTuplePartCS
-entryRuleTuplePartCS returns [EObject current=null] 
+entryRuleTuplePartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTuplePartCSRule()); }
-	 iv_ruleTuplePartCS=ruleTuplePartCS 
-	 { $current=$iv_ruleTuplePartCS.current; } 
-	 EOF 
+	 iv_ruleTuplePartCS=ruleTuplePartCS
+	 { $current=$iv_ruleTuplePartCS.current; }
+	 EOF
 ;
 
 // Rule TuplePartCS
-ruleTuplePartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTuplePartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1=':' 
+)	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2844,82 +2844,82 @@
 
 
 // Entry rule entryRuleCollectionLiteralExpCS
-entryRuleCollectionLiteralExpCS returns [EObject current=null] 
+entryRuleCollectionLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionLiteralExpCSRule()); }
-	 iv_ruleCollectionLiteralExpCS=ruleCollectionLiteralExpCS 
-	 { $current=$iv_ruleCollectionLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleCollectionLiteralExpCS=ruleCollectionLiteralExpCS
+	 { $current=$iv_ruleCollectionLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule CollectionLiteralExpCS
-ruleCollectionLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
 	    }
 		lv_ownedType_0_0=ruleCollectionTypeCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedParts_2_0=ruleCollectionLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleCollectionLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_5='}' 
+))*)?	otherlv_5='}'
     {
     	newLeafNode(otherlv_5, grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -2931,54 +2931,54 @@
 
 
 // Entry rule entryRuleCollectionLiteralPartCS
-entryRuleCollectionLiteralPartCS returns [EObject current=null] 
+entryRuleCollectionLiteralPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionLiteralPartCSRule()); }
-	 iv_ruleCollectionLiteralPartCS=ruleCollectionLiteralPartCS 
-	 { $current=$iv_ruleCollectionLiteralPartCS.current; } 
-	 EOF 
+	 iv_ruleCollectionLiteralPartCS=ruleCollectionLiteralPartCS
+	 { $current=$iv_ruleCollectionLiteralPartCS.current; }
+	 EOF
 ;
 
 // Rule CollectionLiteralPartCS
-ruleCollectionLiteralPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionLiteralPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
 	    }
 		lv_ownedExpression_0_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_0_0, 
+        		lv_ownedExpression_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='..' 
+)(	otherlv_1='..'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
 	    }
 		lv_ownedLastExpression_2_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedLastExpression",
-        		lv_ownedLastExpression_2_0, 
+        		lv_ownedLastExpression_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2987,17 +2987,17 @@
 ))?)
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedExpression_3_0=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_3_0, 
+        		lv_ownedExpression_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3011,104 +3011,104 @@
 
 
 // Entry rule entryRuleCollectionPatternCS
-entryRuleCollectionPatternCS returns [EObject current=null] 
+entryRuleCollectionPatternCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionPatternCSRule()); }
-	 iv_ruleCollectionPatternCS=ruleCollectionPatternCS 
-	 { $current=$iv_ruleCollectionPatternCS.current; } 
-	 EOF 
+	 iv_ruleCollectionPatternCS=ruleCollectionPatternCS
+	 { $current=$iv_ruleCollectionPatternCS.current; }
+	 EOF
 ;
 
 // Rule CollectionPatternCS
-ruleCollectionPatternCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionPatternCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
 	    }
 		lv_ownedType_0_0=ruleCollectionTypeCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedParts_2_0=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedParts_4_0=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*(	otherlv_5='++' 
+))*(	otherlv_5='++'
     {
     	newLeafNode(otherlv_5, grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
 	    }
 		lv_restVariableName_6_0=ruleIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"restVariableName",
-        		lv_restVariableName_6_0, 
+        		lv_restVariableName_6_0,
         		"org.eclipse.ocl.xtext.base.Base.Identifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)))?	otherlv_7='}' 
+)))?	otherlv_7='}'
     {
     	newLeafNode(otherlv_7, grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -3120,70 +3120,70 @@
 
 
 // Entry rule entryRuleShadowPartCS
-entryRuleShadowPartCS returns [EObject current=null] 
+entryRuleShadowPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getShadowPartCSRule()); }
-	 iv_ruleShadowPartCS=ruleShadowPartCS 
-	 { $current=$iv_ruleShadowPartCS.current; } 
-	 EOF 
+	 iv_ruleShadowPartCS=ruleShadowPartCS
+	 { $current=$iv_ruleShadowPartCS.current; }
+	 EOF
 ;
 
 // Rule ShadowPartCS
-ruleShadowPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleShadowPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getShadowPartCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='=' 
+)	otherlv_1='='
     {
     	newLeafNode(otherlv_1, grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
     }
 (
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedInitExpression_2_1=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_2_1, 
+        		lv_ownedInitExpression_2_1,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
-    |		{ 
-	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
+    |		{
+	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
 	    }
 		lv_ownedInitExpression_2_2=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_2_2, 
+        		lv_ownedInitExpression_2_2,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3199,54 +3199,54 @@
 
 
 // Entry rule entryRulePatternExpCS
-entryRulePatternExpCS returns [EObject current=null] 
+entryRulePatternExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPatternExpCSRule()); }
-	 iv_rulePatternExpCS=rulePatternExpCS 
-	 { $current=$iv_rulePatternExpCS.current; } 
-	 EOF 
+	 iv_rulePatternExpCS=rulePatternExpCS
+	 { $current=$iv_rulePatternExpCS.current; }
+	 EOF
 ;
 
 // Rule PatternExpCS
-rulePatternExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePatternExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_patternVariableName_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"patternVariableName",
-        		lv_patternVariableName_0_0, 
+        		lv_patternVariableName_0_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_1=':' 
+)?	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedPatternType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPatternType",
-        		lv_ownedPatternType_2_0, 
+        		lv_ownedPatternType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3260,46 +3260,46 @@
 
 
 // Entry rule entryRuleLambdaLiteralExpCS
-entryRuleLambdaLiteralExpCS returns [EObject current=null] 
+entryRuleLambdaLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLambdaLiteralExpCSRule()); }
-	 iv_ruleLambdaLiteralExpCS=ruleLambdaLiteralExpCS 
-	 { $current=$iv_ruleLambdaLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleLambdaLiteralExpCS=ruleLambdaLiteralExpCS
+	 { $current=$iv_ruleLambdaLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule LambdaLiteralExpCS
-ruleLambdaLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLambdaLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='Lambda' 
+(	otherlv_0='Lambda'
     {
     	newLeafNode(otherlv_0, grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
     }
-	otherlv_1='{' 
+	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedExpressionCS_2_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLambdaLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpressionCS",
-        		lv_ownedExpressionCS_2_0, 
+        		lv_ownedExpressionCS_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3='}' 
+)	otherlv_3='}'
     {
     	newLeafNode(otherlv_3, grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -3311,82 +3311,82 @@
 
 
 // Entry rule entryRuleMapLiteralExpCS
-entryRuleMapLiteralExpCS returns [EObject current=null] 
+entryRuleMapLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMapLiteralExpCSRule()); }
-	 iv_ruleMapLiteralExpCS=ruleMapLiteralExpCS 
-	 { $current=$iv_ruleMapLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleMapLiteralExpCS=ruleMapLiteralExpCS
+	 { $current=$iv_ruleMapLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule MapLiteralExpCS
-ruleMapLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMapLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
 	    }
 		lv_ownedType_0_0=ruleMapTypeCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapTypeCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedParts_2_0=ruleMapLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleMapLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_5='}' 
+))*)?	otherlv_5='}'
     {
     	newLeafNode(otherlv_5, grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -3398,54 +3398,54 @@
 
 
 // Entry rule entryRuleMapLiteralPartCS
-entryRuleMapLiteralPartCS returns [EObject current=null] 
+entryRuleMapLiteralPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMapLiteralPartCSRule()); }
-	 iv_ruleMapLiteralPartCS=ruleMapLiteralPartCS 
-	 { $current=$iv_ruleMapLiteralPartCS.current; } 
-	 EOF 
+	 iv_ruleMapLiteralPartCS=ruleMapLiteralPartCS
+	 { $current=$iv_ruleMapLiteralPartCS.current; }
+	 EOF
 ;
 
 // Rule MapLiteralPartCS
-ruleMapLiteralPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMapLiteralPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
 	    }
 		lv_ownedKey_0_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedKey",
-        		lv_ownedKey_0_0, 
+        		lv_ownedKey_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='<-' 
+)	otherlv_1='<-'
     {
     	newLeafNode(otherlv_1, grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedValue_2_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedValue",
-        		lv_ownedValue_2_0, 
+        		lv_ownedValue_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3459,94 +3459,94 @@
 
 
 // Entry rule entryRulePrimitiveLiteralExpCS
-entryRulePrimitiveLiteralExpCS returns [EObject current=null] 
+entryRulePrimitiveLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSRule()); }
-	 iv_rulePrimitiveLiteralExpCS=rulePrimitiveLiteralExpCS 
-	 { $current=$iv_rulePrimitiveLiteralExpCS.current; } 
-	 EOF 
+	 iv_rulePrimitiveLiteralExpCS=rulePrimitiveLiteralExpCS
+	 { $current=$iv_rulePrimitiveLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule PrimitiveLiteralExpCS
-rulePrimitiveLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrimitiveLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
     }
     this_NumberLiteralExpCS_0=ruleNumberLiteralExpCS
-    { 
-        $current = $this_NumberLiteralExpCS_0.current; 
+    {
+        $current = $this_NumberLiteralExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
     }
     this_StringLiteralExpCS_1=ruleStringLiteralExpCS
-    { 
-        $current = $this_StringLiteralExpCS_1.current; 
+    {
+        $current = $this_StringLiteralExpCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
     }
     this_BooleanLiteralExpCS_2=ruleBooleanLiteralExpCS
-    { 
-        $current = $this_BooleanLiteralExpCS_2.current; 
+    {
+        $current = $this_BooleanLiteralExpCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
     }
     this_UnlimitedNaturalLiteralExpCS_3=ruleUnlimitedNaturalLiteralExpCS
-    { 
-        $current = $this_UnlimitedNaturalLiteralExpCS_3.current; 
+    {
+        $current = $this_UnlimitedNaturalLiteralExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
     }
     this_InvalidLiteralExpCS_4=ruleInvalidLiteralExpCS
-    { 
-        $current = $this_InvalidLiteralExpCS_4.current; 
+    {
+        $current = $this_InvalidLiteralExpCS_4.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
     }
     this_NullLiteralExpCS_5=ruleNullLiteralExpCS
-    { 
-        $current = $this_NullLiteralExpCS_5.current; 
+    {
+        $current = $this_NullLiteralExpCS_5.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -3557,68 +3557,68 @@
 
 
 // Entry rule entryRuleTupleLiteralExpCS
-entryRuleTupleLiteralExpCS returns [EObject current=null] 
+entryRuleTupleLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTupleLiteralExpCSRule()); }
-	 iv_ruleTupleLiteralExpCS=ruleTupleLiteralExpCS 
-	 { $current=$iv_ruleTupleLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleTupleLiteralExpCS=ruleTupleLiteralExpCS
+	 { $current=$iv_ruleTupleLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule TupleLiteralExpCS
-ruleTupleLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTupleLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='Tuple' 
+(	otherlv_0='Tuple'
     {
     	newLeafNode(otherlv_0, grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
     }
-	otherlv_1='{' 
+	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
 	    }
 		lv_ownedParts_2_0=ruleTupleLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
 	    }
 		lv_ownedParts_4_0=ruleTupleLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_5='}' 
+))*	otherlv_5='}'
     {
     	newLeafNode(otherlv_5, grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
     }
@@ -3630,76 +3630,76 @@
 
 
 // Entry rule entryRuleTupleLiteralPartCS
-entryRuleTupleLiteralPartCS returns [EObject current=null] 
+entryRuleTupleLiteralPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTupleLiteralPartCSRule()); }
-	 iv_ruleTupleLiteralPartCS=ruleTupleLiteralPartCS 
-	 { $current=$iv_ruleTupleLiteralPartCS.current; } 
-	 EOF 
+	 iv_ruleTupleLiteralPartCS=ruleTupleLiteralPartCS
+	 { $current=$iv_ruleTupleLiteralPartCS.current; }
+	 EOF
 ;
 
 // Rule TupleLiteralPartCS
-ruleTupleLiteralPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTupleLiteralPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1=':' 
+)(	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?	otherlv_3='=' 
+))?	otherlv_3='='
     {
     	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
 	    }
 		lv_ownedInitExpression_4_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_4_0, 
+        		lv_ownedInitExpression_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3713,32 +3713,32 @@
 
 
 // Entry rule entryRuleNumberLiteralExpCS
-entryRuleNumberLiteralExpCS returns [EObject current=null] 
+entryRuleNumberLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNumberLiteralExpCSRule()); }
-	 iv_ruleNumberLiteralExpCS=ruleNumberLiteralExpCS 
-	 { $current=$iv_ruleNumberLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleNumberLiteralExpCS=ruleNumberLiteralExpCS
+	 { $current=$iv_ruleNumberLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule NumberLiteralExpCS
-ruleNumberLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNumberLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
 	    }
 		lv_symbol_0_0=ruleNUMBER_LITERAL		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNumberLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"symbol",
-        		lv_symbol_0_0, 
+        		lv_symbol_0_0,
         		"org.eclipse.ocl.xtext.base.Base.NUMBER_LITERAL");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3752,32 +3752,32 @@
 
 
 // Entry rule entryRuleStringLiteralExpCS
-entryRuleStringLiteralExpCS returns [EObject current=null] 
+entryRuleStringLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getStringLiteralExpCSRule()); }
-	 iv_ruleStringLiteralExpCS=ruleStringLiteralExpCS 
-	 { $current=$iv_ruleStringLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleStringLiteralExpCS=ruleStringLiteralExpCS
+	 { $current=$iv_ruleStringLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule StringLiteralExpCS
-ruleStringLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleStringLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
 	    }
 		lv_segments_0_0=ruleStringLiteral		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getStringLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"segments",
-        		lv_segments_0_0, 
+        		lv_segments_0_0,
         		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3791,26 +3791,26 @@
 
 
 // Entry rule entryRuleBooleanLiteralExpCS
-entryRuleBooleanLiteralExpCS returns [EObject current=null] 
+entryRuleBooleanLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getBooleanLiteralExpCSRule()); }
-	 iv_ruleBooleanLiteralExpCS=ruleBooleanLiteralExpCS 
-	 { $current=$iv_ruleBooleanLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleBooleanLiteralExpCS=ruleBooleanLiteralExpCS
+	 { $current=$iv_ruleBooleanLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule BooleanLiteralExpCS
-ruleBooleanLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleBooleanLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_symbol_0_0=	'true' 
+		lv_symbol_0_0=	'true'
     {
         newLeafNode(lv_symbol_0_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
@@ -3822,11 +3822,11 @@
 )
     |(
 (
-		lv_symbol_1_0=	'false' 
+		lv_symbol_1_0=	'false'
     {
         newLeafNode(lv_symbol_1_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
@@ -3843,29 +3843,29 @@
 
 
 // Entry rule entryRuleUnlimitedNaturalLiteralExpCS
-entryRuleUnlimitedNaturalLiteralExpCS returns [EObject current=null] 
+entryRuleUnlimitedNaturalLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); }
-	 iv_ruleUnlimitedNaturalLiteralExpCS=ruleUnlimitedNaturalLiteralExpCS 
-	 { $current=$iv_ruleUnlimitedNaturalLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleUnlimitedNaturalLiteralExpCS=ruleUnlimitedNaturalLiteralExpCS
+	 { $current=$iv_ruleUnlimitedNaturalLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule UnlimitedNaturalLiteralExpCS
-ruleUnlimitedNaturalLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleUnlimitedNaturalLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0(),
             $current);
     }
-)	otherlv_1='*' 
+)	otherlv_1='*'
     {
     	newLeafNode(otherlv_1, grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
     }
@@ -3877,29 +3877,29 @@
 
 
 // Entry rule entryRuleInvalidLiteralExpCS
-entryRuleInvalidLiteralExpCS returns [EObject current=null] 
+entryRuleInvalidLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getInvalidLiteralExpCSRule()); }
-	 iv_ruleInvalidLiteralExpCS=ruleInvalidLiteralExpCS 
-	 { $current=$iv_ruleInvalidLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleInvalidLiteralExpCS=ruleInvalidLiteralExpCS
+	 { $current=$iv_ruleInvalidLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule InvalidLiteralExpCS
-ruleInvalidLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleInvalidLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0(),
             $current);
     }
-)	otherlv_1='invalid' 
+)	otherlv_1='invalid'
     {
     	newLeafNode(otherlv_1, grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
     }
@@ -3911,29 +3911,29 @@
 
 
 // Entry rule entryRuleNullLiteralExpCS
-entryRuleNullLiteralExpCS returns [EObject current=null] 
+entryRuleNullLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNullLiteralExpCSRule()); }
-	 iv_ruleNullLiteralExpCS=ruleNullLiteralExpCS 
-	 { $current=$iv_ruleNullLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleNullLiteralExpCS=ruleNullLiteralExpCS
+	 { $current=$iv_ruleNullLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule NullLiteralExpCS
-ruleNullLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNullLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0(),
             $current);
     }
-)	otherlv_1='null' 
+)	otherlv_1='null'
     {
     	newLeafNode(otherlv_1, grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
     }
@@ -3945,68 +3945,68 @@
 
 
 // Entry rule entryRuleTypeLiteralCS
-entryRuleTypeLiteralCS returns [EObject current=null] 
+entryRuleTypeLiteralCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeLiteralCSRule()); }
-	 iv_ruleTypeLiteralCS=ruleTypeLiteralCS 
-	 { $current=$iv_ruleTypeLiteralCS.current; } 
-	 EOF 
+	 iv_ruleTypeLiteralCS=ruleTypeLiteralCS
+	 { $current=$iv_ruleTypeLiteralCS.current; }
+	 EOF
 ;
 
 // Rule TypeLiteralCS
-ruleTypeLiteralCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeLiteralCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
     }
     this_PrimitiveTypeCS_0=rulePrimitiveTypeCS
-    { 
-        $current = $this_PrimitiveTypeCS_0.current; 
+    {
+        $current = $this_PrimitiveTypeCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
     }
     this_CollectionTypeCS_1=ruleCollectionTypeCS
-    { 
-        $current = $this_CollectionTypeCS_1.current; 
+    {
+        $current = $this_CollectionTypeCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
     }
     this_MapTypeCS_2=ruleMapTypeCS
-    { 
-        $current = $this_MapTypeCS_2.current; 
+    {
+        $current = $this_MapTypeCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
     }
     this_TupleTypeCS_3=ruleTupleTypeCS
-    { 
-        $current = $this_TupleTypeCS_3.current; 
+    {
+        $current = $this_TupleTypeCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -4017,44 +4017,44 @@
 
 
 // Entry rule entryRuleTypeLiteralWithMultiplicityCS
-entryRuleTypeLiteralWithMultiplicityCS returns [EObject current=null] 
+entryRuleTypeLiteralWithMultiplicityCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); }
-	 iv_ruleTypeLiteralWithMultiplicityCS=ruleTypeLiteralWithMultiplicityCS 
-	 { $current=$iv_ruleTypeLiteralWithMultiplicityCS.current; } 
-	 EOF 
+	 iv_ruleTypeLiteralWithMultiplicityCS=ruleTypeLiteralWithMultiplicityCS
+	 { $current=$iv_ruleTypeLiteralWithMultiplicityCS.current; }
+	 EOF
 ;
 
 // Rule TypeLiteralWithMultiplicityCS
-ruleTypeLiteralWithMultiplicityCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeLiteralWithMultiplicityCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
     }
     this_TypeLiteralCS_0=ruleTypeLiteralCS
-    { 
-        $current = $this_TypeLiteralCS_0.current; 
+    {
+        $current = $this_TypeLiteralCS_0.current;
         afterParserOrEnumRuleCall();
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
 	    }
 		lv_ownedMultiplicity_1_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_1_0, 
+        		lv_ownedMultiplicity_1_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4068,32 +4068,32 @@
 
 
 // Entry rule entryRuleTypeLiteralExpCS
-entryRuleTypeLiteralExpCS returns [EObject current=null] 
+entryRuleTypeLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeLiteralExpCSRule()); }
-	 iv_ruleTypeLiteralExpCS=ruleTypeLiteralExpCS 
-	 { $current=$iv_ruleTypeLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleTypeLiteralExpCS=ruleTypeLiteralExpCS
+	 { $current=$iv_ruleTypeLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule TypeLiteralExpCS
-ruleTypeLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
 	    }
 		lv_ownedType_0_0=ruleTypeLiteralWithMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeLiteralWithMultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4107,32 +4107,32 @@
 
 
 // Entry rule entryRuleTypeNameExpCS
-entryRuleTypeNameExpCS returns [EObject current=null] 
+entryRuleTypeNameExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeNameExpCSRule()); }
-	 iv_ruleTypeNameExpCS=ruleTypeNameExpCS 
-	 { $current=$iv_ruleTypeNameExpCS.current; } 
-	 EOF 
+	 iv_ruleTypeNameExpCS=ruleTypeNameExpCS
+	 { $current=$iv_ruleTypeNameExpCS.current; }
+	 EOF
 ;
 
 // Rule TypeNameExpCS
-ruleTypeNameExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeNameExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathName_0_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_0_0, 
+        		lv_ownedPathName_0_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4140,45 +4140,45 @@
 )
 )((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
 	    }
 		lv_ownedCurlyBracketedClause_1_0=ruleCurlyBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCurlyBracketedClause",
-        		lv_ownedCurlyBracketedClause_1_0, 
+        		lv_ownedCurlyBracketedClause_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2='{' 
+)(	otherlv_2='{'
     {
     	newLeafNode(otherlv_2, grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
 	    }
 		lv_ownedPatternGuard_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPatternGuard",
-        		lv_ownedPatternGuard_3_0, 
+        		lv_ownedPatternGuard_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_4='}' 
+)	otherlv_4='}'
     {
     	newLeafNode(otherlv_4, grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
     }
@@ -4190,70 +4190,70 @@
 
 
 // Entry rule entryRuleTypeExpCS
-entryRuleTypeExpCS returns [EObject current=null] 
+entryRuleTypeExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeExpCSRule()); }
-	 iv_ruleTypeExpCS=ruleTypeExpCS 
-	 { $current=$iv_ruleTypeExpCS.current; } 
-	 EOF 
+	 iv_ruleTypeExpCS=ruleTypeExpCS
+	 { $current=$iv_ruleTypeExpCS.current; }
+	 EOF
 ;
 
 // Rule TypeExpCS
-ruleTypeExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
     }
     this_TypeNameExpCS_0=ruleTypeNameExpCS
-    { 
-        $current = $this_TypeNameExpCS_0.current; 
+    {
+        $current = $this_TypeNameExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
     }
     this_TypeLiteralCS_1=ruleTypeLiteralCS
-    { 
-        $current = $this_TypeLiteralCS_1.current; 
+    {
+        $current = $this_TypeLiteralCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
+    {
+        newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
     }
     this_CollectionPatternCS_2=ruleCollectionPatternCS
-    { 
-        $current = $this_CollectionPatternCS_2.current; 
+    {
+        $current = $this_CollectionPatternCS_2.current;
         afterParserOrEnumRuleCall();
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
 	    }
 		lv_ownedMultiplicity_3_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_3_0, 
+        		lv_ownedMultiplicity_3_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4267,34 +4267,34 @@
 
 
 // Entry rule entryRuleExpCS
-entryRuleExpCS returns [EObject current=null] 
+entryRuleExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getExpCSRule()); }
-	 iv_ruleExpCS=ruleExpCS 
-	 { $current=$iv_ruleExpCS.current; } 
-	 EOF 
+	 iv_ruleExpCS=ruleExpCS
+	 { $current=$iv_ruleExpCS.current; }
+	 EOF
 ;
 
 // Rule ExpCS
-ruleExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
+    {
+        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
     }
     this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS
-    { 
-        $current = $this_PrefixedPrimaryExpCS_0.current; 
+    {
+        $current = $this_PrefixedPrimaryExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElementAndSet(
@@ -4303,17 +4303,17 @@
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
 	    }
 		lv_name_2_0=ruleBinaryOperatorName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_0, 
+        		lv_name_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.BinaryOperatorName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4321,17 +4321,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
 	    }
 		lv_ownedRight_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRight",
-        		lv_ownedRight_3_0, 
+        		lv_ownedRight_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4339,15 +4339,15 @@
 )
 ))?)
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
     }
     this_PrefixedLetExpCS_4=rulePrefixedLetExpCS
-    { 
-        $current = $this_PrefixedLetExpCS_4.current; 
+    {
+        $current = $this_PrefixedLetExpCS_4.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -4358,22 +4358,22 @@
 
 
 // Entry rule entryRulePrefixedLetExpCS
-entryRulePrefixedLetExpCS returns [EObject current=null] 
+entryRulePrefixedLetExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrefixedLetExpCSRule()); }
-	 iv_rulePrefixedLetExpCS=rulePrefixedLetExpCS 
-	 { $current=$iv_rulePrefixedLetExpCS.current; } 
-	 EOF 
+	 iv_rulePrefixedLetExpCS=rulePrefixedLetExpCS
+	 { $current=$iv_rulePrefixedLetExpCS.current; }
+	 EOF
 ;
 
 // Rule PrefixedLetExpCS
-rulePrefixedLetExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrefixedLetExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
@@ -4382,17 +4382,17 @@
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
 	    }
 		lv_name_1_0=ruleUnaryOperatorName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4400,17 +4400,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
 	    }
 		lv_ownedRight_2_0=rulePrefixedLetExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRight",
-        		lv_ownedRight_2_0, 
+        		lv_ownedRight_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedLetExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4418,15 +4418,15 @@
 )
 ))
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
     }
     this_LetExpCS_3=ruleLetExpCS
-    { 
-        $current = $this_LetExpCS_3.current; 
+    {
+        $current = $this_LetExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -4437,22 +4437,22 @@
 
 
 // Entry rule entryRulePrefixedPrimaryExpCS
-entryRulePrefixedPrimaryExpCS returns [EObject current=null] 
+entryRulePrefixedPrimaryExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSRule()); }
-	 iv_rulePrefixedPrimaryExpCS=rulePrefixedPrimaryExpCS 
-	 { $current=$iv_rulePrefixedPrimaryExpCS.current; } 
-	 EOF 
+	 iv_rulePrefixedPrimaryExpCS=rulePrefixedPrimaryExpCS
+	 { $current=$iv_rulePrefixedPrimaryExpCS.current; }
+	 EOF
 ;
 
 // Rule PrefixedPrimaryExpCS
-rulePrefixedPrimaryExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrefixedPrimaryExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
@@ -4461,17 +4461,17 @@
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
 	    }
 		lv_name_1_0=ruleUnaryOperatorName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4479,17 +4479,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
 	    }
 		lv_ownedRight_2_0=rulePrefixedPrimaryExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRight",
-        		lv_ownedRight_2_0, 
+        		lv_ownedRight_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedPrimaryExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4497,15 +4497,15 @@
 )
 ))
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
     }
     this_PrimaryExpCS_3=rulePrimaryExpCS
-    { 
-        $current = $this_PrimaryExpCS_3.current; 
+    {
+        $current = $this_PrimaryExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -4516,146 +4516,146 @@
 
 
 // Entry rule entryRulePrimaryExpCS
-entryRulePrimaryExpCS returns [EObject current=null] 
+entryRulePrimaryExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrimaryExpCSRule()); }
-	 iv_rulePrimaryExpCS=rulePrimaryExpCS 
-	 { $current=$iv_rulePrimaryExpCS.current; } 
-	 EOF 
+	 iv_rulePrimaryExpCS=rulePrimaryExpCS
+	 { $current=$iv_rulePrimaryExpCS.current; }
+	 EOF
 ;
 
 // Rule PrimaryExpCS
-rulePrimaryExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrimaryExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
     }
     this_NestedExpCS_0=ruleNestedExpCS
-    { 
-        $current = $this_NestedExpCS_0.current; 
+    {
+        $current = $this_NestedExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
     }
     this_IfExpCS_1=ruleIfExpCS
-    { 
-        $current = $this_IfExpCS_1.current; 
+    {
+        $current = $this_IfExpCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
     }
     this_SelfExpCS_2=ruleSelfExpCS
-    { 
-        $current = $this_SelfExpCS_2.current; 
+    {
+        $current = $this_SelfExpCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
     }
     this_PrimitiveLiteralExpCS_3=rulePrimitiveLiteralExpCS
-    { 
-        $current = $this_PrimitiveLiteralExpCS_3.current; 
+    {
+        $current = $this_PrimitiveLiteralExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
     }
     this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS
-    { 
-        $current = $this_TupleLiteralExpCS_4.current; 
+    {
+        $current = $this_TupleLiteralExpCS_4.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
     }
     this_MapLiteralExpCS_5=ruleMapLiteralExpCS
-    { 
-        $current = $this_MapLiteralExpCS_5.current; 
+    {
+        $current = $this_MapLiteralExpCS_5.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
     }
     this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS
-    { 
-        $current = $this_CollectionLiteralExpCS_6.current; 
+    {
+        $current = $this_CollectionLiteralExpCS_6.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
     }
     this_LambdaLiteralExpCS_7=ruleLambdaLiteralExpCS
-    { 
-        $current = $this_LambdaLiteralExpCS_7.current; 
+    {
+        $current = $this_LambdaLiteralExpCS_7.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
     }
     this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS
-    { 
-        $current = $this_TypeLiteralExpCS_8.current; 
+    {
+        $current = $this_TypeLiteralExpCS_8.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
     }
     this_NameExpCS_9=ruleNameExpCS
-    { 
-        $current = $this_NameExpCS_9.current; 
+    {
+        $current = $this_NameExpCS_9.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -4666,32 +4666,32 @@
 
 
 // Entry rule entryRuleNameExpCS
-entryRuleNameExpCS returns [EObject current=null] 
+entryRuleNameExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNameExpCSRule()); }
-	 iv_ruleNameExpCS=ruleNameExpCS 
-	 { $current=$iv_ruleNameExpCS.current; } 
-	 EOF 
+	 iv_ruleNameExpCS=ruleNameExpCS
+	 { $current=$iv_ruleNameExpCS.current; }
+	 EOF
 ;
 
 // Rule NameExpCS
-ruleNameExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNameExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathName_0_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_0_0, 
+        		lv_ownedPathName_0_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4699,17 +4699,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
 	    }
 		lv_ownedSquareBracketedClauses_1_0=ruleSquareBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSquareBracketedClauses",
-        		lv_ownedSquareBracketedClauses_1_0, 
+        		lv_ownedSquareBracketedClauses_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.SquareBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4717,17 +4717,17 @@
 )
 )*(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
 	    }
 		lv_ownedRoundBracketedClause_2_0=ruleRoundBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRoundBracketedClause",
-        		lv_ownedRoundBracketedClause_2_0, 
+        		lv_ownedRoundBracketedClause_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4735,17 +4735,17 @@
 )
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
 	    }
 		lv_ownedCurlyBracketedClause_3_0=ruleCurlyBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCurlyBracketedClause",
-        		lv_ownedCurlyBracketedClause_3_0, 
+        		lv_ownedCurlyBracketedClause_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4753,11 +4753,11 @@
 )
 )?((
 (
-		lv_isPre_4_0=	'@' 
+		lv_isPre_4_0=	'@'
     {
         newLeafNode(lv_isPre_4_0, grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNameExpCSRule());
@@ -4766,7 +4766,7 @@
 	    }
 
 )
-)	otherlv_5='pre' 
+)	otherlv_5='pre'
     {
     	newLeafNode(otherlv_5, grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
     }
@@ -4778,67 +4778,67 @@
 
 
 // Entry rule entryRuleCurlyBracketedClauseCS
-entryRuleCurlyBracketedClauseCS returns [EObject current=null] 
+entryRuleCurlyBracketedClauseCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCurlyBracketedClauseCSRule()); }
-	 iv_ruleCurlyBracketedClauseCS=ruleCurlyBracketedClauseCS 
-	 { $current=$iv_ruleCurlyBracketedClauseCS.current; } 
-	 EOF 
+	 iv_ruleCurlyBracketedClauseCS=ruleCurlyBracketedClauseCS
+	 { $current=$iv_ruleCurlyBracketedClauseCS.current; }
+	 EOF
 ;
 
 // Rule CurlyBracketedClauseCS
-ruleCurlyBracketedClauseCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCurlyBracketedClauseCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0(),
             $current);
     }
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
     }
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
 	    }
 		lv_ownedParts_2_0=ruleShadowPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleShadowPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4847,23 +4847,23 @@
 ))*)?
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
 	    }
 		lv_value_5_0=ruleStringLiteral		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"value",
-        		lv_value_5_0, 
+        		lv_value_5_0,
         		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))	otherlv_6='}' 
+))	otherlv_6='}'
     {
     	newLeafNode(otherlv_6, grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -4875,45 +4875,45 @@
 
 
 // Entry rule entryRuleRoundBracketedClauseCS
-entryRuleRoundBracketedClauseCS returns [EObject current=null] 
+entryRuleRoundBracketedClauseCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getRoundBracketedClauseCSRule()); }
-	 iv_ruleRoundBracketedClauseCS=ruleRoundBracketedClauseCS 
-	 { $current=$iv_ruleRoundBracketedClauseCS.current; } 
-	 EOF 
+	 iv_ruleRoundBracketedClauseCS=ruleRoundBracketedClauseCS
+	 { $current=$iv_ruleRoundBracketedClauseCS.current; }
+	 EOF
 ;
 
 // Rule RoundBracketedClauseCS
-ruleRoundBracketedClauseCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleRoundBracketedClauseCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0(),
             $current);
     }
-)	otherlv_1='(' 
+)	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedArguments_2_0=ruleNavigatingArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_2_0, 
+        		lv_ownedArguments_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4921,17 +4921,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedArguments_3_0=ruleNavigatingCommaArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_3_0, 
+        		lv_ownedArguments_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4939,17 +4939,17 @@
 )
 )*((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
 	    }
 		lv_ownedArguments_4_0=ruleNavigatingSemiArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_4_0, 
+        		lv_ownedArguments_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingSemiArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4957,17 +4957,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
 	    }
 		lv_ownedArguments_5_0=ruleNavigatingCommaArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_5_0, 
+        		lv_ownedArguments_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4975,17 +4975,17 @@
 )
 )*)?((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
 	    }
 		lv_ownedArguments_6_0=ruleNavigatingBarArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_6_0, 
+        		lv_ownedArguments_6_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingBarArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4993,23 +4993,23 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
 	    }
 		lv_ownedArguments_7_0=ruleNavigatingCommaArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_7_0, 
+        		lv_ownedArguments_7_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*)*)?	otherlv_8=')' 
+)*)*)?	otherlv_8=')'
     {
     	newLeafNode(otherlv_8, grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
     }
@@ -5021,64 +5021,64 @@
 
 
 // Entry rule entryRuleSquareBracketedClauseCS
-entryRuleSquareBracketedClauseCS returns [EObject current=null] 
+entryRuleSquareBracketedClauseCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getSquareBracketedClauseCSRule()); }
-	 iv_ruleSquareBracketedClauseCS=ruleSquareBracketedClauseCS 
-	 { $current=$iv_ruleSquareBracketedClauseCS.current; } 
-	 EOF 
+	 iv_ruleSquareBracketedClauseCS=ruleSquareBracketedClauseCS
+	 { $current=$iv_ruleSquareBracketedClauseCS.current; }
+	 EOF
 ;
 
 // Rule SquareBracketedClauseCS
-ruleSquareBracketedClauseCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleSquareBracketedClauseCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='[' 
+(	otherlv_0='['
     {
     	newLeafNode(otherlv_0, grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedTerms_1_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedTerms",
-        		lv_ownedTerms_1_0, 
+        		lv_ownedTerms_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=',' 
+)(	otherlv_2=','
     {
     	newLeafNode(otherlv_2, grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedTerms_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedTerms",
-        		lv_ownedTerms_3_0, 
+        		lv_ownedTerms_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_4=']' 
+))*	otherlv_4=']'
     {
     	newLeafNode(otherlv_4, grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
     }
@@ -5090,122 +5090,122 @@
 
 
 // Entry rule entryRuleNavigatingArgCS
-entryRuleNavigatingArgCS returns [EObject current=null] 
+entryRuleNavigatingArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingArgCSRule()); }
-	 iv_ruleNavigatingArgCS=ruleNavigatingArgCS 
-	 { $current=$iv_ruleNavigatingArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingArgCS=ruleNavigatingArgCS
+	 { $current=$iv_ruleNavigatingArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingArgCS
-ruleNavigatingArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
 	    }
 		lv_ownedNameExpression_0_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_0_0, 
+        		lv_ownedNameExpression_0_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)((	otherlv_1=':' 
+)((	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3='=' 
+)(	otherlv_3='='
     {
     	newLeafNode(otherlv_3, grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
 	    }
 		lv_ownedInitExpression_4_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_4_0, 
+        		lv_ownedInitExpression_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 ))?)
-    |(	otherlv_5='in' 
+    |(	otherlv_5='in'
     {
     	newLeafNode(otherlv_5, grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
 	    }
 		lv_ownedInitExpression_6_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_6_0, 
+        		lv_ownedInitExpression_6_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 )))?)
-    |(	otherlv_7=':' 
+    |(	otherlv_7=':'
     {
     	newLeafNode(otherlv_7, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedType_8_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_8_0, 
+        		lv_ownedType_8_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5219,26 +5219,26 @@
 
 
 // Entry rule entryRuleNavigatingBarArgCS
-entryRuleNavigatingBarArgCS returns [EObject current=null] 
+entryRuleNavigatingBarArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingBarArgCSRule()); }
-	 iv_ruleNavigatingBarArgCS=ruleNavigatingBarArgCS 
-	 { $current=$iv_ruleNavigatingBarArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingBarArgCS=ruleNavigatingBarArgCS
+	 { $current=$iv_ruleNavigatingBarArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingBarArgCS
-ruleNavigatingBarArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingBarArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_prefix_0_0=	'|' 
+		lv_prefix_0_0=	'|'
     {
         newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNavigatingBarArgCSRule());
@@ -5249,61 +5249,61 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_1_0, 
+        		lv_ownedNameExpression_1_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=':' 
+)(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_4='=' 
+)(	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5317,26 +5317,26 @@
 
 
 // Entry rule entryRuleNavigatingCommaArgCS
-entryRuleNavigatingCommaArgCS returns [EObject current=null] 
+entryRuleNavigatingCommaArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingCommaArgCSRule()); }
-	 iv_ruleNavigatingCommaArgCS=ruleNavigatingCommaArgCS 
-	 { $current=$iv_ruleNavigatingCommaArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingCommaArgCS=ruleNavigatingCommaArgCS
+	 { $current=$iv_ruleNavigatingCommaArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingCommaArgCS
-ruleNavigatingCommaArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingCommaArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_prefix_0_0=	',' 
+		lv_prefix_0_0=	','
     {
         newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNavigatingCommaArgCSRule());
@@ -5347,84 +5347,84 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_1_0, 
+        		lv_ownedNameExpression_1_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)((	otherlv_2=':' 
+)((	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_4='=' 
+)(	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 ))?)
-    |(	otherlv_6='in' 
+    |(	otherlv_6='in'
     {
     	newLeafNode(otherlv_6, grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedInitExpression_7_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_7_0, 
+        		lv_ownedInitExpression_7_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5438,26 +5438,26 @@
 
 
 // Entry rule entryRuleNavigatingSemiArgCS
-entryRuleNavigatingSemiArgCS returns [EObject current=null] 
+entryRuleNavigatingSemiArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingSemiArgCSRule()); }
-	 iv_ruleNavigatingSemiArgCS=ruleNavigatingSemiArgCS 
-	 { $current=$iv_ruleNavigatingSemiArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingSemiArgCS=ruleNavigatingSemiArgCS
+	 { $current=$iv_ruleNavigatingSemiArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingSemiArgCS
-ruleNavigatingSemiArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingSemiArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_prefix_0_0=	';' 
+		lv_prefix_0_0=	';'
     {
         newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNavigatingSemiArgCSRule());
@@ -5468,61 +5468,61 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_1_0, 
+        		lv_ownedNameExpression_1_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=':' 
+)(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_4='=' 
+)(	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5536,52 +5536,52 @@
 
 
 // Entry rule entryRuleIfExpCS
-entryRuleIfExpCS returns [EObject current=null] 
+entryRuleIfExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getIfExpCSRule()); }
-	 iv_ruleIfExpCS=ruleIfExpCS 
-	 { $current=$iv_ruleIfExpCS.current; } 
-	 EOF 
+	 iv_ruleIfExpCS=ruleIfExpCS
+	 { $current=$iv_ruleIfExpCS.current; }
+	 EOF
 ;
 
 // Rule IfExpCS
-ruleIfExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleIfExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='if' 
+(	otherlv_0='if'
     {
     	newLeafNode(otherlv_0, grammarAccess.getIfExpCSAccess().getIfKeyword_0());
     }
 (
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
 	    }
 		lv_ownedCondition_1_1=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCondition",
-        		lv_ownedCondition_1_1, 
+        		lv_ownedCondition_1_1,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
-    |		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
+    |		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
 	    }
 		lv_ownedCondition_1_2=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCondition",
-        		lv_ownedCondition_1_2, 
+        		lv_ownedCondition_1_2,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5589,23 +5589,23 @@
 )
 
 )
-)	otherlv_2='then' 
+)	otherlv_2='then'
     {
     	newLeafNode(otherlv_2, grammarAccess.getIfExpCSAccess().getThenKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
 	    }
 		lv_ownedThenExpression_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedThenExpression",
-        		lv_ownedThenExpression_3_0, 
+        		lv_ownedThenExpression_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5613,45 +5613,45 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
 	    }
 		lv_ownedIfThenExpressions_4_0=ruleElseIfThenExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedIfThenExpressions",
-        		lv_ownedIfThenExpressions_4_0, 
+        		lv_ownedIfThenExpressions_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ElseIfThenExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_5='else' 
+)*	otherlv_5='else'
     {
     	newLeafNode(otherlv_5, grammarAccess.getIfExpCSAccess().getElseKeyword_5());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
 	    }
 		lv_ownedElseExpression_6_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedElseExpression",
-        		lv_ownedElseExpression_6_0, 
+        		lv_ownedElseExpression_6_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_7='endif' 
+)	otherlv_7='endif'
     {
     	newLeafNode(otherlv_7, grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
     }
@@ -5663,58 +5663,58 @@
 
 
 // Entry rule entryRuleElseIfThenExpCS
-entryRuleElseIfThenExpCS returns [EObject current=null] 
+entryRuleElseIfThenExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getElseIfThenExpCSRule()); }
-	 iv_ruleElseIfThenExpCS=ruleElseIfThenExpCS 
-	 { $current=$iv_ruleElseIfThenExpCS.current; } 
-	 EOF 
+	 iv_ruleElseIfThenExpCS=ruleElseIfThenExpCS
+	 { $current=$iv_ruleElseIfThenExpCS.current; }
+	 EOF
 ;
 
 // Rule ElseIfThenExpCS
-ruleElseIfThenExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleElseIfThenExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='elseif' 
+(	otherlv_0='elseif'
     {
     	newLeafNode(otherlv_0, grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedCondition_1_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCondition",
-        		lv_ownedCondition_1_0, 
+        		lv_ownedCondition_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_2='then' 
+)	otherlv_2='then'
     {
     	newLeafNode(otherlv_2, grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
 	    }
 		lv_ownedThenExpression_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedThenExpression",
-        		lv_ownedThenExpression_3_0, 
+        		lv_ownedThenExpression_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5728,80 +5728,80 @@
 
 
 // Entry rule entryRuleLetExpCS
-entryRuleLetExpCS returns [EObject current=null] 
+entryRuleLetExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLetExpCSRule()); }
-	 iv_ruleLetExpCS=ruleLetExpCS 
-	 { $current=$iv_ruleLetExpCS.current; } 
-	 EOF 
+	 iv_ruleLetExpCS=ruleLetExpCS
+	 { $current=$iv_ruleLetExpCS.current; }
+	 EOF
 ;
 
 // Rule LetExpCS
-ruleLetExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLetExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='let' 
+(	otherlv_0='let'
     {
     	newLeafNode(otherlv_0, grammarAccess.getLetExpCSAccess().getLetKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
 	    }
 		lv_ownedVariables_1_0=ruleLetVariableCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedVariables",
-        		lv_ownedVariables_1_0, 
+        		lv_ownedVariables_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=',' 
+)(	otherlv_2=','
     {
     	newLeafNode(otherlv_2, grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedVariables_3_0=ruleLetVariableCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedVariables",
-        		lv_ownedVariables_3_0, 
+        		lv_ownedVariables_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_4='in' 
+))*	otherlv_4='in'
     {
     	newLeafNode(otherlv_4, grammarAccess.getLetExpCSAccess().getInKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
 	    }
 		lv_ownedInExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInExpression",
-        		lv_ownedInExpression_5_0, 
+        		lv_ownedInExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5815,32 +5815,32 @@
 
 
 // Entry rule entryRuleLetVariableCS
-entryRuleLetVariableCS returns [EObject current=null] 
+entryRuleLetVariableCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLetVariableCSRule()); }
-	 iv_ruleLetVariableCS=ruleLetVariableCS 
-	 { $current=$iv_ruleLetVariableCS.current; } 
-	 EOF 
+	 iv_ruleLetVariableCS=ruleLetVariableCS
+	 { $current=$iv_ruleLetVariableCS.current; }
+	 EOF
 ;
 
 // Rule LetVariableCS
-ruleLetVariableCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLetVariableCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5848,61 +5848,61 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
 	    }
 		lv_ownedRoundBracketedClause_1_0=ruleRoundBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRoundBracketedClause",
-        		lv_ownedRoundBracketedClause_1_0, 
+        		lv_ownedRoundBracketedClause_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?(	otherlv_2=':' 
+)?(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?	otherlv_4='=' 
+))?	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5916,42 +5916,42 @@
 
 
 // Entry rule entryRuleNestedExpCS
-entryRuleNestedExpCS returns [EObject current=null] 
+entryRuleNestedExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNestedExpCSRule()); }
-	 iv_ruleNestedExpCS=ruleNestedExpCS 
-	 { $current=$iv_ruleNestedExpCS.current; } 
-	 EOF 
+	 iv_ruleNestedExpCS=ruleNestedExpCS
+	 { $current=$iv_ruleNestedExpCS.current; }
+	 EOF
 ;
 
 // Rule NestedExpCS
-ruleNestedExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNestedExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='(' 
+(	otherlv_0='('
     {
     	newLeafNode(otherlv_0, grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedExpression_1_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNestedExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_1_0, 
+        		lv_ownedExpression_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_2=')' 
+)	otherlv_2=')'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
     }
@@ -5963,29 +5963,29 @@
 
 
 // Entry rule entryRuleSelfExpCS
-entryRuleSelfExpCS returns [EObject current=null] 
+entryRuleSelfExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getSelfExpCSRule()); }
-	 iv_ruleSelfExpCS=ruleSelfExpCS 
-	 { $current=$iv_ruleSelfExpCS.current; } 
-	 EOF 
+	 iv_ruleSelfExpCS=ruleSelfExpCS
+	 { $current=$iv_ruleSelfExpCS.current; }
+	 EOF
 ;
 
 // Rule SelfExpCS
-ruleSelfExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleSelfExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0(),
             $current);
     }
-)	otherlv_1='self' 
+)	otherlv_1='self'
     {
     	newLeafNode(otherlv_1, grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
     }
@@ -5997,54 +5997,54 @@
 
 
 // Entry rule entryRuleMultiplicityBoundsCS
-entryRuleMultiplicityBoundsCS returns [EObject current=null] 
+entryRuleMultiplicityBoundsCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule()); }
-	 iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS 
-	 { $current=$iv_ruleMultiplicityBoundsCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS
+	 { $current=$iv_ruleMultiplicityBoundsCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityBoundsCS
-ruleMultiplicityBoundsCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityBoundsCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
 	    }
 		lv_lowerBound_0_0=ruleLOWER		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"lowerBound",
-        		lv_lowerBound_0_0, 
+        		lv_lowerBound_0_0,
         		"org.eclipse.ocl.xtext.base.Base.LOWER");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='..' 
+)(	otherlv_1='..'
     {
     	newLeafNode(otherlv_1, grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
 	    }
 		lv_upperBound_2_0=ruleUPPER		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"upperBound",
-        		lv_upperBound_2_0, 
+        		lv_upperBound_2_0,
         		"org.eclipse.ocl.xtext.base.Base.UPPER");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6058,60 +6058,60 @@
 
 
 // Entry rule entryRuleMultiplicityCS
-entryRuleMultiplicityCS returns [EObject current=null] 
+entryRuleMultiplicityCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityCSRule()); }
-	 iv_ruleMultiplicityCS=ruleMultiplicityCS 
-	 { $current=$iv_ruleMultiplicityCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityCS=ruleMultiplicityCS
+	 { $current=$iv_ruleMultiplicityCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityCS
-ruleMultiplicityCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='[' 
+(	otherlv_0='['
     {
     	newLeafNode(otherlv_0, grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+    {
+        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
     }
     this_MultiplicityBoundsCS_1=ruleMultiplicityBoundsCS
-    { 
-        $current = $this_MultiplicityBoundsCS_1.current; 
+    {
+        $current = $this_MultiplicityBoundsCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+    {
+        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
     }
     this_MultiplicityStringCS_2=ruleMultiplicityStringCS
-    { 
-        $current = $this_MultiplicityStringCS_2.current; 
+    {
+        $current = $this_MultiplicityStringCS_2.current;
         afterParserOrEnumRuleCall();
     }
-)(	otherlv_3='|?' 
+)(	otherlv_3='|?'
     {
     	newLeafNode(otherlv_3, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
     }
 
     |(
 (
-		lv_isNullFree_4_0=	'|1' 
+		lv_isNullFree_4_0=	'|1'
     {
         newLeafNode(lv_isNullFree_4_0, grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityCSRule());
@@ -6120,7 +6120,7 @@
 	    }
 
 )
-))?	otherlv_5=']' 
+))?	otherlv_5=']'
     {
     	newLeafNode(otherlv_5, grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
     }
@@ -6132,27 +6132,27 @@
 
 
 // Entry rule entryRuleMultiplicityStringCS
-entryRuleMultiplicityStringCS returns [EObject current=null] 
+entryRuleMultiplicityStringCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityStringCSRule()); }
-	 iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS 
-	 { $current=$iv_ruleMultiplicityStringCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS
+	 { $current=$iv_ruleMultiplicityStringCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityStringCS
-ruleMultiplicityStringCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityStringCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
 (
-		lv_stringBounds_0_1=	'*' 
+		lv_stringBounds_0_1=	'*'
     {
         newLeafNode(lv_stringBounds_0_1, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -6160,11 +6160,11 @@
        		setWithLastConsumed($current, "stringBounds", lv_stringBounds_0_1, null);
 	    }
 
-    |		lv_stringBounds_0_2=	'+' 
+    |		lv_stringBounds_0_2=	'+'
     {
         newLeafNode(lv_stringBounds_0_2, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -6172,11 +6172,11 @@
        		setWithLastConsumed($current, "stringBounds", lv_stringBounds_0_2, null);
 	    }
 
-    |		lv_stringBounds_0_3=	'?' 
+    |		lv_stringBounds_0_3=	'?'
     {
         newLeafNode(lv_stringBounds_0_3, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -6195,54 +6195,54 @@
 
 
 // Entry rule entryRulePathNameCS
-entryRulePathNameCS returns [EObject current=null] 
+entryRulePathNameCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPathNameCSRule()); }
-	 iv_rulePathNameCS=rulePathNameCS 
-	 { $current=$iv_rulePathNameCS.current; } 
-	 EOF 
+	 iv_rulePathNameCS=rulePathNameCS
+	 { $current=$iv_rulePathNameCS.current; }
+	 EOF
 ;
 
 // Rule PathNameCS
-rulePathNameCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePathNameCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathElements_0_0=ruleFirstPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_0_0, 
+        		lv_ownedPathElements_0_0,
         		"org.eclipse.ocl.xtext.base.Base.FirstPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='::' 
+)(	otherlv_1='::'
     {
     	newLeafNode(otherlv_1, grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedPathElements_2_0=ruleNextPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_2_0, 
+        		lv_ownedPathElements_2_0,
         		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6256,33 +6256,33 @@
 
 
 // Entry rule entryRuleFirstPathElementCS
-entryRuleFirstPathElementCS returns [EObject current=null] 
+entryRuleFirstPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getFirstPathElementCSRule()); }
-	 iv_ruleFirstPathElementCS=ruleFirstPathElementCS 
-	 { $current=$iv_ruleFirstPathElementCS.current; } 
-	 EOF 
+	 iv_ruleFirstPathElementCS=ruleFirstPathElementCS
+	 { $current=$iv_ruleFirstPathElementCS.current; }
+	 EOF
 ;
 
 // Rule FirstPathElementCS
-ruleFirstPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleFirstPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getFirstPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+		{
+	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -6295,33 +6295,33 @@
 
 
 // Entry rule entryRuleNextPathElementCS
-entryRuleNextPathElementCS returns [EObject current=null] 
+entryRuleNextPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNextPathElementCSRule()); }
-	 iv_ruleNextPathElementCS=ruleNextPathElementCS 
-	 { $current=$iv_ruleNextPathElementCS.current; } 
-	 EOF 
+	 iv_ruleNextPathElementCS=ruleNextPathElementCS
+	 { $current=$iv_ruleNextPathElementCS.current; }
+	 EOF
 ;
 
 // Rule NextPathElementCS
-ruleNextPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNextPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNextPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
 	    }
-		ruleUnreservedName		{ 
+		ruleUnreservedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -6334,54 +6334,54 @@
 
 
 // Entry rule entryRuleTemplateBindingCS
-entryRuleTemplateBindingCS returns [EObject current=null] 
+entryRuleTemplateBindingCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTemplateBindingCSRule()); }
-	 iv_ruleTemplateBindingCS=ruleTemplateBindingCS 
-	 { $current=$iv_ruleTemplateBindingCS.current; } 
-	 EOF 
+	 iv_ruleTemplateBindingCS=ruleTemplateBindingCS
+	 { $current=$iv_ruleTemplateBindingCS.current; }
+	 EOF
 ;
 
 // Rule TemplateBindingCS
-ruleTemplateBindingCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTemplateBindingCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
 	    }
 		lv_ownedSubstitutions_0_0=ruleTemplateParameterSubstitutionCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSubstitutions",
-        		lv_ownedSubstitutions_0_0, 
+        		lv_ownedSubstitutions_0_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1=',' 
+)(	otherlv_1=','
     {
     	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedSubstitutions_2_0=ruleTemplateParameterSubstitutionCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSubstitutions",
-        		lv_ownedSubstitutions_2_0, 
+        		lv_ownedSubstitutions_2_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6389,17 +6389,17 @@
 )
 ))*(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
 	    }
 		lv_ownedMultiplicity_3_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_3_0, 
+        		lv_ownedMultiplicity_3_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6413,32 +6413,32 @@
 
 
 // Entry rule entryRuleTemplateParameterSubstitutionCS
-entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] 
+entryRuleTemplateParameterSubstitutionCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
-	 iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS 
-	 { $current=$iv_ruleTemplateParameterSubstitutionCS.current; } 
-	 EOF 
+	 iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS
+	 { $current=$iv_ruleTemplateParameterSubstitutionCS.current; }
+	 EOF
 ;
 
 // Rule TemplateParameterSubstitutionCS
-ruleTemplateParameterSubstitutionCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTemplateParameterSubstitutionCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
 	    }
 		lv_ownedActualParameter_0_0=ruleTypeRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateParameterSubstitutionCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedActualParameter",
-        		lv_ownedActualParameter_0_0, 
+        		lv_ownedActualParameter_0_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6452,76 +6452,76 @@
 
 
 // Entry rule entryRuleTypeParameterCS
-entryRuleTypeParameterCS returns [EObject current=null] 
+entryRuleTypeParameterCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeParameterCSRule()); }
-	 iv_ruleTypeParameterCS=ruleTypeParameterCS 
-	 { $current=$iv_ruleTypeParameterCS.current; } 
-	 EOF 
+	 iv_ruleTypeParameterCS=ruleTypeParameterCS
+	 { $current=$iv_ruleTypeParameterCS.current; }
+	 EOF
 ;
 
 // Rule TypeParameterCS
-ruleTypeParameterCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeParameterCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='extends' 
+)(	otherlv_1='extends'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedExtends_2_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_2_0, 
+        		lv_ownedExtends_2_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3='&&' 
+)(	otherlv_3='&&'
     {
     	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
 	    }
 		lv_ownedExtends_4_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_4_0, 
+        		lv_ownedExtends_4_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6535,42 +6535,42 @@
 
 
 // Entry rule entryRuleTypeRefCS
-entryRuleTypeRefCS returns [EObject current=null] 
+entryRuleTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeRefCSRule()); }
-	 iv_ruleTypeRefCS=ruleTypeRefCS 
-	 { $current=$iv_ruleTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleTypeRefCS=ruleTypeRefCS
+	 { $current=$iv_ruleTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule TypeRefCS
-ruleTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
     }
     this_TypedRefCS_0=ruleTypedRefCS
-    { 
-        $current = $this_TypedRefCS_0.current; 
+    {
+        $current = $this_TypedRefCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
     }
     this_WildcardTypeRefCS_1=ruleWildcardTypeRefCS
-    { 
-        $current = $this_WildcardTypeRefCS_1.current; 
+    {
+        $current = $this_WildcardTypeRefCS_1.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -6581,60 +6581,60 @@
 
 
 // Entry rule entryRuleTypedTypeRefCS
-entryRuleTypedTypeRefCS returns [EObject current=null] 
+entryRuleTypedTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypedTypeRefCSRule()); }
-	 iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS 
-	 { $current=$iv_ruleTypedTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS
+	 { $current=$iv_ruleTypedTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule TypedTypeRefCS
-ruleTypedTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypedTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathName_0_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_0_0, 
+        		lv_ownedPathName_0_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedBinding_2_0=ruleTemplateBindingCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedBinding",
-        		lv_ownedBinding_2_0, 
+        		lv_ownedBinding_2_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateBindingCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=')' 
+)	otherlv_3=')'
     {
     	newLeafNode(otherlv_3, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
     }
@@ -6646,49 +6646,49 @@
 
 
 // Entry rule entryRuleWildcardTypeRefCS
-entryRuleWildcardTypeRefCS returns [EObject current=null] 
+entryRuleWildcardTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getWildcardTypeRefCSRule()); }
-	 iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS 
-	 { $current=$iv_ruleWildcardTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS
+	 { $current=$iv_ruleWildcardTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule WildcardTypeRefCS
-ruleWildcardTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleWildcardTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0(),
             $current);
     }
-)	otherlv_1='?' 
+)	otherlv_1='?'
     {
     	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
     }
-(	otherlv_2='extends' 
+(	otherlv_2='extends'
     {
     	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedExtends_3_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getWildcardTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_3_0, 
+        		lv_ownedExtends_3_0,
         		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6702,33 +6702,33 @@
 
 
 // Entry rule entryRuleID
-entryRuleID returns [String current=null] 
+entryRuleID returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getIDRule()); } 
-	 iv_ruleID=ruleID 
-	 { $current=$iv_ruleID.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getIDRule()); }
+	 iv_ruleID=ruleID
+	 { $current=$iv_ruleID.current.getText(); }
+	 EOF
 ;
 
 // Rule ID
-ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (    this_SIMPLE_ID_0=RULE_SIMPLE_ID    {
 		$current.merge(this_SIMPLE_ID_0);
     }
 
-    { 
-    newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+    {
+    newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
     }
 
     |    this_ESCAPED_ID_1=RULE_ESCAPED_ID    {
 		$current.merge(this_ESCAPED_ID_1);
     }
 
-    { 
-    newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+    {
+    newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
     }
 )
     ;
@@ -6738,28 +6738,28 @@
 
 
 // Entry rule entryRuleIdentifier
-entryRuleIdentifier returns [String current=null] 
+entryRuleIdentifier returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getIdentifierRule()); } 
-	 iv_ruleIdentifier=ruleIdentifier 
-	 { $current=$iv_ruleIdentifier.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getIdentifierRule()); }
+	 iv_ruleIdentifier=ruleIdentifier
+	 { $current=$iv_ruleIdentifier.current.getText(); }
+	 EOF
 ;
 
 // Rule Identifier
-ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
     }
     this_ID_0=ruleID    {
 		$current.merge(this_ID_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -6770,25 +6770,25 @@
 
 
 // Entry rule entryRuleLOWER
-entryRuleLOWER returns [String current=null] 
+entryRuleLOWER returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getLOWERRule()); } 
-	 iv_ruleLOWER=ruleLOWER 
-	 { $current=$iv_ruleLOWER.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getLOWERRule()); }
+	 iv_ruleLOWER=ruleLOWER
+	 { $current=$iv_ruleLOWER.current.getText(); }
+	 EOF
 ;
 
 // Rule LOWER
-ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
     }
 
     ;
@@ -6798,25 +6798,25 @@
 
 
 // Entry rule entryRuleNUMBER_LITERAL
-entryRuleNUMBER_LITERAL returns [String current=null] 
+entryRuleNUMBER_LITERAL returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getNUMBER_LITERALRule()); } 
-	 iv_ruleNUMBER_LITERAL=ruleNUMBER_LITERAL 
-	 { $current=$iv_ruleNUMBER_LITERAL.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getNUMBER_LITERALRule()); }
+	 iv_ruleNUMBER_LITERAL=ruleNUMBER_LITERAL
+	 { $current=$iv_ruleNUMBER_LITERAL.current.getText(); }
+	 EOF
 ;
 
 // Rule NUMBER_LITERAL
-ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
     }
 
     ;
@@ -6826,25 +6826,25 @@
 
 
 // Entry rule entryRuleStringLiteral
-entryRuleStringLiteral returns [String current=null] 
+entryRuleStringLiteral returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getStringLiteralRule()); } 
-	 iv_ruleStringLiteral=ruleStringLiteral 
-	 { $current=$iv_ruleStringLiteral.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getStringLiteralRule()); }
+	 iv_ruleStringLiteral=ruleStringLiteral
+	 { $current=$iv_ruleStringLiteral.current.getText(); }
+	 EOF
 ;
 
 // Rule StringLiteral
-ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_SINGLE_QUOTED_STRING_0=RULE_SINGLE_QUOTED_STRING    {
 		$current.merge(this_SINGLE_QUOTED_STRING_0);
     }
 
-    { 
-    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+    {
+    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
     }
 
     ;
@@ -6854,32 +6854,32 @@
 
 
 // Entry rule entryRuleUPPER
-entryRuleUPPER returns [String current=null] 
+entryRuleUPPER returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUPPERRule()); } 
-	 iv_ruleUPPER=ruleUPPER 
-	 { $current=$iv_ruleUPPER.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUPPERRule()); }
+	 iv_ruleUPPER=ruleUPPER
+	 { $current=$iv_ruleUPPER.current.getText(); }
+	 EOF
 ;
 
 // Rule UPPER
-ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (    this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
     }
 
     |
-	kw='*' 
+	kw='*'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
     }
 )
     ;
@@ -6889,25 +6889,25 @@
 
 
 // Entry rule entryRuleURI
-entryRuleURI returns [String current=null] 
+entryRuleURI returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getURIRule()); } 
-	 iv_ruleURI=ruleURI 
-	 { $current=$iv_ruleURI.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getURIRule()); }
+	 iv_ruleURI=ruleURI
+	 { $current=$iv_ruleURI.current.getText(); }
+	 EOF
 ;
 
 // Rule URI
-ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_SINGLE_QUOTED_STRING_0=RULE_SINGLE_QUOTED_STRING    {
 		$current.merge(this_SINGLE_QUOTED_STRING_0);
     }
 
-    { 
-    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+    {
+    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
     }
 
     ;
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 1d23e54..801cd2f 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
@@ -1,6 +1,6 @@
 package org.eclipse.ocl.xtext.completeocl.parser.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.parser.antlr.Lexer;
 
@@ -116,7 +116,7 @@
     // delegates
     // delegators
 
-    public InternalCompleteOCLLexer() {;} 
+    public InternalCompleteOCLLexer() {;}
     public InternalCompleteOCLLexer(CharStream input) {
         this(input, new RecognizerSharedState());
     }
@@ -134,7 +134,7 @@
             // InternalCompleteOCL.g:11:7: ( '^' )
             // InternalCompleteOCL.g:11:9: '^'
             {
-            match('^'); 
+            match('^');
 
             }
 
@@ -154,7 +154,7 @@
             // InternalCompleteOCL.g:12:7: ( '^^' )
             // InternalCompleteOCL.g:12:9: '^^'
             {
-            match("^^"); 
+            match("^^");
 
 
             }
@@ -175,7 +175,7 @@
             // InternalCompleteOCL.g:13:7: ( 'context' )
             // InternalCompleteOCL.g:13:9: 'context'
             {
-            match("context"); 
+            match("context");
 
 
             }
@@ -196,7 +196,7 @@
             // InternalCompleteOCL.g:14:7: ( 'inv' )
             // InternalCompleteOCL.g:14:9: 'inv'
             {
-            match("inv"); 
+            match("inv");
 
 
             }
@@ -217,7 +217,7 @@
             // InternalCompleteOCL.g:15:7: ( '(' )
             // InternalCompleteOCL.g:15:9: '('
             {
-            match('('); 
+            match('(');
 
             }
 
@@ -237,7 +237,7 @@
             // InternalCompleteOCL.g:16:7: ( ')' )
             // InternalCompleteOCL.g:16:9: ')'
             {
-            match(')'); 
+            match(')');
 
             }
 
@@ -257,7 +257,7 @@
             // InternalCompleteOCL.g:17:7: ( ':' )
             // InternalCompleteOCL.g:17:9: ':'
             {
-            match(':'); 
+            match(':');
 
             }
 
@@ -277,7 +277,7 @@
             // InternalCompleteOCL.g:18:7: ( 'static' )
             // InternalCompleteOCL.g:18:9: 'static'
             {
-            match("static"); 
+            match("static");
 
 
             }
@@ -298,7 +298,7 @@
             // InternalCompleteOCL.g:19:7: ( 'def' )
             // InternalCompleteOCL.g:19:9: 'def'
             {
-            match("def"); 
+            match("def");
 
 
             }
@@ -319,7 +319,7 @@
             // InternalCompleteOCL.g:20:7: ( ',' )
             // InternalCompleteOCL.g:20:9: ','
             {
-            match(','); 
+            match(',');
 
             }
 
@@ -339,7 +339,7 @@
             // InternalCompleteOCL.g:21:7: ( '=' )
             // InternalCompleteOCL.g:21:9: '='
             {
-            match('='); 
+            match('=');
 
             }
 
@@ -359,7 +359,7 @@
             // InternalCompleteOCL.g:22:7: ( 'import' )
             // InternalCompleteOCL.g:22:9: 'import'
             {
-            match("import"); 
+            match("import");
 
 
             }
@@ -380,7 +380,7 @@
             // InternalCompleteOCL.g:23:7: ( 'include' )
             // InternalCompleteOCL.g:23:9: 'include'
             {
-            match("include"); 
+            match("include");
 
 
             }
@@ -401,7 +401,7 @@
             // InternalCompleteOCL.g:24:7: ( 'library' )
             // InternalCompleteOCL.g:24:9: 'library'
             {
-            match("library"); 
+            match("library");
 
 
             }
@@ -422,7 +422,7 @@
             // InternalCompleteOCL.g:25:7: ( '::*' )
             // InternalCompleteOCL.g:25:9: '::*'
             {
-            match("::*"); 
+            match("::*");
 
 
             }
@@ -443,7 +443,7 @@
             // InternalCompleteOCL.g:26:7: ( 'pre' )
             // InternalCompleteOCL.g:26:9: 'pre'
             {
-            match("pre"); 
+            match("pre");
 
 
             }
@@ -464,7 +464,7 @@
             // InternalCompleteOCL.g:27:7: ( 'post' )
             // InternalCompleteOCL.g:27:9: 'post'
             {
-            match("post"); 
+            match("post");
 
 
             }
@@ -485,7 +485,7 @@
             // InternalCompleteOCL.g:28:7: ( 'body' )
             // InternalCompleteOCL.g:28:9: 'body'
             {
-            match("body"); 
+            match("body");
 
 
             }
@@ -506,7 +506,7 @@
             // InternalCompleteOCL.g:29:7: ( 'package' )
             // InternalCompleteOCL.g:29:9: 'package'
             {
-            match("package"); 
+            match("package");
 
 
             }
@@ -527,7 +527,7 @@
             // InternalCompleteOCL.g:30:7: ( 'endpackage' )
             // InternalCompleteOCL.g:30:9: 'endpackage'
             {
-            match("endpackage"); 
+            match("endpackage");
 
 
             }
@@ -548,7 +548,7 @@
             // InternalCompleteOCL.g:31:7: ( 'derive' )
             // InternalCompleteOCL.g:31:9: 'derive'
             {
-            match("derive"); 
+            match("derive");
 
 
             }
@@ -569,7 +569,7 @@
             // InternalCompleteOCL.g:32:7: ( 'init' )
             // InternalCompleteOCL.g:32:9: 'init'
             {
-            match("init"); 
+            match("init");
 
 
             }
@@ -590,7 +590,7 @@
             // InternalCompleteOCL.g:33:7: ( '<' )
             // InternalCompleteOCL.g:33:9: '<'
             {
-            match('<'); 
+            match('<');
 
             }
 
@@ -610,7 +610,7 @@
             // InternalCompleteOCL.g:34:7: ( '>' )
             // InternalCompleteOCL.g:34:9: '>'
             {
-            match('>'); 
+            match('>');
 
             }
 
@@ -630,7 +630,7 @@
             // InternalCompleteOCL.g:35:7: ( '?' )
             // InternalCompleteOCL.g:35:9: '?'
             {
-            match('?'); 
+            match('?');
 
             }
 
@@ -650,7 +650,7 @@
             // InternalCompleteOCL.g:36:7: ( 'Boolean' )
             // InternalCompleteOCL.g:36:9: 'Boolean'
             {
-            match("Boolean"); 
+            match("Boolean");
 
 
             }
@@ -671,7 +671,7 @@
             // InternalCompleteOCL.g:37:7: ( 'Integer' )
             // InternalCompleteOCL.g:37:9: 'Integer'
             {
-            match("Integer"); 
+            match("Integer");
 
 
             }
@@ -692,7 +692,7 @@
             // InternalCompleteOCL.g:38:7: ( 'Real' )
             // InternalCompleteOCL.g:38:9: 'Real'
             {
-            match("Real"); 
+            match("Real");
 
 
             }
@@ -713,7 +713,7 @@
             // InternalCompleteOCL.g:39:7: ( 'String' )
             // InternalCompleteOCL.g:39:9: 'String'
             {
-            match("String"); 
+            match("String");
 
 
             }
@@ -734,7 +734,7 @@
             // InternalCompleteOCL.g:40:7: ( 'UnlimitedNatural' )
             // InternalCompleteOCL.g:40:9: 'UnlimitedNatural'
             {
-            match("UnlimitedNatural"); 
+            match("UnlimitedNatural");
 
 
             }
@@ -755,7 +755,7 @@
             // InternalCompleteOCL.g:41:7: ( 'OclAny' )
             // InternalCompleteOCL.g:41:9: 'OclAny'
             {
-            match("OclAny"); 
+            match("OclAny");
 
 
             }
@@ -776,7 +776,7 @@
             // InternalCompleteOCL.g:42:7: ( 'OclInvalid' )
             // InternalCompleteOCL.g:42:9: 'OclInvalid'
             {
-            match("OclInvalid"); 
+            match("OclInvalid");
 
 
             }
@@ -797,7 +797,7 @@
             // InternalCompleteOCL.g:43:7: ( 'OclMessage' )
             // InternalCompleteOCL.g:43:9: 'OclMessage'
             {
-            match("OclMessage"); 
+            match("OclMessage");
 
 
             }
@@ -818,7 +818,7 @@
             // InternalCompleteOCL.g:44:7: ( 'OclState' )
             // InternalCompleteOCL.g:44:9: 'OclState'
             {
-            match("OclState"); 
+            match("OclState");
 
 
             }
@@ -839,7 +839,7 @@
             // InternalCompleteOCL.g:45:7: ( 'OclVoid' )
             // InternalCompleteOCL.g:45:9: 'OclVoid'
             {
-            match("OclVoid"); 
+            match("OclVoid");
 
 
             }
@@ -860,7 +860,7 @@
             // InternalCompleteOCL.g:46:7: ( '-' )
             // InternalCompleteOCL.g:46:9: '-'
             {
-            match('-'); 
+            match('-');
 
             }
 
@@ -880,7 +880,7 @@
             // InternalCompleteOCL.g:47:7: ( 'not' )
             // InternalCompleteOCL.g:47:9: 'not'
             {
-            match("not"); 
+            match("not");
 
 
             }
@@ -901,7 +901,7 @@
             // InternalCompleteOCL.g:48:7: ( '*' )
             // InternalCompleteOCL.g:48:9: '*'
             {
-            match('*'); 
+            match('*');
 
             }
 
@@ -921,7 +921,7 @@
             // InternalCompleteOCL.g:49:7: ( '/' )
             // InternalCompleteOCL.g:49:9: '/'
             {
-            match('/'); 
+            match('/');
 
             }
 
@@ -941,7 +941,7 @@
             // InternalCompleteOCL.g:50:7: ( '+' )
             // InternalCompleteOCL.g:50:9: '+'
             {
-            match('+'); 
+            match('+');
 
             }
 
@@ -961,7 +961,7 @@
             // InternalCompleteOCL.g:51:7: ( '>=' )
             // InternalCompleteOCL.g:51:9: '>='
             {
-            match(">="); 
+            match(">=");
 
 
             }
@@ -982,7 +982,7 @@
             // InternalCompleteOCL.g:52:7: ( '<=' )
             // InternalCompleteOCL.g:52:9: '<='
             {
-            match("<="); 
+            match("<=");
 
 
             }
@@ -1003,7 +1003,7 @@
             // InternalCompleteOCL.g:53:7: ( '<>' )
             // InternalCompleteOCL.g:53:9: '<>'
             {
-            match("<>"); 
+            match("<>");
 
 
             }
@@ -1024,7 +1024,7 @@
             // InternalCompleteOCL.g:54:7: ( 'and' )
             // InternalCompleteOCL.g:54:9: 'and'
             {
-            match("and"); 
+            match("and");
 
 
             }
@@ -1045,7 +1045,7 @@
             // InternalCompleteOCL.g:55:7: ( 'or' )
             // InternalCompleteOCL.g:55:9: 'or'
             {
-            match("or"); 
+            match("or");
 
 
             }
@@ -1066,7 +1066,7 @@
             // InternalCompleteOCL.g:56:7: ( 'xor' )
             // InternalCompleteOCL.g:56:9: 'xor'
             {
-            match("xor"); 
+            match("xor");
 
 
             }
@@ -1087,7 +1087,7 @@
             // InternalCompleteOCL.g:57:7: ( 'implies' )
             // InternalCompleteOCL.g:57:9: 'implies'
             {
-            match("implies"); 
+            match("implies");
 
 
             }
@@ -1108,7 +1108,7 @@
             // InternalCompleteOCL.g:58:7: ( '.' )
             // InternalCompleteOCL.g:58:9: '.'
             {
-            match('.'); 
+            match('.');
 
             }
 
@@ -1128,7 +1128,7 @@
             // InternalCompleteOCL.g:59:7: ( '->' )
             // InternalCompleteOCL.g:59:9: '->'
             {
-            match("->"); 
+            match("->");
 
 
             }
@@ -1149,7 +1149,7 @@
             // InternalCompleteOCL.g:60:7: ( '?.' )
             // InternalCompleteOCL.g:60:9: '?.'
             {
-            match("?."); 
+            match("?.");
 
 
             }
@@ -1170,7 +1170,7 @@
             // InternalCompleteOCL.g:61:7: ( '?->' )
             // InternalCompleteOCL.g:61:9: '?->'
             {
-            match("?->"); 
+            match("?->");
 
 
             }
@@ -1191,7 +1191,7 @@
             // InternalCompleteOCL.g:62:7: ( 'Map' )
             // InternalCompleteOCL.g:62:9: 'Map'
             {
-            match("Map"); 
+            match("Map");
 
 
             }
@@ -1212,7 +1212,7 @@
             // InternalCompleteOCL.g:63:7: ( 'Tuple' )
             // InternalCompleteOCL.g:63:9: 'Tuple'
             {
-            match("Tuple"); 
+            match("Tuple");
 
 
             }
@@ -1233,7 +1233,7 @@
             // InternalCompleteOCL.g:64:7: ( '::' )
             // InternalCompleteOCL.g:64:9: '::'
             {
-            match("::"); 
+            match("::");
 
 
             }
@@ -1254,7 +1254,7 @@
             // InternalCompleteOCL.g:65:7: ( 'Set' )
             // InternalCompleteOCL.g:65:9: 'Set'
             {
-            match("Set"); 
+            match("Set");
 
 
             }
@@ -1275,7 +1275,7 @@
             // InternalCompleteOCL.g:66:7: ( 'Bag' )
             // InternalCompleteOCL.g:66:9: 'Bag'
             {
-            match("Bag"); 
+            match("Bag");
 
 
             }
@@ -1296,7 +1296,7 @@
             // InternalCompleteOCL.g:67:7: ( 'Sequence' )
             // InternalCompleteOCL.g:67:9: 'Sequence'
             {
-            match("Sequence"); 
+            match("Sequence");
 
 
             }
@@ -1317,7 +1317,7 @@
             // InternalCompleteOCL.g:68:7: ( 'Collection' )
             // InternalCompleteOCL.g:68:9: 'Collection'
             {
-            match("Collection"); 
+            match("Collection");
 
 
             }
@@ -1338,7 +1338,7 @@
             // InternalCompleteOCL.g:69:7: ( 'OrderedSet' )
             // InternalCompleteOCL.g:69:9: 'OrderedSet'
             {
-            match("OrderedSet"); 
+            match("OrderedSet");
 
 
             }
@@ -1359,7 +1359,7 @@
             // InternalCompleteOCL.g:70:7: ( '{' )
             // InternalCompleteOCL.g:70:9: '{'
             {
-            match('{'); 
+            match('{');
 
             }
 
@@ -1379,7 +1379,7 @@
             // InternalCompleteOCL.g:71:7: ( '}' )
             // InternalCompleteOCL.g:71:9: '}'
             {
-            match('}'); 
+            match('}');
 
             }
 
@@ -1399,7 +1399,7 @@
             // InternalCompleteOCL.g:72:7: ( '..' )
             // InternalCompleteOCL.g:72:9: '..'
             {
-            match(".."); 
+            match("..");
 
 
             }
@@ -1420,7 +1420,7 @@
             // InternalCompleteOCL.g:73:7: ( '++' )
             // InternalCompleteOCL.g:73:9: '++'
             {
-            match("++"); 
+            match("++");
 
 
             }
@@ -1441,7 +1441,7 @@
             // InternalCompleteOCL.g:74:7: ( 'Lambda' )
             // InternalCompleteOCL.g:74:9: 'Lambda'
             {
-            match("Lambda"); 
+            match("Lambda");
 
 
             }
@@ -1462,7 +1462,7 @@
             // InternalCompleteOCL.g:75:7: ( '<-' )
             // InternalCompleteOCL.g:75:9: '<-'
             {
-            match("<-"); 
+            match("<-");
 
 
             }
@@ -1483,7 +1483,7 @@
             // InternalCompleteOCL.g:76:7: ( 'true' )
             // InternalCompleteOCL.g:76:9: 'true'
             {
-            match("true"); 
+            match("true");
 
 
             }
@@ -1504,7 +1504,7 @@
             // InternalCompleteOCL.g:77:7: ( 'false' )
             // InternalCompleteOCL.g:77:9: 'false'
             {
-            match("false"); 
+            match("false");
 
 
             }
@@ -1525,7 +1525,7 @@
             // InternalCompleteOCL.g:78:7: ( 'invalid' )
             // InternalCompleteOCL.g:78:9: 'invalid'
             {
-            match("invalid"); 
+            match("invalid");
 
 
             }
@@ -1546,7 +1546,7 @@
             // InternalCompleteOCL.g:79:7: ( 'null' )
             // InternalCompleteOCL.g:79:9: 'null'
             {
-            match("null"); 
+            match("null");
 
 
             }
@@ -1567,7 +1567,7 @@
             // InternalCompleteOCL.g:80:7: ( '@' )
             // InternalCompleteOCL.g:80:9: '@'
             {
-            match('@'); 
+            match('@');
 
             }
 
@@ -1587,7 +1587,7 @@
             // InternalCompleteOCL.g:81:7: ( '[' )
             // InternalCompleteOCL.g:81:9: '['
             {
-            match('['); 
+            match('[');
 
             }
 
@@ -1607,7 +1607,7 @@
             // InternalCompleteOCL.g:82:7: ( ']' )
             // InternalCompleteOCL.g:82:9: ']'
             {
-            match(']'); 
+            match(']');
 
             }
 
@@ -1627,7 +1627,7 @@
             // InternalCompleteOCL.g:83:7: ( 'in' )
             // InternalCompleteOCL.g:83:9: 'in'
             {
-            match("in"); 
+            match("in");
 
 
             }
@@ -1648,7 +1648,7 @@
             // InternalCompleteOCL.g:84:7: ( '|' )
             // InternalCompleteOCL.g:84:9: '|'
             {
-            match('|'); 
+            match('|');
 
             }
 
@@ -1668,7 +1668,7 @@
             // InternalCompleteOCL.g:85:7: ( ';' )
             // InternalCompleteOCL.g:85:9: ';'
             {
-            match(';'); 
+            match(';');
 
             }
 
@@ -1688,7 +1688,7 @@
             // InternalCompleteOCL.g:86:7: ( 'if' )
             // InternalCompleteOCL.g:86:9: 'if'
             {
-            match("if"); 
+            match("if");
 
 
             }
@@ -1709,7 +1709,7 @@
             // InternalCompleteOCL.g:87:7: ( 'then' )
             // InternalCompleteOCL.g:87:9: 'then'
             {
-            match("then"); 
+            match("then");
 
 
             }
@@ -1730,7 +1730,7 @@
             // InternalCompleteOCL.g:88:7: ( 'else' )
             // InternalCompleteOCL.g:88:9: 'else'
             {
-            match("else"); 
+            match("else");
 
 
             }
@@ -1751,7 +1751,7 @@
             // InternalCompleteOCL.g:89:7: ( 'endif' )
             // InternalCompleteOCL.g:89:9: 'endif'
             {
-            match("endif"); 
+            match("endif");
 
 
             }
@@ -1772,7 +1772,7 @@
             // InternalCompleteOCL.g:90:7: ( 'elseif' )
             // InternalCompleteOCL.g:90:9: 'elseif'
             {
-            match("elseif"); 
+            match("elseif");
 
 
             }
@@ -1793,7 +1793,7 @@
             // InternalCompleteOCL.g:91:7: ( 'let' )
             // InternalCompleteOCL.g:91:9: 'let'
             {
-            match("let"); 
+            match("let");
 
 
             }
@@ -1814,7 +1814,7 @@
             // InternalCompleteOCL.g:92:7: ( 'self' )
             // InternalCompleteOCL.g:92:9: 'self'
             {
-            match("self"); 
+            match("self");
 
 
             }
@@ -1835,7 +1835,7 @@
             // InternalCompleteOCL.g:93:7: ( '|?' )
             // InternalCompleteOCL.g:93:9: '|?'
             {
-            match("|?"); 
+            match("|?");
 
 
             }
@@ -1856,7 +1856,7 @@
             // InternalCompleteOCL.g:94:8: ( '|1' )
             // InternalCompleteOCL.g:94:10: '|1'
             {
-            match("|1"); 
+            match("|1");
 
 
             }
@@ -1877,7 +1877,7 @@
             // InternalCompleteOCL.g:95:8: ( 'extends' )
             // InternalCompleteOCL.g:95:10: 'extends'
             {
-            match("extends"); 
+            match("extends");
 
 
             }
@@ -1898,7 +1898,7 @@
             // InternalCompleteOCL.g:96:8: ( '&&' )
             // InternalCompleteOCL.g:96:10: '&&'
             {
-            match("&&"); 
+            match("&&");
 
 
             }
@@ -1919,7 +1919,7 @@
             // InternalCompleteOCL.g:6919:22: ( '\\u00A3$%^\\u00A3$%^' )
             // InternalCompleteOCL.g:6919:24: '\\u00A3$%^\\u00A3$%^'
             {
-            match("\u00A3$%^\u00A3$%^"); 
+            match("\u00A3$%^\u00A3$%^");
 
 
             }
@@ -1938,7 +1938,7 @@
             // InternalCompleteOCL.g:6921:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
             // InternalCompleteOCL.g:6921:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
-            match('\\'); 
+            match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
                 input.consume();
 
@@ -1989,7 +1989,7 @@
             // InternalCompleteOCL.g:6925:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
             // InternalCompleteOCL.g:6925:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
-            match('\"'); 
+            match('\"');
             // InternalCompleteOCL.g:6925:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
@@ -2008,7 +2008,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:6925:34: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -2033,7 +2033,7 @@
                 }
             } while (true);
 
-            match('\"'); 
+            match('\"');
 
             }
 
@@ -2053,7 +2053,7 @@
             // InternalCompleteOCL.g:6927:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             // InternalCompleteOCL.g:6927:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
-            match('\''); 
+            match('\'');
             // InternalCompleteOCL.g:6927:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
@@ -2072,7 +2072,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:6927:35: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -2097,7 +2097,7 @@
                 }
             } while (true);
 
-            match('\''); 
+            match('\'');
 
             }
 
@@ -2117,7 +2117,7 @@
             // InternalCompleteOCL.g:6929:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
             // InternalCompleteOCL.g:6929:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
-            match("/'"); 
+            match("/'");
 
             // InternalCompleteOCL.g:6929:38: ( options {greedy=false; } : . )*
             loop3:
@@ -2146,7 +2146,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:6929:66: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -2156,7 +2156,7 @@
                 }
             } while (true);
 
-            match("'/"); 
+            match("'/");
 
 
             }
@@ -2177,7 +2177,7 @@
             // InternalCompleteOCL.g:6931:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
             // InternalCompleteOCL.g:6931:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
-            mRULE_LETTER_CHARACTER(); 
+            mRULE_LETTER_CHARACTER();
             // InternalCompleteOCL.g:6931:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
@@ -2230,8 +2230,8 @@
             // InternalCompleteOCL.g:6933:17: ( '_' RULE_SINGLE_QUOTED_STRING )
             // InternalCompleteOCL.g:6933:19: '_' RULE_SINGLE_QUOTED_STRING
             {
-            match('_'); 
-            mRULE_SINGLE_QUOTED_STRING(); 
+            match('_');
+            mRULE_SINGLE_QUOTED_STRING();
 
             }
 
@@ -2267,7 +2267,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:6935:13: '0' .. '9'
             	    {
-            	    matchRange('0','9'); 
+            	    matchRange('0','9');
 
             	    }
             	    break;
@@ -2300,7 +2300,7 @@
             // InternalCompleteOCL.g:6937:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
             // InternalCompleteOCL.g:6937:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
-            match("/*"); 
+            match("/*");
 
             // InternalCompleteOCL.g:6937:24: ( options {greedy=false; } : . )*
             loop6:
@@ -2329,7 +2329,7 @@
             	case 1 :
             	    // InternalCompleteOCL.g:6937:52: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -2339,7 +2339,7 @@
                 }
             } while (true);
 
-            match("*/"); 
+            match("*/");
 
 
             }
@@ -2360,7 +2360,7 @@
             // InternalCompleteOCL.g:6939:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
             // InternalCompleteOCL.g:6939:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
-            match("--"); 
+            match("--");
 
             // InternalCompleteOCL.g:6939:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
@@ -2417,14 +2417,14 @@
                         case 1 :
                             // InternalCompleteOCL.g:6939:41: '\\r'
                             {
-                            match('\r'); 
+                            match('\r');
 
                             }
                             break;
 
                     }
 
-                    match('\n'); 
+                    match('\n');
 
                     }
                     break;
@@ -2507,7 +2507,7 @@
             // InternalCompleteOCL.g:6943:16: ( . )
             // InternalCompleteOCL.g:6943:18: .
             {
-            matchAny(); 
+            matchAny();
 
             }
 
@@ -2527,679 +2527,679 @@
             case 1 :
                 // InternalCompleteOCL.g:1:10: T__17
                 {
-                mT__17(); 
+                mT__17();
 
                 }
                 break;
             case 2 :
                 // InternalCompleteOCL.g:1:16: T__18
                 {
-                mT__18(); 
+                mT__18();
 
                 }
                 break;
             case 3 :
                 // InternalCompleteOCL.g:1:22: T__19
                 {
-                mT__19(); 
+                mT__19();
 
                 }
                 break;
             case 4 :
                 // InternalCompleteOCL.g:1:28: T__20
                 {
-                mT__20(); 
+                mT__20();
 
                 }
                 break;
             case 5 :
                 // InternalCompleteOCL.g:1:34: T__21
                 {
-                mT__21(); 
+                mT__21();
 
                 }
                 break;
             case 6 :
                 // InternalCompleteOCL.g:1:40: T__22
                 {
-                mT__22(); 
+                mT__22();
 
                 }
                 break;
             case 7 :
                 // InternalCompleteOCL.g:1:46: T__23
                 {
-                mT__23(); 
+                mT__23();
 
                 }
                 break;
             case 8 :
                 // InternalCompleteOCL.g:1:52: T__24
                 {
-                mT__24(); 
+                mT__24();
 
                 }
                 break;
             case 9 :
                 // InternalCompleteOCL.g:1:58: T__25
                 {
-                mT__25(); 
+                mT__25();
 
                 }
                 break;
             case 10 :
                 // InternalCompleteOCL.g:1:64: T__26
                 {
-                mT__26(); 
+                mT__26();
 
                 }
                 break;
             case 11 :
                 // InternalCompleteOCL.g:1:70: T__27
                 {
-                mT__27(); 
+                mT__27();
 
                 }
                 break;
             case 12 :
                 // InternalCompleteOCL.g:1:76: T__28
                 {
-                mT__28(); 
+                mT__28();
 
                 }
                 break;
             case 13 :
                 // InternalCompleteOCL.g:1:82: T__29
                 {
-                mT__29(); 
+                mT__29();
 
                 }
                 break;
             case 14 :
                 // InternalCompleteOCL.g:1:88: T__30
                 {
-                mT__30(); 
+                mT__30();
 
                 }
                 break;
             case 15 :
                 // InternalCompleteOCL.g:1:94: T__31
                 {
-                mT__31(); 
+                mT__31();
 
                 }
                 break;
             case 16 :
                 // InternalCompleteOCL.g:1:100: T__32
                 {
-                mT__32(); 
+                mT__32();
 
                 }
                 break;
             case 17 :
                 // InternalCompleteOCL.g:1:106: T__33
                 {
-                mT__33(); 
+                mT__33();
 
                 }
                 break;
             case 18 :
                 // InternalCompleteOCL.g:1:112: T__34
                 {
-                mT__34(); 
+                mT__34();
 
                 }
                 break;
             case 19 :
                 // InternalCompleteOCL.g:1:118: T__35
                 {
-                mT__35(); 
+                mT__35();
 
                 }
                 break;
             case 20 :
                 // InternalCompleteOCL.g:1:124: T__36
                 {
-                mT__36(); 
+                mT__36();
 
                 }
                 break;
             case 21 :
                 // InternalCompleteOCL.g:1:130: T__37
                 {
-                mT__37(); 
+                mT__37();
 
                 }
                 break;
             case 22 :
                 // InternalCompleteOCL.g:1:136: T__38
                 {
-                mT__38(); 
+                mT__38();
 
                 }
                 break;
             case 23 :
                 // InternalCompleteOCL.g:1:142: T__39
                 {
-                mT__39(); 
+                mT__39();
 
                 }
                 break;
             case 24 :
                 // InternalCompleteOCL.g:1:148: T__40
                 {
-                mT__40(); 
+                mT__40();
 
                 }
                 break;
             case 25 :
                 // InternalCompleteOCL.g:1:154: T__41
                 {
-                mT__41(); 
+                mT__41();
 
                 }
                 break;
             case 26 :
                 // InternalCompleteOCL.g:1:160: T__42
                 {
-                mT__42(); 
+                mT__42();
 
                 }
                 break;
             case 27 :
                 // InternalCompleteOCL.g:1:166: T__43
                 {
-                mT__43(); 
+                mT__43();
 
                 }
                 break;
             case 28 :
                 // InternalCompleteOCL.g:1:172: T__44
                 {
-                mT__44(); 
+                mT__44();
 
                 }
                 break;
             case 29 :
                 // InternalCompleteOCL.g:1:178: T__45
                 {
-                mT__45(); 
+                mT__45();
 
                 }
                 break;
             case 30 :
                 // InternalCompleteOCL.g:1:184: T__46
                 {
-                mT__46(); 
+                mT__46();
 
                 }
                 break;
             case 31 :
                 // InternalCompleteOCL.g:1:190: T__47
                 {
-                mT__47(); 
+                mT__47();
 
                 }
                 break;
             case 32 :
                 // InternalCompleteOCL.g:1:196: T__48
                 {
-                mT__48(); 
+                mT__48();
 
                 }
                 break;
             case 33 :
                 // InternalCompleteOCL.g:1:202: T__49
                 {
-                mT__49(); 
+                mT__49();
 
                 }
                 break;
             case 34 :
                 // InternalCompleteOCL.g:1:208: T__50
                 {
-                mT__50(); 
+                mT__50();
 
                 }
                 break;
             case 35 :
                 // InternalCompleteOCL.g:1:214: T__51
                 {
-                mT__51(); 
+                mT__51();
 
                 }
                 break;
             case 36 :
                 // InternalCompleteOCL.g:1:220: T__52
                 {
-                mT__52(); 
+                mT__52();
 
                 }
                 break;
             case 37 :
                 // InternalCompleteOCL.g:1:226: T__53
                 {
-                mT__53(); 
+                mT__53();
 
                 }
                 break;
             case 38 :
                 // InternalCompleteOCL.g:1:232: T__54
                 {
-                mT__54(); 
+                mT__54();
 
                 }
                 break;
             case 39 :
                 // InternalCompleteOCL.g:1:238: T__55
                 {
-                mT__55(); 
+                mT__55();
 
                 }
                 break;
             case 40 :
                 // InternalCompleteOCL.g:1:244: T__56
                 {
-                mT__56(); 
+                mT__56();
 
                 }
                 break;
             case 41 :
                 // InternalCompleteOCL.g:1:250: T__57
                 {
-                mT__57(); 
+                mT__57();
 
                 }
                 break;
             case 42 :
                 // InternalCompleteOCL.g:1:256: T__58
                 {
-                mT__58(); 
+                mT__58();
 
                 }
                 break;
             case 43 :
                 // InternalCompleteOCL.g:1:262: T__59
                 {
-                mT__59(); 
+                mT__59();
 
                 }
                 break;
             case 44 :
                 // InternalCompleteOCL.g:1:268: T__60
                 {
-                mT__60(); 
+                mT__60();
 
                 }
                 break;
             case 45 :
                 // InternalCompleteOCL.g:1:274: T__61
                 {
-                mT__61(); 
+                mT__61();
 
                 }
                 break;
             case 46 :
                 // InternalCompleteOCL.g:1:280: T__62
                 {
-                mT__62(); 
+                mT__62();
 
                 }
                 break;
             case 47 :
                 // InternalCompleteOCL.g:1:286: T__63
                 {
-                mT__63(); 
+                mT__63();
 
                 }
                 break;
             case 48 :
                 // InternalCompleteOCL.g:1:292: T__64
                 {
-                mT__64(); 
+                mT__64();
 
                 }
                 break;
             case 49 :
                 // InternalCompleteOCL.g:1:298: T__65
                 {
-                mT__65(); 
+                mT__65();
 
                 }
                 break;
             case 50 :
                 // InternalCompleteOCL.g:1:304: T__66
                 {
-                mT__66(); 
+                mT__66();
 
                 }
                 break;
             case 51 :
                 // InternalCompleteOCL.g:1:310: T__67
                 {
-                mT__67(); 
+                mT__67();
 
                 }
                 break;
             case 52 :
                 // InternalCompleteOCL.g:1:316: T__68
                 {
-                mT__68(); 
+                mT__68();
 
                 }
                 break;
             case 53 :
                 // InternalCompleteOCL.g:1:322: T__69
                 {
-                mT__69(); 
+                mT__69();
 
                 }
                 break;
             case 54 :
                 // InternalCompleteOCL.g:1:328: T__70
                 {
-                mT__70(); 
+                mT__70();
 
                 }
                 break;
             case 55 :
                 // InternalCompleteOCL.g:1:334: T__71
                 {
-                mT__71(); 
+                mT__71();
 
                 }
                 break;
             case 56 :
                 // InternalCompleteOCL.g:1:340: T__72
                 {
-                mT__72(); 
+                mT__72();
 
                 }
                 break;
             case 57 :
                 // InternalCompleteOCL.g:1:346: T__73
                 {
-                mT__73(); 
+                mT__73();
 
                 }
                 break;
             case 58 :
                 // InternalCompleteOCL.g:1:352: T__74
                 {
-                mT__74(); 
+                mT__74();
 
                 }
                 break;
             case 59 :
                 // InternalCompleteOCL.g:1:358: T__75
                 {
-                mT__75(); 
+                mT__75();
 
                 }
                 break;
             case 60 :
                 // InternalCompleteOCL.g:1:364: T__76
                 {
-                mT__76(); 
+                mT__76();
 
                 }
                 break;
             case 61 :
                 // InternalCompleteOCL.g:1:370: T__77
                 {
-                mT__77(); 
+                mT__77();
 
                 }
                 break;
             case 62 :
                 // InternalCompleteOCL.g:1:376: T__78
                 {
-                mT__78(); 
+                mT__78();
 
                 }
                 break;
             case 63 :
                 // InternalCompleteOCL.g:1:382: T__79
                 {
-                mT__79(); 
+                mT__79();
 
                 }
                 break;
             case 64 :
                 // InternalCompleteOCL.g:1:388: T__80
                 {
-                mT__80(); 
+                mT__80();
 
                 }
                 break;
             case 65 :
                 // InternalCompleteOCL.g:1:394: T__81
                 {
-                mT__81(); 
+                mT__81();
 
                 }
                 break;
             case 66 :
                 // InternalCompleteOCL.g:1:400: T__82
                 {
-                mT__82(); 
+                mT__82();
 
                 }
                 break;
             case 67 :
                 // InternalCompleteOCL.g:1:406: T__83
                 {
-                mT__83(); 
+                mT__83();
 
                 }
                 break;
             case 68 :
                 // InternalCompleteOCL.g:1:412: T__84
                 {
-                mT__84(); 
+                mT__84();
 
                 }
                 break;
             case 69 :
                 // InternalCompleteOCL.g:1:418: T__85
                 {
-                mT__85(); 
+                mT__85();
 
                 }
                 break;
             case 70 :
                 // InternalCompleteOCL.g:1:424: T__86
                 {
-                mT__86(); 
+                mT__86();
 
                 }
                 break;
             case 71 :
                 // InternalCompleteOCL.g:1:430: T__87
                 {
-                mT__87(); 
+                mT__87();
 
                 }
                 break;
             case 72 :
                 // InternalCompleteOCL.g:1:436: T__88
                 {
-                mT__88(); 
+                mT__88();
 
                 }
                 break;
             case 73 :
                 // InternalCompleteOCL.g:1:442: T__89
                 {
-                mT__89(); 
+                mT__89();
 
                 }
                 break;
             case 74 :
                 // InternalCompleteOCL.g:1:448: T__90
                 {
-                mT__90(); 
+                mT__90();
 
                 }
                 break;
             case 75 :
                 // InternalCompleteOCL.g:1:454: T__91
                 {
-                mT__91(); 
+                mT__91();
 
                 }
                 break;
             case 76 :
                 // InternalCompleteOCL.g:1:460: T__92
                 {
-                mT__92(); 
+                mT__92();
 
                 }
                 break;
             case 77 :
                 // InternalCompleteOCL.g:1:466: T__93
                 {
-                mT__93(); 
+                mT__93();
 
                 }
                 break;
             case 78 :
                 // InternalCompleteOCL.g:1:472: T__94
                 {
-                mT__94(); 
+                mT__94();
 
                 }
                 break;
             case 79 :
                 // InternalCompleteOCL.g:1:478: T__95
                 {
-                mT__95(); 
+                mT__95();
 
                 }
                 break;
             case 80 :
                 // InternalCompleteOCL.g:1:484: T__96
                 {
-                mT__96(); 
+                mT__96();
 
                 }
                 break;
             case 81 :
                 // InternalCompleteOCL.g:1:490: T__97
                 {
-                mT__97(); 
+                mT__97();
 
                 }
                 break;
             case 82 :
                 // InternalCompleteOCL.g:1:496: T__98
                 {
-                mT__98(); 
+                mT__98();
 
                 }
                 break;
             case 83 :
                 // InternalCompleteOCL.g:1:502: T__99
                 {
-                mT__99(); 
+                mT__99();
 
                 }
                 break;
             case 84 :
                 // InternalCompleteOCL.g:1:508: T__100
                 {
-                mT__100(); 
+                mT__100();
 
                 }
                 break;
             case 85 :
                 // InternalCompleteOCL.g:1:515: T__101
                 {
-                mT__101(); 
+                mT__101();
 
                 }
                 break;
             case 86 :
                 // InternalCompleteOCL.g:1:522: T__102
                 {
-                mT__102(); 
+                mT__102();
 
                 }
                 break;
             case 87 :
                 // InternalCompleteOCL.g:1:529: RULE_UNQUOTED_STRING
                 {
-                mRULE_UNQUOTED_STRING(); 
+                mRULE_UNQUOTED_STRING();
 
                 }
                 break;
             case 88 :
                 // InternalCompleteOCL.g:1:550: RULE_DOUBLE_QUOTED_STRING
                 {
-                mRULE_DOUBLE_QUOTED_STRING(); 
+                mRULE_DOUBLE_QUOTED_STRING();
 
                 }
                 break;
             case 89 :
                 // InternalCompleteOCL.g:1:576: RULE_SINGLE_QUOTED_STRING
                 {
-                mRULE_SINGLE_QUOTED_STRING(); 
+                mRULE_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 90 :
                 // InternalCompleteOCL.g:1:602: RULE_ML_SINGLE_QUOTED_STRING
                 {
-                mRULE_ML_SINGLE_QUOTED_STRING(); 
+                mRULE_ML_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 91 :
                 // InternalCompleteOCL.g:1:631: RULE_SIMPLE_ID
                 {
-                mRULE_SIMPLE_ID(); 
+                mRULE_SIMPLE_ID();
 
                 }
                 break;
             case 92 :
                 // InternalCompleteOCL.g:1:646: RULE_ESCAPED_ID
                 {
-                mRULE_ESCAPED_ID(); 
+                mRULE_ESCAPED_ID();
 
                 }
                 break;
             case 93 :
                 // InternalCompleteOCL.g:1:662: RULE_INT
                 {
-                mRULE_INT(); 
+                mRULE_INT();
 
                 }
                 break;
             case 94 :
                 // InternalCompleteOCL.g:1:671: RULE_ML_COMMENT
                 {
-                mRULE_ML_COMMENT(); 
+                mRULE_ML_COMMENT();
 
                 }
                 break;
             case 95 :
                 // InternalCompleteOCL.g:1:687: RULE_SL_COMMENT
                 {
-                mRULE_SL_COMMENT(); 
+                mRULE_SL_COMMENT();
 
                 }
                 break;
             case 96 :
                 // InternalCompleteOCL.g:1:703: RULE_WS
                 {
-                mRULE_WS(); 
+                mRULE_WS();
 
                 }
                 break;
             case 97 :
                 // InternalCompleteOCL.g:1:711: RULE_ANY_OTHER
                 {
-                mRULE_ANY_OTHER(); 
+                mRULE_ANY_OTHER();
 
                 }
                 break;
@@ -3622,7 +3622,7 @@
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA11_49 = input.LA(1);
 
                         s = -1;
@@ -3632,7 +3632,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA11_0 = input.LA(1);
 
                         s = -1;
@@ -3746,7 +3746,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA11_48 = input.LA(1);
 
                         s = -1;
@@ -3763,6 +3763,6 @@
             throw nvae;
         }
     }
- 
+
 
 }
\ No newline at end of file
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 1339ed5..1f88aca 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
@@ -1,4 +1,4 @@
-package org.eclipse.ocl.xtext.completeocl.parser.antlr.internal; 
+package org.eclipse.ocl.xtext.completeocl.parser.antlr.internal;
 
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
@@ -144,9 +144,9 @@
         }
         public InternalCompleteOCLParser(TokenStream input, RecognizerSharedState state) {
             super(input, state);
-             
+
         }
-        
+
 
     public String[] getTokenNames() { return InternalCompleteOCLParser.tokenNames; }
     public String getGrammarFileName() { return "InternalCompleteOCL.g"; }
@@ -157,20 +157,20 @@
       This grammar contains a lot of empty actions to work around a bug in ANTLR.
       Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases.
     */
-     
+
      	private CompleteOCLGrammarAccess grammarAccess;
-     	
+
         public InternalCompleteOCLParser(TokenStream input, CompleteOCLGrammarAccess grammarAccess) {
             this(input);
             this.grammarAccess = grammarAccess;
             registerRules(grammarAccess.getGrammar());
         }
-        
+
         @Override
         protected String getFirstRuleName() {
-        	return "CompleteOCLDocumentCS";	
+        	return "CompleteOCLDocumentCS";
        	}
-       	
+
        	@Override
        	protected CompleteOCLGrammarAccess getGrammarAccess() {
        		return grammarAccess;
@@ -191,7 +191,7 @@
             // InternalCompleteOCL.g:82:2: iv_ruleCompleteOCLDocumentCS= ruleCompleteOCLDocumentCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCompleteOCLDocumentCSRule()); 
+               newCompositeNode(grammarAccess.getCompleteOCLDocumentCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCompleteOCLDocumentCS=ruleCompleteOCLDocumentCS();
@@ -199,18 +199,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCompleteOCLDocumentCS; 
+               current =iv_ruleCompleteOCLDocumentCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -230,8 +230,8 @@
         EObject lv_ownedContexts_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:92:28: ( ( ( (lv_ownedImports_0_0= ruleImportCS ) )* ( ( (lv_ownedPackages_1_0= rulePackageDeclarationCS ) ) | ( (lv_ownedContexts_2_0= ruleContextDeclCS ) ) )* ) )
             // InternalCompleteOCL.g:93:1: ( ( (lv_ownedImports_0_0= ruleImportCS ) )* ( ( (lv_ownedPackages_1_0= rulePackageDeclarationCS ) ) | ( (lv_ownedContexts_2_0= ruleContextDeclCS ) ) )* )
@@ -258,9 +258,9 @@
             	    // InternalCompleteOCL.g:95:3: lv_ownedImports_0_0= ruleImportCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsImportCSParserRuleCall_0_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedImportsImportCSParserRuleCall_0_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_3);
             	    lv_ownedImports_0_0=ruleImportCS();
@@ -273,12 +273,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getCompleteOCLDocumentCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedImports",
-            	              		lv_ownedImports_0_0, 
+            	              		lv_ownedImports_0_0,
             	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ImportCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -317,9 +317,9 @@
             	    // InternalCompleteOCL.g:113:3: lv_ownedPackages_1_0= rulePackageDeclarationCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesPackageDeclarationCSParserRuleCall_1_0_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedPackagesPackageDeclarationCSParserRuleCall_1_0_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_4);
             	    lv_ownedPackages_1_0=rulePackageDeclarationCS();
@@ -332,12 +332,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getCompleteOCLDocumentCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPackages",
-            	              		lv_ownedPackages_1_0, 
+            	              		lv_ownedPackages_1_0,
             	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.PackageDeclarationCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -358,9 +358,9 @@
             	    // InternalCompleteOCL.g:132:3: lv_ownedContexts_2_0= ruleContextDeclCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsContextDeclCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getCompleteOCLDocumentCSAccess().getOwnedContextsContextDeclCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_4);
             	    lv_ownedContexts_2_0=ruleContextDeclCS();
@@ -373,12 +373,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getCompleteOCLDocumentCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedContexts",
-            	              		lv_ownedContexts_2_0, 
+            	              		lv_ownedContexts_2_0,
             	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ContextDeclCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -402,14 +402,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -430,7 +430,7 @@
             // InternalCompleteOCL.g:158:2: iv_ruleCompleteOCLNavigationOperatorName= ruleCompleteOCLNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCompleteOCLNavigationOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getCompleteOCLNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCompleteOCLNavigationOperatorName=ruleCompleteOCLNavigationOperatorName();
@@ -438,18 +438,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCompleteOCLNavigationOperatorName.getText(); 
+               current =iv_ruleCompleteOCLNavigationOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -464,8 +464,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:168:28: ( (kw= '^' | kw= '^^' ) )
             // InternalCompleteOCL.g:169:1: (kw= '^' | kw= '^^' )
@@ -495,8 +495,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentKeyword_0());
+
                     }
 
                     }
@@ -508,8 +508,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentCircumflexAccentKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCompleteOCLNavigationOperatorNameAccess().getCircumflexAccentCircumflexAccentKeyword_1());
+
                     }
 
                     }
@@ -521,14 +521,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -549,7 +549,7 @@
             // InternalCompleteOCL.g:192:2: iv_ruleClassifierContextDeclCS= ruleClassifierContextDeclCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getClassifierContextDeclCSRule()); 
+               newCompositeNode(grammarAccess.getClassifierContextDeclCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleClassifierContextDeclCS=ruleClassifierContextDeclCS();
@@ -557,18 +557,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleClassifierContextDeclCS; 
+               current =iv_ruleClassifierContextDeclCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -594,8 +594,8 @@
         EObject lv_ownedDefinitions_6_0 = null;
 
 
-         enterRule(); 
-            
+         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 ) ) )+ )
@@ -607,7 +607,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getClassifierContextDeclCSAccess().getContextKeyword_0());
-                  
+
             }
             // InternalCompleteOCL.g:207:1: ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )?
             int alt4=2;
@@ -624,9 +624,9 @@
                     // InternalCompleteOCL.g:209:3: lv_ownedSignature_1_0= ruleTemplateSignatureCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_5);
                     lv_ownedSignature_1_0=ruleTemplateSignatureCS();
@@ -639,12 +639,12 @@
                       	            current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedSignature",
-                              		lv_ownedSignature_1_0, 
+                              		lv_ownedSignature_1_0,
                               		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TemplateSignatureCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -713,9 +713,9 @@
                     // InternalCompleteOCL.g:227:3: lv_selfName_2_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameUnrestrictedNameParserRuleCall_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getSelfNameUnrestrictedNameParserRuleCall_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_5);
                     lv_selfName_2_0=ruleUnrestrictedName();
@@ -728,12 +728,12 @@
                       	            current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"selfName",
-                              		lv_selfName_2_0, 
+                              		lv_selfName_2_0,
                               		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -751,9 +751,9 @@
             // InternalCompleteOCL.g:245:3: lv_ownedPathName_3_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_6);
             lv_ownedPathName_3_0=rulePathNameCS();
@@ -766,12 +766,12 @@
               	            current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_3_0, 
+                      		lv_ownedPathName_3_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -805,7 +805,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_4, grammarAccess.getClassifierContextDeclCSAccess().getInvKeyword_4_0_0());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:265:1: ( (lv_ownedInvariants_5_0= ruleConstraintCS ) )
             	    // InternalCompleteOCL.g:266:1: (lv_ownedInvariants_5_0= ruleConstraintCS )
@@ -814,9 +814,9 @@
             	    // InternalCompleteOCL.g:267:3: lv_ownedInvariants_5_0= ruleConstraintCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_4_0_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_4_0_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_8);
             	    lv_ownedInvariants_5_0=ruleConstraintCS();
@@ -829,12 +829,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedInvariants",
-            	              		lv_ownedInvariants_5_0, 
+            	              		lv_ownedInvariants_5_0,
             	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -858,9 +858,9 @@
             	    // InternalCompleteOCL.g:286:3: lv_ownedDefinitions_6_0= ruleDefCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsDefCSParserRuleCall_4_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getClassifierContextDeclCSAccess().getOwnedDefinitionsDefCSParserRuleCall_4_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_8);
             	    lv_ownedDefinitions_6_0=ruleDefCS();
@@ -873,12 +873,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getClassifierContextDeclCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedDefinitions",
-            	              		lv_ownedDefinitions_6_0, 
+            	              		lv_ownedDefinitions_6_0,
             	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.DefCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -907,14 +907,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -935,7 +935,7 @@
             // InternalCompleteOCL.g:312:2: iv_ruleConstraintCS= ruleConstraintCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getConstraintCSRule()); 
+               newCompositeNode(grammarAccess.getConstraintCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleConstraintCS=ruleConstraintCS();
@@ -943,18 +943,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleConstraintCS; 
+               current =iv_ruleConstraintCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -977,8 +977,8 @@
         EObject lv_ownedSpecification_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:322:28: ( ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= '(' ( (lv_ownedMessageSpecification_2_0= ruleSpecificationCS ) ) otherlv_3= ')' )? )? otherlv_4= ':' ( (lv_ownedSpecification_5_0= ruleSpecificationCS ) ) ) )
             // InternalCompleteOCL.g:323:1: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= '(' ( (lv_ownedMessageSpecification_2_0= ruleSpecificationCS ) ) otherlv_3= ')' )? )? otherlv_4= ':' ( (lv_ownedSpecification_5_0= ruleSpecificationCS ) ) )
@@ -1004,9 +1004,9 @@
                     // InternalCompleteOCL.g:325:3: lv_name_0_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_9);
                     lv_name_0_0=ruleUnrestrictedName();
@@ -1019,12 +1019,12 @@
                       	            current = createModelElementForParent(grammarAccess.getConstraintCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_0_0, 
+                              		lv_name_0_0,
                               		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -1047,7 +1047,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_1, grammarAccess.getConstraintCSAccess().getLeftParenthesisKeyword_0_1_0());
-                                  
+
                             }
                             // InternalCompleteOCL.g:345:1: ( (lv_ownedMessageSpecification_2_0= ruleSpecificationCS ) )
                             // InternalCompleteOCL.g:346:1: (lv_ownedMessageSpecification_2_0= ruleSpecificationCS )
@@ -1056,9 +1056,9 @@
                             // InternalCompleteOCL.g:347:3: lv_ownedMessageSpecification_2_0= ruleSpecificationCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_0_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_0_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_11);
                             lv_ownedMessageSpecification_2_0=ruleSpecificationCS();
@@ -1071,12 +1071,12 @@
                               	            current = createModelElementForParent(grammarAccess.getConstraintCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedMessageSpecification",
-                                      		lv_ownedMessageSpecification_2_0, 
+                                      		lv_ownedMessageSpecification_2_0,
                                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -1088,7 +1088,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_3, grammarAccess.getConstraintCSAccess().getRightParenthesisKeyword_0_1_2());
-                                  
+
                             }
 
                             }
@@ -1106,7 +1106,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getConstraintCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:371:1: ( (lv_ownedSpecification_5_0= ruleSpecificationCS ) )
             // InternalCompleteOCL.g:372:1: (lv_ownedSpecification_5_0= ruleSpecificationCS )
@@ -1115,9 +1115,9 @@
             // InternalCompleteOCL.g:373:3: lv_ownedSpecification_5_0= ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedSpecification_5_0=ruleSpecificationCS();
@@ -1130,12 +1130,12 @@
               	            current = createModelElementForParent(grammarAccess.getConstraintCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedSpecification",
-                      		lv_ownedSpecification_5_0, 
+                      		lv_ownedSpecification_5_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -1150,14 +1150,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1178,7 +1178,7 @@
             // InternalCompleteOCL.g:399:2: iv_ruleContextDeclCS= ruleContextDeclCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getContextDeclCSRule()); 
+               newCompositeNode(grammarAccess.getContextDeclCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleContextDeclCS=ruleContextDeclCS();
@@ -1186,18 +1186,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleContextDeclCS; 
+               current =iv_ruleContextDeclCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1217,8 +1217,8 @@
         EObject this_OperationContextDeclCS_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:409:28: ( (this_PropertyContextDeclCS_0= rulePropertyContextDeclCS | this_ClassifierContextDeclCS_1= ruleClassifierContextDeclCS | this_OperationContextDeclCS_2= ruleOperationContextDeclCS ) )
             // InternalCompleteOCL.g:410:1: (this_PropertyContextDeclCS_0= rulePropertyContextDeclCS | this_ClassifierContextDeclCS_1= ruleClassifierContextDeclCS | this_OperationContextDeclCS_2= ruleOperationContextDeclCS )
@@ -1259,14 +1259,14 @@
                     // InternalCompleteOCL.g:411:2: this_PropertyContextDeclCS_0= rulePropertyContextDeclCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getContextDeclCSAccess().getPropertyContextDeclCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getContextDeclCSAccess().getPropertyContextDeclCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PropertyContextDeclCS_0=rulePropertyContextDeclCS();
@@ -1274,10 +1274,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PropertyContextDeclCS_0; 
+
+                              current = this_PropertyContextDeclCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1286,14 +1286,14 @@
                     // InternalCompleteOCL.g:424:2: this_ClassifierContextDeclCS_1= ruleClassifierContextDeclCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getContextDeclCSAccess().getClassifierContextDeclCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getContextDeclCSAccess().getClassifierContextDeclCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_ClassifierContextDeclCS_1=ruleClassifierContextDeclCS();
@@ -1301,10 +1301,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_ClassifierContextDeclCS_1; 
+
+                              current = this_ClassifierContextDeclCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1313,14 +1313,14 @@
                     // InternalCompleteOCL.g:437:2: this_OperationContextDeclCS_2= ruleOperationContextDeclCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getContextDeclCSAccess().getOperationContextDeclCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getContextDeclCSAccess().getOperationContextDeclCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_OperationContextDeclCS_2=ruleOperationContextDeclCS();
@@ -1328,10 +1328,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_OperationContextDeclCS_2; 
+
+                              current = this_OperationContextDeclCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1343,14 +1343,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1371,7 +1371,7 @@
             // InternalCompleteOCL.g:458:2: iv_ruleDefCS= ruleDefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getDefCSRule()); 
+               newCompositeNode(grammarAccess.getDefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleDefCS=ruleDefCS();
@@ -1379,18 +1379,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleDefCS; 
+               current =iv_ruleDefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1408,8 +1408,8 @@
         EObject this_DefPropertyCS_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:468:28: ( (this_DefOperationCS_0= ruleDefOperationCS | this_DefPropertyCS_1= ruleDefPropertyCS ) )
             // InternalCompleteOCL.g:469:1: (this_DefOperationCS_0= ruleDefOperationCS | this_DefPropertyCS_1= ruleDefPropertyCS )
@@ -1422,14 +1422,14 @@
                     // InternalCompleteOCL.g:470:2: this_DefOperationCS_0= ruleDefOperationCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getDefCSAccess().getDefOperationCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getDefCSAccess().getDefOperationCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_DefOperationCS_0=ruleDefOperationCS();
@@ -1437,10 +1437,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_DefOperationCS_0; 
+
+                              current = this_DefOperationCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1449,14 +1449,14 @@
                     // InternalCompleteOCL.g:483:2: this_DefPropertyCS_1= ruleDefPropertyCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getDefCSAccess().getDefPropertyCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getDefCSAccess().getDefPropertyCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_DefPropertyCS_1=ruleDefPropertyCS();
@@ -1464,10 +1464,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_DefPropertyCS_1; 
+
+                              current = this_DefPropertyCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1479,14 +1479,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1507,7 +1507,7 @@
             // InternalCompleteOCL.g:504:2: iv_ruleDefOperationCS= ruleDefOperationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getDefOperationCSRule()); 
+               newCompositeNode(grammarAccess.getDefOperationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleDefOperationCS=ruleDefOperationCS();
@@ -1515,18 +1515,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleDefOperationCS; 
+               current =iv_ruleDefOperationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1560,8 +1560,8 @@
         EObject lv_ownedSpecification_14_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:514:28: ( ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_ownedSignature_4_0= ruleTemplateSignatureCS ) )? ( (lv_name_5_0= ruleUnrestrictedName ) ) otherlv_6= '(' ( ( (lv_ownedParameters_7_0= ruleDefParameterCS ) ) (otherlv_8= ',' ( (lv_ownedParameters_9_0= ruleDefParameterCS ) ) )* )? otherlv_10= ')' otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) )? otherlv_13= '=' ( (lv_ownedSpecification_14_0= ruleSpecificationCS ) ) ) )
             // InternalCompleteOCL.g:515:1: ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_ownedSignature_4_0= ruleTemplateSignatureCS ) )? ( (lv_name_5_0= ruleUnrestrictedName ) ) otherlv_6= '(' ( ( (lv_ownedParameters_7_0= ruleDefParameterCS ) ) (otherlv_8= ',' ( (lv_ownedParameters_9_0= ruleDefParameterCS ) ) )* )? otherlv_10= ')' otherlv_11= ':' ( (lv_ownedType_12_0= ruleTypeExpCS ) )? otherlv_13= '=' ( (lv_ownedSpecification_14_0= ruleSpecificationCS ) ) )
@@ -1587,7 +1587,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isStatic_0_0, grammarAccess.getDefOperationCSAccess().getIsStaticStaticKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -1595,7 +1595,7 @@
                       	            current = createModelElement(grammarAccess.getDefOperationCSRule());
                       	        }
                              		setWithLastConsumed(current, "isStatic", true, "static");
-                      	    
+
                     }
 
                     }
@@ -1610,7 +1610,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getDefOperationCSAccess().getDefKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:534:1: ( ruleUnrestrictedName )?
             int alt12=2;
@@ -1624,14 +1624,14 @@
                     // InternalCompleteOCL.g:535:2: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getDefOperationCSAccess().getUnrestrictedNameParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getDefOperationCSAccess().getUnrestrictedNameParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_12);
                     ruleUnrestrictedName();
@@ -1639,9 +1639,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1653,7 +1653,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getDefOperationCSAccess().getColonKeyword_3());
-                  
+
             }
             // InternalCompleteOCL.g:549:1: ( (lv_ownedSignature_4_0= ruleTemplateSignatureCS ) )?
             int alt13=2;
@@ -1670,9 +1670,9 @@
                     // InternalCompleteOCL.g:551:3: lv_ownedSignature_4_0= ruleTemplateSignatureCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_4_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_4_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_14);
                     lv_ownedSignature_4_0=ruleTemplateSignatureCS();
@@ -1685,12 +1685,12 @@
                       	            current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedSignature",
-                              		lv_ownedSignature_4_0, 
+                              		lv_ownedSignature_4_0,
                               		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TemplateSignatureCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -1708,9 +1708,9 @@
             // InternalCompleteOCL.g:569:3: lv_name_5_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getNameUnrestrictedNameParserRuleCall_5_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getNameUnrestrictedNameParserRuleCall_5_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_15);
             lv_name_5_0=ruleUnrestrictedName();
@@ -1723,12 +1723,12 @@
               	            current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_5_0, 
+                      		lv_name_5_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -1740,7 +1740,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_6, grammarAccess.getDefOperationCSAccess().getLeftParenthesisKeyword_6());
-                  
+
             }
             // InternalCompleteOCL.g:589:1: ( ( (lv_ownedParameters_7_0= ruleDefParameterCS ) ) (otherlv_8= ',' ( (lv_ownedParameters_9_0= ruleDefParameterCS ) ) )* )?
             int alt15=2;
@@ -1760,9 +1760,9 @@
                     // InternalCompleteOCL.g:591:3: lv_ownedParameters_7_0= ruleDefParameterCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_17);
                     lv_ownedParameters_7_0=ruleDefParameterCS();
@@ -1775,12 +1775,12 @@
                       	            current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParameters",
-                              		lv_ownedParameters_7_0, 
+                              		lv_ownedParameters_7_0,
                               		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.DefParameterCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -1807,7 +1807,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_8, grammarAccess.getDefOperationCSAccess().getCommaKeyword_7_1_0());
-                    	          
+
                     	    }
                     	    // InternalCompleteOCL.g:611:1: ( (lv_ownedParameters_9_0= ruleDefParameterCS ) )
                     	    // InternalCompleteOCL.g:612:1: (lv_ownedParameters_9_0= ruleDefParameterCS )
@@ -1816,9 +1816,9 @@
                     	    // InternalCompleteOCL.g:613:3: lv_ownedParameters_9_0= ruleDefParameterCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedParametersDefParameterCSParserRuleCall_7_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_17);
                     	    lv_ownedParameters_9_0=ruleDefParameterCS();
@@ -1831,12 +1831,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParameters",
-                    	              		lv_ownedParameters_9_0, 
+                    	              		lv_ownedParameters_9_0,
                     	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.DefParameterCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -1863,13 +1863,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_10, grammarAccess.getDefOperationCSAccess().getRightParenthesisKeyword_8());
-                  
+
             }
             otherlv_11=(Token)match(input,23,FollowSets000.FOLLOW_18); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_11, grammarAccess.getDefOperationCSAccess().getColonKeyword_9());
-                  
+
             }
             // InternalCompleteOCL.g:637:1: ( (lv_ownedType_12_0= ruleTypeExpCS ) )?
             int alt16=2;
@@ -1886,9 +1886,9 @@
                     // InternalCompleteOCL.g:639:3: lv_ownedType_12_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedTypeTypeExpCSParserRuleCall_10_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedTypeTypeExpCSParserRuleCall_10_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_19);
                     lv_ownedType_12_0=ruleTypeExpCS();
@@ -1901,12 +1901,12 @@
                       	            current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_12_0, 
+                              		lv_ownedType_12_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -1921,7 +1921,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_13, grammarAccess.getDefOperationCSAccess().getEqualsSignKeyword_11());
-                  
+
             }
             // InternalCompleteOCL.g:659:1: ( (lv_ownedSpecification_14_0= ruleSpecificationCS ) )
             // InternalCompleteOCL.g:660:1: (lv_ownedSpecification_14_0= ruleSpecificationCS )
@@ -1930,9 +1930,9 @@
             // InternalCompleteOCL.g:661:3: lv_ownedSpecification_14_0= ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_12_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getDefOperationCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_12_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedSpecification_14_0=ruleSpecificationCS();
@@ -1945,12 +1945,12 @@
               	            current = createModelElementForParent(grammarAccess.getDefOperationCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedSpecification",
-                      		lv_ownedSpecification_14_0, 
+                      		lv_ownedSpecification_14_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -1965,14 +1965,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1993,7 +1993,7 @@
             // InternalCompleteOCL.g:687:2: iv_ruleDefParameterCS= ruleDefParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getDefParameterCSRule()); 
+               newCompositeNode(grammarAccess.getDefParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleDefParameterCS=ruleDefParameterCS();
@@ -2001,18 +2001,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleDefParameterCS; 
+               current =iv_ruleDefParameterCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2031,8 +2031,8 @@
         EObject lv_ownedType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:697:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) )
             // InternalCompleteOCL.g:698:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )
@@ -2047,9 +2047,9 @@
             // InternalCompleteOCL.g:700:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getDefParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getDefParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_12);
             lv_name_0_0=ruleUnrestrictedName();
@@ -2062,12 +2062,12 @@
               	            current = createModelElementForParent(grammarAccess.getDefParameterCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -2079,7 +2079,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getDefParameterCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:720:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
             // InternalCompleteOCL.g:721:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -2088,9 +2088,9 @@
             // InternalCompleteOCL.g:722:3: lv_ownedType_2_0= ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getDefParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getDefParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedType_2_0=ruleTypeExpCS();
@@ -2103,12 +2103,12 @@
               	            current = createModelElementForParent(grammarAccess.getDefParameterCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_2_0, 
+                      		lv_ownedType_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -2123,14 +2123,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2151,7 +2151,7 @@
             // InternalCompleteOCL.g:748:2: iv_ruleDefPropertyCS= ruleDefPropertyCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getDefPropertyCSRule()); 
+               newCompositeNode(grammarAccess.getDefPropertyCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleDefPropertyCS=ruleDefPropertyCS();
@@ -2159,18 +2159,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleDefPropertyCS; 
+               current =iv_ruleDefPropertyCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2195,8 +2195,8 @@
         EObject lv_ownedSpecification_8_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:758:28: ( ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_name_4_0= ruleUnrestrictedName ) ) otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) otherlv_7= '=' ( (lv_ownedSpecification_8_0= ruleSpecificationCS ) ) ) )
             // InternalCompleteOCL.g:759:1: ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'def' ( ruleUnrestrictedName )? otherlv_3= ':' ( (lv_name_4_0= ruleUnrestrictedName ) ) otherlv_5= ':' ( (lv_ownedType_6_0= ruleTypeExpCS ) ) otherlv_7= '=' ( (lv_ownedSpecification_8_0= ruleSpecificationCS ) ) )
@@ -2222,7 +2222,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isStatic_0_0, grammarAccess.getDefPropertyCSAccess().getIsStaticStaticKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -2230,7 +2230,7 @@
                       	            current = createModelElement(grammarAccess.getDefPropertyCSRule());
                       	        }
                              		setWithLastConsumed(current, "isStatic", true, "static");
-                      	    
+
                     }
 
                     }
@@ -2245,7 +2245,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getDefPropertyCSAccess().getDefKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:778:1: ( ruleUnrestrictedName )?
             int alt18=2;
@@ -2259,14 +2259,14 @@
                     // InternalCompleteOCL.g:779:2: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getDefPropertyCSAccess().getUnrestrictedNameParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getDefPropertyCSAccess().getUnrestrictedNameParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_12);
                     ruleUnrestrictedName();
@@ -2274,9 +2274,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -2288,7 +2288,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getDefPropertyCSAccess().getColonKeyword_3());
-                  
+
             }
             // InternalCompleteOCL.g:793:1: ( (lv_name_4_0= ruleUnrestrictedName ) )
             // InternalCompleteOCL.g:794:1: (lv_name_4_0= ruleUnrestrictedName )
@@ -2297,9 +2297,9 @@
             // InternalCompleteOCL.g:795:3: lv_name_4_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getNameUnrestrictedNameParserRuleCall_4_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getNameUnrestrictedNameParserRuleCall_4_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_12);
             lv_name_4_0=ruleUnrestrictedName();
@@ -2312,12 +2312,12 @@
               	            current = createModelElementForParent(grammarAccess.getDefPropertyCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_4_0, 
+                      		lv_name_4_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -2329,7 +2329,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getDefPropertyCSAccess().getColonKeyword_5());
-                  
+
             }
             // InternalCompleteOCL.g:815:1: ( (lv_ownedType_6_0= ruleTypeExpCS ) )
             // InternalCompleteOCL.g:816:1: (lv_ownedType_6_0= ruleTypeExpCS )
@@ -2338,9 +2338,9 @@
             // InternalCompleteOCL.g:817:3: lv_ownedType_6_0= ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getOwnedTypeTypeExpCSParserRuleCall_6_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getOwnedTypeTypeExpCSParserRuleCall_6_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_19);
             lv_ownedType_6_0=ruleTypeExpCS();
@@ -2353,12 +2353,12 @@
               	            current = createModelElementForParent(grammarAccess.getDefPropertyCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_6_0, 
+                      		lv_ownedType_6_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -2370,7 +2370,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getDefPropertyCSAccess().getEqualsSignKeyword_7());
-                  
+
             }
             // InternalCompleteOCL.g:837:1: ( (lv_ownedSpecification_8_0= ruleSpecificationCS ) )
             // InternalCompleteOCL.g:838:1: (lv_ownedSpecification_8_0= ruleSpecificationCS )
@@ -2379,9 +2379,9 @@
             // InternalCompleteOCL.g:839:3: lv_ownedSpecification_8_0= ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_8_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getDefPropertyCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_8_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedSpecification_8_0=ruleSpecificationCS();
@@ -2394,12 +2394,12 @@
               	            current = createModelElementForParent(grammarAccess.getDefPropertyCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedSpecification",
-                      		lv_ownedSpecification_8_0, 
+                      		lv_ownedSpecification_8_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -2414,14 +2414,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2442,7 +2442,7 @@
             // InternalCompleteOCL.g:865:2: iv_ruleImportCS= ruleImportCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getImportCSRule()); 
+               newCompositeNode(grammarAccess.getImportCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleImportCS=ruleImportCS();
@@ -2450,18 +2450,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleImportCS; 
+               current =iv_ruleImportCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2484,8 +2484,8 @@
         EObject lv_ownedPathName_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:875:28: ( ( (otherlv_0= 'import' | otherlv_1= 'include' | otherlv_2= 'library' ) ( ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= ':' )? ( (lv_ownedPathName_5_0= ruleURIPathNameCS ) ) ( (lv_isAll_6_0= '::*' ) )? ) )
             // InternalCompleteOCL.g:876:1: ( (otherlv_0= 'import' | otherlv_1= 'include' | otherlv_2= 'library' ) ( ( (lv_name_3_0= ruleIdentifier ) ) otherlv_4= ':' )? ( (lv_ownedPathName_5_0= ruleURIPathNameCS ) ) ( (lv_isAll_6_0= '::*' ) )? )
@@ -2527,7 +2527,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_0, grammarAccess.getImportCSAccess().getImportKeyword_0_0());
-                          
+
                     }
 
                     }
@@ -2539,7 +2539,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getImportCSAccess().getIncludeKeyword_0_1());
-                          
+
                     }
 
                     }
@@ -2551,7 +2551,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getImportCSAccess().getLibraryKeyword_0_2());
-                          
+
                     }
 
                     }
@@ -2588,9 +2588,9 @@
                     // InternalCompleteOCL.g:892:3: lv_name_3_0= ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_12);
                     lv_name_3_0=ruleIdentifier();
@@ -2603,12 +2603,12 @@
                       	            current = createModelElementForParent(grammarAccess.getImportCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_3_0, 
+                              		lv_name_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.Identifier");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2620,7 +2620,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_4, grammarAccess.getImportCSAccess().getColonKeyword_1_1());
-                          
+
                     }
 
                     }
@@ -2635,9 +2635,9 @@
             // InternalCompleteOCL.g:914:3: lv_ownedPathName_5_0= ruleURIPathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_22);
             lv_ownedPathName_5_0=ruleURIPathNameCS();
@@ -2650,12 +2650,12 @@
               	            current = createModelElementForParent(grammarAccess.getImportCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_5_0, 
+                      		lv_ownedPathName_5_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIPathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -2681,7 +2681,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isAll_6_0, grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -2689,7 +2689,7 @@
                       	            current = createModelElement(grammarAccess.getImportCSRule());
                       	        }
                              		setWithLastConsumed(current, "isAll", true, "::*");
-                      	    
+
                     }
 
                     }
@@ -2707,14 +2707,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2735,7 +2735,7 @@
             // InternalCompleteOCL.g:955:2: iv_ruleOperationContextDeclCS= ruleOperationContextDeclCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getOperationContextDeclCSRule()); 
+               newCompositeNode(grammarAccess.getOperationContextDeclCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleOperationContextDeclCS=ruleOperationContextDeclCS();
@@ -2743,18 +2743,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleOperationContextDeclCS; 
+               current =iv_ruleOperationContextDeclCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2793,8 +2793,8 @@
         EObject lv_ownedBodies_17_0 = null;
 
 
-         enterRule(); 
-            
+         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 ) ) ) )* )
@@ -2806,7 +2806,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getOperationContextDeclCSAccess().getContextKeyword_0());
-                  
+
             }
             // InternalCompleteOCL.g:970:1: ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )?
             int alt22=2;
@@ -2823,9 +2823,9 @@
                     // InternalCompleteOCL.g:972:3: lv_ownedSignature_1_0= ruleTemplateSignatureCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_5);
                     lv_ownedSignature_1_0=ruleTemplateSignatureCS();
@@ -2838,12 +2838,12 @@
                       	            current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedSignature",
-                              		lv_ownedSignature_1_0, 
+                              		lv_ownedSignature_1_0,
                               		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TemplateSignatureCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2861,9 +2861,9 @@
             // InternalCompleteOCL.g:990:3: lv_ownedPathName_2_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_15);
             lv_ownedPathName_2_0=rulePathNameCS();
@@ -2876,12 +2876,12 @@
               	            current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_2_0, 
+                      		lv_ownedPathName_2_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -2893,7 +2893,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getOperationContextDeclCSAccess().getLeftParenthesisKeyword_3());
-                  
+
             }
             // InternalCompleteOCL.g:1010:1: ( ( (lv_ownedParameters_4_0= ruleParameterCS ) ) (otherlv_5= ',' ( (lv_ownedParameters_6_0= ruleParameterCS ) ) )* )?
             int alt24=2;
@@ -2913,9 +2913,9 @@
                     // InternalCompleteOCL.g:1012:3: lv_ownedParameters_4_0= ruleParameterCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_17);
                     lv_ownedParameters_4_0=ruleParameterCS();
@@ -2928,12 +2928,12 @@
                       	            current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParameters",
-                              		lv_ownedParameters_4_0, 
+                              		lv_ownedParameters_4_0,
                               		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ParameterCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2960,7 +2960,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_5, grammarAccess.getOperationContextDeclCSAccess().getCommaKeyword_4_1_0());
-                    	          
+
                     	    }
                     	    // InternalCompleteOCL.g:1032:1: ( (lv_ownedParameters_6_0= ruleParameterCS ) )
                     	    // InternalCompleteOCL.g:1033:1: (lv_ownedParameters_6_0= ruleParameterCS )
@@ -2969,9 +2969,9 @@
                     	    // InternalCompleteOCL.g:1034:3: lv_ownedParameters_6_0= ruleParameterCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedParametersParameterCSParserRuleCall_4_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_17);
                     	    lv_ownedParameters_6_0=ruleParameterCS();
@@ -2984,12 +2984,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParameters",
-                    	              		lv_ownedParameters_6_0, 
+                    	              		lv_ownedParameters_6_0,
                     	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ParameterCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -3016,13 +3016,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getOperationContextDeclCSAccess().getRightParenthesisKeyword_5());
-                  
+
             }
             otherlv_8=(Token)match(input,23,FollowSets000.FOLLOW_24); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_8, grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_6());
-                  
+
             }
             // InternalCompleteOCL.g:1058:1: ( (lv_ownedType_9_0= ruleTypeExpCS ) )?
             int alt25=2;
@@ -3039,9 +3039,9 @@
                     // InternalCompleteOCL.g:1060:3: lv_ownedType_9_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_7_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_7_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_25);
                     lv_ownedType_9_0=ruleTypeExpCS();
@@ -3054,12 +3054,12 @@
                       	            current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_9_0, 
+                              		lv_ownedType_9_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -3104,7 +3104,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_10, grammarAccess.getOperationContextDeclCSAccess().getPreKeyword_8_0_0());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:1080:1: ( (lv_ownedPreconditions_11_0= ruleConstraintCS ) )
             	    // InternalCompleteOCL.g:1081:1: (lv_ownedPreconditions_11_0= ruleConstraintCS )
@@ -3113,9 +3113,9 @@
             	    // InternalCompleteOCL.g:1082:3: lv_ownedPreconditions_11_0= ruleConstraintCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsConstraintCSParserRuleCall_8_0_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPreconditionsConstraintCSParserRuleCall_8_0_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_25);
             	    lv_ownedPreconditions_11_0=ruleConstraintCS();
@@ -3128,12 +3128,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPreconditions",
-            	              		lv_ownedPreconditions_11_0, 
+            	              		lv_ownedPreconditions_11_0,
             	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -3157,7 +3157,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_12, grammarAccess.getOperationContextDeclCSAccess().getPostKeyword_8_1_0());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:1103:1: ( (lv_ownedPostconditions_13_0= ruleConstraintCS ) )
             	    // InternalCompleteOCL.g:1104:1: (lv_ownedPostconditions_13_0= ruleConstraintCS )
@@ -3166,9 +3166,9 @@
             	    // InternalCompleteOCL.g:1105:3: lv_ownedPostconditions_13_0= ruleConstraintCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsConstraintCSParserRuleCall_8_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedPostconditionsConstraintCSParserRuleCall_8_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_25);
             	    lv_ownedPostconditions_13_0=ruleConstraintCS();
@@ -3181,12 +3181,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPostconditions",
-            	              		lv_ownedPostconditions_13_0, 
+            	              		lv_ownedPostconditions_13_0,
             	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -3210,7 +3210,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_14, grammarAccess.getOperationContextDeclCSAccess().getBodyKeyword_8_2_0());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:1126:1: ( ruleUnrestrictedName )?
             	    int alt26=2;
@@ -3224,14 +3224,14 @@
             	            // InternalCompleteOCL.g:1127:2: ruleUnrestrictedName
             	            {
             	            if ( state.backtracking==0 ) {
-            	               
-            	              	  /* */ 
-            	              	
+
+            	              	  /* */
+
             	            }
             	            if ( state.backtracking==0 ) {
-            	               
-            	                      newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getUnrestrictedNameParserRuleCall_8_2_1()); 
-            	                  
+
+            	                      newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getUnrestrictedNameParserRuleCall_8_2_1());
+
             	            }
             	            pushFollow(FollowSets000.FOLLOW_12);
             	            ruleUnrestrictedName();
@@ -3239,9 +3239,9 @@
             	            state._fsp--;
             	            if (state.failed) return current;
             	            if ( state.backtracking==0 ) {
-            	               
+
             	                      afterParserOrEnumRuleCall();
-            	                  
+
             	            }
 
             	            }
@@ -3253,7 +3253,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_16, grammarAccess.getOperationContextDeclCSAccess().getColonKeyword_8_2_2());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:1141:1: ( (lv_ownedBodies_17_0= ruleSpecificationCS ) )
             	    // InternalCompleteOCL.g:1142:1: (lv_ownedBodies_17_0= ruleSpecificationCS )
@@ -3262,9 +3262,9 @@
             	    // InternalCompleteOCL.g:1143:3: lv_ownedBodies_17_0= ruleSpecificationCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesSpecificationCSParserRuleCall_8_2_3_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getOperationContextDeclCSAccess().getOwnedBodiesSpecificationCSParserRuleCall_8_2_3_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_25);
             	    lv_ownedBodies_17_0=ruleSpecificationCS();
@@ -3277,12 +3277,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getOperationContextDeclCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedBodies",
-            	              		lv_ownedBodies_17_0, 
+            	              		lv_ownedBodies_17_0,
             	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -3309,14 +3309,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3337,7 +3337,7 @@
             // InternalCompleteOCL.g:1169:2: iv_rulePackageDeclarationCS= rulePackageDeclarationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPackageDeclarationCSRule()); 
+               newCompositeNode(grammarAccess.getPackageDeclarationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePackageDeclarationCS=rulePackageDeclarationCS();
@@ -3345,18 +3345,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePackageDeclarationCS; 
+               current =iv_rulePackageDeclarationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3379,8 +3379,8 @@
         EObject lv_ownedContexts_4_0 = null;
 
 
-         enterRule(); 
-            
+         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' )
@@ -3392,7 +3392,7 @@
             if ( state.backtracking==0 ) {
 
                   	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 )
@@ -3401,9 +3401,9 @@
             // InternalCompleteOCL.g:1186:3: lv_ownedPathName_1_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_26);
             lv_ownedPathName_1_0=rulePathNameCS();
@@ -3416,12 +3416,12 @@
               	            current = createModelElementForParent(grammarAccess.getPackageDeclarationCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_1_0, 
+                      		lv_ownedPathName_1_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -3448,7 +3448,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_2, grammarAccess.getPackageDeclarationCSAccess().getInvKeyword_2_0());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:1206:1: ( (lv_ownedInvariants_3_0= ruleConstraintCS ) )
             	    // InternalCompleteOCL.g:1207:1: (lv_ownedInvariants_3_0= ruleConstraintCS )
@@ -3457,9 +3457,9 @@
             	    // InternalCompleteOCL.g:1208:3: lv_ownedInvariants_3_0= ruleConstraintCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_2_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedInvariantsConstraintCSParserRuleCall_2_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_26);
             	    lv_ownedInvariants_3_0=ruleConstraintCS();
@@ -3472,12 +3472,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getPackageDeclarationCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedInvariants",
-            	              		lv_ownedInvariants_3_0, 
+            	              		lv_ownedInvariants_3_0,
             	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -3513,9 +3513,9 @@
             	    // InternalCompleteOCL.g:1226:3: lv_ownedContexts_4_0= ruleContextDeclCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsContextDeclCSParserRuleCall_3_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getPackageDeclarationCSAccess().getOwnedContextsContextDeclCSParserRuleCall_3_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_27);
             	    lv_ownedContexts_4_0=ruleContextDeclCS();
@@ -3528,12 +3528,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getPackageDeclarationCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedContexts",
-            	              		lv_ownedContexts_4_0, 
+            	              		lv_ownedContexts_4_0,
             	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ContextDeclCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -3551,7 +3551,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getPackageDeclarationCSAccess().getEndpackageKeyword_4());
-                  
+
             }
 
             }
@@ -3560,14 +3560,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3588,7 +3588,7 @@
             // InternalCompleteOCL.g:1256:2: iv_ruleParameterCS= ruleParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getParameterCSRule()); 
+               newCompositeNode(grammarAccess.getParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleParameterCS=ruleParameterCS();
@@ -3596,18 +3596,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleParameterCS; 
+               current =iv_ruleParameterCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3626,8 +3626,8 @@
         EObject lv_ownedType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:1266:28: ( ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' )? ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) )
             // InternalCompleteOCL.g:1267:1: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' )? ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )
@@ -3696,9 +3696,9 @@
                     // InternalCompleteOCL.g:1269:3: lv_name_0_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_12);
                     lv_name_0_0=ruleUnrestrictedName();
@@ -3711,12 +3711,12 @@
                       	            current = createModelElementForParent(grammarAccess.getParameterCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_0_0, 
+                              		lv_name_0_0,
                               		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -3728,7 +3728,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getParameterCSAccess().getColonKeyword_0_1());
-                          
+
                     }
 
                     }
@@ -3743,9 +3743,9 @@
             // InternalCompleteOCL.g:1291:3: lv_ownedType_2_0= ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedType_2_0=ruleTypeExpCS();
@@ -3758,12 +3758,12 @@
               	            current = createModelElementForParent(grammarAccess.getParameterCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_2_0, 
+                      		lv_ownedType_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -3778,14 +3778,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3806,7 +3806,7 @@
             // InternalCompleteOCL.g:1317:2: iv_rulePropertyContextDeclCS= rulePropertyContextDeclCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPropertyContextDeclCSRule()); 
+               newCompositeNode(grammarAccess.getPropertyContextDeclCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePropertyContextDeclCS=rulePropertyContextDeclCS();
@@ -3814,18 +3814,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePropertyContextDeclCS; 
+               current =iv_rulePropertyContextDeclCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3852,8 +3852,8 @@
         EObject lv_ownedDefaultExpressions_8_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:1327:28: ( (otherlv_0= 'context' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( (lv_ownedDerivedInvariants_5_0= ruleConstraintCS ) ) ) | (otherlv_6= 'init' otherlv_7= ':' ( (lv_ownedDefaultExpressions_8_0= ruleSpecificationCS ) ) ) )* ) )
             // InternalCompleteOCL.g:1328:1: (otherlv_0= 'context' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) ( (otherlv_4= 'derive' ( (lv_ownedDerivedInvariants_5_0= ruleConstraintCS ) ) ) | (otherlv_6= 'init' otherlv_7= ':' ( (lv_ownedDefaultExpressions_8_0= ruleSpecificationCS ) ) ) )* )
@@ -3865,7 +3865,7 @@
             if ( state.backtracking==0 ) {
 
                   	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 )
@@ -3874,9 +3874,9 @@
             // InternalCompleteOCL.g:1334:3: lv_ownedPathName_1_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_12);
             lv_ownedPathName_1_0=rulePathNameCS();
@@ -3889,12 +3889,12 @@
               	            current = createModelElementForParent(grammarAccess.getPropertyContextDeclCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_1_0, 
+                      		lv_ownedPathName_1_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -3906,7 +3906,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_2());
-                  
+
             }
             // InternalCompleteOCL.g:1354:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
             // InternalCompleteOCL.g:1355:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -3915,9 +3915,9 @@
             // InternalCompleteOCL.g:1356:3: lv_ownedType_3_0= ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedTypeTypeExpCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_28);
             lv_ownedType_3_0=ruleTypeExpCS();
@@ -3930,12 +3930,12 @@
               	            current = createModelElementForParent(grammarAccess.getPropertyContextDeclCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_3_0, 
+                      		lv_ownedType_3_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -3968,7 +3968,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_4, grammarAccess.getPropertyContextDeclCSAccess().getDeriveKeyword_4_0_0());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:1376:1: ( (lv_ownedDerivedInvariants_5_0= ruleConstraintCS ) )
             	    // InternalCompleteOCL.g:1377:1: (lv_ownedDerivedInvariants_5_0= ruleConstraintCS )
@@ -3977,9 +3977,9 @@
             	    // InternalCompleteOCL.g:1378:3: lv_ownedDerivedInvariants_5_0= ruleConstraintCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDerivedInvariantsConstraintCSParserRuleCall_4_0_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDerivedInvariantsConstraintCSParserRuleCall_4_0_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_28);
             	    lv_ownedDerivedInvariants_5_0=ruleConstraintCS();
@@ -3992,12 +3992,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getPropertyContextDeclCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedDerivedInvariants",
-            	              		lv_ownedDerivedInvariants_5_0, 
+            	              		lv_ownedDerivedInvariants_5_0,
             	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.ConstraintCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -4021,13 +4021,13 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_6, grammarAccess.getPropertyContextDeclCSAccess().getInitKeyword_4_1_0());
-            	          
+
             	    }
             	    otherlv_7=(Token)match(input,23,FollowSets000.FOLLOW_10); if (state.failed) return current;
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_7, grammarAccess.getPropertyContextDeclCSAccess().getColonKeyword_4_1_1());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:1403:1: ( (lv_ownedDefaultExpressions_8_0= ruleSpecificationCS ) )
             	    // InternalCompleteOCL.g:1404:1: (lv_ownedDefaultExpressions_8_0= ruleSpecificationCS )
@@ -4036,9 +4036,9 @@
             	    // InternalCompleteOCL.g:1405:3: lv_ownedDefaultExpressions_8_0= ruleSpecificationCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_1_2_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getPropertyContextDeclCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_1_2_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_28);
             	    lv_ownedDefaultExpressions_8_0=ruleSpecificationCS();
@@ -4051,12 +4051,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getPropertyContextDeclCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedDefaultExpressions",
-            	              		lv_ownedDefaultExpressions_8_0, 
+            	              		lv_ownedDefaultExpressions_8_0,
             	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.SpecificationCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -4083,14 +4083,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4111,7 +4111,7 @@
             // InternalCompleteOCL.g:1431:2: iv_ruleSpecificationCS= ruleSpecificationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getSpecificationCSRule()); 
+               newCompositeNode(grammarAccess.getSpecificationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleSpecificationCS=ruleSpecificationCS();
@@ -4119,18 +4119,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleSpecificationCS; 
+               current =iv_ruleSpecificationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4147,8 +4147,8 @@
         EObject lv_ownedExpression_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:1441:28: ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) | ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) ) ) )
             // InternalCompleteOCL.g:1442:1: ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) | ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) ) )
@@ -4181,9 +4181,9 @@
                     // InternalCompleteOCL.g:1444:3: lv_ownedExpression_0_0= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedExpression_0_0=ruleExpCS();
@@ -4196,12 +4196,12 @@
                       	            current = createModelElementForParent(grammarAccess.getSpecificationCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExpression",
-                              		lv_ownedExpression_0_0, 
+                              		lv_ownedExpression_0_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -4224,8 +4224,8 @@
                     lv_exprString_1_0=(Token)match(input,RULE_UNQUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_exprString_1_0, grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0()); 
-                      		
+                      			newLeafNode(lv_exprString_1_0, grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -4233,11 +4233,11 @@
                       	            current = createModelElement(grammarAccess.getSpecificationCSRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"exprString",
-                              		lv_exprString_1_0, 
+                              		lv_exprString_1_0,
                               		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UNQUOTED_STRING");
-                      	    
+
                     }
 
                     }
@@ -4255,14 +4255,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4283,7 +4283,7 @@
             // InternalCompleteOCL.g:1489:2: iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTemplateSignatureCSRule()); 
+               newCompositeNode(grammarAccess.getTemplateSignatureCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTemplateSignatureCS=ruleTemplateSignatureCS();
@@ -4291,18 +4291,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTemplateSignatureCS; 
+               current =iv_ruleTemplateSignatureCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4330,8 +4330,8 @@
         EObject lv_ownedParameters_8_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:1499:28: ( ( (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) | (otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' ) ) )
             // InternalCompleteOCL.g:1500:1: ( (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) | (otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' ) )
@@ -4364,7 +4364,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_0, grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:1504:1: ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) )
                     // InternalCompleteOCL.g:1505:1: (lv_ownedParameters_1_0= ruleTypeParameterCS )
@@ -4373,9 +4373,9 @@
                     // InternalCompleteOCL.g:1506:3: lv_ownedParameters_1_0= ruleTypeParameterCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_17);
                     lv_ownedParameters_1_0=ruleTypeParameterCS();
@@ -4388,12 +4388,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParameters",
-                              		lv_ownedParameters_1_0, 
+                              		lv_ownedParameters_1_0,
                               		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -4420,7 +4420,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_2, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0());
-                    	          
+
                     	    }
                     	    // InternalCompleteOCL.g:1526:1: ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) )
                     	    // InternalCompleteOCL.g:1527:1: (lv_ownedParameters_3_0= ruleTypeParameterCS )
@@ -4429,9 +4429,9 @@
                     	    // InternalCompleteOCL.g:1528:3: lv_ownedParameters_3_0= ruleTypeParameterCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_17);
                     	    lv_ownedParameters_3_0=ruleTypeParameterCS();
@@ -4444,12 +4444,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParameters",
-                    	              		lv_ownedParameters_3_0, 
+                    	              		lv_ownedParameters_3_0,
                     	              		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -4470,7 +4470,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_4, grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3());
-                          
+
                     }
 
                     }
@@ -4488,7 +4488,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:1553:1: ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) )
                     // InternalCompleteOCL.g:1554:1: (lv_ownedParameters_6_0= ruleTypeParameterCS )
@@ -4497,9 +4497,9 @@
                     // InternalCompleteOCL.g:1555:3: lv_ownedParameters_6_0= ruleTypeParameterCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_29);
                     lv_ownedParameters_6_0=ruleTypeParameterCS();
@@ -4512,12 +4512,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParameters",
-                              		lv_ownedParameters_6_0, 
+                              		lv_ownedParameters_6_0,
                               		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -4544,7 +4544,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_7, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0());
-                    	          
+
                     	    }
                     	    // InternalCompleteOCL.g:1575:1: ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) )
                     	    // InternalCompleteOCL.g:1576:1: (lv_ownedParameters_8_0= ruleTypeParameterCS )
@@ -4553,9 +4553,9 @@
                     	    // InternalCompleteOCL.g:1577:3: lv_ownedParameters_8_0= ruleTypeParameterCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_29);
                     	    lv_ownedParameters_8_0=ruleTypeParameterCS();
@@ -4568,12 +4568,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParameters",
-                    	              		lv_ownedParameters_8_0, 
+                    	              		lv_ownedParameters_8_0,
                     	              		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -4594,7 +4594,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_9, grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3());
-                          
+
                     }
 
                     }
@@ -4609,14 +4609,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4637,7 +4637,7 @@
             // InternalCompleteOCL.g:1607:2: iv_ruleTypedRefCS= ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypedRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypedRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypedRefCS=ruleTypedRefCS();
@@ -4645,18 +4645,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypedRefCS; 
+               current =iv_ruleTypedRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4674,8 +4674,8 @@
         EObject this_TypedTypeRefCS_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:1617:28: ( (this_TypeLiteralCS_0= ruleTypeLiteralCS | this_TypedTypeRefCS_1= ruleTypedTypeRefCS ) )
             // InternalCompleteOCL.g:1618:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS | this_TypedTypeRefCS_1= ruleTypedTypeRefCS )
@@ -4702,14 +4702,14 @@
                     // InternalCompleteOCL.g:1619:2: this_TypeLiteralCS_0= ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypeLiteralCS_0=ruleTypeLiteralCS();
@@ -4717,10 +4717,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeLiteralCS_0; 
+
+                              current = this_TypeLiteralCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -4729,14 +4729,14 @@
                     // InternalCompleteOCL.g:1632:2: this_TypedTypeRefCS_1= ruleTypedTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypedTypeRefCS_1=ruleTypedTypeRefCS();
@@ -4744,10 +4744,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypedTypeRefCS_1; 
+
+                              current = this_TypedTypeRefCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -4759,14 +4759,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4787,7 +4787,7 @@
             // InternalCompleteOCL.g:1653:2: iv_ruleUnrestrictedName= ruleUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnrestrictedNameRule()); 
+               newCompositeNode(grammarAccess.getUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnrestrictedName=ruleUnrestrictedName();
@@ -4795,18 +4795,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnrestrictedName.getText(); 
+               current =iv_ruleUnrestrictedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4823,8 +4823,8 @@
         AntlrDatatypeRuleToken this_EssentialOCLUnrestrictedName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:1663:28: ( (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName | kw= 'import' | kw= 'include' | kw= 'library' ) )
             // InternalCompleteOCL.g:1664:1: (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName | kw= 'import' | kw= 'include' | kw= 'library' )
@@ -4866,9 +4866,9 @@
                     // InternalCompleteOCL.g:1665:5: this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_EssentialOCLUnrestrictedName_0=ruleEssentialOCLUnrestrictedName();
@@ -4878,12 +4878,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_EssentialOCLUnrestrictedName_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -4895,8 +4895,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getImportKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getImportKeyword_1());
+
                     }
 
                     }
@@ -4908,8 +4908,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getIncludeKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getIncludeKeyword_2());
+
                     }
 
                     }
@@ -4921,8 +4921,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getLibraryKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getLibraryKeyword_3());
+
                     }
 
                     }
@@ -4934,14 +4934,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4962,7 +4962,7 @@
             // InternalCompleteOCL.g:1706:2: iv_ruleNavigatingArgExpCS= ruleNavigatingArgExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingArgExpCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingArgExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingArgExpCS=ruleNavigatingArgExpCS();
@@ -4970,18 +4970,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingArgExpCS; 
+               current =iv_ruleNavigatingArgExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4998,8 +4998,8 @@
         EObject this_ExpCS_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:1716:28: ( ( ( () otherlv_1= '?' ) | this_ExpCS_2= ruleExpCS ) )
             // InternalCompleteOCL.g:1717:1: ( ( () otherlv_1= '?' ) | this_ExpCS_2= ruleExpCS )
@@ -5029,19 +5029,19 @@
                     // InternalCompleteOCL.g:1717:3: () otherlv_1= '?'
                     {
                     // InternalCompleteOCL.g:1717:3: ()
-                    // InternalCompleteOCL.g:1718:2: 
+                    // InternalCompleteOCL.g:1718:2:
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                               current = forceCreateModelElement(
                                   grammarAccess.getNavigatingArgExpCSAccess().getOCLMessageArgCSAction_0_0(),
                                   current);
-                          
+
                     }
 
                     }
@@ -5050,7 +5050,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getNavigatingArgExpCSAccess().getQuestionMarkKeyword_0_1());
-                          
+
                     }
 
                     }
@@ -5062,14 +5062,14 @@
                     // InternalCompleteOCL.g:1732:2: this_ExpCS_2= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_ExpCS_2=ruleExpCS();
@@ -5077,10 +5077,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_ExpCS_2; 
+
+                              current = this_ExpCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -5092,14 +5092,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5120,7 +5120,7 @@
             // InternalCompleteOCL.g:1753:2: iv_ruleNavigationOperatorName= ruleNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigationOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigationOperatorName=ruleNavigationOperatorName();
@@ -5128,18 +5128,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigationOperatorName.getText(); 
+               current =iv_ruleNavigationOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5157,8 +5157,8 @@
         AntlrDatatypeRuleToken this_CompleteOCLNavigationOperatorName_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:1763:28: ( (this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName | this_CompleteOCLNavigationOperatorName_1= ruleCompleteOCLNavigationOperatorName ) )
             // InternalCompleteOCL.g:1764:1: (this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName | this_CompleteOCLNavigationOperatorName_1= ruleCompleteOCLNavigationOperatorName )
@@ -5185,9 +5185,9 @@
                     // InternalCompleteOCL.g:1765:5: this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_EssentialOCLNavigationOperatorName_0=ruleEssentialOCLNavigationOperatorName();
@@ -5197,12 +5197,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_EssentialOCLNavigationOperatorName_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -5211,9 +5211,9 @@
                     // InternalCompleteOCL.g:1777:5: this_CompleteOCLNavigationOperatorName_1= ruleCompleteOCLNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getCompleteOCLNavigationOperatorNameParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getCompleteOCLNavigationOperatorNameParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CompleteOCLNavigationOperatorName_1=ruleCompleteOCLNavigationOperatorName();
@@ -5223,12 +5223,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_CompleteOCLNavigationOperatorName_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -5240,14 +5240,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5268,7 +5268,7 @@
             // InternalCompleteOCL.g:1797:2: iv_rulePrimitiveTypeIdentifier= rulePrimitiveTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule()); 
+               newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimitiveTypeIdentifier=rulePrimitiveTypeIdentifier();
@@ -5276,18 +5276,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimitiveTypeIdentifier.getText(); 
+               current =iv_rulePrimitiveTypeIdentifier.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5302,8 +5302,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:1807:28: ( (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclMessage' | kw= 'OclState' | kw= 'OclVoid' ) )
             // InternalCompleteOCL.g:1808:1: (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclMessage' | kw= 'OclState' | kw= 'OclVoid' )
@@ -5377,8 +5377,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
+
                     }
 
                     }
@@ -5390,8 +5390,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
+
                     }
 
                     }
@@ -5403,8 +5403,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
+
                     }
 
                     }
@@ -5416,8 +5416,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
+
                     }
 
                     }
@@ -5429,8 +5429,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
+
                     }
 
                     }
@@ -5442,8 +5442,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
+
                     }
 
                     }
@@ -5455,8 +5455,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
+
                     }
 
                     }
@@ -5468,8 +5468,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclMessageKeyword_7()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclMessageKeyword_7());
+
                     }
 
                     }
@@ -5481,8 +5481,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclStateKeyword_8()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclStateKeyword_8());
+
                     }
 
                     }
@@ -5494,8 +5494,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_9()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_9());
+
                     }
 
                     }
@@ -5507,14 +5507,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5535,7 +5535,7 @@
             // InternalCompleteOCL.g:1891:2: iv_ruleEssentialOCLUnaryOperatorName= ruleEssentialOCLUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLUnaryOperatorName=ruleEssentialOCLUnaryOperatorName();
@@ -5543,18 +5543,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLUnaryOperatorName.getText(); 
+               current =iv_ruleEssentialOCLUnaryOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5569,8 +5569,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:1901:28: ( (kw= '-' | kw= 'not' ) )
             // InternalCompleteOCL.g:1902:1: (kw= '-' | kw= 'not' )
@@ -5600,8 +5600,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
+
                     }
 
                     }
@@ -5613,8 +5613,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
+
                     }
 
                     }
@@ -5626,14 +5626,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5654,7 +5654,7 @@
             // InternalCompleteOCL.g:1925:2: iv_ruleEssentialOCLInfixOperatorName= ruleEssentialOCLInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLInfixOperatorName=ruleEssentialOCLInfixOperatorName();
@@ -5662,18 +5662,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLInfixOperatorName.getText(); 
+               current =iv_ruleEssentialOCLInfixOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5688,8 +5688,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:1935:28: ( (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'or' | kw= 'xor' | kw= 'implies' ) )
             // InternalCompleteOCL.g:1936:1: (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'or' | kw= 'xor' | kw= 'implies' )
@@ -5783,8 +5783,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
+
                     }
 
                     }
@@ -5796,8 +5796,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
+
                     }
 
                     }
@@ -5809,8 +5809,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
+
                     }
 
                     }
@@ -5822,8 +5822,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
+
                     }
 
                     }
@@ -5835,8 +5835,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
+
                     }
 
                     }
@@ -5848,8 +5848,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
+
                     }
 
                     }
@@ -5861,8 +5861,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
+
                     }
 
                     }
@@ -5874,8 +5874,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
+
                     }
 
                     }
@@ -5887,8 +5887,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
+
                     }
 
                     }
@@ -5900,8 +5900,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
+
                     }
 
                     }
@@ -5913,8 +5913,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
+
                     }
 
                     }
@@ -5926,8 +5926,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
+
                     }
 
                     }
@@ -5939,8 +5939,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
+
                     }
 
                     }
@@ -5952,8 +5952,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
+
                     }
 
                     }
@@ -5965,14 +5965,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5993,7 +5993,7 @@
             // InternalCompleteOCL.g:2043:2: iv_ruleEssentialOCLNavigationOperatorName= ruleEssentialOCLNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLNavigationOperatorName=ruleEssentialOCLNavigationOperatorName();
@@ -6001,18 +6001,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLNavigationOperatorName.getText(); 
+               current =iv_ruleEssentialOCLNavigationOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6027,8 +6027,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2053:28: ( (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' ) )
             // InternalCompleteOCL.g:2054:1: (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' )
@@ -6072,8 +6072,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
+
                     }
 
                     }
@@ -6085,8 +6085,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
+
                     }
 
                     }
@@ -6098,8 +6098,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
+
                     }
 
                     }
@@ -6111,8 +6111,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
+
                     }
 
                     }
@@ -6124,14 +6124,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6152,7 +6152,7 @@
             // InternalCompleteOCL.g:2091:2: iv_ruleBinaryOperatorName= ruleBinaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getBinaryOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getBinaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleBinaryOperatorName=ruleBinaryOperatorName();
@@ -6160,18 +6160,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleBinaryOperatorName.getText(); 
+               current =iv_ruleBinaryOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6189,8 +6189,8 @@
         AntlrDatatypeRuleToken this_NavigationOperatorName_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2101:28: ( (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName ) )
             // InternalCompleteOCL.g:2102:1: (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName )
@@ -6217,9 +6217,9 @@
                     // InternalCompleteOCL.g:2103:5: this_InfixOperatorName_0= ruleInfixOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_InfixOperatorName_0=ruleInfixOperatorName();
@@ -6229,12 +6229,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_InfixOperatorName_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -6243,9 +6243,9 @@
                     // InternalCompleteOCL.g:2115:5: this_NavigationOperatorName_1= ruleNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NavigationOperatorName_1=ruleNavigationOperatorName();
@@ -6255,12 +6255,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_NavigationOperatorName_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -6272,14 +6272,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6300,7 +6300,7 @@
             // InternalCompleteOCL.g:2135:2: iv_ruleInfixOperatorName= ruleInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getInfixOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleInfixOperatorName=ruleInfixOperatorName();
@@ -6308,18 +6308,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleInfixOperatorName.getText(); 
+               current =iv_ruleInfixOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6335,16 +6335,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLInfixOperatorName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2145:28: (this_EssentialOCLInfixOperatorName_0= ruleEssentialOCLInfixOperatorName )
             // InternalCompleteOCL.g:2147:5: this_EssentialOCLInfixOperatorName_0= ruleEssentialOCLInfixOperatorName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLInfixOperatorName_0=ruleEssentialOCLInfixOperatorName();
@@ -6354,25 +6354,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLInfixOperatorName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6393,7 +6393,7 @@
             // InternalCompleteOCL.g:2167:2: iv_ruleUnaryOperatorName= ruleUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnaryOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnaryOperatorName=ruleUnaryOperatorName();
@@ -6401,18 +6401,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnaryOperatorName.getText(); 
+               current =iv_ruleUnaryOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6428,16 +6428,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLUnaryOperatorName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2177:28: (this_EssentialOCLUnaryOperatorName_0= ruleEssentialOCLUnaryOperatorName )
             // InternalCompleteOCL.g:2179:5: this_EssentialOCLUnaryOperatorName_0= ruleEssentialOCLUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLUnaryOperatorName_0=ruleEssentialOCLUnaryOperatorName();
@@ -6447,25 +6447,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLUnaryOperatorName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6486,7 +6486,7 @@
             // InternalCompleteOCL.g:2199:2: iv_ruleEssentialOCLUnrestrictedName= ruleEssentialOCLUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLUnrestrictedName=ruleEssentialOCLUnrestrictedName();
@@ -6494,18 +6494,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLUnrestrictedName.getText(); 
+               current =iv_ruleEssentialOCLUnrestrictedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6521,16 +6521,16 @@
         AntlrDatatypeRuleToken this_Identifier_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2209:28: (this_Identifier_0= ruleIdentifier )
             // InternalCompleteOCL.g:2211:5: this_Identifier_0= ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_Identifier_0=ruleIdentifier();
@@ -6540,25 +6540,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_Identifier_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6579,7 +6579,7 @@
             // InternalCompleteOCL.g:2231:2: iv_ruleEssentialOCLUnreservedName= ruleEssentialOCLUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLUnreservedName=ruleEssentialOCLUnreservedName();
@@ -6587,18 +6587,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLUnreservedName.getText(); 
+               current =iv_ruleEssentialOCLUnreservedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6619,8 +6619,8 @@
         AntlrDatatypeRuleToken this_PrimitiveTypeIdentifier_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2241:28: ( (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' ) )
             // InternalCompleteOCL.g:2242:1: (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' )
@@ -6683,9 +6683,9 @@
                     // InternalCompleteOCL.g:2243:5: this_UnrestrictedName_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_UnrestrictedName_0=ruleUnrestrictedName();
@@ -6695,12 +6695,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_UnrestrictedName_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -6709,9 +6709,9 @@
                     // InternalCompleteOCL.g:2255:5: this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CollectionTypeIdentifier_1=ruleCollectionTypeIdentifier();
@@ -6721,12 +6721,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_CollectionTypeIdentifier_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -6735,9 +6735,9 @@
                     // InternalCompleteOCL.g:2267:5: this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimitiveTypeIdentifier_2=rulePrimitiveTypeIdentifier();
@@ -6747,12 +6747,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_PrimitiveTypeIdentifier_2);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -6764,8 +6764,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
+
                     }
 
                     }
@@ -6777,8 +6777,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
+
                     }
 
                     }
@@ -6790,14 +6790,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6818,7 +6818,7 @@
             // InternalCompleteOCL.g:2301:2: iv_ruleUnreservedName= ruleUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnreservedNameRule()); 
+               newCompositeNode(grammarAccess.getUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnreservedName=ruleUnreservedName();
@@ -6826,18 +6826,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnreservedName.getText(); 
+               current =iv_ruleUnreservedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6853,16 +6853,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLUnreservedName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2311:28: (this_EssentialOCLUnreservedName_0= ruleEssentialOCLUnreservedName )
             // InternalCompleteOCL.g:2313:5: this_EssentialOCLUnreservedName_0= ruleEssentialOCLUnreservedName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLUnreservedName_0=ruleEssentialOCLUnreservedName();
@@ -6872,25 +6872,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLUnreservedName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6911,7 +6911,7 @@
             // InternalCompleteOCL.g:2333:2: iv_ruleURIPathNameCS= ruleURIPathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getURIPathNameCSRule()); 
+               newCompositeNode(grammarAccess.getURIPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleURIPathNameCS=ruleURIPathNameCS();
@@ -6919,18 +6919,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleURIPathNameCS; 
+               current =iv_ruleURIPathNameCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6949,8 +6949,8 @@
         EObject lv_ownedPathElements_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2343:28: ( ( ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) )
             // InternalCompleteOCL.g:2344:1: ( ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
@@ -6965,9 +6965,9 @@
             // InternalCompleteOCL.g:2346:3: lv_ownedPathElements_0_0= ruleURIFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_30);
             lv_ownedPathElements_0_0=ruleURIFirstPathElementCS();
@@ -6980,12 +6980,12 @@
               	            current = createModelElementForParent(grammarAccess.getURIPathNameCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedPathElements",
-                      		lv_ownedPathElements_0_0, 
+                      		lv_ownedPathElements_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIFirstPathElementCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -7012,7 +7012,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:2366:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
             	    // InternalCompleteOCL.g:2367:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
@@ -7021,9 +7021,9 @@
             	    // InternalCompleteOCL.g:2368:3: lv_ownedPathElements_2_0= ruleNextPathElementCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_30);
             	    lv_ownedPathElements_2_0=ruleNextPathElementCS();
@@ -7036,12 +7036,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getURIPathNameCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPathElements",
-            	              		lv_ownedPathElements_2_0, 
+            	              		lv_ownedPathElements_2_0,
             	              		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -7065,14 +7065,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7093,7 +7093,7 @@
             // InternalCompleteOCL.g:2394:2: iv_ruleURIFirstPathElementCS= ruleURIFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getURIFirstPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getURIFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleURIFirstPathElementCS=ruleURIFirstPathElementCS();
@@ -7101,18 +7101,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleURIFirstPathElementCS; 
+               current =iv_ruleURIFirstPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7125,8 +7125,8 @@
     public final EObject ruleURIFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2404:28: ( ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) ) )
             // InternalCompleteOCL.g:2405:1: ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) )
@@ -7159,21 +7159,21 @@
                     // InternalCompleteOCL.g:2407:3: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
                       	        }
-                              
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -7181,9 +7181,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7201,19 +7201,19 @@
                     // InternalCompleteOCL.g:2424:7: () ( ( ruleURI ) )
                     {
                     // InternalCompleteOCL.g:2424:7: ()
-                    // InternalCompleteOCL.g:2425:2: 
+                    // InternalCompleteOCL.g:2425:2:
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                               current = forceCreateModelElement(
                                   grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0(),
                                   current);
-                          
+
                     }
 
                     }
@@ -7225,21 +7225,21 @@
                     // InternalCompleteOCL.g:2435:3: ruleURI
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
                       	        }
-                              
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleURI();
@@ -7247,9 +7247,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7270,14 +7270,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7298,7 +7298,7 @@
             // InternalCompleteOCL.g:2461:2: iv_rulePrimitiveTypeCS= rulePrimitiveTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimitiveTypeCSRule()); 
+               newCompositeNode(grammarAccess.getPrimitiveTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimitiveTypeCS=rulePrimitiveTypeCS();
@@ -7306,18 +7306,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimitiveTypeCS; 
+               current =iv_rulePrimitiveTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7333,8 +7333,8 @@
         AntlrDatatypeRuleToken lv_name_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2471:28: ( ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) ) )
             // InternalCompleteOCL.g:2472:1: ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) )
@@ -7346,9 +7346,9 @@
             // InternalCompleteOCL.g:2474:3: lv_name_0_0= rulePrimitiveTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_name_0_0=rulePrimitiveTypeIdentifier();
@@ -7361,12 +7361,12 @@
               	            current = createModelElementForParent(grammarAccess.getPrimitiveTypeCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.PrimitiveTypeIdentifier");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -7378,14 +7378,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7406,7 +7406,7 @@
             // InternalCompleteOCL.g:2500:2: iv_ruleCollectionTypeIdentifier= ruleCollectionTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule()); 
+               newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionTypeIdentifier=ruleCollectionTypeIdentifier();
@@ -7414,18 +7414,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionTypeIdentifier.getText(); 
+               current =iv_ruleCollectionTypeIdentifier.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7440,8 +7440,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2510:28: ( (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' ) )
             // InternalCompleteOCL.g:2511:1: (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' )
@@ -7490,8 +7490,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
+
                     }
 
                     }
@@ -7503,8 +7503,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
+
                     }
 
                     }
@@ -7516,8 +7516,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
+
                     }
 
                     }
@@ -7529,8 +7529,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
+
                     }
 
                     }
@@ -7542,8 +7542,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
+
                     }
 
                     }
@@ -7555,14 +7555,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7583,7 +7583,7 @@
             // InternalCompleteOCL.g:2555:2: iv_ruleCollectionTypeCS= ruleCollectionTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionTypeCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionTypeCS=ruleCollectionTypeCS();
@@ -7591,18 +7591,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionTypeCS; 
+               current =iv_ruleCollectionTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7622,8 +7622,8 @@
         EObject lv_ownedType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2565:28: ( ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) otherlv_3= ')' )? ) )
             // InternalCompleteOCL.g:2566:1: ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) otherlv_3= ')' )? )
@@ -7638,9 +7638,9 @@
             // InternalCompleteOCL.g:2568:3: lv_name_0_0= ruleCollectionTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_32);
             lv_name_0_0=ruleCollectionTypeIdentifier();
@@ -7653,12 +7653,12 @@
               	            current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeIdentifier");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -7681,7 +7681,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:2588:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                     // InternalCompleteOCL.g:2589:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -7690,9 +7690,9 @@
                     // InternalCompleteOCL.g:2590:3: lv_ownedType_2_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_11);
                     lv_ownedType_2_0=ruleTypeExpCS();
@@ -7705,12 +7705,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_2_0, 
+                              		lv_ownedType_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7722,7 +7722,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
-                          
+
                     }
 
                     }
@@ -7737,14 +7737,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7765,7 +7765,7 @@
             // InternalCompleteOCL.g:2620:2: iv_ruleMapTypeCS= ruleMapTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMapTypeCSRule()); 
+               newCompositeNode(grammarAccess.getMapTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMapTypeCS=ruleMapTypeCS();
@@ -7773,18 +7773,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMapTypeCS; 
+               current =iv_ruleMapTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7806,8 +7806,8 @@
         EObject lv_ownedValueType_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2630:28: ( ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? ) )
             // InternalCompleteOCL.g:2631:1: ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? )
@@ -7825,7 +7825,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_name_0_0, grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -7833,7 +7833,7 @@
               	            current = createModelElement(grammarAccess.getMapTypeCSRule());
               	        }
                      		setWithLastConsumed(current, "name", lv_name_0_0, "Map");
-              	    
+
             }
 
             }
@@ -7856,7 +7856,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:2650:1: ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) )
                     // InternalCompleteOCL.g:2651:1: (lv_ownedKeyType_2_0= ruleTypeExpCS )
@@ -7865,9 +7865,9 @@
                     // InternalCompleteOCL.g:2652:3: lv_ownedKeyType_2_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_33);
                     lv_ownedKeyType_2_0=ruleTypeExpCS();
@@ -7880,12 +7880,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedKeyType",
-                              		lv_ownedKeyType_2_0, 
+                              		lv_ownedKeyType_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7897,7 +7897,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
-                          
+
                     }
                     // InternalCompleteOCL.g:2672:1: ( (lv_ownedValueType_4_0= ruleTypeExpCS ) )
                     // InternalCompleteOCL.g:2673:1: (lv_ownedValueType_4_0= ruleTypeExpCS )
@@ -7906,9 +7906,9 @@
                     // InternalCompleteOCL.g:2674:3: lv_ownedValueType_4_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_11);
                     lv_ownedValueType_4_0=ruleTypeExpCS();
@@ -7921,12 +7921,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedValueType",
-                              		lv_ownedValueType_4_0, 
+                              		lv_ownedValueType_4_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7938,7 +7938,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
-                          
+
                     }
 
                     }
@@ -7953,14 +7953,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7981,7 +7981,7 @@
             // InternalCompleteOCL.g:2704:2: iv_ruleTupleTypeCS= ruleTupleTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTupleTypeCSRule()); 
+               newCompositeNode(grammarAccess.getTupleTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTupleTypeCS=ruleTupleTypeCS();
@@ -7989,18 +7989,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTupleTypeCS; 
+               current =iv_ruleTupleTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8022,8 +8022,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2714:28: ( ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? ) )
             // InternalCompleteOCL.g:2715:1: ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? )
@@ -8041,7 +8041,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_name_0_0, grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -8049,7 +8049,7 @@
               	            current = createModelElement(grammarAccess.getTupleTypeCSRule());
               	        }
                      		setWithLastConsumed(current, "name", lv_name_0_0, "Tuple");
-              	    
+
             }
 
             }
@@ -8072,7 +8072,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:2734:1: ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )?
                     int alt52=2;
@@ -8092,9 +8092,9 @@
                             // InternalCompleteOCL.g:2736:3: lv_ownedParts_2_0= ruleTuplePartCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_17);
                             lv_ownedParts_2_0=ruleTuplePartCS();
@@ -8107,12 +8107,12 @@
                               	            current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
                               	        }
                                      		add(
-                                     			current, 
+                                     			current,
                                      			"ownedParts",
-                                      		lv_ownedParts_2_0, 
+                                      		lv_ownedParts_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -8139,7 +8139,7 @@
                             	    if ( state.backtracking==0 ) {
 
                             	          	newLeafNode(otherlv_3, grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
-                            	          
+
                             	    }
                             	    // InternalCompleteOCL.g:2756:1: ( (lv_ownedParts_4_0= ruleTuplePartCS ) )
                             	    // InternalCompleteOCL.g:2757:1: (lv_ownedParts_4_0= ruleTuplePartCS )
@@ -8148,9 +8148,9 @@
                             	    // InternalCompleteOCL.g:2758:3: lv_ownedParts_4_0= ruleTuplePartCS
                             	    {
                             	    if ( state.backtracking==0 ) {
-                            	       
-                            	      	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
-                            	      	    
+
+                            	      	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
+
                             	    }
                             	    pushFollow(FollowSets000.FOLLOW_17);
                             	    lv_ownedParts_4_0=ruleTuplePartCS();
@@ -8163,12 +8163,12 @@
                             	      	            current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
                             	      	        }
                             	             		add(
-                            	             			current, 
+                            	             			current,
                             	             			"ownedParts",
-                            	              		lv_ownedParts_4_0, 
+                            	              		lv_ownedParts_4_0,
                             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS");
                             	      	        afterParserOrEnumRuleCall();
-                            	      	    
+
                             	    }
 
                             	    }
@@ -8195,7 +8195,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
-                          
+
                     }
 
                     }
@@ -8210,14 +8210,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8238,7 +8238,7 @@
             // InternalCompleteOCL.g:2788:2: iv_ruleTuplePartCS= ruleTuplePartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTuplePartCSRule()); 
+               newCompositeNode(grammarAccess.getTuplePartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTuplePartCS=ruleTuplePartCS();
@@ -8246,18 +8246,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTuplePartCS; 
+               current =iv_ruleTuplePartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8276,8 +8276,8 @@
         EObject lv_ownedType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2798:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) )
             // InternalCompleteOCL.g:2799:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )
@@ -8292,9 +8292,9 @@
             // InternalCompleteOCL.g:2801:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_12);
             lv_name_0_0=ruleUnrestrictedName();
@@ -8307,12 +8307,12 @@
               	            current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -8324,7 +8324,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:2821:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
             // InternalCompleteOCL.g:2822:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -8333,9 +8333,9 @@
             // InternalCompleteOCL.g:2823:3: lv_ownedType_2_0= ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedType_2_0=ruleTypeExpCS();
@@ -8348,12 +8348,12 @@
               	            current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_2_0, 
+                      		lv_ownedType_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -8368,14 +8368,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8396,7 +8396,7 @@
             // InternalCompleteOCL.g:2849:2: iv_ruleCollectionLiteralExpCS= ruleCollectionLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionLiteralExpCS=ruleCollectionLiteralExpCS();
@@ -8404,18 +8404,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionLiteralExpCS; 
+               current =iv_ruleCollectionLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8438,8 +8438,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2859:28: ( ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' ) )
             // InternalCompleteOCL.g:2860:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' )
@@ -8454,9 +8454,9 @@
             // InternalCompleteOCL.g:2862:3: lv_ownedType_0_0= ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_34);
             lv_ownedType_0_0=ruleCollectionTypeCS();
@@ -8469,12 +8469,12 @@
               	            current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -8486,7 +8486,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:2882:1: ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )?
             int alt55=2;
@@ -8506,9 +8506,9 @@
                     // InternalCompleteOCL.g:2884:3: lv_ownedParts_2_0= ruleCollectionLiteralPartCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_36);
                     lv_ownedParts_2_0=ruleCollectionLiteralPartCS();
@@ -8521,12 +8521,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParts",
-                              		lv_ownedParts_2_0, 
+                              		lv_ownedParts_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -8553,7 +8553,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
-                    	          
+
                     	    }
                     	    // InternalCompleteOCL.g:2904:1: ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) )
                     	    // InternalCompleteOCL.g:2905:1: (lv_ownedParts_4_0= ruleCollectionLiteralPartCS )
@@ -8562,9 +8562,9 @@
                     	    // InternalCompleteOCL.g:2906:3: lv_ownedParts_4_0= ruleCollectionLiteralPartCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_36);
                     	    lv_ownedParts_4_0=ruleCollectionLiteralPartCS();
@@ -8577,12 +8577,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParts",
-                    	              		lv_ownedParts_4_0, 
+                    	              		lv_ownedParts_4_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -8609,7 +8609,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -8618,14 +8618,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8646,7 +8646,7 @@
             // InternalCompleteOCL.g:2936:2: iv_ruleCollectionLiteralPartCS= ruleCollectionLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionLiteralPartCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionLiteralPartCS=ruleCollectionLiteralPartCS();
@@ -8654,18 +8654,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionLiteralPartCS; 
+               current =iv_ruleCollectionLiteralPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8686,8 +8686,8 @@
         EObject lv_ownedExpression_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:2946:28: ( ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) ) )
             // InternalCompleteOCL.g:2947:1: ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) )
@@ -8852,9 +8852,9 @@
                     // InternalCompleteOCL.g:2949:3: lv_ownedExpression_0_0= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_38);
                     lv_ownedExpression_0_0=ruleExpCS();
@@ -8867,12 +8867,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExpression",
-                              		lv_ownedExpression_0_0, 
+                              		lv_ownedExpression_0_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -8895,7 +8895,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
-                                  
+
                             }
                             // InternalCompleteOCL.g:2969:1: ( (lv_ownedLastExpression_2_0= ruleExpCS ) )
                             // InternalCompleteOCL.g:2970:1: (lv_ownedLastExpression_2_0= ruleExpCS )
@@ -8904,9 +8904,9 @@
                             // InternalCompleteOCL.g:2971:3: lv_ownedLastExpression_2_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedLastExpression_2_0=ruleExpCS();
@@ -8919,12 +8919,12 @@
                               	            current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedLastExpression",
-                                      		lv_ownedLastExpression_2_0, 
+                                      		lv_ownedLastExpression_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -8954,9 +8954,9 @@
                     // InternalCompleteOCL.g:2990:3: lv_ownedExpression_3_0= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedExpression_3_0=rulePatternExpCS();
@@ -8969,12 +8969,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExpression",
-                              		lv_ownedExpression_3_0, 
+                              		lv_ownedExpression_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -8992,14 +8992,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9020,7 +9020,7 @@
             // InternalCompleteOCL.g:3016:2: iv_ruleCollectionPatternCS= ruleCollectionPatternCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionPatternCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionPatternCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionPatternCS=ruleCollectionPatternCS();
@@ -9028,18 +9028,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionPatternCS; 
+               current =iv_ruleCollectionPatternCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9065,8 +9065,8 @@
         AntlrDatatypeRuleToken lv_restVariableName_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3026:28: ( ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? otherlv_7= '}' ) )
             // InternalCompleteOCL.g:3027:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? otherlv_7= '}' )
@@ -9081,9 +9081,9 @@
             // InternalCompleteOCL.g:3029:3: lv_ownedType_0_0= ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_34);
             lv_ownedType_0_0=ruleCollectionTypeCS();
@@ -9096,12 +9096,12 @@
               	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -9113,7 +9113,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:3049:1: ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )?
             int alt59=2;
@@ -9133,9 +9133,9 @@
                     // InternalCompleteOCL.g:3051:3: lv_ownedParts_2_0= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_40);
                     lv_ownedParts_2_0=rulePatternExpCS();
@@ -9148,12 +9148,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParts",
-                              		lv_ownedParts_2_0, 
+                              		lv_ownedParts_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -9180,7 +9180,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
-                    	          
+
                     	    }
                     	    // InternalCompleteOCL.g:3071:1: ( (lv_ownedParts_4_0= rulePatternExpCS ) )
                     	    // InternalCompleteOCL.g:3072:1: (lv_ownedParts_4_0= rulePatternExpCS )
@@ -9189,9 +9189,9 @@
                     	    // InternalCompleteOCL.g:3073:3: lv_ownedParts_4_0= rulePatternExpCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_40);
                     	    lv_ownedParts_4_0=rulePatternExpCS();
@@ -9204,12 +9204,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParts",
-                    	              		lv_ownedParts_4_0, 
+                    	              		lv_ownedParts_4_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -9233,7 +9233,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:3093:1: ( (lv_restVariableName_6_0= ruleIdentifier ) )
                     // InternalCompleteOCL.g:3094:1: (lv_restVariableName_6_0= ruleIdentifier )
@@ -9242,9 +9242,9 @@
                     // InternalCompleteOCL.g:3095:3: lv_restVariableName_6_0= ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_42);
                     lv_restVariableName_6_0=ruleIdentifier();
@@ -9257,12 +9257,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"restVariableName",
-                              		lv_restVariableName_6_0, 
+                              		lv_restVariableName_6_0,
                               		"org.eclipse.ocl.xtext.base.Base.Identifier");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -9283,7 +9283,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -9292,14 +9292,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9320,7 +9320,7 @@
             // InternalCompleteOCL.g:3125:2: iv_ruleShadowPartCS= ruleShadowPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getShadowPartCSRule()); 
+               newCompositeNode(grammarAccess.getShadowPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleShadowPartCS=ruleShadowPartCS();
@@ -9328,18 +9328,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleShadowPartCS; 
+               current =iv_ruleShadowPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9358,8 +9358,8 @@
         EObject lv_ownedInitExpression_2_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3135:28: ( ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) ) )
             // InternalCompleteOCL.g:3136:1: ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) )
@@ -9374,21 +9374,21 @@
             // InternalCompleteOCL.g:3138:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getShadowPartCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_19);
             ruleUnrestrictedName();
@@ -9396,9 +9396,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -9410,7 +9410,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:3158:1: ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) )
             // InternalCompleteOCL.g:3159:1: ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) )
@@ -9569,9 +9569,9 @@
                     // InternalCompleteOCL.g:3161:3: lv_ownedInitExpression_2_1= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedInitExpression_2_1=ruleExpCS();
@@ -9584,12 +9584,12 @@
                       	            current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedInitExpression",
-                              		lv_ownedInitExpression_2_1, 
+                              		lv_ownedInitExpression_2_1,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -9598,9 +9598,9 @@
                     // InternalCompleteOCL.g:3176:8: lv_ownedInitExpression_2_2= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedInitExpression_2_2=rulePatternExpCS();
@@ -9613,12 +9613,12 @@
                       	            current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedInitExpression",
-                              		lv_ownedInitExpression_2_2, 
+                              		lv_ownedInitExpression_2_2,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -9639,14 +9639,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9667,7 +9667,7 @@
             // InternalCompleteOCL.g:3204:2: iv_rulePatternExpCS= rulePatternExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPatternExpCSRule()); 
+               newCompositeNode(grammarAccess.getPatternExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePatternExpCS=rulePatternExpCS();
@@ -9675,18 +9675,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePatternExpCS; 
+               current =iv_rulePatternExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9705,8 +9705,8 @@
         EObject lv_ownedPatternType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3214:28: ( ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) ) )
             // InternalCompleteOCL.g:3215:1: ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) )
@@ -9729,9 +9729,9 @@
                     // InternalCompleteOCL.g:3217:3: lv_patternVariableName_0_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_12);
                     lv_patternVariableName_0_0=ruleUnrestrictedName();
@@ -9744,12 +9744,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"patternVariableName",
-                              		lv_patternVariableName_0_0, 
+                              		lv_patternVariableName_0_0,
                               		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -9764,7 +9764,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:3237:1: ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) )
             // InternalCompleteOCL.g:3238:1: (lv_ownedPatternType_2_0= ruleTypeExpCS )
@@ -9773,9 +9773,9 @@
             // InternalCompleteOCL.g:3239:3: lv_ownedPatternType_2_0= ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedPatternType_2_0=ruleTypeExpCS();
@@ -9788,12 +9788,12 @@
               	            current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPatternType",
-                      		lv_ownedPatternType_2_0, 
+                      		lv_ownedPatternType_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -9808,14 +9808,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9836,7 +9836,7 @@
             // InternalCompleteOCL.g:3265:2: iv_ruleLambdaLiteralExpCS= ruleLambdaLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLambdaLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getLambdaLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLambdaLiteralExpCS=ruleLambdaLiteralExpCS();
@@ -9844,18 +9844,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLambdaLiteralExpCS; 
+               current =iv_ruleLambdaLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9874,8 +9874,8 @@
         EObject lv_ownedExpressionCS_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3275:28: ( (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' ) )
             // InternalCompleteOCL.g:3276:1: (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' )
@@ -9887,13 +9887,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
-                  
+
             }
             otherlv_1=(Token)match(input,76,FollowSets000.FOLLOW_39); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:3284:1: ( (lv_ownedExpressionCS_2_0= ruleExpCS ) )
             // InternalCompleteOCL.g:3285:1: (lv_ownedExpressionCS_2_0= ruleExpCS )
@@ -9902,9 +9902,9 @@
             // InternalCompleteOCL.g:3286:3: lv_ownedExpressionCS_2_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_42);
             lv_ownedExpressionCS_2_0=ruleExpCS();
@@ -9917,12 +9917,12 @@
               	            current = createModelElementForParent(grammarAccess.getLambdaLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedExpressionCS",
-                      		lv_ownedExpressionCS_2_0, 
+                      		lv_ownedExpressionCS_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -9934,7 +9934,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -9943,14 +9943,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9971,7 +9971,7 @@
             // InternalCompleteOCL.g:3316:2: iv_ruleMapLiteralExpCS= ruleMapLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMapLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getMapLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMapLiteralExpCS=ruleMapLiteralExpCS();
@@ -9979,18 +9979,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMapLiteralExpCS; 
+               current =iv_ruleMapLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10013,8 +10013,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3326:28: ( ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' ) )
             // InternalCompleteOCL.g:3327:1: ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' )
@@ -10029,9 +10029,9 @@
             // InternalCompleteOCL.g:3329:3: lv_ownedType_0_0= ruleMapTypeCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_34);
             lv_ownedType_0_0=ruleMapTypeCS();
@@ -10044,12 +10044,12 @@
               	            current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapTypeCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -10061,7 +10061,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:3349:1: ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )?
             int alt63=2;
@@ -10081,9 +10081,9 @@
                     // InternalCompleteOCL.g:3351:3: lv_ownedParts_2_0= ruleMapLiteralPartCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_36);
                     lv_ownedParts_2_0=ruleMapLiteralPartCS();
@@ -10096,12 +10096,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParts",
-                              		lv_ownedParts_2_0, 
+                              		lv_ownedParts_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -10128,7 +10128,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
-                    	          
+
                     	    }
                     	    // InternalCompleteOCL.g:3371:1: ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) )
                     	    // InternalCompleteOCL.g:3372:1: (lv_ownedParts_4_0= ruleMapLiteralPartCS )
@@ -10137,9 +10137,9 @@
                     	    // InternalCompleteOCL.g:3373:3: lv_ownedParts_4_0= ruleMapLiteralPartCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_36);
                     	    lv_ownedParts_4_0=ruleMapLiteralPartCS();
@@ -10152,12 +10152,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParts",
-                    	              		lv_ownedParts_4_0, 
+                    	              		lv_ownedParts_4_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -10184,7 +10184,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -10193,14 +10193,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10221,7 +10221,7 @@
             // InternalCompleteOCL.g:3403:2: iv_ruleMapLiteralPartCS= ruleMapLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMapLiteralPartCSRule()); 
+               newCompositeNode(grammarAccess.getMapLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMapLiteralPartCS=ruleMapLiteralPartCS();
@@ -10229,18 +10229,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMapLiteralPartCS; 
+               current =iv_ruleMapLiteralPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10259,8 +10259,8 @@
         EObject lv_ownedValue_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3413:28: ( ( ( (lv_ownedKey_0_0= ruleExpCS ) ) otherlv_1= '<-' ( (lv_ownedValue_2_0= ruleExpCS ) ) ) )
             // InternalCompleteOCL.g:3414:1: ( ( (lv_ownedKey_0_0= ruleExpCS ) ) otherlv_1= '<-' ( (lv_ownedValue_2_0= ruleExpCS ) ) )
@@ -10275,9 +10275,9 @@
             // InternalCompleteOCL.g:3416:3: lv_ownedKey_0_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_44);
             lv_ownedKey_0_0=ruleExpCS();
@@ -10290,12 +10290,12 @@
               	            current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedKey",
-                      		lv_ownedKey_0_0, 
+                      		lv_ownedKey_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -10307,7 +10307,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:3436:1: ( (lv_ownedValue_2_0= ruleExpCS ) )
             // InternalCompleteOCL.g:3437:1: (lv_ownedValue_2_0= ruleExpCS )
@@ -10316,9 +10316,9 @@
             // InternalCompleteOCL.g:3438:3: lv_ownedValue_2_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedValue_2_0=ruleExpCS();
@@ -10331,12 +10331,12 @@
               	            current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedValue",
-                      		lv_ownedValue_2_0, 
+                      		lv_ownedValue_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -10351,14 +10351,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10379,7 +10379,7 @@
             // InternalCompleteOCL.g:3464:2: iv_rulePrimitiveLiteralExpCS= rulePrimitiveLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimitiveLiteralExpCS=rulePrimitiveLiteralExpCS();
@@ -10387,18 +10387,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimitiveLiteralExpCS; 
+               current =iv_rulePrimitiveLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10424,8 +10424,8 @@
         EObject this_NullLiteralExpCS_5 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3474:28: ( (this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS | this_StringLiteralExpCS_1= ruleStringLiteralExpCS | this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS | this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS | this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS | this_NullLiteralExpCS_5= ruleNullLiteralExpCS ) )
             // InternalCompleteOCL.g:3475:1: (this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS | this_StringLiteralExpCS_1= ruleStringLiteralExpCS | this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS | this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS | this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS | this_NullLiteralExpCS_5= ruleNullLiteralExpCS )
@@ -10477,14 +10477,14 @@
                     // InternalCompleteOCL.g:3476:2: this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NumberLiteralExpCS_0=ruleNumberLiteralExpCS();
@@ -10492,10 +10492,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NumberLiteralExpCS_0; 
+
+                              current = this_NumberLiteralExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -10504,14 +10504,14 @@
                     // InternalCompleteOCL.g:3489:2: this_StringLiteralExpCS_1= ruleStringLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_StringLiteralExpCS_1=ruleStringLiteralExpCS();
@@ -10519,10 +10519,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_StringLiteralExpCS_1; 
+
+                              current = this_StringLiteralExpCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -10531,14 +10531,14 @@
                     // InternalCompleteOCL.g:3502:2: this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_BooleanLiteralExpCS_2=ruleBooleanLiteralExpCS();
@@ -10546,10 +10546,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_BooleanLiteralExpCS_2; 
+
+                              current = this_BooleanLiteralExpCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -10558,14 +10558,14 @@
                     // InternalCompleteOCL.g:3515:2: this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_UnlimitedNaturalLiteralExpCS_3=ruleUnlimitedNaturalLiteralExpCS();
@@ -10573,10 +10573,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_UnlimitedNaturalLiteralExpCS_3; 
+
+                              current = this_UnlimitedNaturalLiteralExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -10585,14 +10585,14 @@
                     // InternalCompleteOCL.g:3528:2: this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_InvalidLiteralExpCS_4=ruleInvalidLiteralExpCS();
@@ -10600,10 +10600,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_InvalidLiteralExpCS_4; 
+
+                              current = this_InvalidLiteralExpCS_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -10612,14 +10612,14 @@
                     // InternalCompleteOCL.g:3541:2: this_NullLiteralExpCS_5= ruleNullLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NullLiteralExpCS_5=ruleNullLiteralExpCS();
@@ -10627,10 +10627,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NullLiteralExpCS_5; 
+
+                              current = this_NullLiteralExpCS_5;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -10642,14 +10642,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10670,7 +10670,7 @@
             // InternalCompleteOCL.g:3562:2: iv_ruleTupleLiteralExpCS= ruleTupleLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTupleLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getTupleLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTupleLiteralExpCS=ruleTupleLiteralExpCS();
@@ -10678,18 +10678,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTupleLiteralExpCS; 
+               current =iv_ruleTupleLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10711,8 +10711,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3572:28: ( (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' ) )
             // InternalCompleteOCL.g:3573:1: (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' )
@@ -10724,13 +10724,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
-                  
+
             }
             otherlv_1=(Token)match(input,76,FollowSets000.FOLLOW_14); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:3581:1: ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) )
             // InternalCompleteOCL.g:3582:1: (lv_ownedParts_2_0= ruleTupleLiteralPartCS )
@@ -10739,9 +10739,9 @@
             // InternalCompleteOCL.g:3583:3: lv_ownedParts_2_0= ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_36);
             lv_ownedParts_2_0=ruleTupleLiteralPartCS();
@@ -10754,12 +10754,12 @@
               	            current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedParts",
-                      		lv_ownedParts_2_0, 
+                      		lv_ownedParts_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -10786,7 +10786,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:3603:1: ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) )
             	    // InternalCompleteOCL.g:3604:1: (lv_ownedParts_4_0= ruleTupleLiteralPartCS )
@@ -10795,9 +10795,9 @@
             	    // InternalCompleteOCL.g:3605:3: lv_ownedParts_4_0= ruleTupleLiteralPartCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_36);
             	    lv_ownedParts_4_0=ruleTupleLiteralPartCS();
@@ -10810,12 +10810,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedParts",
-            	              		lv_ownedParts_4_0, 
+            	              		lv_ownedParts_4_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -10836,7 +10836,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
-                  
+
             }
 
             }
@@ -10845,14 +10845,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10873,7 +10873,7 @@
             // InternalCompleteOCL.g:3635:2: iv_ruleTupleLiteralPartCS= ruleTupleLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTupleLiteralPartCSRule()); 
+               newCompositeNode(grammarAccess.getTupleLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTupleLiteralPartCS=ruleTupleLiteralPartCS();
@@ -10881,18 +10881,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTupleLiteralPartCS; 
+               current =iv_ruleTupleLiteralPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10914,8 +10914,8 @@
         EObject lv_ownedInitExpression_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3645:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) ) )
             // InternalCompleteOCL.g:3646:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )
@@ -10930,9 +10930,9 @@
             // InternalCompleteOCL.g:3648:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_45);
             lv_name_0_0=ruleUnrestrictedName();
@@ -10945,12 +10945,12 @@
               	            current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -10973,7 +10973,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:3668:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                     // InternalCompleteOCL.g:3669:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -10982,9 +10982,9 @@
                     // InternalCompleteOCL.g:3670:3: lv_ownedType_2_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_19);
                     lv_ownedType_2_0=ruleTypeExpCS();
@@ -10997,12 +10997,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_2_0, 
+                              		lv_ownedType_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -11020,7 +11020,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
-                  
+
             }
             // InternalCompleteOCL.g:3690:1: ( (lv_ownedInitExpression_4_0= ruleExpCS ) )
             // InternalCompleteOCL.g:3691:1: (lv_ownedInitExpression_4_0= ruleExpCS )
@@ -11029,9 +11029,9 @@
             // InternalCompleteOCL.g:3692:3: lv_ownedInitExpression_4_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedInitExpression_4_0=ruleExpCS();
@@ -11044,12 +11044,12 @@
               	            current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedInitExpression",
-                      		lv_ownedInitExpression_4_0, 
+                      		lv_ownedInitExpression_4_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -11064,14 +11064,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11092,7 +11092,7 @@
             // InternalCompleteOCL.g:3718:2: iv_ruleNumberLiteralExpCS= ruleNumberLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNumberLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getNumberLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNumberLiteralExpCS=ruleNumberLiteralExpCS();
@@ -11100,18 +11100,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNumberLiteralExpCS; 
+               current =iv_ruleNumberLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11127,8 +11127,8 @@
         AntlrDatatypeRuleToken lv_symbol_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3728:28: ( ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) ) )
             // InternalCompleteOCL.g:3729:1: ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) )
@@ -11140,9 +11140,9 @@
             // InternalCompleteOCL.g:3731:3: lv_symbol_0_0= ruleNUMBER_LITERAL
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_symbol_0_0=ruleNUMBER_LITERAL();
@@ -11155,12 +11155,12 @@
               	            current = createModelElementForParent(grammarAccess.getNumberLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"symbol",
-                      		lv_symbol_0_0, 
+                      		lv_symbol_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.NUMBER_LITERAL");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -11172,14 +11172,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11200,7 +11200,7 @@
             // InternalCompleteOCL.g:3757:2: iv_ruleStringLiteralExpCS= ruleStringLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getStringLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getStringLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleStringLiteralExpCS=ruleStringLiteralExpCS();
@@ -11208,18 +11208,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleStringLiteralExpCS; 
+               current =iv_ruleStringLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11235,8 +11235,8 @@
         AntlrDatatypeRuleToken lv_segments_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3767:28: ( ( (lv_segments_0_0= ruleStringLiteral ) )+ )
             // InternalCompleteOCL.g:3768:1: ( (lv_segments_0_0= ruleStringLiteral ) )+
@@ -11261,9 +11261,9 @@
             	    // InternalCompleteOCL.g:3770:3: lv_segments_0_0= ruleStringLiteral
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_46);
             	    lv_segments_0_0=ruleStringLiteral();
@@ -11276,12 +11276,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getStringLiteralExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"segments",
-            	              		lv_segments_0_0, 
+            	              		lv_segments_0_0,
             	              		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -11304,14 +11304,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11332,7 +11332,7 @@
             // InternalCompleteOCL.g:3796:2: iv_ruleBooleanLiteralExpCS= ruleBooleanLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getBooleanLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getBooleanLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleBooleanLiteralExpCS=ruleBooleanLiteralExpCS();
@@ -11340,18 +11340,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleBooleanLiteralExpCS; 
+               current =iv_ruleBooleanLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11367,8 +11367,8 @@
         Token lv_symbol_0_0=null;
         Token lv_symbol_1_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3806:28: ( ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) ) )
             // InternalCompleteOCL.g:3807:1: ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) )
@@ -11404,7 +11404,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_symbol_0_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -11412,7 +11412,7 @@
                       	            current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
                       	        }
                              		setWithLastConsumed(current, "symbol", lv_symbol_0_0, "true");
-                      	    
+
                     }
 
                     }
@@ -11436,7 +11436,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_symbol_1_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -11444,7 +11444,7 @@
                       	            current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
                       	        }
                              		setWithLastConsumed(current, "symbol", lv_symbol_1_0, "false");
-                      	    
+
                     }
 
                     }
@@ -11462,14 +11462,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11490,7 +11490,7 @@
             // InternalCompleteOCL.g:3848:2: iv_ruleUnlimitedNaturalLiteralExpCS= ruleUnlimitedNaturalLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getUnlimitedNaturalLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnlimitedNaturalLiteralExpCS=ruleUnlimitedNaturalLiteralExpCS();
@@ -11498,18 +11498,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnlimitedNaturalLiteralExpCS; 
+               current =iv_ruleUnlimitedNaturalLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11524,8 +11524,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3858:28: ( ( () otherlv_1= '*' ) )
             // InternalCompleteOCL.g:3859:1: ( () otherlv_1= '*' )
@@ -11534,19 +11534,19 @@
             // InternalCompleteOCL.g:3859:2: () otherlv_1= '*'
             {
             // InternalCompleteOCL.g:3859:2: ()
-            // InternalCompleteOCL.g:3860:2: 
+            // InternalCompleteOCL.g:3860:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -11555,7 +11555,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
-                  
+
             }
 
             }
@@ -11564,14 +11564,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11592,7 +11592,7 @@
             // InternalCompleteOCL.g:3882:2: iv_ruleInvalidLiteralExpCS= ruleInvalidLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getInvalidLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getInvalidLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleInvalidLiteralExpCS=ruleInvalidLiteralExpCS();
@@ -11600,18 +11600,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleInvalidLiteralExpCS; 
+               current =iv_ruleInvalidLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11626,8 +11626,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3892:28: ( ( () otherlv_1= 'invalid' ) )
             // InternalCompleteOCL.g:3893:1: ( () otherlv_1= 'invalid' )
@@ -11636,19 +11636,19 @@
             // InternalCompleteOCL.g:3893:2: () otherlv_1= 'invalid'
             {
             // InternalCompleteOCL.g:3893:2: ()
-            // InternalCompleteOCL.g:3894:2: 
+            // InternalCompleteOCL.g:3894:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -11657,7 +11657,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
-                  
+
             }
 
             }
@@ -11666,14 +11666,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11694,7 +11694,7 @@
             // InternalCompleteOCL.g:3916:2: iv_ruleNullLiteralExpCS= ruleNullLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNullLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getNullLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNullLiteralExpCS=ruleNullLiteralExpCS();
@@ -11702,18 +11702,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNullLiteralExpCS; 
+               current =iv_ruleNullLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11728,8 +11728,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3926:28: ( ( () otherlv_1= 'null' ) )
             // InternalCompleteOCL.g:3927:1: ( () otherlv_1= 'null' )
@@ -11738,19 +11738,19 @@
             // InternalCompleteOCL.g:3927:2: () otherlv_1= 'null'
             {
             // InternalCompleteOCL.g:3927:2: ()
-            // InternalCompleteOCL.g:3928:2: 
+            // InternalCompleteOCL.g:3928:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -11759,7 +11759,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
-                  
+
             }
 
             }
@@ -11768,14 +11768,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11796,7 +11796,7 @@
             // InternalCompleteOCL.g:3950:2: iv_ruleTypeLiteralCS= ruleTypeLiteralCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeLiteralCSRule()); 
+               newCompositeNode(grammarAccess.getTypeLiteralCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeLiteralCS=ruleTypeLiteralCS();
@@ -11804,18 +11804,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeLiteralCS; 
+               current =iv_ruleTypeLiteralCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11837,8 +11837,8 @@
         EObject this_TupleTypeCS_3 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:3960:28: ( (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS ) )
             // InternalCompleteOCL.g:3961:1: (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS )
@@ -11892,14 +11892,14 @@
                     // InternalCompleteOCL.g:3962:2: this_PrimitiveTypeCS_0= rulePrimitiveTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimitiveTypeCS_0=rulePrimitiveTypeCS();
@@ -11907,10 +11907,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrimitiveTypeCS_0; 
+
+                              current = this_PrimitiveTypeCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -11919,14 +11919,14 @@
                     // InternalCompleteOCL.g:3975:2: this_CollectionTypeCS_1= ruleCollectionTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CollectionTypeCS_1=ruleCollectionTypeCS();
@@ -11934,10 +11934,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_CollectionTypeCS_1; 
+
+                              current = this_CollectionTypeCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -11946,14 +11946,14 @@
                     // InternalCompleteOCL.g:3988:2: this_MapTypeCS_2= ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_MapTypeCS_2=ruleMapTypeCS();
@@ -11961,10 +11961,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MapTypeCS_2; 
+
+                              current = this_MapTypeCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -11973,14 +11973,14 @@
                     // InternalCompleteOCL.g:4001:2: this_TupleTypeCS_3= ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TupleTypeCS_3=ruleTupleTypeCS();
@@ -11988,10 +11988,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TupleTypeCS_3; 
+
+                              current = this_TupleTypeCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -12003,14 +12003,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12031,7 +12031,7 @@
             // InternalCompleteOCL.g:4022:2: iv_ruleTypeLiteralWithMultiplicityCS= ruleTypeLiteralWithMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); 
+               newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeLiteralWithMultiplicityCS=ruleTypeLiteralWithMultiplicityCS();
@@ -12039,18 +12039,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeLiteralWithMultiplicityCS; 
+               current =iv_ruleTypeLiteralWithMultiplicityCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12068,8 +12068,8 @@
         EObject lv_ownedMultiplicity_1_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:4032:28: ( (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) )
             // InternalCompleteOCL.g:4033:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? )
@@ -12078,14 +12078,14 @@
             // InternalCompleteOCL.g:4034:2: this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )?
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
-                  
+
+                      newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_47);
             this_TypeLiteralCS_0=ruleTypeLiteralCS();
@@ -12093,10 +12093,10 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
-                      current = this_TypeLiteralCS_0; 
+
+                      current = this_TypeLiteralCS_0;
                       afterParserOrEnumRuleCall();
-                  
+
             }
             // InternalCompleteOCL.g:4045:1: ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )?
             int alt70=2;
@@ -12113,9 +12113,9 @@
                     // InternalCompleteOCL.g:4047:3: lv_ownedMultiplicity_1_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_1_0=ruleMultiplicityCS();
@@ -12128,12 +12128,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_1_0, 
+                              		lv_ownedMultiplicity_1_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -12151,14 +12151,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12179,7 +12179,7 @@
             // InternalCompleteOCL.g:4073:2: iv_ruleTypeLiteralExpCS= ruleTypeLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getTypeLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeLiteralExpCS=ruleTypeLiteralExpCS();
@@ -12187,18 +12187,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeLiteralExpCS; 
+               current =iv_ruleTypeLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12214,8 +12214,8 @@
         EObject lv_ownedType_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:4083:28: ( ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) ) )
             // InternalCompleteOCL.g:4084:1: ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) )
@@ -12227,9 +12227,9 @@
             // InternalCompleteOCL.g:4086:3: lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedType_0_0=ruleTypeLiteralWithMultiplicityCS();
@@ -12242,12 +12242,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypeLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeLiteralWithMultiplicityCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -12259,14 +12259,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12287,7 +12287,7 @@
             // InternalCompleteOCL.g:4112:2: iv_ruleTypeNameExpCS= ruleTypeNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeNameExpCSRule()); 
+               newCompositeNode(grammarAccess.getTypeNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeNameExpCS=ruleTypeNameExpCS();
@@ -12295,18 +12295,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeNameExpCS; 
+               current =iv_ruleTypeNameExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12328,8 +12328,8 @@
         EObject lv_ownedPatternGuard_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:4122:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? ) )
             // InternalCompleteOCL.g:4123:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? )
@@ -12344,9 +12344,9 @@
             // InternalCompleteOCL.g:4125:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_48);
             lv_ownedPathName_0_0=rulePathNameCS();
@@ -12359,12 +12359,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_0_0, 
+                      		lv_ownedPathName_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -12390,9 +12390,9 @@
                     // InternalCompleteOCL.g:4143:3: lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_48);
                     lv_ownedCurlyBracketedClause_1_0=ruleCurlyBracketedClauseCS();
@@ -12405,12 +12405,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCurlyBracketedClause",
-                              		lv_ownedCurlyBracketedClause_1_0, 
+                              		lv_ownedCurlyBracketedClause_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -12433,7 +12433,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_2, grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
-                                  
+
                             }
                             // InternalCompleteOCL.g:4163:1: ( (lv_ownedPatternGuard_3_0= ruleExpCS ) )
                             // InternalCompleteOCL.g:4164:1: (lv_ownedPatternGuard_3_0= ruleExpCS )
@@ -12442,9 +12442,9 @@
                             // InternalCompleteOCL.g:4165:3: lv_ownedPatternGuard_3_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_42);
                             lv_ownedPatternGuard_3_0=ruleExpCS();
@@ -12457,12 +12457,12 @@
                               	            current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedPatternGuard",
-                                      		lv_ownedPatternGuard_3_0, 
+                                      		lv_ownedPatternGuard_3_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -12474,7 +12474,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
-                                  
+
                             }
 
                             }
@@ -12495,14 +12495,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12523,7 +12523,7 @@
             // InternalCompleteOCL.g:4195:2: iv_ruleTypeExpCS= ruleTypeExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeExpCSRule()); 
+               newCompositeNode(grammarAccess.getTypeExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeExpCS=ruleTypeExpCS();
@@ -12531,18 +12531,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeExpCS; 
+               current =iv_ruleTypeExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12564,8 +12564,8 @@
         EObject lv_ownedMultiplicity_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:4205:28: ( ( (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS ) ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
             // InternalCompleteOCL.g:4206:1: ( (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS ) ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
@@ -12581,14 +12581,14 @@
                     // InternalCompleteOCL.g:4207:2: this_TypeNameExpCS_0= ruleTypeNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_47);
                     this_TypeNameExpCS_0=ruleTypeNameExpCS();
@@ -12596,10 +12596,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeNameExpCS_0; 
+
+                              current = this_TypeNameExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -12608,14 +12608,14 @@
                     // InternalCompleteOCL.g:4220:2: this_TypeLiteralCS_1= ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_47);
                     this_TypeLiteralCS_1=ruleTypeLiteralCS();
@@ -12623,10 +12623,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeLiteralCS_1; 
+
+                              current = this_TypeLiteralCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -12635,14 +12635,14 @@
                     // InternalCompleteOCL.g:4233:2: this_CollectionPatternCS_2= ruleCollectionPatternCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_47);
                     this_CollectionPatternCS_2=ruleCollectionPatternCS();
@@ -12650,10 +12650,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_CollectionPatternCS_2; 
+
+                              current = this_CollectionPatternCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -12676,9 +12676,9 @@
                     // InternalCompleteOCL.g:4246:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_3_0=ruleMultiplicityCS();
@@ -12691,12 +12691,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_3_0, 
+                              		lv_ownedMultiplicity_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -12714,14 +12714,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12742,7 +12742,7 @@
             // InternalCompleteOCL.g:4272:2: iv_ruleExpCS= ruleExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getExpCSRule()); 
+               newCompositeNode(grammarAccess.getExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleExpCS=ruleExpCS();
@@ -12750,18 +12750,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleExpCS; 
+               current =iv_ruleExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12783,8 +12783,8 @@
         EObject this_PrefixedLetExpCS_4 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:4282:28: ( ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS ) )
             // InternalCompleteOCL.g:4283:1: ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS )
@@ -12800,14 +12800,14 @@
                     // InternalCompleteOCL.g:4284:2: this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_49);
                     this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS();
@@ -12815,10 +12815,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrefixedPrimaryExpCS_0; 
+
+                              current = this_PrefixedPrimaryExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
                     // InternalCompleteOCL.g:4295:1: ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
                     int alt75=2;
@@ -12832,19 +12832,19 @@
                             // InternalCompleteOCL.g:4295:2: () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) )
                             {
                             // InternalCompleteOCL.g:4295:2: ()
-                            // InternalCompleteOCL.g:4296:2: 
+                            // InternalCompleteOCL.g:4296:2:
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	  /* */ 
-                              	
+
+                              	  /* */
+
                             }
                             if ( state.backtracking==0 ) {
 
                                       current = forceCreateModelElementAndSet(
                                           grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0(),
                                           current);
-                                  
+
                             }
 
                             }
@@ -12856,9 +12856,9 @@
                             // InternalCompleteOCL.g:4306:3: lv_name_2_0= ruleBinaryOperatorName
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_39);
                             lv_name_2_0=ruleBinaryOperatorName();
@@ -12871,12 +12871,12 @@
                               	            current = createModelElementForParent(grammarAccess.getExpCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"name",
-                                      		lv_name_2_0, 
+                                      		lv_name_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.BinaryOperatorName");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -12891,9 +12891,9 @@
                             // InternalCompleteOCL.g:4324:3: lv_ownedRight_3_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedRight_3_0=ruleExpCS();
@@ -12906,12 +12906,12 @@
                               	            current = createModelElementForParent(grammarAccess.getExpCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedRight",
-                                      		lv_ownedRight_3_0, 
+                                      		lv_ownedRight_3_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -12935,14 +12935,14 @@
                     // InternalCompleteOCL.g:4342:2: this_PrefixedLetExpCS_4= rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrefixedLetExpCS_4=rulePrefixedLetExpCS();
@@ -12950,10 +12950,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrefixedLetExpCS_4; 
+
+                              current = this_PrefixedLetExpCS_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -12965,14 +12965,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12993,7 +12993,7 @@
             // InternalCompleteOCL.g:4363:2: iv_rulePrefixedLetExpCS= rulePrefixedLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrefixedLetExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrefixedLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrefixedLetExpCS=rulePrefixedLetExpCS();
@@ -13001,18 +13001,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrefixedLetExpCS; 
+               current =iv_rulePrefixedLetExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13032,8 +13032,8 @@
         EObject this_LetExpCS_3 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:4373:28: ( ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS ) )
             // InternalCompleteOCL.g:4374:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS )
@@ -13063,19 +13063,19 @@
                     // InternalCompleteOCL.g:4374:3: () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) )
                     {
                     // InternalCompleteOCL.g:4374:3: ()
-                    // InternalCompleteOCL.g:4375:2: 
+                    // InternalCompleteOCL.g:4375:2:
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                               current = forceCreateModelElement(
                                   grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0(),
                                   current);
-                          
+
                     }
 
                     }
@@ -13087,9 +13087,9 @@
                     // InternalCompleteOCL.g:4385:3: lv_name_1_0= ruleUnaryOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_39);
                     lv_name_1_0=ruleUnaryOperatorName();
@@ -13102,12 +13102,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -13122,9 +13122,9 @@
                     // InternalCompleteOCL.g:4403:3: lv_ownedRight_2_0= rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedRight_2_0=rulePrefixedLetExpCS();
@@ -13137,12 +13137,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRight",
-                              		lv_ownedRight_2_0, 
+                              		lv_ownedRight_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedLetExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -13160,14 +13160,14 @@
                     // InternalCompleteOCL.g:4421:2: this_LetExpCS_3= ruleLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_LetExpCS_3=ruleLetExpCS();
@@ -13175,10 +13175,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_LetExpCS_3; 
+
+                              current = this_LetExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13190,14 +13190,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13218,7 +13218,7 @@
             // InternalCompleteOCL.g:4442:2: iv_rulePrefixedPrimaryExpCS= rulePrefixedPrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrefixedPrimaryExpCS=rulePrefixedPrimaryExpCS();
@@ -13226,18 +13226,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrefixedPrimaryExpCS; 
+               current =iv_rulePrefixedPrimaryExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13257,8 +13257,8 @@
         EObject this_PrimaryExpCS_3 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:4452:28: ( ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS ) )
             // InternalCompleteOCL.g:4453:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS )
@@ -13288,19 +13288,19 @@
                     // InternalCompleteOCL.g:4453:3: () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) )
                     {
                     // InternalCompleteOCL.g:4453:3: ()
-                    // InternalCompleteOCL.g:4454:2: 
+                    // InternalCompleteOCL.g:4454:2:
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                               current = forceCreateModelElement(
                                   grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0(),
                                   current);
-                          
+
                     }
 
                     }
@@ -13312,9 +13312,9 @@
                     // InternalCompleteOCL.g:4464:3: lv_name_1_0= ruleUnaryOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_50);
                     lv_name_1_0=ruleUnaryOperatorName();
@@ -13327,12 +13327,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -13347,9 +13347,9 @@
                     // InternalCompleteOCL.g:4482:3: lv_ownedRight_2_0= rulePrefixedPrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedRight_2_0=rulePrefixedPrimaryExpCS();
@@ -13362,12 +13362,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRight",
-                              		lv_ownedRight_2_0, 
+                              		lv_ownedRight_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedPrimaryExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -13385,14 +13385,14 @@
                     // InternalCompleteOCL.g:4500:2: this_PrimaryExpCS_3= rulePrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimaryExpCS_3=rulePrimaryExpCS();
@@ -13400,10 +13400,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrimaryExpCS_3; 
+
+                              current = this_PrimaryExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13415,14 +13415,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13443,7 +13443,7 @@
             // InternalCompleteOCL.g:4521:2: iv_rulePrimaryExpCS= rulePrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimaryExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimaryExpCS=rulePrimaryExpCS();
@@ -13451,18 +13451,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimaryExpCS; 
+               current =iv_rulePrimaryExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13496,8 +13496,8 @@
         EObject this_NameExpCS_9 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:4531:28: ( (this_NestedExpCS_0= ruleNestedExpCS | this_IfExpCS_1= ruleIfExpCS | this_SelfExpCS_2= ruleSelfExpCS | this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS | this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS | this_MapLiteralExpCS_5= ruleMapLiteralExpCS | this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS | this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS | this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS | this_NameExpCS_9= ruleNameExpCS ) )
             // InternalCompleteOCL.g:4532:1: (this_NestedExpCS_0= ruleNestedExpCS | this_IfExpCS_1= ruleIfExpCS | this_SelfExpCS_2= ruleSelfExpCS | this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS | this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS | this_MapLiteralExpCS_5= ruleMapLiteralExpCS | this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS | this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS | this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS | this_NameExpCS_9= ruleNameExpCS )
@@ -13510,14 +13510,14 @@
                     // InternalCompleteOCL.g:4533:2: this_NestedExpCS_0= ruleNestedExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NestedExpCS_0=ruleNestedExpCS();
@@ -13525,10 +13525,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NestedExpCS_0; 
+
+                              current = this_NestedExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13537,14 +13537,14 @@
                     // InternalCompleteOCL.g:4546:2: this_IfExpCS_1= ruleIfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_IfExpCS_1=ruleIfExpCS();
@@ -13552,10 +13552,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_IfExpCS_1; 
+
+                              current = this_IfExpCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13564,14 +13564,14 @@
                     // InternalCompleteOCL.g:4559:2: this_SelfExpCS_2= ruleSelfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_SelfExpCS_2=ruleSelfExpCS();
@@ -13579,10 +13579,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_SelfExpCS_2; 
+
+                              current = this_SelfExpCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13591,14 +13591,14 @@
                     // InternalCompleteOCL.g:4572:2: this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimitiveLiteralExpCS_3=rulePrimitiveLiteralExpCS();
@@ -13606,10 +13606,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrimitiveLiteralExpCS_3; 
+
+                              current = this_PrimitiveLiteralExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13618,14 +13618,14 @@
                     // InternalCompleteOCL.g:4585:2: this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS();
@@ -13633,10 +13633,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TupleLiteralExpCS_4; 
+
+                              current = this_TupleLiteralExpCS_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13645,14 +13645,14 @@
                     // InternalCompleteOCL.g:4598:2: this_MapLiteralExpCS_5= ruleMapLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_MapLiteralExpCS_5=ruleMapLiteralExpCS();
@@ -13660,10 +13660,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MapLiteralExpCS_5; 
+
+                              current = this_MapLiteralExpCS_5;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13672,14 +13672,14 @@
                     // InternalCompleteOCL.g:4611:2: this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS();
@@ -13687,10 +13687,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_CollectionLiteralExpCS_6; 
+
+                              current = this_CollectionLiteralExpCS_6;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13699,14 +13699,14 @@
                     // InternalCompleteOCL.g:4624:2: this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_LambdaLiteralExpCS_7=ruleLambdaLiteralExpCS();
@@ -13714,10 +13714,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_LambdaLiteralExpCS_7; 
+
+                              current = this_LambdaLiteralExpCS_7;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13726,14 +13726,14 @@
                     // InternalCompleteOCL.g:4637:2: this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS();
@@ -13741,10 +13741,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeLiteralExpCS_8; 
+
+                              current = this_TypeLiteralExpCS_8;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13753,14 +13753,14 @@
                     // InternalCompleteOCL.g:4650:2: this_NameExpCS_9= ruleNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NameExpCS_9=ruleNameExpCS();
@@ -13768,10 +13768,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NameExpCS_9; 
+
+                              current = this_NameExpCS_9;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13783,14 +13783,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13811,7 +13811,7 @@
             // InternalCompleteOCL.g:4671:2: iv_ruleNameExpCS= ruleNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNameExpCSRule()); 
+               newCompositeNode(grammarAccess.getNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNameExpCS=ruleNameExpCS();
@@ -13819,18 +13819,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNameExpCS; 
+               current =iv_ruleNameExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13854,8 +13854,8 @@
         EObject lv_ownedCurlyBracketedClause_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:4681:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? ) )
             // InternalCompleteOCL.g:4682:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? )
@@ -13870,9 +13870,9 @@
             // InternalCompleteOCL.g:4684:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_51);
             lv_ownedPathName_0_0=rulePathNameCS();
@@ -13885,12 +13885,12 @@
               	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_0_0, 
+                      		lv_ownedPathName_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -13917,9 +13917,9 @@
             	    // InternalCompleteOCL.g:4702:3: lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_51);
             	    lv_ownedSquareBracketedClauses_1_0=ruleSquareBracketedClauseCS();
@@ -13932,12 +13932,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedSquareBracketedClauses",
-            	              		lv_ownedSquareBracketedClauses_1_0, 
+            	              		lv_ownedSquareBracketedClauses_1_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.SquareBracketedClauseCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -13966,9 +13966,9 @@
                     // InternalCompleteOCL.g:4720:3: lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_52);
                     lv_ownedRoundBracketedClause_2_0=ruleRoundBracketedClauseCS();
@@ -13981,12 +13981,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRoundBracketedClause",
-                              		lv_ownedRoundBracketedClause_2_0, 
+                              		lv_ownedRoundBracketedClause_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -14012,9 +14012,9 @@
                     // InternalCompleteOCL.g:4738:3: lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_53);
                     lv_ownedCurlyBracketedClause_3_0=ruleCurlyBracketedClauseCS();
@@ -14027,12 +14027,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCurlyBracketedClause",
-                              		lv_ownedCurlyBracketedClause_3_0, 
+                              		lv_ownedCurlyBracketedClause_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -14064,7 +14064,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isPre_4_0, grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -14072,7 +14072,7 @@
                       	            current = createModelElement(grammarAccess.getNameExpCSRule());
                       	        }
                              		setWithLastConsumed(current, "isPre", true, "@");
-                      	    
+
                     }
 
                     }
@@ -14084,7 +14084,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
-                          
+
                     }
 
                     }
@@ -14099,14 +14099,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14127,7 +14127,7 @@
             // InternalCompleteOCL.g:4783:2: iv_ruleCurlyBracketedClauseCS= ruleCurlyBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCurlyBracketedClauseCSRule()); 
+               newCompositeNode(grammarAccess.getCurlyBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCurlyBracketedClauseCS=ruleCurlyBracketedClauseCS();
@@ -14135,18 +14135,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCurlyBracketedClauseCS; 
+               current =iv_ruleCurlyBracketedClauseCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14169,8 +14169,8 @@
         AntlrDatatypeRuleToken lv_value_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:4793:28: ( ( () otherlv_1= '{' ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) ) otherlv_6= '}' ) )
             // InternalCompleteOCL.g:4794:1: ( () otherlv_1= '{' ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) ) otherlv_6= '}' )
@@ -14179,19 +14179,19 @@
             // InternalCompleteOCL.g:4794:2: () otherlv_1= '{' ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) ) otherlv_6= '}'
             {
             // InternalCompleteOCL.g:4794:2: ()
-            // InternalCompleteOCL.g:4795:2: 
+            // InternalCompleteOCL.g:4795:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -14200,7 +14200,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:4807:1: ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) )
             int alt86=2;
@@ -14241,9 +14241,9 @@
                             // InternalCompleteOCL.g:4809:3: lv_ownedParts_2_0= ruleShadowPartCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_36);
                             lv_ownedParts_2_0=ruleShadowPartCS();
@@ -14256,12 +14256,12 @@
                               	            current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
                               	        }
                                      		add(
-                                     			current, 
+                                     			current,
                                      			"ownedParts",
-                                      		lv_ownedParts_2_0, 
+                                      		lv_ownedParts_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -14288,7 +14288,7 @@
                             	    if ( state.backtracking==0 ) {
 
                             	          	newLeafNode(otherlv_3, grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
-                            	          
+
                             	    }
                             	    // InternalCompleteOCL.g:4829:1: ( (lv_ownedParts_4_0= ruleShadowPartCS ) )
                             	    // InternalCompleteOCL.g:4830:1: (lv_ownedParts_4_0= ruleShadowPartCS )
@@ -14297,9 +14297,9 @@
                             	    // InternalCompleteOCL.g:4831:3: lv_ownedParts_4_0= ruleShadowPartCS
                             	    {
                             	    if ( state.backtracking==0 ) {
-                            	       
-                            	      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
-                            	      	    
+
+                            	      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
+
                             	    }
                             	    pushFollow(FollowSets000.FOLLOW_36);
                             	    lv_ownedParts_4_0=ruleShadowPartCS();
@@ -14312,12 +14312,12 @@
                             	      	            current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
                             	      	        }
                             	             		add(
-                            	             			current, 
+                            	             			current,
                             	             			"ownedParts",
-                            	              		lv_ownedParts_4_0, 
+                            	              		lv_ownedParts_4_0,
                             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
                             	      	        afterParserOrEnumRuleCall();
-                            	      	    
+
                             	    }
 
                             	    }
@@ -14353,9 +14353,9 @@
                     // InternalCompleteOCL.g:4850:3: lv_value_5_0= ruleStringLiteral
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_42);
                     lv_value_5_0=ruleStringLiteral();
@@ -14368,12 +14368,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"value",
-                              		lv_value_5_0, 
+                              		lv_value_5_0,
                               		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -14391,7 +14391,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_6, grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -14400,14 +14400,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14428,7 +14428,7 @@
             // InternalCompleteOCL.g:4880:2: iv_ruleRoundBracketedClauseCS= ruleRoundBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getRoundBracketedClauseCSRule()); 
+               newCompositeNode(grammarAccess.getRoundBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleRoundBracketedClauseCS=ruleRoundBracketedClauseCS();
@@ -14436,18 +14436,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleRoundBracketedClauseCS; 
+               current =iv_ruleRoundBracketedClauseCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14475,8 +14475,8 @@
         EObject lv_ownedArguments_7_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:4890:28: ( ( () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )? otherlv_8= ')' ) )
             // InternalCompleteOCL.g:4891:1: ( () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )? otherlv_8= ')' )
@@ -14485,19 +14485,19 @@
             // InternalCompleteOCL.g:4891:2: () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )? otherlv_8= ')'
             {
             // InternalCompleteOCL.g:4891:2: ()
-            // InternalCompleteOCL.g:4892:2: 
+            // InternalCompleteOCL.g:4892:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -14506,7 +14506,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:4904:1: ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )?
             int alt92=2;
@@ -14526,9 +14526,9 @@
                     // InternalCompleteOCL.g:4906:3: lv_ownedArguments_2_0= ruleNavigatingArgCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_57);
                     lv_ownedArguments_2_0=ruleNavigatingArgCS();
@@ -14541,12 +14541,12 @@
                       	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedArguments",
-                              		lv_ownedArguments_2_0, 
+                              		lv_ownedArguments_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -14573,9 +14573,9 @@
                     	    // InternalCompleteOCL.g:4924:3: lv_ownedArguments_3_0= ruleNavigatingCommaArgCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_57);
                     	    lv_ownedArguments_3_0=ruleNavigatingCommaArgCS();
@@ -14588,12 +14588,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedArguments",
-                    	              		lv_ownedArguments_3_0, 
+                    	              		lv_ownedArguments_3_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -14625,9 +14625,9 @@
                             // InternalCompleteOCL.g:4942:3: lv_ownedArguments_4_0= ruleNavigatingSemiArgCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_58);
                             lv_ownedArguments_4_0=ruleNavigatingSemiArgCS();
@@ -14640,12 +14640,12 @@
                               	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                               	        }
                                      		add(
-                                     			current, 
+                                     			current,
                                      			"ownedArguments",
-                                      		lv_ownedArguments_4_0, 
+                                      		lv_ownedArguments_4_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingSemiArgCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -14672,9 +14672,9 @@
                             	    // InternalCompleteOCL.g:4960:3: lv_ownedArguments_5_0= ruleNavigatingCommaArgCS
                             	    {
                             	    if ( state.backtracking==0 ) {
-                            	       
-                            	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
-                            	      	    
+
+                            	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
+
                             	    }
                             	    pushFollow(FollowSets000.FOLLOW_58);
                             	    lv_ownedArguments_5_0=ruleNavigatingCommaArgCS();
@@ -14687,12 +14687,12 @@
                             	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                             	      	        }
                             	             		add(
-                            	             			current, 
+                            	             			current,
                             	             			"ownedArguments",
-                            	              		lv_ownedArguments_5_0, 
+                            	              		lv_ownedArguments_5_0,
                             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
                             	      	        afterParserOrEnumRuleCall();
-                            	      	    
+
                             	    }
 
                             	    }
@@ -14734,9 +14734,9 @@
                     	    // InternalCompleteOCL.g:4978:3: lv_ownedArguments_6_0= ruleNavigatingBarArgCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_58);
                     	    lv_ownedArguments_6_0=ruleNavigatingBarArgCS();
@@ -14749,12 +14749,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedArguments",
-                    	              		lv_ownedArguments_6_0, 
+                    	              		lv_ownedArguments_6_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingBarArgCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -14781,9 +14781,9 @@
                     	    	    // InternalCompleteOCL.g:4996:3: lv_ownedArguments_7_0= ruleNavigatingCommaArgCS
                     	    	    {
                     	    	    if ( state.backtracking==0 ) {
-                    	    	       
-                    	    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
-                    	    	      	    
+
+                    	    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
+
                     	    	    }
                     	    	    pushFollow(FollowSets000.FOLLOW_58);
                     	    	    lv_ownedArguments_7_0=ruleNavigatingCommaArgCS();
@@ -14796,12 +14796,12 @@
                     	    	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                     	    	      	        }
                     	    	             		add(
-                    	    	             			current, 
+                    	    	             			current,
                     	    	             			"ownedArguments",
-                    	    	              		lv_ownedArguments_7_0, 
+                    	    	              		lv_ownedArguments_7_0,
                     	    	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
                     	    	      	        afterParserOrEnumRuleCall();
-                    	    	      	    
+
                     	    	    }
 
                     	    	    }
@@ -14834,7 +14834,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_8, grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
-                  
+
             }
 
             }
@@ -14843,14 +14843,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14871,7 +14871,7 @@
             // InternalCompleteOCL.g:5026:2: iv_ruleSquareBracketedClauseCS= ruleSquareBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getSquareBracketedClauseCSRule()); 
+               newCompositeNode(grammarAccess.getSquareBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleSquareBracketedClauseCS=ruleSquareBracketedClauseCS();
@@ -14879,18 +14879,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleSquareBracketedClauseCS; 
+               current =iv_ruleSquareBracketedClauseCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14911,8 +14911,8 @@
         EObject lv_ownedTerms_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:5036:28: ( (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' ) )
             // InternalCompleteOCL.g:5037:1: (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' )
@@ -14924,7 +14924,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
-                  
+
             }
             // InternalCompleteOCL.g:5041:1: ( (lv_ownedTerms_1_0= ruleExpCS ) )
             // InternalCompleteOCL.g:5042:1: (lv_ownedTerms_1_0= ruleExpCS )
@@ -14933,9 +14933,9 @@
             // InternalCompleteOCL.g:5043:3: lv_ownedTerms_1_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_59);
             lv_ownedTerms_1_0=ruleExpCS();
@@ -14948,12 +14948,12 @@
               	            current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedTerms",
-                      		lv_ownedTerms_1_0, 
+                      		lv_ownedTerms_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -14980,7 +14980,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_2, grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:5063:1: ( (lv_ownedTerms_3_0= ruleExpCS ) )
             	    // InternalCompleteOCL.g:5064:1: (lv_ownedTerms_3_0= ruleExpCS )
@@ -14989,9 +14989,9 @@
             	    // InternalCompleteOCL.g:5065:3: lv_ownedTerms_3_0= ruleExpCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_59);
             	    lv_ownedTerms_3_0=ruleExpCS();
@@ -15004,12 +15004,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedTerms",
-            	              		lv_ownedTerms_3_0, 
+            	              		lv_ownedTerms_3_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -15030,7 +15030,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
-                  
+
             }
 
             }
@@ -15039,14 +15039,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15067,7 +15067,7 @@
             // InternalCompleteOCL.g:5095:2: iv_ruleNavigatingArgCS= ruleNavigatingArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingArgCS=ruleNavigatingArgCS();
@@ -15075,18 +15075,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingArgCS; 
+               current =iv_ruleNavigatingArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15114,8 +15114,8 @@
         EObject lv_ownedType_8_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:5105:28: ( ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= 'in' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ) ) )
             // InternalCompleteOCL.g:5106:1: ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= 'in' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ) )
@@ -15151,9 +15151,9 @@
                     // InternalCompleteOCL.g:5108:3: lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_60);
                     lv_ownedNameExpression_0_0=ruleNavigatingArgExpCS();
@@ -15166,12 +15166,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedNameExpression",
-                              		lv_ownedNameExpression_0_0, 
+                              		lv_ownedNameExpression_0_0,
                               		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.NavigatingArgExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -15200,7 +15200,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_1, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
-                                  
+
                             }
                             // InternalCompleteOCL.g:5128:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                             // InternalCompleteOCL.g:5129:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -15209,9 +15209,9 @@
                             // InternalCompleteOCL.g:5130:3: lv_ownedType_2_0= ruleTypeExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_61);
                             lv_ownedType_2_0=ruleTypeExpCS();
@@ -15224,12 +15224,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedType",
-                                      		lv_ownedType_2_0, 
+                                      		lv_ownedType_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -15252,7 +15252,7 @@
                                     if ( state.backtracking==0 ) {
 
                                           	newLeafNode(otherlv_3, grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
-                                          
+
                                     }
                                     // InternalCompleteOCL.g:5150:1: ( (lv_ownedInitExpression_4_0= ruleExpCS ) )
                                     // InternalCompleteOCL.g:5151:1: (lv_ownedInitExpression_4_0= ruleExpCS )
@@ -15261,9 +15261,9 @@
                                     // InternalCompleteOCL.g:5152:3: lv_ownedInitExpression_4_0= ruleExpCS
                                     {
                                     if ( state.backtracking==0 ) {
-                                       
-                                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
-                                      	    
+
+                                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
+
                                     }
                                     pushFollow(FollowSets000.FOLLOW_2);
                                     lv_ownedInitExpression_4_0=ruleExpCS();
@@ -15276,12 +15276,12 @@
                                       	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                                       	        }
                                              		set(
-                                             			current, 
+                                             			current,
                                              			"ownedInitExpression",
-                                              		lv_ownedInitExpression_4_0, 
+                                              		lv_ownedInitExpression_4_0,
                                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                                       	        afterParserOrEnumRuleCall();
-                                      	    
+
                                     }
 
                                     }
@@ -15311,7 +15311,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_5, grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
-                                  
+
                             }
                             // InternalCompleteOCL.g:5173:1: ( (lv_ownedInitExpression_6_0= ruleExpCS ) )
                             // InternalCompleteOCL.g:5174:1: (lv_ownedInitExpression_6_0= ruleExpCS )
@@ -15320,9 +15320,9 @@
                             // InternalCompleteOCL.g:5175:3: lv_ownedInitExpression_6_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_6_0=ruleExpCS();
@@ -15335,12 +15335,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_6_0, 
+                                      		lv_ownedInitExpression_6_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -15373,7 +15373,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_7, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:5196:1: ( (lv_ownedType_8_0= ruleTypeExpCS ) )
                     // InternalCompleteOCL.g:5197:1: (lv_ownedType_8_0= ruleTypeExpCS )
@@ -15382,9 +15382,9 @@
                     // InternalCompleteOCL.g:5198:3: lv_ownedType_8_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedType_8_0=ruleTypeExpCS();
@@ -15397,12 +15397,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_8_0, 
+                              		lv_ownedType_8_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -15423,14 +15423,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15451,7 +15451,7 @@
             // InternalCompleteOCL.g:5224:2: iv_ruleNavigatingBarArgCS= ruleNavigatingBarArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingBarArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingBarArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingBarArgCS=ruleNavigatingBarArgCS();
@@ -15459,18 +15459,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingBarArgCS; 
+               current =iv_ruleNavigatingBarArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15493,8 +15493,8 @@
         EObject lv_ownedInitExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:5234:28: ( ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) )
             // InternalCompleteOCL.g:5235:1: ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? )
@@ -15512,7 +15512,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -15520,7 +15520,7 @@
               	            current = createModelElement(grammarAccess.getNavigatingBarArgCSRule());
               	        }
                      		setWithLastConsumed(current, "prefix", lv_prefix_0_0, "|");
-              	    
+
             }
 
             }
@@ -15535,9 +15535,9 @@
             // InternalCompleteOCL.g:5252:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_63);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
@@ -15550,12 +15550,12 @@
               	            current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedNameExpression",
-                      		lv_ownedNameExpression_1_0, 
+                      		lv_ownedNameExpression_1_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.NavigatingArgExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -15578,7 +15578,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:5272:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalCompleteOCL.g:5273:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -15587,9 +15587,9 @@
                     // InternalCompleteOCL.g:5274:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_61);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -15602,12 +15602,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -15630,7 +15630,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
-                                  
+
                             }
                             // InternalCompleteOCL.g:5294:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
                             // InternalCompleteOCL.g:5295:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -15639,9 +15639,9 @@
                             // InternalCompleteOCL.g:5296:3: lv_ownedInitExpression_5_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -15654,12 +15654,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_5_0, 
+                                      		lv_ownedInitExpression_5_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -15686,14 +15686,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15714,7 +15714,7 @@
             // InternalCompleteOCL.g:5322:2: iv_ruleNavigatingCommaArgCS= ruleNavigatingCommaArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingCommaArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingCommaArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingCommaArgCS=ruleNavigatingCommaArgCS();
@@ -15722,18 +15722,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingCommaArgCS; 
+               current =iv_ruleNavigatingCommaArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15759,8 +15759,8 @@
         EObject lv_ownedInitExpression_7_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:5332:28: ( ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= 'in' ( (lv_ownedInitExpression_7_0= ruleExpCS ) ) ) )? ) )
             // InternalCompleteOCL.g:5333:1: ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= 'in' ( (lv_ownedInitExpression_7_0= ruleExpCS ) ) ) )? )
@@ -15778,7 +15778,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -15786,7 +15786,7 @@
               	            current = createModelElement(grammarAccess.getNavigatingCommaArgCSRule());
               	        }
                      		setWithLastConsumed(current, "prefix", lv_prefix_0_0, ",");
-              	    
+
             }
 
             }
@@ -15801,9 +15801,9 @@
             // InternalCompleteOCL.g:5350:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_60);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
@@ -15816,12 +15816,12 @@
               	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedNameExpression",
-                      		lv_ownedNameExpression_1_0, 
+                      		lv_ownedNameExpression_1_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.NavigatingArgExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -15850,7 +15850,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:5370:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalCompleteOCL.g:5371:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -15859,9 +15859,9 @@
                     // InternalCompleteOCL.g:5372:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_61);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -15874,12 +15874,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -15902,7 +15902,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
-                                  
+
                             }
                             // InternalCompleteOCL.g:5392:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
                             // InternalCompleteOCL.g:5393:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -15911,9 +15911,9 @@
                             // InternalCompleteOCL.g:5394:3: lv_ownedInitExpression_5_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -15926,12 +15926,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_5_0, 
+                                      		lv_ownedInitExpression_5_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -15961,7 +15961,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:5415:1: ( (lv_ownedInitExpression_7_0= ruleExpCS ) )
                     // InternalCompleteOCL.g:5416:1: (lv_ownedInitExpression_7_0= ruleExpCS )
@@ -15970,9 +15970,9 @@
                     // InternalCompleteOCL.g:5417:3: lv_ownedInitExpression_7_0= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedInitExpression_7_0=ruleExpCS();
@@ -15985,12 +15985,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedInitExpression",
-                              		lv_ownedInitExpression_7_0, 
+                              		lv_ownedInitExpression_7_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -16014,14 +16014,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16042,7 +16042,7 @@
             // InternalCompleteOCL.g:5443:2: iv_ruleNavigatingSemiArgCS= ruleNavigatingSemiArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingSemiArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingSemiArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingSemiArgCS=ruleNavigatingSemiArgCS();
@@ -16050,18 +16050,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingSemiArgCS; 
+               current =iv_ruleNavigatingSemiArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16084,8 +16084,8 @@
         EObject lv_ownedInitExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:5453:28: ( ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) )
             // InternalCompleteOCL.g:5454:1: ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? )
@@ -16103,7 +16103,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -16111,7 +16111,7 @@
               	            current = createModelElement(grammarAccess.getNavigatingSemiArgCSRule());
               	        }
                      		setWithLastConsumed(current, "prefix", lv_prefix_0_0, ";");
-              	    
+
             }
 
             }
@@ -16126,9 +16126,9 @@
             // InternalCompleteOCL.g:5471:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_63);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
@@ -16141,12 +16141,12 @@
               	            current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedNameExpression",
-                      		lv_ownedNameExpression_1_0, 
+                      		lv_ownedNameExpression_1_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.NavigatingArgExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -16169,7 +16169,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:5491:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalCompleteOCL.g:5492:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -16178,9 +16178,9 @@
                     // InternalCompleteOCL.g:5493:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_61);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -16193,12 +16193,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -16221,7 +16221,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
-                                  
+
                             }
                             // InternalCompleteOCL.g:5513:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
                             // InternalCompleteOCL.g:5514:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -16230,9 +16230,9 @@
                             // InternalCompleteOCL.g:5515:3: lv_ownedInitExpression_5_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -16245,12 +16245,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_5_0, 
+                                      		lv_ownedInitExpression_5_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -16277,14 +16277,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16305,7 +16305,7 @@
             // InternalCompleteOCL.g:5541:2: iv_ruleIfExpCS= ruleIfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIfExpCSRule()); 
+               newCompositeNode(grammarAccess.getIfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleIfExpCS=ruleIfExpCS();
@@ -16313,18 +16313,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleIfExpCS; 
+               current =iv_ruleIfExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16352,8 +16352,8 @@
         EObject lv_ownedElseExpression_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:5551:28: ( (otherlv_0= 'if' ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* otherlv_5= 'else' ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) otherlv_7= 'endif' ) )
             // InternalCompleteOCL.g:5552:1: (otherlv_0= 'if' ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* otherlv_5= 'else' ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) otherlv_7= 'endif' )
@@ -16365,7 +16365,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getIfExpCSAccess().getIfKeyword_0());
-                  
+
             }
             // InternalCompleteOCL.g:5556:1: ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) )
             // InternalCompleteOCL.g:5557:1: ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) )
@@ -16524,9 +16524,9 @@
                     // InternalCompleteOCL.g:5559:3: lv_ownedCondition_1_1= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_64);
                     lv_ownedCondition_1_1=ruleExpCS();
@@ -16539,12 +16539,12 @@
                       	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCondition",
-                              		lv_ownedCondition_1_1, 
+                              		lv_ownedCondition_1_1,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -16553,9 +16553,9 @@
                     // InternalCompleteOCL.g:5574:8: lv_ownedCondition_1_2= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_64);
                     lv_ownedCondition_1_2=rulePatternExpCS();
@@ -16568,12 +16568,12 @@
                       	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCondition",
-                              		lv_ownedCondition_1_2, 
+                              		lv_ownedCondition_1_2,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -16591,7 +16591,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getIfExpCSAccess().getThenKeyword_2());
-                  
+
             }
             // InternalCompleteOCL.g:5596:1: ( (lv_ownedThenExpression_3_0= ruleExpCS ) )
             // InternalCompleteOCL.g:5597:1: (lv_ownedThenExpression_3_0= ruleExpCS )
@@ -16600,9 +16600,9 @@
             // InternalCompleteOCL.g:5598:3: lv_ownedThenExpression_3_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_65);
             lv_ownedThenExpression_3_0=ruleExpCS();
@@ -16615,12 +16615,12 @@
               	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedThenExpression",
-                      		lv_ownedThenExpression_3_0, 
+                      		lv_ownedThenExpression_3_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -16647,9 +16647,9 @@
             	    // InternalCompleteOCL.g:5616:3: lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_65);
             	    lv_ownedIfThenExpressions_4_0=ruleElseIfThenExpCS();
@@ -16662,12 +16662,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedIfThenExpressions",
-            	              		lv_ownedIfThenExpressions_4_0, 
+            	              		lv_ownedIfThenExpressions_4_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ElseIfThenExpCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -16685,7 +16685,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getIfExpCSAccess().getElseKeyword_5());
-                  
+
             }
             // InternalCompleteOCL.g:5636:1: ( (lv_ownedElseExpression_6_0= ruleExpCS ) )
             // InternalCompleteOCL.g:5637:1: (lv_ownedElseExpression_6_0= ruleExpCS )
@@ -16694,9 +16694,9 @@
             // InternalCompleteOCL.g:5638:3: lv_ownedElseExpression_6_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_66);
             lv_ownedElseExpression_6_0=ruleExpCS();
@@ -16709,12 +16709,12 @@
               	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedElseExpression",
-                      		lv_ownedElseExpression_6_0, 
+                      		lv_ownedElseExpression_6_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -16726,7 +16726,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
-                  
+
             }
 
             }
@@ -16735,14 +16735,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16763,7 +16763,7 @@
             // InternalCompleteOCL.g:5668:2: iv_ruleElseIfThenExpCS= ruleElseIfThenExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getElseIfThenExpCSRule()); 
+               newCompositeNode(grammarAccess.getElseIfThenExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleElseIfThenExpCS=ruleElseIfThenExpCS();
@@ -16771,18 +16771,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleElseIfThenExpCS; 
+               current =iv_ruleElseIfThenExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16802,8 +16802,8 @@
         EObject lv_ownedThenExpression_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:5678:28: ( (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ) )
             // InternalCompleteOCL.g:5679:1: (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) )
@@ -16815,7 +16815,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
-                  
+
             }
             // InternalCompleteOCL.g:5683:1: ( (lv_ownedCondition_1_0= ruleExpCS ) )
             // InternalCompleteOCL.g:5684:1: (lv_ownedCondition_1_0= ruleExpCS )
@@ -16824,9 +16824,9 @@
             // InternalCompleteOCL.g:5685:3: lv_ownedCondition_1_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_64);
             lv_ownedCondition_1_0=ruleExpCS();
@@ -16839,12 +16839,12 @@
               	            current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedCondition",
-                      		lv_ownedCondition_1_0, 
+                      		lv_ownedCondition_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -16856,7 +16856,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
-                  
+
             }
             // InternalCompleteOCL.g:5705:1: ( (lv_ownedThenExpression_3_0= ruleExpCS ) )
             // InternalCompleteOCL.g:5706:1: (lv_ownedThenExpression_3_0= ruleExpCS )
@@ -16865,9 +16865,9 @@
             // InternalCompleteOCL.g:5707:3: lv_ownedThenExpression_3_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedThenExpression_3_0=ruleExpCS();
@@ -16880,12 +16880,12 @@
               	            current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedThenExpression",
-                      		lv_ownedThenExpression_3_0, 
+                      		lv_ownedThenExpression_3_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -16900,14 +16900,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16928,7 +16928,7 @@
             // InternalCompleteOCL.g:5733:2: iv_ruleLetExpCS= ruleLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLetExpCSRule()); 
+               newCompositeNode(grammarAccess.getLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLetExpCS=ruleLetExpCS();
@@ -16936,18 +16936,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLetExpCS; 
+               current =iv_ruleLetExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16970,8 +16970,8 @@
         EObject lv_ownedInExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:5743:28: ( (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:5744:1: (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) )
@@ -16983,7 +16983,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getLetExpCSAccess().getLetKeyword_0());
-                  
+
             }
             // InternalCompleteOCL.g:5748:1: ( (lv_ownedVariables_1_0= ruleLetVariableCS ) )
             // InternalCompleteOCL.g:5749:1: (lv_ownedVariables_1_0= ruleLetVariableCS )
@@ -16992,9 +16992,9 @@
             // InternalCompleteOCL.g:5750:3: lv_ownedVariables_1_0= ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_67);
             lv_ownedVariables_1_0=ruleLetVariableCS();
@@ -17007,12 +17007,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetExpCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedVariables",
-                      		lv_ownedVariables_1_0, 
+                      		lv_ownedVariables_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -17039,7 +17039,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_2, grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:5770:1: ( (lv_ownedVariables_3_0= ruleLetVariableCS ) )
             	    // InternalCompleteOCL.g:5771:1: (lv_ownedVariables_3_0= ruleLetVariableCS )
@@ -17048,9 +17048,9 @@
             	    // InternalCompleteOCL.g:5772:3: lv_ownedVariables_3_0= ruleLetVariableCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_67);
             	    lv_ownedVariables_3_0=ruleLetVariableCS();
@@ -17063,12 +17063,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLetExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedVariables",
-            	              		lv_ownedVariables_3_0, 
+            	              		lv_ownedVariables_3_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -17089,7 +17089,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getLetExpCSAccess().getInKeyword_3());
-                  
+
             }
             // InternalCompleteOCL.g:5792:1: ( (lv_ownedInExpression_5_0= ruleExpCS ) )
             // InternalCompleteOCL.g:5793:1: (lv_ownedInExpression_5_0= ruleExpCS )
@@ -17098,9 +17098,9 @@
             // InternalCompleteOCL.g:5794:3: lv_ownedInExpression_5_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedInExpression_5_0=ruleExpCS();
@@ -17113,12 +17113,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedInExpression",
-                      		lv_ownedInExpression_5_0, 
+                      		lv_ownedInExpression_5_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -17133,14 +17133,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17161,7 +17161,7 @@
             // InternalCompleteOCL.g:5820:2: iv_ruleLetVariableCS= ruleLetVariableCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLetVariableCSRule()); 
+               newCompositeNode(grammarAccess.getLetVariableCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLetVariableCS=ruleLetVariableCS();
@@ -17169,18 +17169,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLetVariableCS; 
+               current =iv_ruleLetVariableCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17204,8 +17204,8 @@
         EObject lv_ownedInitExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:5830:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) ) )
             // InternalCompleteOCL.g:5831:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )
@@ -17220,9 +17220,9 @@
             // InternalCompleteOCL.g:5833:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_68);
             lv_name_0_0=ruleUnrestrictedName();
@@ -17235,12 +17235,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -17263,9 +17263,9 @@
                     // InternalCompleteOCL.g:5851:3: lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_45);
                     lv_ownedRoundBracketedClause_1_0=ruleRoundBracketedClauseCS();
@@ -17278,12 +17278,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRoundBracketedClause",
-                              		lv_ownedRoundBracketedClause_1_0, 
+                              		lv_ownedRoundBracketedClause_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -17309,7 +17309,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:5871:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalCompleteOCL.g:5872:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -17318,9 +17318,9 @@
                     // InternalCompleteOCL.g:5873:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_19);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -17333,12 +17333,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -17356,7 +17356,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
-                  
+
             }
             // InternalCompleteOCL.g:5893:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
             // InternalCompleteOCL.g:5894:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -17365,9 +17365,9 @@
             // InternalCompleteOCL.g:5895:3: lv_ownedInitExpression_5_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -17380,12 +17380,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedInitExpression",
-                      		lv_ownedInitExpression_5_0, 
+                      		lv_ownedInitExpression_5_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -17400,14 +17400,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17428,7 +17428,7 @@
             // InternalCompleteOCL.g:5921:2: iv_ruleNestedExpCS= ruleNestedExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNestedExpCSRule()); 
+               newCompositeNode(grammarAccess.getNestedExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNestedExpCS=ruleNestedExpCS();
@@ -17436,18 +17436,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNestedExpCS; 
+               current =iv_ruleNestedExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17465,8 +17465,8 @@
         EObject lv_ownedExpression_1_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:5931:28: ( (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' ) )
             // InternalCompleteOCL.g:5932:1: (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' )
@@ -17478,7 +17478,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
-                  
+
             }
             // InternalCompleteOCL.g:5936:1: ( (lv_ownedExpression_1_0= ruleExpCS ) )
             // InternalCompleteOCL.g:5937:1: (lv_ownedExpression_1_0= ruleExpCS )
@@ -17487,9 +17487,9 @@
             // InternalCompleteOCL.g:5938:3: lv_ownedExpression_1_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_11);
             lv_ownedExpression_1_0=ruleExpCS();
@@ -17502,12 +17502,12 @@
               	            current = createModelElementForParent(grammarAccess.getNestedExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedExpression",
-                      		lv_ownedExpression_1_0, 
+                      		lv_ownedExpression_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -17519,7 +17519,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
-                  
+
             }
 
             }
@@ -17528,14 +17528,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17556,7 +17556,7 @@
             // InternalCompleteOCL.g:5968:2: iv_ruleSelfExpCS= ruleSelfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getSelfExpCSRule()); 
+               newCompositeNode(grammarAccess.getSelfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleSelfExpCS=ruleSelfExpCS();
@@ -17564,18 +17564,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleSelfExpCS; 
+               current =iv_ruleSelfExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17590,8 +17590,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:5978:28: ( ( () otherlv_1= 'self' ) )
             // InternalCompleteOCL.g:5979:1: ( () otherlv_1= 'self' )
@@ -17600,19 +17600,19 @@
             // InternalCompleteOCL.g:5979:2: () otherlv_1= 'self'
             {
             // InternalCompleteOCL.g:5979:2: ()
-            // InternalCompleteOCL.g:5980:2: 
+            // InternalCompleteOCL.g:5980:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -17621,7 +17621,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
-                  
+
             }
 
             }
@@ -17630,14 +17630,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17658,7 +17658,7 @@
             // InternalCompleteOCL.g:6002:2: iv_ruleMultiplicityBoundsCS= ruleMultiplicityBoundsCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS();
@@ -17666,18 +17666,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityBoundsCS; 
+               current =iv_ruleMultiplicityBoundsCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17696,8 +17696,8 @@
         AntlrDatatypeRuleToken lv_upperBound_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6012:28: ( ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? ) )
             // InternalCompleteOCL.g:6013:1: ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? )
@@ -17712,9 +17712,9 @@
             // InternalCompleteOCL.g:6015:3: lv_lowerBound_0_0= ruleLOWER
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_38);
             lv_lowerBound_0_0=ruleLOWER();
@@ -17727,12 +17727,12 @@
               	            current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"lowerBound",
-                      		lv_lowerBound_0_0, 
+                      		lv_lowerBound_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.LOWER");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -17755,7 +17755,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:6035:1: ( (lv_upperBound_2_0= ruleUPPER ) )
                     // InternalCompleteOCL.g:6036:1: (lv_upperBound_2_0= ruleUPPER )
@@ -17764,9 +17764,9 @@
                     // InternalCompleteOCL.g:6037:3: lv_upperBound_2_0= ruleUPPER
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_upperBound_2_0=ruleUPPER();
@@ -17779,12 +17779,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"upperBound",
-                              		lv_upperBound_2_0, 
+                              		lv_upperBound_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.UPPER");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -17805,14 +17805,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17833,7 +17833,7 @@
             // InternalCompleteOCL.g:6063:2: iv_ruleMultiplicityCS= ruleMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityCS=ruleMultiplicityCS();
@@ -17841,18 +17841,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityCS; 
+               current =iv_ruleMultiplicityCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17874,8 +17874,8 @@
         EObject this_MultiplicityStringCS_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6073:28: ( (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' ) )
             // InternalCompleteOCL.g:6074:1: (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' )
@@ -17887,7 +17887,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
-                  
+
             }
             // InternalCompleteOCL.g:6078:1: (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS )
             int alt109=2;
@@ -17911,14 +17911,14 @@
                     // InternalCompleteOCL.g:6079:2: this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_71);
                     this_MultiplicityBoundsCS_1=ruleMultiplicityBoundsCS();
@@ -17926,10 +17926,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MultiplicityBoundsCS_1; 
+
+                              current = this_MultiplicityBoundsCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -17938,14 +17938,14 @@
                     // InternalCompleteOCL.g:6092:2: this_MultiplicityStringCS_2= ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_71);
                     this_MultiplicityStringCS_2=ruleMultiplicityStringCS();
@@ -17953,10 +17953,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MultiplicityStringCS_2; 
+
+                              current = this_MultiplicityStringCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -17982,7 +17982,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
-                          
+
                     }
 
                     }
@@ -18000,7 +18000,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isNullFree_4_0, grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -18008,7 +18008,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityCSRule());
                       	        }
                              		setWithLastConsumed(current, "isNullFree", true, "|1");
-                      	    
+
                     }
 
                     }
@@ -18026,7 +18026,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
-                  
+
             }
 
             }
@@ -18035,14 +18035,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18063,7 +18063,7 @@
             // InternalCompleteOCL.g:6137:2: iv_ruleMultiplicityStringCS= ruleMultiplicityStringCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityStringCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityStringCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS();
@@ -18071,18 +18071,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityStringCS; 
+               current =iv_ruleMultiplicityStringCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18099,8 +18099,8 @@
         Token lv_stringBounds_0_2=null;
         Token lv_stringBounds_0_3=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6147:28: ( ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) ) )
             // InternalCompleteOCL.g:6148:1: ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) )
@@ -18145,7 +18145,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_1, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -18153,7 +18153,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_1, null);
-                      	    
+
                     }
 
                     }
@@ -18165,7 +18165,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_2, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -18173,7 +18173,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_2, null);
-                      	    
+
                     }
 
                     }
@@ -18185,7 +18185,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_3, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -18193,7 +18193,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_3, null);
-                      	    
+
                     }
 
                     }
@@ -18211,14 +18211,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18239,7 +18239,7 @@
             // InternalCompleteOCL.g:6200:2: iv_rulePathNameCS= rulePathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPathNameCSRule()); 
+               newCompositeNode(grammarAccess.getPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePathNameCS=rulePathNameCS();
@@ -18247,18 +18247,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePathNameCS; 
+               current =iv_rulePathNameCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18277,8 +18277,8 @@
         EObject lv_ownedPathElements_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6210:28: ( ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) )
             // InternalCompleteOCL.g:6211:1: ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
@@ -18293,9 +18293,9 @@
             // InternalCompleteOCL.g:6213:3: lv_ownedPathElements_0_0= ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_30);
             lv_ownedPathElements_0_0=ruleFirstPathElementCS();
@@ -18308,12 +18308,12 @@
               	            current = createModelElementForParent(grammarAccess.getPathNameCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedPathElements",
-                      		lv_ownedPathElements_0_0, 
+                      		lv_ownedPathElements_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.FirstPathElementCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -18340,7 +18340,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:6233:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
             	    // InternalCompleteOCL.g:6234:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
@@ -18349,9 +18349,9 @@
             	    // InternalCompleteOCL.g:6235:3: lv_ownedPathElements_2_0= ruleNextPathElementCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_30);
             	    lv_ownedPathElements_2_0=ruleNextPathElementCS();
@@ -18364,12 +18364,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getPathNameCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPathElements",
-            	              		lv_ownedPathElements_2_0, 
+            	              		lv_ownedPathElements_2_0,
             	              		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -18393,14 +18393,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18421,7 +18421,7 @@
             // InternalCompleteOCL.g:6261:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getFirstPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleFirstPathElementCS=ruleFirstPathElementCS();
@@ -18429,18 +18429,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleFirstPathElementCS; 
+               current =iv_ruleFirstPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18453,8 +18453,8 @@
     public final EObject ruleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6271:28: ( ( ( ruleUnrestrictedName ) ) )
             // InternalCompleteOCL.g:6272:1: ( ( ruleUnrestrictedName ) )
@@ -18466,21 +18466,21 @@
             // InternalCompleteOCL.g:6274:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getFirstPathElementCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -18488,9 +18488,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -18502,14 +18502,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18530,7 +18530,7 @@
             // InternalCompleteOCL.g:6300:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNextPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getNextPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNextPathElementCS=ruleNextPathElementCS();
@@ -18538,18 +18538,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNextPathElementCS; 
+               current =iv_ruleNextPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18562,8 +18562,8 @@
     public final EObject ruleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6310:28: ( ( ( ruleUnreservedName ) ) )
             // InternalCompleteOCL.g:6311:1: ( ( ruleUnreservedName ) )
@@ -18575,21 +18575,21 @@
             // InternalCompleteOCL.g:6313:3: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getNextPathElementCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnreservedName();
@@ -18597,9 +18597,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -18611,14 +18611,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18639,7 +18639,7 @@
             // InternalCompleteOCL.g:6339:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTemplateBindingCSRule()); 
+               newCompositeNode(grammarAccess.getTemplateBindingCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTemplateBindingCS=ruleTemplateBindingCS();
@@ -18647,18 +18647,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTemplateBindingCS; 
+               current =iv_ruleTemplateBindingCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18679,8 +18679,8 @@
         EObject lv_ownedMultiplicity_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6349:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
             // InternalCompleteOCL.g:6350:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
@@ -18695,9 +18695,9 @@
             // InternalCompleteOCL.g:6352:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_73);
             lv_ownedSubstitutions_0_0=ruleTemplateParameterSubstitutionCS();
@@ -18710,12 +18710,12 @@
               	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedSubstitutions",
-                      		lv_ownedSubstitutions_0_0, 
+                      		lv_ownedSubstitutions_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -18742,7 +18742,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
-            	          
+
             	    }
             	    // InternalCompleteOCL.g:6372:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
             	    // InternalCompleteOCL.g:6373:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
@@ -18751,9 +18751,9 @@
             	    // InternalCompleteOCL.g:6374:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_73);
             	    lv_ownedSubstitutions_2_0=ruleTemplateParameterSubstitutionCS();
@@ -18766,12 +18766,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedSubstitutions",
-            	              		lv_ownedSubstitutions_2_0, 
+            	              		lv_ownedSubstitutions_2_0,
             	              		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -18803,9 +18803,9 @@
                     // InternalCompleteOCL.g:6392:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_3_0=ruleMultiplicityCS();
@@ -18818,12 +18818,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_3_0, 
+                              		lv_ownedMultiplicity_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -18841,14 +18841,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18869,7 +18869,7 @@
             // InternalCompleteOCL.g:6418:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS();
@@ -18877,18 +18877,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTemplateParameterSubstitutionCS; 
+               current =iv_ruleTemplateParameterSubstitutionCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18904,8 +18904,8 @@
         EObject lv_ownedActualParameter_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6428:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
             // InternalCompleteOCL.g:6429:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
@@ -18917,9 +18917,9 @@
             // InternalCompleteOCL.g:6431:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedActualParameter_0_0=ruleTypeRefCS();
@@ -18932,12 +18932,12 @@
               	            current = createModelElementForParent(grammarAccess.getTemplateParameterSubstitutionCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedActualParameter",
-                      		lv_ownedActualParameter_0_0, 
+                      		lv_ownedActualParameter_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.TypeRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -18949,14 +18949,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18977,7 +18977,7 @@
             // InternalCompleteOCL.g:6457:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeParameterCSRule()); 
+               newCompositeNode(grammarAccess.getTypeParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeParameterCS=ruleTypeParameterCS();
@@ -18985,18 +18985,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeParameterCS; 
+               current =iv_ruleTypeParameterCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19018,8 +19018,8 @@
         EObject lv_ownedExtends_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6467:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
             // InternalCompleteOCL.g:6468:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
@@ -19034,9 +19034,9 @@
             // InternalCompleteOCL.g:6470:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_75);
             lv_name_0_0=ruleUnrestrictedName();
@@ -19049,12 +19049,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -19077,7 +19077,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:6490:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
                     // InternalCompleteOCL.g:6491:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
@@ -19086,9 +19086,9 @@
                     // InternalCompleteOCL.g:6492:3: lv_ownedExtends_2_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_76);
                     lv_ownedExtends_2_0=ruleTypedRefCS();
@@ -19101,12 +19101,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedExtends",
-                              		lv_ownedExtends_2_0, 
+                              		lv_ownedExtends_2_0,
                               		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TypedRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -19133,7 +19133,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
-                    	          
+
                     	    }
                     	    // InternalCompleteOCL.g:6512:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
                     	    // InternalCompleteOCL.g:6513:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
@@ -19142,9 +19142,9 @@
                     	    // InternalCompleteOCL.g:6514:3: lv_ownedExtends_4_0= ruleTypedRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_76);
                     	    lv_ownedExtends_4_0=ruleTypedRefCS();
@@ -19157,12 +19157,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedExtends",
-                    	              		lv_ownedExtends_4_0, 
+                    	              		lv_ownedExtends_4_0,
                     	              		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TypedRefCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -19192,14 +19192,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19220,7 +19220,7 @@
             // InternalCompleteOCL.g:6540:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeRefCS=ruleTypeRefCS();
@@ -19228,18 +19228,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeRefCS; 
+               current =iv_ruleTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19257,8 +19257,8 @@
         EObject this_WildcardTypeRefCS_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6550:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
             // InternalCompleteOCL.g:6551:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
@@ -19285,14 +19285,14 @@
                     // InternalCompleteOCL.g:6552:2: this_TypedRefCS_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypedRefCS_0=ruleTypedRefCS();
@@ -19300,10 +19300,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypedRefCS_0; 
+
+                              current = this_TypedRefCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19312,14 +19312,14 @@
                     // InternalCompleteOCL.g:6565:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_WildcardTypeRefCS_1=ruleWildcardTypeRefCS();
@@ -19327,10 +19327,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_WildcardTypeRefCS_1; 
+
+                              current = this_WildcardTypeRefCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19342,14 +19342,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19370,7 +19370,7 @@
             // InternalCompleteOCL.g:6586:2: iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypedTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypedTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS();
@@ -19378,18 +19378,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypedTypeRefCS; 
+               current =iv_ruleTypedTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19409,8 +19409,8 @@
         EObject lv_ownedBinding_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6596:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) )
             // InternalCompleteOCL.g:6597:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
@@ -19425,9 +19425,9 @@
             // InternalCompleteOCL.g:6599:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_32);
             lv_ownedPathName_0_0=rulePathNameCS();
@@ -19440,12 +19440,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_0_0, 
+                      		lv_ownedPathName_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -19468,7 +19468,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:6619:1: ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) )
                     // InternalCompleteOCL.g:6620:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
@@ -19477,9 +19477,9 @@
                     // InternalCompleteOCL.g:6621:3: lv_ownedBinding_2_0= ruleTemplateBindingCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_11);
                     lv_ownedBinding_2_0=ruleTemplateBindingCS();
@@ -19492,12 +19492,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedBinding",
-                              		lv_ownedBinding_2_0, 
+                              		lv_ownedBinding_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.TemplateBindingCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -19509,7 +19509,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
-                          
+
                     }
 
                     }
@@ -19524,14 +19524,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19552,7 +19552,7 @@
             // InternalCompleteOCL.g:6651:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getWildcardTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getWildcardTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS();
@@ -19560,18 +19560,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleWildcardTypeRefCS; 
+               current =iv_ruleWildcardTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19589,8 +19589,8 @@
         EObject lv_ownedExtends_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6661:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
             // InternalCompleteOCL.g:6662:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
@@ -19599,19 +19599,19 @@
             // InternalCompleteOCL.g:6662:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             {
             // InternalCompleteOCL.g:6662:2: ()
-            // InternalCompleteOCL.g:6663:2: 
+            // InternalCompleteOCL.g:6663:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -19620,7 +19620,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
-                  
+
             }
             // InternalCompleteOCL.g:6675:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             int alt119=2;
@@ -19637,7 +19637,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
-                          
+
                     }
                     // InternalCompleteOCL.g:6679:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
                     // InternalCompleteOCL.g:6680:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
@@ -19646,9 +19646,9 @@
                     // InternalCompleteOCL.g:6681:3: lv_ownedExtends_3_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedExtends_3_0=ruleTypedRefCS();
@@ -19661,12 +19661,12 @@
                       	            current = createModelElementForParent(grammarAccess.getWildcardTypeRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExtends",
-                              		lv_ownedExtends_3_0, 
+                              		lv_ownedExtends_3_0,
                               		"org.eclipse.ocl.xtext.completeocl.CompleteOCL.TypedRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -19687,14 +19687,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19715,7 +19715,7 @@
             // InternalCompleteOCL.g:6707:2: iv_ruleID= ruleID EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIDRule()); 
+               newCompositeNode(grammarAccess.getIDRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleID=ruleID();
@@ -19723,18 +19723,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleID.getText(); 
+               current =iv_ruleID.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19750,8 +19750,8 @@
         Token this_SIMPLE_ID_0=null;
         Token this_ESCAPED_ID_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6717:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
             // InternalCompleteOCL.g:6718:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
@@ -19781,12 +19781,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_SIMPLE_ID_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
-                          
+
+                          newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
+
                     }
 
                     }
@@ -19798,12 +19798,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_ESCAPED_ID_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
-                          
+
+                          newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
+
                     }
 
                     }
@@ -19815,14 +19815,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19843,7 +19843,7 @@
             // InternalCompleteOCL.g:6743:2: iv_ruleIdentifier= ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIdentifierRule()); 
+               newCompositeNode(grammarAccess.getIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleIdentifier=ruleIdentifier();
@@ -19851,18 +19851,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleIdentifier.getText(); 
+               current =iv_ruleIdentifier.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19878,16 +19878,16 @@
         AntlrDatatypeRuleToken this_ID_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6753:28: (this_ID_0= ruleID )
             // InternalCompleteOCL.g:6755:5: this_ID_0= ruleID
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_ID_0=ruleID();
@@ -19897,25 +19897,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_ID_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19936,7 +19936,7 @@
             // InternalCompleteOCL.g:6775:2: iv_ruleLOWER= ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLOWERRule()); 
+               newCompositeNode(grammarAccess.getLOWERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLOWER=ruleLOWER();
@@ -19944,18 +19944,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLOWER.getText(); 
+               current =iv_ruleLOWER.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19970,8 +19970,8 @@
 
         Token this_INT_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6785:28: (this_INT_0= RULE_INT )
             // InternalCompleteOCL.g:6786:5: this_INT_0= RULE_INT
@@ -19980,25 +19980,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_INT_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20019,7 +20019,7 @@
             // InternalCompleteOCL.g:6803:2: iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNUMBER_LITERALRule()); 
+               newCompositeNode(grammarAccess.getNUMBER_LITERALRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNUMBER_LITERAL=ruleNUMBER_LITERAL();
@@ -20027,18 +20027,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNUMBER_LITERAL.getText(); 
+               current =iv_ruleNUMBER_LITERAL.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20053,8 +20053,8 @@
 
         Token this_INT_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6813:28: (this_INT_0= RULE_INT )
             // InternalCompleteOCL.g:6814:5: this_INT_0= RULE_INT
@@ -20063,25 +20063,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_INT_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20102,7 +20102,7 @@
             // InternalCompleteOCL.g:6831:2: iv_ruleStringLiteral= ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getStringLiteralRule()); 
+               newCompositeNode(grammarAccess.getStringLiteralRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleStringLiteral=ruleStringLiteral();
@@ -20110,18 +20110,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleStringLiteral.getText(); 
+               current =iv_ruleStringLiteral.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20136,8 +20136,8 @@
 
         Token this_SINGLE_QUOTED_STRING_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6841:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
             // InternalCompleteOCL.g:6842:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
@@ -20146,25 +20146,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_SINGLE_QUOTED_STRING_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20185,7 +20185,7 @@
             // InternalCompleteOCL.g:6859:2: iv_ruleUPPER= ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUPPERRule()); 
+               newCompositeNode(grammarAccess.getUPPERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUPPER=ruleUPPER();
@@ -20193,18 +20193,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUPPER.getText(); 
+               current =iv_ruleUPPER.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20220,8 +20220,8 @@
         Token this_INT_0=null;
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6869:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
             // InternalCompleteOCL.g:6870:1: (this_INT_0= RULE_INT | kw= '*' )
@@ -20251,12 +20251,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_INT_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
-                          
+
+                          newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
+
                     }
 
                     }
@@ -20268,8 +20268,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
+
                     }
 
                     }
@@ -20281,14 +20281,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20309,7 +20309,7 @@
             // InternalCompleteOCL.g:6894:2: iv_ruleURI= ruleURI EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getURIRule()); 
+               newCompositeNode(grammarAccess.getURIRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleURI=ruleURI();
@@ -20317,18 +20317,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleURI.getText(); 
+               current =iv_ruleURI.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20343,8 +20343,8 @@
 
         Token this_SINGLE_QUOTED_STRING_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalCompleteOCL.g:6904:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
             // InternalCompleteOCL.g:6905:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
@@ -20353,25 +20353,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_SINGLE_QUOTED_STRING_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20379,7 +20379,7 @@
     // $ANTLR end "ruleURI"
 
     // $ANTLR start synpred11_InternalCompleteOCL
-    public final void synpred11_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred11_InternalCompleteOCL_fragment() throws RecognitionException {
         EObject this_PropertyContextDeclCS_0 = null;
 
 
@@ -20387,9 +20387,9 @@
         // InternalCompleteOCL.g:411:2: this_PropertyContextDeclCS_0= rulePropertyContextDeclCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_PropertyContextDeclCS_0=rulePropertyContextDeclCS();
@@ -20402,7 +20402,7 @@
     // $ANTLR end synpred11_InternalCompleteOCL
 
     // $ANTLR start synpred12_InternalCompleteOCL
-    public final void synpred12_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred12_InternalCompleteOCL_fragment() throws RecognitionException {
         EObject this_ClassifierContextDeclCS_1 = null;
 
 
@@ -20410,9 +20410,9 @@
         // InternalCompleteOCL.g:424:2: this_ClassifierContextDeclCS_1= ruleClassifierContextDeclCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_ClassifierContextDeclCS_1=ruleClassifierContextDeclCS();
@@ -20425,7 +20425,7 @@
     // $ANTLR end synpred12_InternalCompleteOCL
 
     // $ANTLR start synpred117_InternalCompleteOCL
-    public final void synpred117_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred117_InternalCompleteOCL_fragment() throws RecognitionException {
         EObject this_TypeLiteralCS_1 = null;
 
 
@@ -20433,9 +20433,9 @@
         // InternalCompleteOCL.g:4220:2: this_TypeLiteralCS_1= ruleTypeLiteralCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_TypeLiteralCS_1=ruleTypeLiteralCS();
@@ -20448,7 +20448,7 @@
     // $ANTLR end synpred117_InternalCompleteOCL
 
     // $ANTLR start synpred120_InternalCompleteOCL
-    public final void synpred120_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred120_InternalCompleteOCL_fragment() throws RecognitionException {
         EObject this_PrefixedPrimaryExpCS_0 = null;
 
         AntlrDatatypeRuleToken lv_name_2_0 = null;
@@ -20463,9 +20463,9 @@
         // InternalCompleteOCL.g:4284:2: this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_49);
         this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS();
@@ -20484,12 +20484,12 @@
                 // InternalCompleteOCL.g:4295:2: () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) )
                 {
                 // InternalCompleteOCL.g:4295:2: ()
-                // InternalCompleteOCL.g:4296:2: 
+                // InternalCompleteOCL.g:4296:2:
                 {
                 if ( state.backtracking==0 ) {
-                   
-                  	  /* */ 
-                  	
+
+                  	  /* */
+
                 }
 
                 }
@@ -20501,9 +20501,9 @@
                 // InternalCompleteOCL.g:4306:3: lv_name_2_0= ruleBinaryOperatorName
                 {
                 if ( state.backtracking==0 ) {
-                   
-                  	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
-                  	    
+
+                  	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
+
                 }
                 pushFollow(FollowSets000.FOLLOW_39);
                 lv_name_2_0=ruleBinaryOperatorName();
@@ -20523,9 +20523,9 @@
                 // InternalCompleteOCL.g:4324:3: lv_ownedRight_3_0= ruleExpCS
                 {
                 if ( state.backtracking==0 ) {
-                   
-                  	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
-                  	    
+
+                  	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
+
                 }
                 pushFollow(FollowSets000.FOLLOW_2);
                 lv_ownedRight_3_0=ruleExpCS();
@@ -20553,7 +20553,7 @@
     // $ANTLR end synpred120_InternalCompleteOCL
 
     // $ANTLR start synpred127_InternalCompleteOCL
-    public final void synpred127_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred127_InternalCompleteOCL_fragment() throws RecognitionException {
         EObject this_TupleLiteralExpCS_4 = null;
 
 
@@ -20561,9 +20561,9 @@
         // InternalCompleteOCL.g:4585:2: this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS();
@@ -20576,7 +20576,7 @@
     // $ANTLR end synpred127_InternalCompleteOCL
 
     // $ANTLR start synpred128_InternalCompleteOCL
-    public final void synpred128_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred128_InternalCompleteOCL_fragment() throws RecognitionException {
         EObject this_MapLiteralExpCS_5 = null;
 
 
@@ -20584,9 +20584,9 @@
         // InternalCompleteOCL.g:4598:2: this_MapLiteralExpCS_5= ruleMapLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_MapLiteralExpCS_5=ruleMapLiteralExpCS();
@@ -20599,7 +20599,7 @@
     // $ANTLR end synpred128_InternalCompleteOCL
 
     // $ANTLR start synpred129_InternalCompleteOCL
-    public final void synpred129_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred129_InternalCompleteOCL_fragment() throws RecognitionException {
         EObject this_CollectionLiteralExpCS_6 = null;
 
 
@@ -20607,9 +20607,9 @@
         // InternalCompleteOCL.g:4611:2: this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS();
@@ -20622,7 +20622,7 @@
     // $ANTLR end synpred129_InternalCompleteOCL
 
     // $ANTLR start synpred131_InternalCompleteOCL
-    public final void synpred131_InternalCompleteOCL_fragment() throws RecognitionException {   
+    public final void synpred131_InternalCompleteOCL_fragment() throws RecognitionException {
         EObject this_TypeLiteralExpCS_8 = null;
 
 
@@ -20630,9 +20630,9 @@
         // InternalCompleteOCL.g:4637:2: this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS();
@@ -20871,10 +20871,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA73_16 = input.LA(1);
 
-                         
+
                         int index73_16 = input.index();
                         input.rewind();
                         s = -1;
@@ -20882,14 +20882,14 @@
 
                         else if ( (true) ) {s = 23;}
 
-                         
+
                         input.seek(index73_16);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA73_17 = input.LA(1);
 
-                         
+
                         int index73_17 = input.index();
                         input.rewind();
                         s = -1;
@@ -20897,14 +20897,14 @@
 
                         else if ( (true) ) {s = 23;}
 
-                         
+
                         input.seek(index73_17);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA73_18 = input.LA(1);
 
-                         
+
                         int index73_18 = input.index();
                         input.rewind();
                         s = -1;
@@ -20912,14 +20912,14 @@
 
                         else if ( (true) ) {s = 23;}
 
-                         
+
                         input.seek(index73_18);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA73_19 = input.LA(1);
 
-                         
+
                         int index73_19 = input.index();
                         input.rewind();
                         s = -1;
@@ -20927,14 +20927,14 @@
 
                         else if ( (true) ) {s = 23;}
 
-                         
+
                         input.seek(index73_19);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA73_20 = input.LA(1);
 
-                         
+
                         int index73_20 = input.index();
                         input.rewind();
                         s = -1;
@@ -20942,7 +20942,7 @@
 
                         else if ( (true) ) {s = 23;}
 
-                         
+
                         input.seek(index73_20);
                         if ( s>=0 ) return s;
                         break;
@@ -21026,10 +21026,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA76_1 = input.LA(1);
 
-                         
+
                         int index76_1 = input.index();
                         input.rewind();
                         s = -1;
@@ -21037,14 +21037,14 @@
 
                         else if ( (true) ) {s = 36;}
 
-                         
+
                         input.seek(index76_1);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA76_2 = input.LA(1);
 
-                         
+
                         int index76_2 = input.index();
                         input.rewind();
                         s = -1;
@@ -21052,7 +21052,7 @@
 
                         else if ( (true) ) {s = 36;}
 
-                         
+
                         input.seek(index76_2);
                         if ( s>=0 ) return s;
                         break;
@@ -21133,10 +21133,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA79_11 = input.LA(1);
 
-                         
+
                         int index79_11 = input.index();
                         input.rewind();
                         s = -1;
@@ -21144,14 +21144,14 @@
 
                         else if ( (synpred131_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index79_11);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA79_12 = input.LA(1);
 
-                         
+
                         int index79_12 = input.index();
                         input.rewind();
                         s = -1;
@@ -21159,14 +21159,14 @@
 
                         else if ( (synpred131_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index79_12);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA79_13 = input.LA(1);
 
-                         
+
                         int index79_13 = input.index();
                         input.rewind();
                         s = -1;
@@ -21174,14 +21174,14 @@
 
                         else if ( (synpred131_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index79_13);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA79_14 = input.LA(1);
 
-                         
+
                         int index79_14 = input.index();
                         input.rewind();
                         s = -1;
@@ -21189,14 +21189,14 @@
 
                         else if ( (synpred131_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index79_14);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA79_15 = input.LA(1);
 
-                         
+
                         int index79_15 = input.index();
                         input.rewind();
                         s = -1;
@@ -21204,14 +21204,14 @@
 
                         else if ( (synpred131_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index79_15);
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA79_16 = input.LA(1);
 
-                         
+
                         int index79_16 = input.index();
                         input.rewind();
                         s = -1;
@@ -21219,14 +21219,14 @@
 
                         else if ( (synpred131_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index79_16);
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA79_17 = input.LA(1);
 
-                         
+
                         int index79_17 = input.index();
                         input.rewind();
                         s = -1;
@@ -21234,7 +21234,7 @@
 
                         else if ( (synpred131_InternalCompleteOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index79_17);
                         if ( s>=0 ) return s;
                         break;
@@ -21246,9 +21246,9 @@
             throw nvae;
         }
     }
- 
 
-    
+
+
     private static class FollowSets000 {
         public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
         public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
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 2a9326d..2d0afad 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
@@ -91,7 +91,7 @@
 
 	@Inject
 	private CompleteOCLGrammarAccess grammarAccess;
-	
+
 	@Override
 	public void sequence(ISerializationContext context, EObject semanticObject) {
 		EPackage epackage = semanticObject.eClass().getEPackage();
@@ -101,66 +101,66 @@
 		if (epackage == BaseCSPackage.eINSTANCE)
 			switch (semanticObject.eClass().getClassifierID()) {
 			case BaseCSPackage.CONSTRAINT_CS:
-				sequence_ConstraintCS(context, (ConstraintCS) semanticObject); 
-				return; 
+				sequence_ConstraintCS(context, (ConstraintCS) semanticObject);
+				return;
 			case BaseCSPackage.IMPORT_CS:
-				sequence_ImportCS(context, (ImportCS) semanticObject); 
-				return; 
+				sequence_ImportCS(context, (ImportCS) semanticObject);
+				return;
 			case BaseCSPackage.MULTIPLICITY_BOUNDS_CS:
 				if (rule == grammarAccess.getMultiplicityBoundsCSRule()) {
-					sequence_MultiplicityBoundsCS(context, (MultiplicityBoundsCS) semanticObject); 
-					return; 
+					sequence_MultiplicityBoundsCS(context, (MultiplicityBoundsCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getMultiplicityCSRule()) {
-					sequence_MultiplicityBoundsCS_MultiplicityCS(context, (MultiplicityBoundsCS) semanticObject); 
-					return; 
+					sequence_MultiplicityBoundsCS_MultiplicityCS(context, (MultiplicityBoundsCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.MULTIPLICITY_STRING_CS:
 				if (rule == grammarAccess.getMultiplicityCSRule()) {
-					sequence_MultiplicityCS_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject); 
-					return; 
+					sequence_MultiplicityCS_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getMultiplicityStringCSRule()) {
-					sequence_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject); 
-					return; 
+					sequence_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PARAMETER_CS:
 				if (rule == grammarAccess.getDefParameterCSRule()) {
-					sequence_DefParameterCS(context, (ParameterCS) semanticObject); 
-					return; 
+					sequence_DefParameterCS(context, (ParameterCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getParameterCSRule()) {
-					sequence_ParameterCS(context, (ParameterCS) semanticObject); 
-					return; 
+					sequence_ParameterCS(context, (ParameterCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PATH_ELEMENT_CS:
 				if (rule == grammarAccess.getFirstPathElementCSRule()) {
-					sequence_FirstPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_FirstPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNextPathElementCSRule()) {
-					sequence_NextPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_NextPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getURIFirstPathElementCSRule()) {
-					sequence_URIFirstPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_URIFirstPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PATH_ELEMENT_WITH_URICS:
-				sequence_URIFirstPathElementCS(context, (PathElementWithURICS) semanticObject); 
-				return; 
+				sequence_URIFirstPathElementCS(context, (PathElementWithURICS) semanticObject);
+				return;
 			case BaseCSPackage.PATH_NAME_CS:
 				if (rule == grammarAccess.getPathNameCSRule()) {
-					sequence_PathNameCS(context, (PathNameCS) semanticObject); 
-					return; 
+					sequence_PathNameCS(context, (PathNameCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getURIPathNameCSRule()) {
-					sequence_URIPathNameCS(context, (PathNameCS) semanticObject); 
-					return; 
+					sequence_URIPathNameCS(context, (PathNameCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PRIMITIVE_TYPE_REF_CS:
@@ -168,103 +168,103 @@
 						|| rule == grammarAccess.getPrimitiveTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()
 						|| rule == grammarAccess.getTypeRefCSRule()) {
-					sequence_PrimitiveTypeCS(context, (PrimitiveTypeRefCS) semanticObject); 
-					return; 
+					sequence_PrimitiveTypeCS(context, (PrimitiveTypeRefCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_PrimitiveTypeCS_TypeExpCS(context, (PrimitiveTypeRefCS) semanticObject); 
-					return; 
+					sequence_PrimitiveTypeCS_TypeExpCS(context, (PrimitiveTypeRefCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_PrimitiveTypeCS_TypeLiteralWithMultiplicityCS(context, (PrimitiveTypeRefCS) semanticObject); 
-					return; 
+					sequence_PrimitiveTypeCS_TypeLiteralWithMultiplicityCS(context, (PrimitiveTypeRefCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.TEMPLATE_BINDING_CS:
-				sequence_TemplateBindingCS(context, (TemplateBindingCS) semanticObject); 
-				return; 
+				sequence_TemplateBindingCS(context, (TemplateBindingCS) semanticObject);
+				return;
 			case BaseCSPackage.TEMPLATE_PARAMETER_SUBSTITUTION_CS:
-				sequence_TemplateParameterSubstitutionCS(context, (TemplateParameterSubstitutionCS) semanticObject); 
-				return; 
+				sequence_TemplateParameterSubstitutionCS(context, (TemplateParameterSubstitutionCS) semanticObject);
+				return;
 			case BaseCSPackage.TEMPLATE_SIGNATURE_CS:
-				sequence_TemplateSignatureCS(context, (TemplateSignatureCS) semanticObject); 
-				return; 
+				sequence_TemplateSignatureCS(context, (TemplateSignatureCS) semanticObject);
+				return;
 			case BaseCSPackage.TUPLE_PART_CS:
-				sequence_TuplePartCS(context, (TuplePartCS) semanticObject); 
-				return; 
+				sequence_TuplePartCS(context, (TuplePartCS) semanticObject);
+				return;
 			case BaseCSPackage.TUPLE_TYPE_CS:
 				if (rule == grammarAccess.getTypedRefCSRule()
 						|| rule == grammarAccess.getTupleTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()
 						|| rule == grammarAccess.getTypeRefCSRule()) {
-					sequence_TupleTypeCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_TupleTypeCS_TypeExpCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS_TypeExpCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_TupleTypeCS_TypeLiteralWithMultiplicityCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS_TypeLiteralWithMultiplicityCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.TYPE_PARAMETER_CS:
-				sequence_TypeParameterCS(context, (TypeParameterCS) semanticObject); 
-				return; 
+				sequence_TypeParameterCS(context, (TypeParameterCS) semanticObject);
+				return;
 			case BaseCSPackage.TYPED_TYPE_REF_CS:
-				sequence_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject); 
-				return; 
+				sequence_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject);
+				return;
 			case BaseCSPackage.WILDCARD_TYPE_REF_CS:
-				sequence_WildcardTypeRefCS(context, (WildcardTypeRefCS) semanticObject); 
-				return; 
+				sequence_WildcardTypeRefCS(context, (WildcardTypeRefCS) semanticObject);
+				return;
 			}
 		else if (epackage == CompleteOCLCSPackage.eINSTANCE)
 			switch (semanticObject.eClass().getClassifierID()) {
 			case CompleteOCLCSPackage.CLASSIFIER_CONTEXT_DECL_CS:
-				sequence_ClassifierContextDeclCS(context, (ClassifierContextDeclCS) semanticObject); 
-				return; 
+				sequence_ClassifierContextDeclCS(context, (ClassifierContextDeclCS) semanticObject);
+				return;
 			case CompleteOCLCSPackage.COMPLETE_OCL_DOCUMENT_CS:
-				sequence_CompleteOCLDocumentCS(context, (CompleteOCLDocumentCS) semanticObject); 
-				return; 
+				sequence_CompleteOCLDocumentCS(context, (CompleteOCLDocumentCS) semanticObject);
+				return;
 			case CompleteOCLCSPackage.DEF_OPERATION_CS:
-				sequence_DefOperationCS(context, (DefOperationCS) semanticObject); 
-				return; 
+				sequence_DefOperationCS(context, (DefOperationCS) semanticObject);
+				return;
 			case CompleteOCLCSPackage.DEF_PROPERTY_CS:
-				sequence_DefPropertyCS(context, (DefPropertyCS) semanticObject); 
-				return; 
+				sequence_DefPropertyCS(context, (DefPropertyCS) semanticObject);
+				return;
 			case CompleteOCLCSPackage.OCL_MESSAGE_ARG_CS:
-				sequence_NavigatingArgExpCS(context, (OCLMessageArgCS) semanticObject); 
-				return; 
+				sequence_NavigatingArgExpCS(context, (OCLMessageArgCS) semanticObject);
+				return;
 			case CompleteOCLCSPackage.OPERATION_CONTEXT_DECL_CS:
-				sequence_OperationContextDeclCS(context, (OperationContextDeclCS) semanticObject); 
-				return; 
+				sequence_OperationContextDeclCS(context, (OperationContextDeclCS) semanticObject);
+				return;
 			case CompleteOCLCSPackage.PACKAGE_DECLARATION_CS:
-				sequence_PackageDeclarationCS(context, (PackageDeclarationCS) semanticObject); 
-				return; 
+				sequence_PackageDeclarationCS(context, (PackageDeclarationCS) semanticObject);
+				return;
 			case CompleteOCLCSPackage.PROPERTY_CONTEXT_DECL_CS:
-				sequence_PropertyContextDeclCS(context, (PropertyContextDeclCS) semanticObject); 
-				return; 
+				sequence_PropertyContextDeclCS(context, (PropertyContextDeclCS) semanticObject);
+				return;
 			}
 		else if (epackage == EssentialOCLCSPackage.eINSTANCE)
 			switch (semanticObject.eClass().getClassifierID()) {
 			case EssentialOCLCSPackage.BOOLEAN_LITERAL_EXP_CS:
-				sequence_BooleanLiteralExpCS(context, (BooleanLiteralExpCS) semanticObject); 
-				return; 
+				sequence_BooleanLiteralExpCS(context, (BooleanLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.COLLECTION_LITERAL_EXP_CS:
-				sequence_CollectionLiteralExpCS(context, (CollectionLiteralExpCS) semanticObject); 
-				return; 
+				sequence_CollectionLiteralExpCS(context, (CollectionLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.COLLECTION_LITERAL_PART_CS:
-				sequence_CollectionLiteralPartCS(context, (CollectionLiteralPartCS) semanticObject); 
-				return; 
+				sequence_CollectionLiteralPartCS(context, (CollectionLiteralPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.COLLECTION_PATTERN_CS:
 				if (rule == grammarAccess.getCollectionPatternCSRule()) {
-					sequence_CollectionPatternCS(context, (CollectionPatternCS) semanticObject); 
-					return; 
+					sequence_CollectionPatternCS(context, (CollectionPatternCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_CollectionPatternCS_TypeExpCS(context, (CollectionPatternCS) semanticObject); 
-					return; 
+					sequence_CollectionPatternCS_TypeExpCS(context, (CollectionPatternCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.COLLECTION_TYPE_CS:
@@ -272,162 +272,162 @@
 						|| rule == grammarAccess.getCollectionTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()
 						|| rule == grammarAccess.getTypeRefCSRule()) {
-					sequence_CollectionTypeCS(context, (CollectionTypeCS) semanticObject); 
-					return; 
+					sequence_CollectionTypeCS(context, (CollectionTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_CollectionTypeCS_TypeExpCS(context, (CollectionTypeCS) semanticObject); 
-					return; 
+					sequence_CollectionTypeCS_TypeExpCS(context, (CollectionTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_CollectionTypeCS_TypeLiteralWithMultiplicityCS(context, (CollectionTypeCS) semanticObject); 
-					return; 
+					sequence_CollectionTypeCS_TypeLiteralWithMultiplicityCS(context, (CollectionTypeCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.CONTEXT_CS:
-				sequence_Model(context, (ContextCS) semanticObject); 
-				return; 
+				sequence_Model(context, (ContextCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.CURLY_BRACKETED_CLAUSE_CS:
-				sequence_CurlyBracketedClauseCS(context, (CurlyBracketedClauseCS) semanticObject); 
-				return; 
+				sequence_CurlyBracketedClauseCS(context, (CurlyBracketedClauseCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.EXP_SPECIFICATION_CS:
-				sequence_SpecificationCS(context, (ExpSpecificationCS) semanticObject); 
-				return; 
+				sequence_SpecificationCS(context, (ExpSpecificationCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.IF_EXP_CS:
-				sequence_IfExpCS(context, (IfExpCS) semanticObject); 
-				return; 
+				sequence_IfExpCS(context, (IfExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.IF_THEN_EXP_CS:
-				sequence_ElseIfThenExpCS(context, (IfThenExpCS) semanticObject); 
-				return; 
+				sequence_ElseIfThenExpCS(context, (IfThenExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.INFIX_EXP_CS:
-				sequence_ExpCS(context, (InfixExpCS) semanticObject); 
-				return; 
+				sequence_ExpCS(context, (InfixExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.INVALID_LITERAL_EXP_CS:
-				sequence_InvalidLiteralExpCS(context, (InvalidLiteralExpCS) semanticObject); 
-				return; 
+				sequence_InvalidLiteralExpCS(context, (InvalidLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.LAMBDA_LITERAL_EXP_CS:
-				sequence_LambdaLiteralExpCS(context, (LambdaLiteralExpCS) semanticObject); 
-				return; 
+				sequence_LambdaLiteralExpCS(context, (LambdaLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.LET_EXP_CS:
-				sequence_LetExpCS(context, (LetExpCS) semanticObject); 
-				return; 
+				sequence_LetExpCS(context, (LetExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.LET_VARIABLE_CS:
-				sequence_LetVariableCS(context, (LetVariableCS) semanticObject); 
-				return; 
+				sequence_LetVariableCS(context, (LetVariableCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.MAP_LITERAL_EXP_CS:
-				sequence_MapLiteralExpCS(context, (MapLiteralExpCS) semanticObject); 
-				return; 
+				sequence_MapLiteralExpCS(context, (MapLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.MAP_LITERAL_PART_CS:
-				sequence_MapLiteralPartCS(context, (MapLiteralPartCS) semanticObject); 
-				return; 
+				sequence_MapLiteralPartCS(context, (MapLiteralPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.MAP_TYPE_CS:
 				if (rule == grammarAccess.getTypedRefCSRule()
 						|| rule == grammarAccess.getMapTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()
 						|| rule == grammarAccess.getTypeRefCSRule()) {
-					sequence_MapTypeCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_MapTypeCS_TypeExpCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS_TypeExpCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_MapTypeCS_TypeLiteralWithMultiplicityCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS_TypeLiteralWithMultiplicityCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.NAME_EXP_CS:
-				sequence_NameExpCS(context, (NameExpCS) semanticObject); 
-				return; 
+				sequence_NameExpCS(context, (NameExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.NAVIGATING_ARG_CS:
 				if (rule == grammarAccess.getNavigatingArgCSRule()) {
-					sequence_NavigatingArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNavigatingBarArgCSRule()) {
-					sequence_NavigatingBarArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingBarArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNavigatingCommaArgCSRule()) {
-					sequence_NavigatingCommaArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingCommaArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNavigatingSemiArgCSRule()) {
-					sequence_NavigatingSemiArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingSemiArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.NESTED_EXP_CS:
-				sequence_NestedExpCS(context, (NestedExpCS) semanticObject); 
-				return; 
+				sequence_NestedExpCS(context, (NestedExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.NULL_LITERAL_EXP_CS:
-				sequence_NullLiteralExpCS(context, (NullLiteralExpCS) semanticObject); 
-				return; 
+				sequence_NullLiteralExpCS(context, (NullLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.NUMBER_LITERAL_EXP_CS:
-				sequence_NumberLiteralExpCS(context, (NumberLiteralExpCS) semanticObject); 
-				return; 
+				sequence_NumberLiteralExpCS(context, (NumberLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.PATTERN_EXP_CS:
-				sequence_PatternExpCS(context, (PatternExpCS) semanticObject); 
-				return; 
+				sequence_PatternExpCS(context, (PatternExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.PREFIX_EXP_CS:
 				if (rule == grammarAccess.getPrefixedLetExpCSRule()) {
-					sequence_PrefixedLetExpCS(context, (PrefixExpCS) semanticObject); 
-					return; 
+					sequence_PrefixedLetExpCS(context, (PrefixExpCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNavigatingArgExpCSRule()
 						|| rule == grammarAccess.getExpCSRule()) {
-					sequence_PrefixedLetExpCS_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject); 
-					return; 
+					sequence_PrefixedLetExpCS_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject);
+					return;
 				}
 				else if (action == grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0()
 						|| rule == grammarAccess.getPrefixedPrimaryExpCSRule()) {
-					sequence_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject); 
-					return; 
+					sequence_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.ROUND_BRACKETED_CLAUSE_CS:
-				sequence_RoundBracketedClauseCS(context, (RoundBracketedClauseCS) semanticObject); 
-				return; 
+				sequence_RoundBracketedClauseCS(context, (RoundBracketedClauseCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.SELF_EXP_CS:
-				sequence_SelfExpCS(context, (SelfExpCS) semanticObject); 
-				return; 
+				sequence_SelfExpCS(context, (SelfExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.SHADOW_PART_CS:
-				sequence_ShadowPartCS(context, (ShadowPartCS) semanticObject); 
-				return; 
+				sequence_ShadowPartCS(context, (ShadowPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.SQUARE_BRACKETED_CLAUSE_CS:
-				sequence_SquareBracketedClauseCS(context, (SquareBracketedClauseCS) semanticObject); 
-				return; 
+				sequence_SquareBracketedClauseCS(context, (SquareBracketedClauseCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.STRING_LITERAL_EXP_CS:
-				sequence_StringLiteralExpCS(context, (StringLiteralExpCS) semanticObject); 
-				return; 
+				sequence_StringLiteralExpCS(context, (StringLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TUPLE_LITERAL_EXP_CS:
-				sequence_TupleLiteralExpCS(context, (TupleLiteralExpCS) semanticObject); 
-				return; 
+				sequence_TupleLiteralExpCS(context, (TupleLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TUPLE_LITERAL_PART_CS:
-				sequence_TupleLiteralPartCS(context, (TupleLiteralPartCS) semanticObject); 
-				return; 
+				sequence_TupleLiteralPartCS(context, (TupleLiteralPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TYPE_LITERAL_EXP_CS:
-				sequence_TypeLiteralExpCS(context, (TypeLiteralExpCS) semanticObject); 
-				return; 
+				sequence_TypeLiteralExpCS(context, (TypeLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TYPE_NAME_EXP_CS:
 				if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_TypeExpCS_TypeNameExpCS(context, (TypeNameExpCS) semanticObject); 
-					return; 
+					sequence_TypeExpCS_TypeNameExpCS(context, (TypeNameExpCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeNameExpCSRule()) {
-					sequence_TypeNameExpCS(context, (TypeNameExpCS) semanticObject); 
-					return; 
+					sequence_TypeNameExpCS(context, (TypeNameExpCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.UNLIMITED_NATURAL_LITERAL_EXP_CS:
-				sequence_UnlimitedNaturalLiteralExpCS(context, (UnlimitedNaturalLiteralExpCS) semanticObject); 
-				return; 
+				sequence_UnlimitedNaturalLiteralExpCS(context, (UnlimitedNaturalLiteralExpCS) semanticObject);
+				return;
 			}
 		if (errorAcceptor != null)
 			errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
 	}
-	
+
 	/**
 	 * Contexts:
 	 *     ClassifierContextDeclCS returns ClassifierContextDeclCS
@@ -435,17 +435,17 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         ownedSignature=TemplateSignatureCS? 
-	 *         selfName=UnrestrictedName? 
-	 *         ownedPathName=PathNameCS 
+	 *         ownedSignature=TemplateSignatureCS?
+	 *         selfName=UnrestrictedName?
+	 *         ownedPathName=PathNameCS
 	 *         (ownedInvariants+=ConstraintCS | ownedDefinitions+=DefCS)+
 	 *     )
 	 */
 	protected void sequence_ClassifierContextDeclCS(ISerializationContext context, ClassifierContextDeclCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     CompleteOCLDocumentCS returns CompleteOCLDocumentCS
@@ -456,8 +456,8 @@
 	protected void sequence_CompleteOCLDocumentCS(ISerializationContext context, CompleteOCLDocumentCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ConstraintCS returns ConstraintCS
@@ -468,8 +468,8 @@
 	protected void sequence_ConstraintCS(ISerializationContext context, ConstraintCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     DefCS returns DefOperationCS
@@ -477,19 +477,19 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         isStatic?='static'? 
-	 *         ownedSignature=TemplateSignatureCS? 
-	 *         name=UnrestrictedName 
-	 *         (ownedParameters+=DefParameterCS ownedParameters+=DefParameterCS*)? 
-	 *         ownedType=TypeExpCS? 
+	 *         isStatic?='static'?
+	 *         ownedSignature=TemplateSignatureCS?
+	 *         name=UnrestrictedName
+	 *         (ownedParameters+=DefParameterCS ownedParameters+=DefParameterCS*)?
+	 *         ownedType=TypeExpCS?
 	 *         ownedSpecification=SpecificationCS
 	 *     )
 	 */
 	protected void sequence_DefOperationCS(ISerializationContext context, DefOperationCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     DefParameterCS returns ParameterCS
@@ -509,8 +509,8 @@
 		feeder.accept(grammarAccess.getDefParameterCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0(), semanticObject.getOwnedType());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     DefCS returns DefPropertyCS
@@ -522,8 +522,8 @@
 	protected void sequence_DefPropertyCS(ISerializationContext context, DefPropertyCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ImportCS returns ImportCS
@@ -534,8 +534,8 @@
 	protected void sequence_ImportCS(ISerializationContext context, ImportCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     NavigatingArgExpCS returns OCLMessageArgCS
@@ -546,8 +546,8 @@
 	protected void sequence_NavigatingArgExpCS(ISerializationContext context, OCLMessageArgCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ContextDeclCS returns OperationContextDeclCS
@@ -555,18 +555,18 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         ownedSignature=TemplateSignatureCS? 
-	 *         ownedPathName=PathNameCS 
-	 *         (ownedParameters+=ParameterCS ownedParameters+=ParameterCS*)? 
-	 *         ownedType=TypeExpCS? 
+	 *         ownedSignature=TemplateSignatureCS?
+	 *         ownedPathName=PathNameCS
+	 *         (ownedParameters+=ParameterCS ownedParameters+=ParameterCS*)?
+	 *         ownedType=TypeExpCS?
 	 *         (ownedPreconditions+=ConstraintCS | ownedPostconditions+=ConstraintCS | ownedBodies+=SpecificationCS)*
 	 *     )
 	 */
 	protected void sequence_OperationContextDeclCS(ISerializationContext context, OperationContextDeclCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PackageDeclarationCS returns PackageDeclarationCS
@@ -577,8 +577,8 @@
 	protected void sequence_PackageDeclarationCS(ISerializationContext context, PackageDeclarationCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ParameterCS returns ParameterCS
@@ -589,8 +589,8 @@
 	protected void sequence_ParameterCS(ISerializationContext context, ParameterCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ContextDeclCS returns PropertyContextDeclCS
@@ -602,8 +602,8 @@
 	protected void sequence_PropertyContextDeclCS(ISerializationContext context, PropertyContextDeclCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     SpecificationCS returns ExpSpecificationCS
@@ -614,8 +614,8 @@
 	protected void sequence_SpecificationCS(ISerializationContext context, ExpSpecificationCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TemplateSignatureCS returns TemplateSignatureCS
@@ -626,6 +626,6 @@
 	protected void sequence_TemplateSignatureCS(ISerializationContext context, TemplateSignatureCS 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 b59e0c0..06ff008 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
@@ -35,7 +35,7 @@
 	protected AbstractElementAlias match_MultiplicityCS_VerticalLineQuestionMarkKeyword_2_0_q;
 	protected AbstractElementAlias match_OperationContextDeclCS_UnrestrictedNameParserRuleCall_8_2_1_q;
 	protected AbstractElementAlias match_TupleTypeCS___LeftParenthesisKeyword_1_0_RightParenthesisKeyword_1_2__q;
-	
+
 	@Inject
 	protected void init(IGrammarAccess access) {
 		grammarAccess = (CompleteOCLGrammarAccess) access;
@@ -46,14 +46,14 @@
 		match_OperationContextDeclCS_UnrestrictedNameParserRuleCall_8_2_1_q = new TokenAlias(false, true, grammarAccess.getOperationContextDeclCSAccess().getUnrestrictedNameParserRuleCall_8_2_1());
 		match_TupleTypeCS___LeftParenthesisKeyword_1_0_RightParenthesisKeyword_1_2__q = new GroupAlias(false, true, new TokenAlias(false, false, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()), new TokenAlias(false, false, grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()));
 	}
-	
+
 	@Override
 	protected String getUnassignedRuleCallToken(EObject semanticObject, RuleCall ruleCall, INode node) {
 		if (ruleCall.getRule() == grammarAccess.getUnrestrictedNameRule())
 			return getUnrestrictedNameToken(semanticObject, ruleCall, node);
 		return "";
 	}
-	
+
 	/**
 	 * UnrestrictedName returns ecore::EString:
 	 * 	EssentialOCLUnrestrictedName
@@ -67,7 +67,7 @@
 			return getTokenText(node);
 		return "";
 	}
-	
+
 	@Override
 	protected void emitUnassignedTokens(EObject semanticObject, ISynTransition transition, INode fromNode, INode toNode) {
 		if (transition.getAmbiguousSyntaxes().isEmpty()) return;
@@ -103,7 +103,7 @@
 	protected void emit_DefOperationCS_UnrestrictedNameParserRuleCall_2_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     UnrestrictedName?
@@ -115,7 +115,7 @@
 	protected void emit_DefPropertyCS_UnrestrictedNameParserRuleCall_2_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     'import' | 'include' | 'library'
@@ -127,7 +127,7 @@
 	protected void emit_ImportCS_ImportKeyword_0_0_or_IncludeKeyword_0_1_or_LibraryKeyword_0_2(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     '|?'?
@@ -142,7 +142,7 @@
 	protected void emit_MultiplicityCS_VerticalLineQuestionMarkKeyword_2_0_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     UnrestrictedName?
@@ -158,7 +158,7 @@
 	protected void emit_OperationContextDeclCS_UnrestrictedNameParserRuleCall_8_2_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('(' ')')?
@@ -170,5 +170,5 @@
 	protected void emit_TupleTypeCS___LeftParenthesisKeyword_1_0_RightParenthesisKeyword_1_2__q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 }
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 866f3b5..4098017 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
@@ -24,8 +24,8 @@
 
 @Singleton
 public class CompleteOCLGrammarAccess extends AbstractGrammarElementFinder {
-	
-	
+
+
 	public class CompleteOCLDocumentCSElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.completeocl.CompleteOCL.CompleteOCLDocumentCS");
 		private final Group cGroup = (Group)rule.eContents().get(1);
@@ -36,7 +36,7 @@
 		private final RuleCall cOwnedPackagesPackageDeclarationCSParserRuleCall_1_0_0 = (RuleCall)cOwnedPackagesAssignment_1_0.eContents().get(0);
 		private final Assignment cOwnedContextsAssignment_1_1 = (Assignment)cAlternatives_1.eContents().get(1);
 		private final RuleCall cOwnedContextsContextDeclCSParserRuleCall_1_1_0 = (RuleCall)cOwnedContextsAssignment_1_1.eContents().get(0);
-		
+
 		/// *
 		// * A Complete OCL document comprises
 		// * bullet[model imports for referenced and complemented models]
@@ -44,8 +44,7 @@
 		// * bullet[libraries to augment or override the OCL Standard Library]
 		// * bullet[package declarations for package-grouped declarations]
 		// * bullet[context declarations for independent declarations]
-		// * /
-		//CompleteOCLDocumentCS:
+		// * / CompleteOCLDocumentCS:
 		//	ownedImports+=ImportCS* (ownedPackages+=PackageDeclarationCS | ownedContexts+=ContextDeclCS)*;
 		@Override public ParserRule getRule() { return rule; }
 
@@ -79,7 +78,7 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final Keyword cCircumflexAccentKeyword_0 = (Keyword)cAlternatives.eContents().get(0);
 		private final Keyword cCircumflexAccentCircumflexAccentKeyword_1 = (Keyword)cAlternatives.eContents().get(1);
-		
+
 		//CompleteOCLNavigationOperatorName:
 		//	'^' | '^^';
 		@Override public ParserRule getRule() { return rule; }
@@ -111,10 +110,10 @@
 		private final RuleCall cOwnedInvariantsConstraintCSParserRuleCall_4_0_1_0 = (RuleCall)cOwnedInvariantsAssignment_4_0_1.eContents().get(0);
 		private final Assignment cOwnedDefinitionsAssignment_4_1 = (Assignment)cAlternatives_4.eContents().get(1);
 		private final RuleCall cOwnedDefinitionsDefCSParserRuleCall_4_1_0 = (RuleCall)cOwnedDefinitionsAssignment_4_1.eContents().get(0);
-		
+
 		//ClassifierContextDeclCS:
-		//	'context' ownedSignature=TemplateSignatureCS? selfName=UnrestrictedName? ownedPathName=PathNameCS ('inv'
-		//	ownedInvariants+=ConstraintCS | ownedDefinitions+=DefCS)+;
+		//	'context' ownedSignature=TemplateSignatureCS? selfName=UnrestrictedName?
+		//	ownedPathName=PathNameCS ('inv' ownedInvariants+=ConstraintCS | ownedDefinitions+=DefCS)+;
 		@Override public ParserRule getRule() { return rule; }
 
 		//'context' ownedSignature=TemplateSignatureCS? selfName=UnrestrictedName? ownedPathName=PathNameCS ('inv'
@@ -178,17 +177,16 @@
 		private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		private final Assignment cOwnedSpecificationAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cOwnedSpecificationSpecificationCSParserRuleCall_2_0 = (RuleCall)cOwnedSpecificationAssignment_2.eContents().get(0);
-		
+
 		/// *
-		// * A Constraint such as 
-		// * 
+		// * A Constraint such as
+		// *
 		// * oclText[IsNull('should be null') : self = null]
-		// * 
+		// *
 		// * comprises at least the OCL specification of the constraint. The constraint may
 		// * additionally have a name which may be followed by a parenthesized expression defining an OCL
 		// * expression to be evaluated to provide an error message.
-		// * /
-		//ConstraintCS base::ConstraintCS:
+		// * / ConstraintCS base::ConstraintCS:
 		//	(name=UnrestrictedName ('(' ownedMessageSpecification=SpecificationCS ')')?)? ':' ownedSpecification=SpecificationCS
 		@Override public ParserRule getRule() { return rule; }
 
@@ -235,11 +233,13 @@
 		private final RuleCall cPropertyContextDeclCSParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cClassifierContextDeclCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
 		private final RuleCall cOperationContextDeclCSParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
-		
+
 		/// *
 		// * A Context declaration can be a Classifier, Operation of Property Context declaration.
 		// * / ContextDeclCS:
-		//	PropertyContextDeclCS | ClassifierContextDeclCS | OperationContextDeclCS;
+		//	PropertyContextDeclCS
+		//	| ClassifierContextDeclCS
+		//	| OperationContextDeclCS;
 		@Override public ParserRule getRule() { return rule; }
 
 		//PropertyContextDeclCS | ClassifierContextDeclCS | OperationContextDeclCS
@@ -260,7 +260,7 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final RuleCall cDefOperationCSParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cDefPropertyCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		/// *
 		// * A definition can be an, Operation or Property definition.
 		// * / DefCS:
@@ -304,21 +304,21 @@
 		private final Keyword cEqualsSignKeyword_11 = (Keyword)cGroup.eContents().get(11);
 		private final Assignment cOwnedSpecificationAssignment_12 = (Assignment)cGroup.eContents().get(12);
 		private final RuleCall cOwnedSpecificationSpecificationCSParserRuleCall_12_0 = (RuleCall)cOwnedSpecificationAssignment_12.eContents().get(0);
-		
+
 		/// *
 		// * An operation definition provides an additional operation for its classifier context.
-		// * 
+		// *
 		// * oclText[static def redundantName: isEven(i : Integer) : Boolean = i mod 2 = 0]
-		// * 
+		// *
 		// * comprises at least an operation name, return type and an OCL expression that evaluates the operation value.
 		// * The operation may have parameters and may be declared static in which case there is no oclText[self].
-		// * 
+		// *
 		// * For compatibility with invariants the definition may have a name that is never used.
-		// * /
-		//DefOperationCS:
-		//	isStatic?='static'? 'def' UnrestrictedName? ':' ownedSignature=TemplateSignatureCS? name=UnrestrictedName '('
-		//	(ownedParameters+=DefParameterCS (',' ownedParameters+=DefParameterCS)*)? ')' ':' ownedType=TypeExpCS? '='
-		//	ownedSpecification=SpecificationCS;
+		// * / DefOperationCS:
+		//	isStatic?='static'? 'def' UnrestrictedName? ':' ownedSignature=TemplateSignatureCS?
+		//	name=UnrestrictedName '(' (ownedParameters+=DefParameterCS (',' ownedParameters+=DefParameterCS)*)? ')' ':'
+		//	ownedType=TypeExpCS?
+		//	'=' ownedSpecification=SpecificationCS;
 		@Override public ParserRule getRule() { return rule; }
 
 		//isStatic?='static'? 'def' UnrestrictedName? ':' ownedSignature=TemplateSignatureCS? name=UnrestrictedName '('
@@ -407,7 +407,7 @@
 		private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		private final Assignment cOwnedTypeAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cOwnedTypeTypeExpCSParserRuleCall_2_0 = (RuleCall)cOwnedTypeAssignment_2.eContents().get(0);
-		
+
 		//DefParameterCS base::ParameterCS:
 		//	name=UnrestrictedName ':' ownedType=TypeExpCS
 		@Override public ParserRule getRule() { return rule; }
@@ -447,20 +447,19 @@
 		private final Keyword cEqualsSignKeyword_7 = (Keyword)cGroup.eContents().get(7);
 		private final Assignment cOwnedSpecificationAssignment_8 = (Assignment)cGroup.eContents().get(8);
 		private final RuleCall cOwnedSpecificationSpecificationCSParserRuleCall_8_0 = (RuleCall)cOwnedSpecificationAssignment_8.eContents().get(0);
-		
+
 		/// *
 		// * A property definition provides an additional property for its classifier context.
-		// * 
+		// *
 		// * oclText[static def redundantName: upperCaseName : Boolean = name.toUpperCase()]
-		// * 
+		// *
 		// * comprises at least a property name, type and an OCL expression that evaluates the property value.
 		// * The property may be declared static in which case there is no oclText[self].
-		// * 
+		// *
 		// * For compatibility with invariants the definition may have a name that is never used.
-		// * /
-		//DefPropertyCS:
-		//	isStatic?='static'? 'def' UnrestrictedName? ':' name=UnrestrictedName ':' ownedType=TypeExpCS '='
-		//	ownedSpecification=SpecificationCS;
+		// * / DefPropertyCS:
+		//	isStatic?='static'? 'def' UnrestrictedName? ':' name=UnrestrictedName ':' ownedType=TypeExpCS
+		//	'=' ownedSpecification=SpecificationCS;
 		@Override public ParserRule getRule() { return rule; }
 
 		//isStatic?='static'? 'def' UnrestrictedName? ':' name=UnrestrictedName ':' ownedType=TypeExpCS '='
@@ -522,7 +521,7 @@
 		private final RuleCall cOwnedPathNameURIPathNameCSParserRuleCall_2_0 = (RuleCall)cOwnedPathNameAssignment_2.eContents().get(0);
 		private final Assignment cIsAllAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final Keyword cIsAllColonColonAsteriskKeyword_3_0 = (Keyword)cIsAllAssignment_3.eContents().get(0);
-		
+
 		//ImportCS base::ImportCS:
 		//	('import' | 'include' | 'library') (name=Identifier ':')? ownedPathName=URIPathNameCS isAll?='::*'?
 		@Override public ParserRule getRule() { return rule; }
@@ -602,27 +601,27 @@
 		private final Keyword cColonKeyword_8_2_2 = (Keyword)cGroup_8_2.eContents().get(2);
 		private final Assignment cOwnedBodiesAssignment_8_2_3 = (Assignment)cGroup_8_2.eContents().get(3);
 		private final RuleCall cOwnedBodiesSpecificationCSParserRuleCall_8_2_3_0 = (RuleCall)cOwnedBodiesAssignment_8_2_3.eContents().get(0);
-		
+
 		/// *
 		// * An operation context declaration complements an existing operation with additional details.
-		// * 
+		// *
 		// * oclText[context (T) Stack::pop() : T]
 		// * oclText[pre NotEmptyPop: size() > 0]
 		// * oclText[post: size()@pre = size() + 1]
-		// * 
+		// *
 		// * The operation declaration comprises at least an operation name, which must be qualified with at least a
-		// * class name. If used outside a package declaration, package name qualification is also needed. 
+		// * class name. If used outside a package declaration, package name qualification is also needed.
 		// * If the return type is omitted OclVoid is used.
 		// * The operation may also have operation parameters and template parameters.
 		// * The declaration may be followed by any number of preconditions,
-		// * and/or postconditions. It may also be followed by a body expression that defines the evaluation. 
-		// * 
+		// * and/or postconditions. It may also be followed by a body expression that defines the evaluation.
+		// *
 		// * For compatibility with invariants the body expression may have a name that is never used.
-		// * /
-		//OperationContextDeclCS:
-		//	'context' ownedSignature=TemplateSignatureCS? ownedPathName=PathNameCS '(' (ownedParameters+=ParameterCS (','
-		//	ownedParameters+=ParameterCS)*)? ')' ':' ownedType=TypeExpCS? ('pre' ownedPreconditions+=ConstraintCS | 'post'
-		//	ownedPostconditions+=ConstraintCS | 'body' UnrestrictedName? ':' ownedBodies+=SpecificationCS)*;
+		// * / OperationContextDeclCS:
+		//	'context' ownedSignature=TemplateSignatureCS? ownedPathName=PathNameCS
+		//	'(' (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 '(' (ownedParameters+=ParameterCS (','
@@ -741,7 +740,7 @@
 		private final Assignment cOwnedContextsAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cOwnedContextsContextDeclCSParserRuleCall_3_0 = (RuleCall)cOwnedContextsAssignment_3.eContents().get(0);
 		private final Keyword cEndpackageKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//PackageDeclarationCS:
 		//	'package' ownedPathName=PathNameCS ('inv' ownedInvariants+=ConstraintCS)* ownedContexts+=ContextDeclCS* 'endpackage';
 		@Override public ParserRule getRule() { return rule; }
@@ -789,7 +788,7 @@
 		private final Keyword cColonKeyword_0_1 = (Keyword)cGroup_0.eContents().get(1);
 		private final Assignment cOwnedTypeAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final RuleCall cOwnedTypeTypeExpCSParserRuleCall_1_0 = (RuleCall)cOwnedTypeAssignment_1.eContents().get(0);
-		
+
 		//ParameterCS base::ParameterCS:
 		//	(name=UnrestrictedName ':')? ownedType=TypeExpCS
 		@Override public ParserRule getRule() { return rule; }
@@ -835,31 +834,30 @@
 		private final Keyword cColonKeyword_4_1_1 = (Keyword)cGroup_4_1.eContents().get(1);
 		private final Assignment cOwnedDefaultExpressionsAssignment_4_1_2 = (Assignment)cGroup_4_1.eContents().get(2);
 		private final RuleCall cOwnedDefaultExpressionsSpecificationCSParserRuleCall_4_1_2_0 = (RuleCall)cOwnedDefaultExpressionsAssignment_4_1_2.eContents().get(0);
-		
+
 		/// *
 		// * A property context declaration complements an existing property with additional details.
-		// * 
+		// *
 		// * oclText[context (T) Stack::isEmpty : Boolean]
 		// * oclText[derive IsEmpty: size() = 0]
-		// * 
+		// *
 		// * The property declaration comprises at least a property name and type.
 		// * The type must be qualified with at least a class name.
-		// * If used outside a package declaration, package name qualification is also needed. 
+		// * If used outside a package declaration, package name qualification is also needed.
 		// * The declaration may be followed by a derive constraint and/or an init expression.
-		// * 
+		// *
 		// * A derive constraint provides an alternate mechanism for defining a class invariant;
 		// * the only difference is that the property is identified as a constrainedElement. As an
 		// * invariant the constraint provides an OCL expression that should always be true.
-		// * 
+		// *
 		// * For a non-derived property, an init expression defines the value to be assigned to the property
-		// * when its containing object is first created. 
-		// * 
+		// * when its containing object is first created.
+		// *
 		// * For a derived property, an init expression defines the evaluation of the property, which
-		// * may vary from access to access even for read-only properties. 
-		// * /
-		//PropertyContextDeclCS:
-		//	'context' ownedPathName=PathNameCS ':' ownedType=TypeExpCS ('derive' ownedDerivedInvariants+=ConstraintCS | 'init'
-		//	':' ownedDefaultExpressions+=SpecificationCS)*;
+		// * may vary from access to access even for read-only properties.
+		// * / PropertyContextDeclCS:
+		//	'context' ownedPathName=PathNameCS ':' ownedType=TypeExpCS ('derive' ownedDerivedInvariants+=ConstraintCS | 'init' ':'
+		//	ownedDefaultExpressions+=SpecificationCS)*;
 		@Override public ParserRule getRule() { return rule; }
 
 		//'context' ownedPathName=PathNameCS ':' ownedType=TypeExpCS ('derive' ownedDerivedInvariants+=ConstraintCS | 'init' ':'
@@ -922,7 +920,7 @@
 		private final RuleCall cOwnedExpressionExpCSParserRuleCall_0_0 = (RuleCall)cOwnedExpressionAssignment_0.eContents().get(0);
 		private final Assignment cExprStringAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
 		private final RuleCall cExprStringUNQUOTED_STRINGTerminalRuleCall_1_0 = (RuleCall)cExprStringAssignment_1.eContents().get(0);
-		
+
 		//SpecificationCS essentialocl::ExpSpecificationCS:
 		//	ownedExpression=ExpCS | exprString=UNQUOTED_STRING
 		@Override public ParserRule getRule() { return rule; }
@@ -964,13 +962,11 @@
 		private final Assignment cOwnedParametersAssignment_1_2_1 = (Assignment)cGroup_1_2.eContents().get(1);
 		private final RuleCall cOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0 = (RuleCall)cOwnedParametersAssignment_1_2_1.eContents().get(0);
 		private final Keyword cGreaterThanSignKeyword_1_3 = (Keyword)cGroup_1.eContents().get(3);
-		
+
 		////---------------------------------------------------------------------------------
-		// //	Base overrides
-		//
+		////	Base overrides
 		////---------------------------------------------------------------------------------
-		// TemplateSignatureCS
-		//base::TemplateSignatureCS:
+		//TemplateSignatureCS base::TemplateSignatureCS:
 		//	'(' ownedParameters+=TypeParameterCS (',' ownedParameters+=TypeParameterCS)* ')' | '<'
 		//	ownedParameters+=TypeParameterCS (',' ownedParameters+=TypeParameterCS)* '>'
 		@Override public ParserRule getRule() { return rule; }
@@ -1039,7 +1035,7 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final RuleCall cTypeLiteralCSParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cTypedTypeRefCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		//TypedRefCS base::TypedRefCS:
 		//	TypeLiteralCS | TypedTypeRefCS
 		@Override public ParserRule getRule() { return rule; }
@@ -1061,32 +1057,34 @@
 		private final Keyword cImportKeyword_1 = (Keyword)cAlternatives.eContents().get(1);
 		private final Keyword cIncludeKeyword_2 = (Keyword)cAlternatives.eContents().get(2);
 		private final Keyword cLibraryKeyword_3 = (Keyword)cAlternatives.eContents().get(3);
-		
+
 		//UnrestrictedName:
-		//	EssentialOCLUnrestrictedName //| 'body'
-		// //| 'context'
-		// //| 'def'
-		// //| 'derive'
-		// //|	'endpackage'
-		// | 'import' |
-		//	'include' //| 'init'
-		// //| 'inv'
-		// | 'library' //|	'package'
-		// //|	'post'
-		// //|	'pre'
-		// //|	'static'
+		//	EssentialOCLUnrestrictedName
+		//	//| 'body'
+		//	//| 'context'
+		//	//| 'def'
+		//	//| 'derive'
+		//	//|	'endpackage'
+		//	| 'import'
+		//	| 'include'
+		//	//| 'init'
+		//	//| 'inv'
+		//	| 'library'
+		//	//|	'package'
+		//	//|	'post'
+		//	//|	'pre'
+		//	//|	'static'
 		//;
 		@Override public ParserRule getRule() { return rule; }
 
 		//EssentialOCLUnrestrictedName //| 'body'
-		// //| 'context'
-		// //| 'def'
-		// //| 'derive'
-		// //|	'endpackage'
-		// | 'import' |
-		//'include' //| 'init'
-		// //| 'inv'
-		// | 'library'
+		////| 'context'
+		////| 'def'
+		////| 'derive'
+		////|	'endpackage'
+		//| 'import' | 'include' //| 'init'
+		////| 'inv'
+		//| 'library'
 		public Alternatives getAlternatives() { return cAlternatives; }
 
 		//EssentialOCLUnrestrictedName
@@ -1109,13 +1107,11 @@
 		private final Action cOCLMessageArgCSAction_0_0 = (Action)cGroup_0.eContents().get(0);
 		private final Keyword cQuestionMarkKeyword_0_1 = (Keyword)cGroup_0.eContents().get(1);
 		private final RuleCall cExpCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		////---------------------------------------------------------------------------------
-		// //	EssentialOCL overrides
-		//
+		////	EssentialOCL overrides
 		////---------------------------------------------------------------------------------
-		// NavigatingArgExpCS
-		//essentialocl::ExpCS:
+		//NavigatingArgExpCS essentialocl::ExpCS:
 		//	{OCLMessageArgCS} '?' | ExpCS
 		@Override public ParserRule getRule() { return rule; }
 
@@ -1140,7 +1136,7 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final RuleCall cEssentialOCLNavigationOperatorNameParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cCompleteOCLNavigationOperatorNameParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		//NavigationOperatorName:
 		//	EssentialOCLNavigationOperatorName | CompleteOCLNavigationOperatorName;
 		@Override public ParserRule getRule() { return rule; }
@@ -1168,9 +1164,17 @@
 		private final Keyword cOclMessageKeyword_7 = (Keyword)cAlternatives.eContents().get(7);
 		private final Keyword cOclStateKeyword_8 = (Keyword)cAlternatives.eContents().get(8);
 		private final Keyword cOclVoidKeyword_9 = (Keyword)cAlternatives.eContents().get(9);
-		
+
 		//PrimitiveTypeIdentifier:
-		//	'Boolean' | 'Integer' | 'Real' | 'String' | 'UnlimitedNatural' | 'OclAny' | 'OclInvalid' | 'OclMessage' | 'OclState'
+		//	'Boolean'
+		//	| 'Integer'
+		//	| 'Real'
+		//	| 'String'
+		//	| 'UnlimitedNatural'
+		//	| 'OclAny'
+		//	| 'OclInvalid'
+		//	| 'OclMessage'
+		//	| 'OclState'
 		//	| 'OclVoid';
 		@Override public ParserRule getRule() { return rule; }
 
@@ -1208,8 +1212,8 @@
 		//'OclVoid'
 		public Keyword getOclVoidKeyword_9() { return cOclVoidKeyword_9; }
 	}
-	
-	
+
+
 	private final CompleteOCLDocumentCSElements pCompleteOCLDocumentCS;
 	private final TerminalRule tUNQUOTED_STRING;
 	private final CompleteOCLNavigationOperatorNameElements pCompleteOCLNavigationOperatorName;
@@ -1232,7 +1236,7 @@
 	private final NavigatingArgExpCSElements pNavigatingArgExpCS;
 	private final NavigationOperatorNameElements pNavigationOperatorName;
 	private final PrimitiveTypeIdentifierElements pPrimitiveTypeIdentifier;
-	
+
 	private final Grammar grammar;
 
 	private final EssentialOCLGrammarAccess gaEssentialOCL;
@@ -1269,7 +1273,7 @@
 		this.pNavigationOperatorName = new NavigationOperatorNameElements();
 		this.pPrimitiveTypeIdentifier = new PrimitiveTypeIdentifierElements();
 	}
-	
+
 	protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
 		Grammar grammar = grammarProvider.getGrammar(this);
 		while (grammar != null) {
@@ -1285,12 +1289,12 @@
 		}
 		return grammar;
 	}
-	
+
 	@Override
 	public Grammar getGrammar() {
 		return grammar;
 	}
-	
+
 
 	public EssentialOCLGrammarAccess getEssentialOCLGrammarAccess() {
 		return gaEssentialOCL;
@@ -1300,7 +1304,7 @@
 		return gaBase;
 	}
 
-	
+
 	/// *
 	// * A Complete OCL document comprises
 	// * bullet[model imports for referenced and complemented models]
@@ -1308,61 +1312,58 @@
 	// * bullet[libraries to augment or override the OCL Standard Library]
 	// * bullet[package declarations for package-grouped declarations]
 	// * bullet[context declarations for independent declarations]
-	// * /
-	//CompleteOCLDocumentCS:
+	// * / CompleteOCLDocumentCS:
 	//	ownedImports+=ImportCS* (ownedPackages+=PackageDeclarationCS | ownedContexts+=ContextDeclCS)*;
 	public CompleteOCLDocumentCSElements getCompleteOCLDocumentCSAccess() {
 		return pCompleteOCLDocumentCS;
 	}
-	
+
 	public ParserRule getCompleteOCLDocumentCSRule() {
 		return getCompleteOCLDocumentCSAccess().getRule();
 	}
 
 	//terminal UNQUOTED_STRING: // Never forward parsed; just provides a placeholder
-	// '£$%^£$%^'
-	//	//  for reverse serialisation of embedded OCL 
+	//	'£$%^£$%^' //  for reverse serialisation of embedded OCL
 	//;
 	public TerminalRule getUNQUOTED_STRINGRule() {
 		return tUNQUOTED_STRING;
-	} 
+	}
 
 	//CompleteOCLNavigationOperatorName:
 	//	'^' | '^^';
 	public CompleteOCLNavigationOperatorNameElements getCompleteOCLNavigationOperatorNameAccess() {
 		return pCompleteOCLNavigationOperatorName;
 	}
-	
+
 	public ParserRule getCompleteOCLNavigationOperatorNameRule() {
 		return getCompleteOCLNavigationOperatorNameAccess().getRule();
 	}
 
 	//ClassifierContextDeclCS:
-	//	'context' ownedSignature=TemplateSignatureCS? selfName=UnrestrictedName? ownedPathName=PathNameCS ('inv'
-	//	ownedInvariants+=ConstraintCS | ownedDefinitions+=DefCS)+;
+	//	'context' ownedSignature=TemplateSignatureCS? selfName=UnrestrictedName?
+	//	ownedPathName=PathNameCS ('inv' ownedInvariants+=ConstraintCS | ownedDefinitions+=DefCS)+;
 	public ClassifierContextDeclCSElements getClassifierContextDeclCSAccess() {
 		return pClassifierContextDeclCS;
 	}
-	
+
 	public ParserRule getClassifierContextDeclCSRule() {
 		return getClassifierContextDeclCSAccess().getRule();
 	}
 
 	/// *
-	// * A Constraint such as 
-	// * 
+	// * A Constraint such as
+	// *
 	// * oclText[IsNull('should be null') : self = null]
-	// * 
+	// *
 	// * comprises at least the OCL specification of the constraint. The constraint may
 	// * additionally have a name which may be followed by a parenthesized expression defining an OCL
 	// * expression to be evaluated to provide an error message.
-	// * /
-	//ConstraintCS base::ConstraintCS:
+	// * / ConstraintCS base::ConstraintCS:
 	//	(name=UnrestrictedName ('(' ownedMessageSpecification=SpecificationCS ')')?)? ':' ownedSpecification=SpecificationCS
 	public ConstraintCSElements getConstraintCSAccess() {
 		return pConstraintCS;
 	}
-	
+
 	public ParserRule getConstraintCSRule() {
 		return getConstraintCSAccess().getRule();
 	}
@@ -1370,11 +1371,13 @@
 	/// *
 	// * A Context declaration can be a Classifier, Operation of Property Context declaration.
 	// * / ContextDeclCS:
-	//	PropertyContextDeclCS | ClassifierContextDeclCS | OperationContextDeclCS;
+	//	PropertyContextDeclCS
+	//	| ClassifierContextDeclCS
+	//	| OperationContextDeclCS;
 	public ContextDeclCSElements getContextDeclCSAccess() {
 		return pContextDeclCS;
 	}
-	
+
 	public ParserRule getContextDeclCSRule() {
 		return getContextDeclCSAccess().getRule();
 	}
@@ -1386,29 +1389,29 @@
 	public DefCSElements getDefCSAccess() {
 		return pDefCS;
 	}
-	
+
 	public ParserRule getDefCSRule() {
 		return getDefCSAccess().getRule();
 	}
 
 	/// *
 	// * An operation definition provides an additional operation for its classifier context.
-	// * 
+	// *
 	// * oclText[static def redundantName: isEven(i : Integer) : Boolean = i mod 2 = 0]
-	// * 
+	// *
 	// * comprises at least an operation name, return type and an OCL expression that evaluates the operation value.
 	// * The operation may have parameters and may be declared static in which case there is no oclText[self].
-	// * 
+	// *
 	// * For compatibility with invariants the definition may have a name that is never used.
-	// * /
-	//DefOperationCS:
-	//	isStatic?='static'? 'def' UnrestrictedName? ':' ownedSignature=TemplateSignatureCS? name=UnrestrictedName '('
-	//	(ownedParameters+=DefParameterCS (',' ownedParameters+=DefParameterCS)*)? ')' ':' ownedType=TypeExpCS? '='
-	//	ownedSpecification=SpecificationCS;
+	// * / DefOperationCS:
+	//	isStatic?='static'? 'def' UnrestrictedName? ':' ownedSignature=TemplateSignatureCS?
+	//	name=UnrestrictedName '(' (ownedParameters+=DefParameterCS (',' ownedParameters+=DefParameterCS)*)? ')' ':'
+	//	ownedType=TypeExpCS?
+	//	'=' ownedSpecification=SpecificationCS;
 	public DefOperationCSElements getDefOperationCSAccess() {
 		return pDefOperationCS;
 	}
-	
+
 	public ParserRule getDefOperationCSRule() {
 		return getDefOperationCSAccess().getRule();
 	}
@@ -1418,28 +1421,27 @@
 	public DefParameterCSElements getDefParameterCSAccess() {
 		return pDefParameterCS;
 	}
-	
+
 	public ParserRule getDefParameterCSRule() {
 		return getDefParameterCSAccess().getRule();
 	}
 
 	/// *
 	// * A property definition provides an additional property for its classifier context.
-	// * 
+	// *
 	// * oclText[static def redundantName: upperCaseName : Boolean = name.toUpperCase()]
-	// * 
+	// *
 	// * comprises at least a property name, type and an OCL expression that evaluates the property value.
 	// * The property may be declared static in which case there is no oclText[self].
-	// * 
+	// *
 	// * For compatibility with invariants the definition may have a name that is never used.
-	// * /
-	//DefPropertyCS:
-	//	isStatic?='static'? 'def' UnrestrictedName? ':' name=UnrestrictedName ':' ownedType=TypeExpCS '='
-	//	ownedSpecification=SpecificationCS;
+	// * / DefPropertyCS:
+	//	isStatic?='static'? 'def' UnrestrictedName? ':' name=UnrestrictedName ':' ownedType=TypeExpCS
+	//	'=' ownedSpecification=SpecificationCS;
 	public DefPropertyCSElements getDefPropertyCSAccess() {
 		return pDefPropertyCS;
 	}
-	
+
 	public ParserRule getDefPropertyCSRule() {
 		return getDefPropertyCSAccess().getRule();
 	}
@@ -1449,35 +1451,35 @@
 	public ImportCSElements getImportCSAccess() {
 		return pImportCS;
 	}
-	
+
 	public ParserRule getImportCSRule() {
 		return getImportCSAccess().getRule();
 	}
 
 	/// *
 	// * An operation context declaration complements an existing operation with additional details.
-	// * 
+	// *
 	// * oclText[context (T) Stack::pop() : T]
 	// * oclText[pre NotEmptyPop: size() > 0]
 	// * oclText[post: size()@pre = size() + 1]
-	// * 
+	// *
 	// * The operation declaration comprises at least an operation name, which must be qualified with at least a
-	// * class name. If used outside a package declaration, package name qualification is also needed. 
+	// * class name. If used outside a package declaration, package name qualification is also needed.
 	// * If the return type is omitted OclVoid is used.
 	// * The operation may also have operation parameters and template parameters.
 	// * The declaration may be followed by any number of preconditions,
-	// * and/or postconditions. It may also be followed by a body expression that defines the evaluation. 
-	// * 
+	// * and/or postconditions. It may also be followed by a body expression that defines the evaluation.
+	// *
 	// * For compatibility with invariants the body expression may have a name that is never used.
-	// * /
-	//OperationContextDeclCS:
-	//	'context' ownedSignature=TemplateSignatureCS? ownedPathName=PathNameCS '(' (ownedParameters+=ParameterCS (','
-	//	ownedParameters+=ParameterCS)*)? ')' ':' ownedType=TypeExpCS? ('pre' ownedPreconditions+=ConstraintCS | 'post'
-	//	ownedPostconditions+=ConstraintCS | 'body' UnrestrictedName? ':' ownedBodies+=SpecificationCS)*;
+	// * / OperationContextDeclCS:
+	//	'context' ownedSignature=TemplateSignatureCS? ownedPathName=PathNameCS
+	//	'(' (ownedParameters+=ParameterCS (',' ownedParameters+=ParameterCS)*)? ')' ':' ownedType=TypeExpCS? ('pre'
+	//	ownedPreconditions+=ConstraintCS | 'post' ownedPostconditions+=ConstraintCS | 'body' UnrestrictedName? ':'
+	//	ownedBodies+=SpecificationCS)*;
 	public OperationContextDeclCSElements getOperationContextDeclCSAccess() {
 		return pOperationContextDeclCS;
 	}
-	
+
 	public ParserRule getOperationContextDeclCSRule() {
 		return getOperationContextDeclCSAccess().getRule();
 	}
@@ -1487,7 +1489,7 @@
 	public PackageDeclarationCSElements getPackageDeclarationCSAccess() {
 		return pPackageDeclarationCS;
 	}
-	
+
 	public ParserRule getPackageDeclarationCSRule() {
 		return getPackageDeclarationCSAccess().getRule();
 	}
@@ -1497,39 +1499,38 @@
 	public ParameterCSElements getParameterCSAccess() {
 		return pParameterCS;
 	}
-	
+
 	public ParserRule getParameterCSRule() {
 		return getParameterCSAccess().getRule();
 	}
 
 	/// *
 	// * A property context declaration complements an existing property with additional details.
-	// * 
+	// *
 	// * oclText[context (T) Stack::isEmpty : Boolean]
 	// * oclText[derive IsEmpty: size() = 0]
-	// * 
+	// *
 	// * The property declaration comprises at least a property name and type.
 	// * The type must be qualified with at least a class name.
-	// * If used outside a package declaration, package name qualification is also needed. 
+	// * If used outside a package declaration, package name qualification is also needed.
 	// * The declaration may be followed by a derive constraint and/or an init expression.
-	// * 
+	// *
 	// * A derive constraint provides an alternate mechanism for defining a class invariant;
 	// * the only difference is that the property is identified as a constrainedElement. As an
 	// * invariant the constraint provides an OCL expression that should always be true.
-	// * 
+	// *
 	// * For a non-derived property, an init expression defines the value to be assigned to the property
-	// * when its containing object is first created. 
-	// * 
+	// * when its containing object is first created.
+	// *
 	// * For a derived property, an init expression defines the evaluation of the property, which
-	// * may vary from access to access even for read-only properties. 
-	// * /
-	//PropertyContextDeclCS:
-	//	'context' ownedPathName=PathNameCS ':' ownedType=TypeExpCS ('derive' ownedDerivedInvariants+=ConstraintCS | 'init'
-	//	':' ownedDefaultExpressions+=SpecificationCS)*;
+	// * may vary from access to access even for read-only properties.
+	// * / PropertyContextDeclCS:
+	//	'context' ownedPathName=PathNameCS ':' ownedType=TypeExpCS ('derive' ownedDerivedInvariants+=ConstraintCS | 'init' ':'
+	//	ownedDefaultExpressions+=SpecificationCS)*;
 	public PropertyContextDeclCSElements getPropertyContextDeclCSAccess() {
 		return pPropertyContextDeclCS;
 	}
-	
+
 	public ParserRule getPropertyContextDeclCSRule() {
 		return getPropertyContextDeclCSAccess().getRule();
 	}
@@ -1539,23 +1540,21 @@
 	public SpecificationCSElements getSpecificationCSAccess() {
 		return pSpecificationCS;
 	}
-	
+
 	public ParserRule getSpecificationCSRule() {
 		return getSpecificationCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------------------
-	// //	Base overrides
-	//
+	////	Base overrides
 	////---------------------------------------------------------------------------------
-	// TemplateSignatureCS
-	//base::TemplateSignatureCS:
+	//TemplateSignatureCS base::TemplateSignatureCS:
 	//	'(' ownedParameters+=TypeParameterCS (',' ownedParameters+=TypeParameterCS)* ')' | '<'
 	//	ownedParameters+=TypeParameterCS (',' ownedParameters+=TypeParameterCS)* '>'
 	public TemplateSignatureCSElements getTemplateSignatureCSAccess() {
 		return pTemplateSignatureCS;
 	}
-	
+
 	public ParserRule getTemplateSignatureCSRule() {
 		return getTemplateSignatureCSAccess().getRule();
 	}
@@ -1565,44 +1564,45 @@
 	public TypedRefCSElements getTypedRefCSAccess() {
 		return pTypedRefCS;
 	}
-	
+
 	public ParserRule getTypedRefCSRule() {
 		return getTypedRefCSAccess().getRule();
 	}
 
 	//UnrestrictedName:
-	//	EssentialOCLUnrestrictedName //| 'body'
-	// //| 'context'
-	// //| 'def'
-	// //| 'derive'
-	// //|	'endpackage'
-	// | 'import' |
-	//	'include' //| 'init'
-	// //| 'inv'
-	// | 'library' //|	'package'
-	// //|	'post'
-	// //|	'pre'
-	// //|	'static'
+	//	EssentialOCLUnrestrictedName
+	//	//| 'body'
+	//	//| 'context'
+	//	//| 'def'
+	//	//| 'derive'
+	//	//|	'endpackage'
+	//	| 'import'
+	//	| 'include'
+	//	//| 'init'
+	//	//| 'inv'
+	//	| 'library'
+	//	//|	'package'
+	//	//|	'post'
+	//	//|	'pre'
+	//	//|	'static'
 	//;
 	public UnrestrictedNameElements getUnrestrictedNameAccess() {
 		return pUnrestrictedName;
 	}
-	
+
 	public ParserRule getUnrestrictedNameRule() {
 		return getUnrestrictedNameAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------------------
-	// //	EssentialOCL overrides
-	//
+	////	EssentialOCL overrides
 	////---------------------------------------------------------------------------------
-	// NavigatingArgExpCS
-	//essentialocl::ExpCS:
+	//NavigatingArgExpCS essentialocl::ExpCS:
 	//	{OCLMessageArgCS} '?' | ExpCS
 	public NavigatingArgExpCSElements getNavigatingArgExpCSAccess() {
 		return pNavigatingArgExpCS;
 	}
-	
+
 	public ParserRule getNavigatingArgExpCSRule() {
 		return getNavigatingArgExpCSAccess().getRule();
 	}
@@ -1612,40 +1612,58 @@
 	public NavigationOperatorNameElements getNavigationOperatorNameAccess() {
 		return pNavigationOperatorName;
 	}
-	
+
 	public ParserRule getNavigationOperatorNameRule() {
 		return getNavigationOperatorNameAccess().getRule();
 	}
 
 	//PrimitiveTypeIdentifier:
-	//	'Boolean' | 'Integer' | 'Real' | 'String' | 'UnlimitedNatural' | 'OclAny' | 'OclInvalid' | 'OclMessage' | 'OclState'
+	//	'Boolean'
+	//	| 'Integer'
+	//	| 'Real'
+	//	| 'String'
+	//	| 'UnlimitedNatural'
+	//	| 'OclAny'
+	//	| 'OclInvalid'
+	//	| 'OclMessage'
+	//	| 'OclState'
 	//	| 'OclVoid';
 	public PrimitiveTypeIdentifierElements getPrimitiveTypeIdentifierAccess() {
 		return pPrimitiveTypeIdentifier;
 	}
-	
+
 	public ParserRule getPrimitiveTypeIdentifierRule() {
 		return getPrimitiveTypeIdentifierAccess().getRule();
 	}
 
 	////generate essentialOCLCST "http://www.eclipse.org/ocl/3.0.0/EssentialOCLCST"
-	// Model ContextCS:
+	//Model ContextCS:
 	//	ownedExpression=ExpCS
 	public EssentialOCLGrammarAccess.ModelElements getModelAccess() {
 		return gaEssentialOCL.getModelAccess();
 	}
-	
+
 	public ParserRule getModelRule() {
 		return getModelAccess().getRule();
 	}
 
 	/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 	//EssentialOCLReservedKeyword:
-	//	'and' | 'else' | 'endif' | 'if' | 'implies' | 'in' | 'let' | 'not' | 'or' | 'then' | 'xor';
+	//	'and'
+	//	| 'else'
+	//	| 'endif'
+	//	| 'if'
+	//	| 'implies'
+	//	| 'in'
+	//	| 'let'
+	//	| 'not'
+	//	| 'or'
+	//	| 'then'
+	//	| 'xor';
 	public EssentialOCLGrammarAccess.EssentialOCLReservedKeywordElements getEssentialOCLReservedKeywordAccess() {
 		return gaEssentialOCL.getEssentialOCLReservedKeywordAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLReservedKeywordRule() {
 		return getEssentialOCLReservedKeywordAccess().getRule();
 	}
@@ -1656,7 +1674,7 @@
 	public EssentialOCLGrammarAccess.EssentialOCLUnaryOperatorNameElements getEssentialOCLUnaryOperatorNameAccess() {
 		return gaEssentialOCL.getEssentialOCLUnaryOperatorNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLUnaryOperatorNameRule() {
 		return getEssentialOCLUnaryOperatorNameAccess().getRule();
 	}
@@ -1667,7 +1685,7 @@
 	public EssentialOCLGrammarAccess.EssentialOCLInfixOperatorNameElements getEssentialOCLInfixOperatorNameAccess() {
 		return gaEssentialOCL.getEssentialOCLInfixOperatorNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLInfixOperatorNameRule() {
 		return getEssentialOCLInfixOperatorNameAccess().getRule();
 	}
@@ -1678,7 +1696,7 @@
 	public EssentialOCLGrammarAccess.EssentialOCLNavigationOperatorNameElements getEssentialOCLNavigationOperatorNameAccess() {
 		return gaEssentialOCL.getEssentialOCLNavigationOperatorNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLNavigationOperatorNameRule() {
 		return getEssentialOCLNavigationOperatorNameAccess().getRule();
 	}
@@ -1688,7 +1706,7 @@
 	public EssentialOCLGrammarAccess.BinaryOperatorNameElements getBinaryOperatorNameAccess() {
 		return gaEssentialOCL.getBinaryOperatorNameAccess();
 	}
-	
+
 	public ParserRule getBinaryOperatorNameRule() {
 		return getBinaryOperatorNameAccess().getRule();
 	}
@@ -1698,7 +1716,7 @@
 	public EssentialOCLGrammarAccess.InfixOperatorNameElements getInfixOperatorNameAccess() {
 		return gaEssentialOCL.getInfixOperatorNameAccess();
 	}
-	
+
 	public ParserRule getInfixOperatorNameRule() {
 		return getInfixOperatorNameAccess().getRule();
 	}
@@ -1708,34 +1726,36 @@
 	public EssentialOCLGrammarAccess.UnaryOperatorNameElements getUnaryOperatorNameAccess() {
 		return gaEssentialOCL.getUnaryOperatorNameAccess();
 	}
-	
+
 	public ParserRule getUnaryOperatorNameRule() {
 		return getUnaryOperatorNameAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Names
-	//
+	////  Names
 	////---------------------------------------------------------------------
-	//
 	/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 	//EssentialOCLUnrestrictedName:
 	//	Identifier;
 	public EssentialOCLGrammarAccess.EssentialOCLUnrestrictedNameElements getEssentialOCLUnrestrictedNameAccess() {
 		return gaEssentialOCL.getEssentialOCLUnrestrictedNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLUnrestrictedNameRule() {
 		return getEssentialOCLUnrestrictedNameAccess().getRule();
 	}
 
 	/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 	//EssentialOCLUnreservedName:
-	//	super::UnrestrictedName | CollectionTypeIdentifier | super::PrimitiveTypeIdentifier | 'Map' | 'Tuple';
+	//	super::UnrestrictedName
+	//	| CollectionTypeIdentifier
+	//	| super::PrimitiveTypeIdentifier
+	//	| 'Map'
+	//	| 'Tuple';
 	public EssentialOCLGrammarAccess.EssentialOCLUnreservedNameElements getEssentialOCLUnreservedNameAccess() {
 		return gaEssentialOCL.getEssentialOCLUnreservedNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLUnreservedNameRule() {
 		return getEssentialOCLUnreservedNameAccess().getRule();
 	}
@@ -1745,7 +1765,7 @@
 	public EssentialOCLGrammarAccess.UnreservedNameElements getUnreservedNameAccess() {
 		return gaEssentialOCL.getUnreservedNameAccess();
 	}
-	
+
 	public ParserRule getUnreservedNameRule() {
 		return getUnreservedNameAccess().getRule();
 	}
@@ -1755,7 +1775,7 @@
 	public EssentialOCLGrammarAccess.URIPathNameCSElements getURIPathNameCSAccess() {
 		return gaEssentialOCL.getURIPathNameCSAccess();
 	}
-	
+
 	public ParserRule getURIPathNameCSRule() {
 		return getURIPathNameCSAccess().getRule();
 	}
@@ -1766,7 +1786,7 @@
 	public EssentialOCLGrammarAccess.URIFirstPathElementCSElements getURIFirstPathElementCSAccess() {
 		return gaEssentialOCL.getURIFirstPathElementCSAccess();
 	}
-	
+
 	public ParserRule getURIFirstPathElementCSRule() {
 		return getURIFirstPathElementCSAccess().getRule();
 	}
@@ -1776,17 +1796,21 @@
 	public EssentialOCLGrammarAccess.PrimitiveTypeCSElements getPrimitiveTypeCSAccess() {
 		return gaEssentialOCL.getPrimitiveTypeCSAccess();
 	}
-	
+
 	public ParserRule getPrimitiveTypeCSRule() {
 		return getPrimitiveTypeCSAccess().getRule();
 	}
 
 	//CollectionTypeIdentifier:
-	//	'Set' | 'Bag' | 'Sequence' | 'Collection' | 'OrderedSet';
+	//	'Set'
+	//	| 'Bag'
+	//	| 'Sequence'
+	//	| 'Collection'
+	//	| 'OrderedSet';
 	public EssentialOCLGrammarAccess.CollectionTypeIdentifierElements getCollectionTypeIdentifierAccess() {
 		return gaEssentialOCL.getCollectionTypeIdentifierAccess();
 	}
-	
+
 	public ParserRule getCollectionTypeIdentifierRule() {
 		return getCollectionTypeIdentifierAccess().getRule();
 	}
@@ -1796,7 +1820,7 @@
 	public EssentialOCLGrammarAccess.CollectionTypeCSElements getCollectionTypeCSAccess() {
 		return gaEssentialOCL.getCollectionTypeCSAccess();
 	}
-	
+
 	public ParserRule getCollectionTypeCSRule() {
 		return getCollectionTypeCSAccess().getRule();
 	}
@@ -1806,7 +1830,7 @@
 	public EssentialOCLGrammarAccess.MapTypeCSElements getMapTypeCSAccess() {
 		return gaEssentialOCL.getMapTypeCSAccess();
 	}
-	
+
 	public ParserRule getMapTypeCSRule() {
 		return getMapTypeCSAccess().getRule();
 	}
@@ -1816,7 +1840,7 @@
 	public EssentialOCLGrammarAccess.TupleTypeCSElements getTupleTypeCSAccess() {
 		return gaEssentialOCL.getTupleTypeCSAccess();
 	}
-	
+
 	public ParserRule getTupleTypeCSRule() {
 		return getTupleTypeCSAccess().getRule();
 	}
@@ -1826,21 +1850,22 @@
 	public EssentialOCLGrammarAccess.TuplePartCSElements getTuplePartCSAccess() {
 		return gaEssentialOCL.getTuplePartCSAccess();
 	}
-	
+
 	public ParserRule getTuplePartCSRule() {
 		return getTuplePartCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Literals
-	//
+	////  Literals
 	////---------------------------------------------------------------------
-	// CollectionLiteralExpCS:
-	//	ownedType=CollectionTypeCS '{' (ownedParts+=CollectionLiteralPartCS (',' ownedParts+=CollectionLiteralPartCS)*)? '}';
+	//CollectionLiteralExpCS:
+	//	ownedType=CollectionTypeCS
+	//	'{' (ownedParts+=CollectionLiteralPartCS (',' ownedParts+=CollectionLiteralPartCS)*)?
+	//	'}';
 	public EssentialOCLGrammarAccess.CollectionLiteralExpCSElements getCollectionLiteralExpCSAccess() {
 		return gaEssentialOCL.getCollectionLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getCollectionLiteralExpCSRule() {
 		return getCollectionLiteralExpCSAccess().getRule();
 	}
@@ -1850,18 +1875,19 @@
 	public EssentialOCLGrammarAccess.CollectionLiteralPartCSElements getCollectionLiteralPartCSAccess() {
 		return gaEssentialOCL.getCollectionLiteralPartCSAccess();
 	}
-	
+
 	public ParserRule getCollectionLiteralPartCSRule() {
 		return getCollectionLiteralPartCSAccess().getRule();
 	}
 
 	//CollectionPatternCS:
-	//	ownedType=CollectionTypeCS '{' (ownedParts+=PatternExpCS (',' ownedParts+=PatternExpCS)* ('++'
-	//	restVariableName=Identifier))? '}';
+	//	ownedType=CollectionTypeCS
+	//	'{' (ownedParts+=PatternExpCS (',' ownedParts+=PatternExpCS)* ('++' restVariableName=Identifier))?
+	//	'}';
 	public EssentialOCLGrammarAccess.CollectionPatternCSElements getCollectionPatternCSAccess() {
 		return gaEssentialOCL.getCollectionPatternCSAccess();
 	}
-	
+
 	public ParserRule getCollectionPatternCSRule() {
 		return getCollectionPatternCSAccess().getRule();
 	}
@@ -1871,7 +1897,7 @@
 	public EssentialOCLGrammarAccess.ShadowPartCSElements getShadowPartCSAccess() {
 		return gaEssentialOCL.getShadowPartCSAccess();
 	}
-	
+
 	public ParserRule getShadowPartCSRule() {
 		return getShadowPartCSAccess().getRule();
 	}
@@ -1881,7 +1907,7 @@
 	public EssentialOCLGrammarAccess.PatternExpCSElements getPatternExpCSAccess() {
 		return gaEssentialOCL.getPatternExpCSAccess();
 	}
-	
+
 	public ParserRule getPatternExpCSRule() {
 		return getPatternExpCSAccess().getRule();
 	}
@@ -1891,7 +1917,7 @@
 	public EssentialOCLGrammarAccess.LambdaLiteralExpCSElements getLambdaLiteralExpCSAccess() {
 		return gaEssentialOCL.getLambdaLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getLambdaLiteralExpCSRule() {
 		return getLambdaLiteralExpCSAccess().getRule();
 	}
@@ -1901,7 +1927,7 @@
 	public EssentialOCLGrammarAccess.MapLiteralExpCSElements getMapLiteralExpCSAccess() {
 		return gaEssentialOCL.getMapLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getMapLiteralExpCSRule() {
 		return getMapLiteralExpCSAccess().getRule();
 	}
@@ -1911,18 +1937,22 @@
 	public EssentialOCLGrammarAccess.MapLiteralPartCSElements getMapLiteralPartCSAccess() {
 		return gaEssentialOCL.getMapLiteralPartCSAccess();
 	}
-	
+
 	public ParserRule getMapLiteralPartCSRule() {
 		return getMapLiteralPartCSAccess().getRule();
 	}
 
 	//PrimitiveLiteralExpCS:
-	//	NumberLiteralExpCS | StringLiteralExpCS | BooleanLiteralExpCS | UnlimitedNaturalLiteralExpCS | InvalidLiteralExpCS |
-	//	NullLiteralExpCS;
+	//	NumberLiteralExpCS
+	//	| StringLiteralExpCS
+	//	| BooleanLiteralExpCS
+	//	| UnlimitedNaturalLiteralExpCS
+	//	| InvalidLiteralExpCS
+	//	| NullLiteralExpCS;
 	public EssentialOCLGrammarAccess.PrimitiveLiteralExpCSElements getPrimitiveLiteralExpCSAccess() {
 		return gaEssentialOCL.getPrimitiveLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getPrimitiveLiteralExpCSRule() {
 		return getPrimitiveLiteralExpCSAccess().getRule();
 	}
@@ -1932,7 +1962,7 @@
 	public EssentialOCLGrammarAccess.TupleLiteralExpCSElements getTupleLiteralExpCSAccess() {
 		return gaEssentialOCL.getTupleLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getTupleLiteralExpCSRule() {
 		return getTupleLiteralExpCSAccess().getRule();
 	}
@@ -1942,7 +1972,7 @@
 	public EssentialOCLGrammarAccess.TupleLiteralPartCSElements getTupleLiteralPartCSAccess() {
 		return gaEssentialOCL.getTupleLiteralPartCSAccess();
 	}
-	
+
 	public ParserRule getTupleLiteralPartCSRule() {
 		return getTupleLiteralPartCSAccess().getRule();
 	}
@@ -1952,7 +1982,7 @@
 	public EssentialOCLGrammarAccess.NumberLiteralExpCSElements getNumberLiteralExpCSAccess() {
 		return gaEssentialOCL.getNumberLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getNumberLiteralExpCSRule() {
 		return getNumberLiteralExpCSAccess().getRule();
 	}
@@ -1962,17 +1992,18 @@
 	public EssentialOCLGrammarAccess.StringLiteralExpCSElements getStringLiteralExpCSAccess() {
 		return gaEssentialOCL.getStringLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getStringLiteralExpCSRule() {
 		return getStringLiteralExpCSAccess().getRule();
 	}
 
 	//BooleanLiteralExpCS:
-	//	symbol='true' | symbol='false';
+	//	symbol='true'
+	//	| symbol='false';
 	public EssentialOCLGrammarAccess.BooleanLiteralExpCSElements getBooleanLiteralExpCSAccess() {
 		return gaEssentialOCL.getBooleanLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getBooleanLiteralExpCSRule() {
 		return getBooleanLiteralExpCSAccess().getRule();
 	}
@@ -1982,7 +2013,7 @@
 	public EssentialOCLGrammarAccess.UnlimitedNaturalLiteralExpCSElements getUnlimitedNaturalLiteralExpCSAccess() {
 		return gaEssentialOCL.getUnlimitedNaturalLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getUnlimitedNaturalLiteralExpCSRule() {
 		return getUnlimitedNaturalLiteralExpCSAccess().getRule();
 	}
@@ -1992,7 +2023,7 @@
 	public EssentialOCLGrammarAccess.InvalidLiteralExpCSElements getInvalidLiteralExpCSAccess() {
 		return gaEssentialOCL.getInvalidLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getInvalidLiteralExpCSRule() {
 		return getInvalidLiteralExpCSAccess().getRule();
 	}
@@ -2002,17 +2033,20 @@
 	public EssentialOCLGrammarAccess.NullLiteralExpCSElements getNullLiteralExpCSAccess() {
 		return gaEssentialOCL.getNullLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getNullLiteralExpCSRule() {
 		return getNullLiteralExpCSAccess().getRule();
 	}
 
 	//TypeLiteralCS base::TypedRefCS:
-	//	PrimitiveTypeCS | CollectionTypeCS | MapTypeCS | TupleTypeCS
+	//	PrimitiveTypeCS
+	//	| CollectionTypeCS
+	//	| MapTypeCS
+	//	| TupleTypeCS
 	public EssentialOCLGrammarAccess.TypeLiteralCSElements getTypeLiteralCSAccess() {
 		return gaEssentialOCL.getTypeLiteralCSAccess();
 	}
-	
+
 	public ParserRule getTypeLiteralCSRule() {
 		return getTypeLiteralCSAccess().getRule();
 	}
@@ -2022,7 +2056,7 @@
 	public EssentialOCLGrammarAccess.TypeLiteralWithMultiplicityCSElements getTypeLiteralWithMultiplicityCSAccess() {
 		return gaEssentialOCL.getTypeLiteralWithMultiplicityCSAccess();
 	}
-	
+
 	public ParserRule getTypeLiteralWithMultiplicityCSRule() {
 		return getTypeLiteralWithMultiplicityCSAccess().getRule();
 	}
@@ -2032,7 +2066,7 @@
 	public EssentialOCLGrammarAccess.TypeLiteralExpCSElements getTypeLiteralExpCSAccess() {
 		return gaEssentialOCL.getTypeLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getTypeLiteralExpCSRule() {
 		return getTypeLiteralExpCSAccess().getRule();
 	}
@@ -2042,7 +2076,7 @@
 	public EssentialOCLGrammarAccess.TypeNameExpCSElements getTypeNameExpCSAccess() {
 		return gaEssentialOCL.getTypeNameExpCSAccess();
 	}
-	
+
 	public ParserRule getTypeNameExpCSRule() {
 		return getTypeNameExpCSAccess().getRule();
 	}
@@ -2052,33 +2086,26 @@
 	public EssentialOCLGrammarAccess.TypeExpCSElements getTypeExpCSAccess() {
 		return gaEssentialOCL.getTypeExpCSAccess();
 	}
-	
+
 	public ParserRule getTypeExpCSRule() {
 		return getTypeExpCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Expressions
-	//
+	////  Expressions
 	////---------------------------------------------------------------------
-	//
 	//// An ExpCS permits a LetExpCS only in the final term to ensure
-	//
 	////  that let is right associative, whereas infix operators are left associative.
-	//
-	////   a = 64 / 16 / let b : Integer in 8 / let c : Integer in 4 
-	// // is
-	//
+	////   a = 64 / 16 / let b : Integer in 8 / let c : Integer in 4
+	//// is
 	////   a = (64 / 16) / (let b : Integer in 8 / (let c : Integer in 4 ))
-	//
 	/// * An expression elaborates a prefixed expression with zero or more binary operator and expression suffixes.
-	// * An optionally prefixed let expression is permitted except when suffixed with further expressions.* /
-	//ExpCS:
+	// * An optionally prefixed let expression is permitted except when suffixed with further expressions.* / ExpCS:
 	//	PrefixedPrimaryExpCS ({InfixExpCS.ownedLeft=current} name=BinaryOperatorName ownedRight=ExpCS)? | PrefixedLetExpCS;
 	public EssentialOCLGrammarAccess.ExpCSElements getExpCSAccess() {
 		return gaEssentialOCL.getExpCSAccess();
 	}
-	
+
 	public ParserRule getExpCSRule() {
 		return getExpCSAccess().getRule();
 	}
@@ -2089,7 +2116,7 @@
 	public EssentialOCLGrammarAccess.PrefixedLetExpCSElements getPrefixedLetExpCSAccess() {
 		return gaEssentialOCL.getPrefixedLetExpCSAccess();
 	}
-	
+
 	public ParserRule getPrefixedLetExpCSRule() {
 		return getPrefixedLetExpCSAccess().getRule();
 	}
@@ -2100,44 +2127,52 @@
 	public EssentialOCLGrammarAccess.PrefixedPrimaryExpCSElements getPrefixedPrimaryExpCSAccess() {
 		return gaEssentialOCL.getPrefixedPrimaryExpCSAccess();
 	}
-	
+
 	public ParserRule getPrefixedPrimaryExpCSRule() {
 		return getPrefixedPrimaryExpCSAccess().getRule();
 	}
 
 	/// * A primary expression identifies the basic expressions from which more complex expressions may be constructed. * /
 	//PrimaryExpCS ExpCS:
-	//	NestedExpCS | IfExpCS | SelfExpCS | PrimitiveLiteralExpCS | TupleLiteralExpCS | MapLiteralExpCS |
-	//	CollectionLiteralExpCS | LambdaLiteralExpCS | TypeLiteralExpCS | NameExpCS
+	//	NestedExpCS
+	//	| IfExpCS
+	//	| SelfExpCS
+	//	| PrimitiveLiteralExpCS
+	//	| TupleLiteralExpCS
+	//	| MapLiteralExpCS
+	//	| CollectionLiteralExpCS
+	//	| LambdaLiteralExpCS
+	//	| TypeLiteralExpCS
+	//	| NameExpCS
 	public EssentialOCLGrammarAccess.PrimaryExpCSElements getPrimaryExpCSAccess() {
 		return gaEssentialOCL.getPrimaryExpCSAccess();
 	}
-	
+
 	public ParserRule getPrimaryExpCSRule() {
 		return getPrimaryExpCSAccess().getRule();
 	}
 
 	/// * A name expression is a generalised rule for expressions that start with a name and which may be followed by square, round or
-	// * curly bracket clauses and optionally an @pre as well.* /
-	//NameExpCS:
+	// * curly bracket clauses and optionally an @pre as well.* / NameExpCS:
 	//	ownedPathName=PathNameCS ownedSquareBracketedClauses+=SquareBracketedClauseCS*
 	//	ownedRoundBracketedClause=RoundBracketedClauseCS? ownedCurlyBracketedClause=CurlyBracketedClauseCS? (isPre?='@'
 	//	'pre')?;
 	public EssentialOCLGrammarAccess.NameExpCSElements getNameExpCSAccess() {
 		return gaEssentialOCL.getNameExpCSAccess();
 	}
-	
+
 	public ParserRule getNameExpCSRule() {
 		return getNameExpCSAccess().getRule();
 	}
 
 	/// * A curly bracket clause is a generalized rule for the literal arguments of collections, maps, tuples and shadows.* /
 	//CurlyBracketedClauseCS:
-	//	{CurlyBracketedClauseCS} '{' ((ownedParts+=ShadowPartCS (',' ownedParts+=ShadowPartCS)*)? | value=StringLiteral) '}';
+	//	{CurlyBracketedClauseCS} '{' ((ownedParts+=ShadowPartCS (',' ownedParts+=ShadowPartCS)*)?
+	//	| value=StringLiteral) '}';
 	public EssentialOCLGrammarAccess.CurlyBracketedClauseCSElements getCurlyBracketedClauseCSAccess() {
 		return gaEssentialOCL.getCurlyBracketedClauseCSAccess();
 	}
-	
+
 	public ParserRule getCurlyBracketedClauseCSRule() {
 		return getCurlyBracketedClauseCSAccess().getRule();
 	}
@@ -2150,7 +2185,7 @@
 	public EssentialOCLGrammarAccess.RoundBracketedClauseCSElements getRoundBracketedClauseCSAccess() {
 		return gaEssentialOCL.getRoundBracketedClauseCSAccess();
 	}
-	
+
 	public ParserRule getRoundBracketedClauseCSRule() {
 		return getRoundBracketedClauseCSAccess().getRule();
 	}
@@ -2160,98 +2195,97 @@
 	public EssentialOCLGrammarAccess.SquareBracketedClauseCSElements getSquareBracketedClauseCSAccess() {
 		return gaEssentialOCL.getSquareBracketedClauseCSAccess();
 	}
-	
+
 	public ParserRule getSquareBracketedClauseCSRule() {
 		return getSquareBracketedClauseCSAccess().getRule();
 	}
 
 	/// * A navigating argument is a generalized rule for the first argument in a round bracket clause. This is typically the first operation
-	// * parameter or an iterator. * /
-	//NavigatingArgCS:
+	// * parameter or an iterator. * / NavigatingArgCS:
 	//	ownedNameExpression=super::NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)? | 'in'
 	//	ownedInitExpression=ExpCS)? | ':' ownedType=TypeExpCS;
 	public EssentialOCLGrammarAccess.NavigatingArgCSElements getNavigatingArgCSAccess() {
 		return gaEssentialOCL.getNavigatingArgCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingArgCSRule() {
 		return getNavigatingArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	//
 	/// * A navigating bar argument is a generalized rule for a bar-prefixed argument in a round bracket clause. This is typically the body of an iteration. * /
 	//NavigatingBarArgCS NavigatingArgCS:
 	//	prefix='|' ownedNameExpression=super::NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)?)?
 	public EssentialOCLGrammarAccess.NavigatingBarArgCSElements getNavigatingBarArgCSAccess() {
 		return gaEssentialOCL.getNavigatingBarArgCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingBarArgCSRule() {
 		return getNavigatingBarArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	//
 	/// * A navigating comma argument is a generalized rule for non-first argument in a round bracket clause. These are typically non-first operation
-	// * parameters or a second iterator. * /
-	//NavigatingCommaArgCS NavigatingArgCS:
+	// * parameters or a second iterator. * / NavigatingCommaArgCS NavigatingArgCS:
 	//	prefix=',' ownedNameExpression=super::NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)? |
 	//	'in' ownedInitExpression=ExpCS)?
 	public EssentialOCLGrammarAccess.NavigatingCommaArgCSElements getNavigatingCommaArgCSAccess() {
 		return gaEssentialOCL.getNavigatingCommaArgCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingCommaArgCSRule() {
 		return getNavigatingCommaArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	//
 	/// * A navigating semi argument is a generalized rule for a semicolon prefixed argument in a round bracket clause. This is typically an iterate accumulator. * /
 	//NavigatingSemiArgCS NavigatingArgCS:
 	//	prefix=';' ownedNameExpression=super::NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)?)?
 	public EssentialOCLGrammarAccess.NavigatingSemiArgCSElements getNavigatingSemiArgCSAccess() {
 		return gaEssentialOCL.getNavigatingSemiArgCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingSemiArgCSRule() {
 		return getNavigatingSemiArgCSAccess().getRule();
 	}
 
 	//IfExpCS:
-	//	'if' ownedCondition=(ExpCS | PatternExpCS) 'then' ownedThenExpression=ExpCS //	ifThenExpressions+=IfThenExpCS
-	//
-	//	ownedIfThenExpressions+=ElseIfThenExpCS* 'else' ownedElseExpression=ExpCS 'endif';
+	//	'if' ownedCondition=(ExpCS | PatternExpCS)
+	//	'then' ownedThenExpression=ExpCS
+	//	//	ifThenExpressions+=IfThenExpCS
+	//	ownedIfThenExpressions+=ElseIfThenExpCS*
+	//	'else' ownedElseExpression=ExpCS
+	//	'endif';
 	public EssentialOCLGrammarAccess.IfExpCSElements getIfExpCSAccess() {
 		return gaEssentialOCL.getIfExpCSAccess();
 	}
-	
+
 	public ParserRule getIfExpCSRule() {
 		return getIfExpCSAccess().getRule();
 	}
 
 	////IfThenExpCS returns IfThenExpCS:
-	// //	'if' condition=ExpCS
-	// //	'then' thenExpression=ExpCS
-	// //;
-	// ElseIfThenExpCS
-	//IfThenExpCS:
-	//	'elseif' ownedCondition=ExpCS 'then' ownedThenExpression=ExpCS
+	////	'if' condition=ExpCS
+	////	'then' thenExpression=ExpCS
+	////;
+	//ElseIfThenExpCS IfThenExpCS:
+	//	'elseif' ownedCondition=ExpCS
+	//	'then' ownedThenExpression=ExpCS
 	public EssentialOCLGrammarAccess.ElseIfThenExpCSElements getElseIfThenExpCSAccess() {
 		return gaEssentialOCL.getElseIfThenExpCSAccess();
 	}
-	
+
 	public ParserRule getElseIfThenExpCSRule() {
 		return getElseIfThenExpCSAccess().getRule();
 	}
 
 	//LetExpCS:
-	//	'let' ownedVariables+=LetVariableCS (',' ownedVariables+=LetVariableCS)* 'in' ownedInExpression=ExpCS;
+	//	'let' ownedVariables+=LetVariableCS (',' ownedVariables+=LetVariableCS)*
+	//	'in' ownedInExpression=ExpCS;
 	public EssentialOCLGrammarAccess.LetExpCSElements getLetExpCSAccess() {
 		return gaEssentialOCL.getLetExpCSAccess();
 	}
-	
+
 	public ParserRule getLetExpCSRule() {
 		return getLetExpCSAccess().getRule();
 	}
@@ -2262,7 +2296,7 @@
 	public EssentialOCLGrammarAccess.LetVariableCSElements getLetVariableCSAccess() {
 		return gaEssentialOCL.getLetVariableCSAccess();
 	}
-	
+
 	public ParserRule getLetVariableCSRule() {
 		return getLetVariableCSAccess().getRule();
 	}
@@ -2272,7 +2306,7 @@
 	public EssentialOCLGrammarAccess.NestedExpCSElements getNestedExpCSAccess() {
 		return gaEssentialOCL.getNestedExpCSAccess();
 	}
-	
+
 	public ParserRule getNestedExpCSRule() {
 		return getNestedExpCSAccess().getRule();
 	}
@@ -2282,7 +2316,7 @@
 	public EssentialOCLGrammarAccess.SelfExpCSElements getSelfExpCSAccess() {
 		return gaEssentialOCL.getSelfExpCSAccess();
 	}
-	
+
 	public ParserRule getSelfExpCSRule() {
 		return getSelfExpCSAccess().getRule();
 	}
@@ -2292,7 +2326,7 @@
 	public BaseGrammarAccess.MultiplicityBoundsCSElements getMultiplicityBoundsCSAccess() {
 		return gaBase.getMultiplicityBoundsCSAccess();
 	}
-	
+
 	public ParserRule getMultiplicityBoundsCSRule() {
 		return getMultiplicityBoundsCSAccess().getRule();
 	}
@@ -2302,7 +2336,7 @@
 	public BaseGrammarAccess.MultiplicityCSElements getMultiplicityCSAccess() {
 		return gaBase.getMultiplicityCSAccess();
 	}
-	
+
 	public ParserRule getMultiplicityCSRule() {
 		return getMultiplicityCSAccess().getRule();
 	}
@@ -2312,7 +2346,7 @@
 	public BaseGrammarAccess.MultiplicityStringCSElements getMultiplicityStringCSAccess() {
 		return gaBase.getMultiplicityStringCSAccess();
 	}
-	
+
 	public ParserRule getMultiplicityStringCSRule() {
 		return getMultiplicityStringCSAccess().getRule();
 	}
@@ -2322,7 +2356,7 @@
 	public BaseGrammarAccess.PathNameCSElements getPathNameCSAccess() {
 		return gaBase.getPathNameCSAccess();
 	}
-	
+
 	public ParserRule getPathNameCSRule() {
 		return getPathNameCSAccess().getRule();
 	}
@@ -2332,7 +2366,7 @@
 	public BaseGrammarAccess.FirstPathElementCSElements getFirstPathElementCSAccess() {
 		return gaBase.getFirstPathElementCSAccess();
 	}
-	
+
 	public ParserRule getFirstPathElementCSRule() {
 		return getFirstPathElementCSAccess().getRule();
 	}
@@ -2342,7 +2376,7 @@
 	public BaseGrammarAccess.NextPathElementCSElements getNextPathElementCSAccess() {
 		return gaBase.getNextPathElementCSAccess();
 	}
-	
+
 	public ParserRule getNextPathElementCSRule() {
 		return getNextPathElementCSAccess().getRule();
 	}
@@ -2353,7 +2387,7 @@
 	public BaseGrammarAccess.TemplateBindingCSElements getTemplateBindingCSAccess() {
 		return gaBase.getTemplateBindingCSAccess();
 	}
-	
+
 	public ParserRule getTemplateBindingCSRule() {
 		return getTemplateBindingCSAccess().getRule();
 	}
@@ -2363,7 +2397,7 @@
 	public BaseGrammarAccess.TemplateParameterSubstitutionCSElements getTemplateParameterSubstitutionCSAccess() {
 		return gaBase.getTemplateParameterSubstitutionCSAccess();
 	}
-	
+
 	public ParserRule getTemplateParameterSubstitutionCSRule() {
 		return getTemplateParameterSubstitutionCSAccess().getRule();
 	}
@@ -2373,7 +2407,7 @@
 	public BaseGrammarAccess.TypeParameterCSElements getTypeParameterCSAccess() {
 		return gaBase.getTypeParameterCSAccess();
 	}
-	
+
 	public ParserRule getTypeParameterCSRule() {
 		return getTypeParameterCSAccess().getRule();
 	}
@@ -2383,7 +2417,7 @@
 	public BaseGrammarAccess.TypeRefCSElements getTypeRefCSAccess() {
 		return gaBase.getTypeRefCSAccess();
 	}
-	
+
 	public ParserRule getTypeRefCSRule() {
 		return getTypeRefCSAccess().getRule();
 	}
@@ -2393,7 +2427,7 @@
 	public BaseGrammarAccess.TypedTypeRefCSElements getTypedTypeRefCSAccess() {
 		return gaBase.getTypedTypeRefCSAccess();
 	}
-	
+
 	public ParserRule getTypedTypeRefCSRule() {
 		return getTypedTypeRefCSAccess().getRule();
 	}
@@ -2403,7 +2437,7 @@
 	public BaseGrammarAccess.WildcardTypeRefCSElements getWildcardTypeRefCSAccess() {
 		return gaBase.getWildcardTypeRefCSAccess();
 	}
-	
+
 	public ParserRule getWildcardTypeRefCSRule() {
 		return getWildcardTypeRefCSAccess().getRule();
 	}
@@ -2413,7 +2447,7 @@
 	public BaseGrammarAccess.IDElements getIDAccess() {
 		return gaBase.getIDAccess();
 	}
-	
+
 	public ParserRule getIDRule() {
 		return getIDAccess().getRule();
 	}
@@ -2423,7 +2457,7 @@
 	public BaseGrammarAccess.IdentifierElements getIdentifierAccess() {
 		return gaBase.getIdentifierAccess();
 	}
-	
+
 	public ParserRule getIdentifierRule() {
 		return getIdentifierAccess().getRule();
 	}
@@ -2434,7 +2468,7 @@
 	public BaseGrammarAccess.LOWERElements getLOWERAccess() {
 		return gaBase.getLOWERAccess();
 	}
-	
+
 	public ParserRule getLOWERRule() {
 		return getLOWERAccess().getRule();
 	}
@@ -2443,24 +2477,23 @@
 	// * lookahead conflicts in simple lexers between a dot within a floating point number and the dot-dot in a CollectionLiteralPartCS. A
 	// * practical implementation should give high priority to a successful parse of INT ('.' INT)? (('e' | 'E') ('+' | '-')? INT)? than
 	// * to the unsuccessful partial parse of INT '..'. The type of the INT terminal is String to allow the floating point syntax to be used.
-	// * /
-	//NUMBER_LITERAL BigNumber:
+	// * / NUMBER_LITERAL BigNumber:
 	//	INT
 	public BaseGrammarAccess.NUMBER_LITERALElements getNUMBER_LITERALAccess() {
 		return gaBase.getNUMBER_LITERALAccess();
 	}
-	
+
 	public ParserRule getNUMBER_LITERALRule() {
 		return getNUMBER_LITERALAccess().getRule();
 	}
 
 	//// EssentialOCLTokenSource pieces this together ('.' INT)? (('e' | 'E') ('+' | '-')? INT)?;
-	// StringLiteral:
+	//StringLiteral:
 	//	SINGLE_QUOTED_STRING;
 	public BaseGrammarAccess.StringLiteralElements getStringLiteralAccess() {
 		return gaBase.getStringLiteralAccess();
 	}
-	
+
 	public ParserRule getStringLiteralRule() {
 		return getStringLiteralAccess().getRule();
 	}
@@ -2471,7 +2504,7 @@
 	public BaseGrammarAccess.UPPERElements getUPPERAccess() {
 		return gaBase.getUPPERAccess();
 	}
-	
+
 	public ParserRule getUPPERRule() {
 		return getUPPERAccess().getRule();
 	}
@@ -2481,7 +2514,7 @@
 	public BaseGrammarAccess.URIElements getURIAccess() {
 		return gaBase.getURIAccess();
 	}
-	
+
 	public ParserRule getURIRule() {
 		return getURIAccess().getRule();
 	}
@@ -2490,71 +2523,71 @@
 	//	'\\' ('b' | 't' | 'n' | 'f' | 'r' | 'u' | '"' | "'" | '\\');
 	public TerminalRule getESCAPED_CHARACTERRule() {
 		return gaBase.getESCAPED_CHARACTERRule();
-	} 
+	}
 
 	//terminal fragment LETTER_CHARACTER:
 	//	'a'..'z' | 'A'..'Z' | '_';
 	public TerminalRule getLETTER_CHARACTERRule() {
 		return gaBase.getLETTER_CHARACTERRule();
-	} 
+	}
 
 	//terminal DOUBLE_QUOTED_STRING:
 	//	'"' (ESCAPED_CHARACTER | !('\\' | '"'))* '"';
 	public TerminalRule getDOUBLE_QUOTED_STRINGRule() {
 		return gaBase.getDOUBLE_QUOTED_STRINGRule();
-	} 
+	}
 
 	//terminal SINGLE_QUOTED_STRING:
 	//	"'" (ESCAPED_CHARACTER | !('\\' | "'"))* "'";
 	public TerminalRule getSINGLE_QUOTED_STRINGRule() {
 		return gaBase.getSINGLE_QUOTED_STRINGRule();
-	} 
+	}
 
 	//terminal ML_SINGLE_QUOTED_STRING:
 	//	"/'"->"'/";
 	public TerminalRule getML_SINGLE_QUOTED_STRINGRule() {
 		return gaBase.getML_SINGLE_QUOTED_STRINGRule();
-	} 
+	}
 
 	//terminal SIMPLE_ID:
 	//	LETTER_CHARACTER (LETTER_CHARACTER | '0'..'9')*;
 	public TerminalRule getSIMPLE_IDRule() {
 		return gaBase.getSIMPLE_IDRule();
-	} 
+	}
 
 	//terminal ESCAPED_ID:
 	//	"_" SINGLE_QUOTED_STRING;
 	public TerminalRule getESCAPED_IDRule() {
 		return gaBase.getESCAPED_IDRule();
-	} 
+	}
 
 	//terminal INT:
 	//	'0'..'9'+;
 	public TerminalRule getINTRule() {
 		return gaBase.getINTRule();
-	} 
+	}
 
 	//terminal ML_COMMENT:
 	//	'/ *'->'* /';
 	public TerminalRule getML_COMMENTRule() {
 		return gaBase.getML_COMMENTRule();
-	} 
+	}
 
 	//terminal SL_COMMENT:
 	//	'--' !('\n' | '\r')* ('\r'? '\n')?;
 	public TerminalRule getSL_COMMENTRule() {
 		return gaBase.getSL_COMMENTRule();
-	} 
+	}
 
 	//terminal WS:
 	//	' ' | '\t' | '\r' | '\n'+;
 	public TerminalRule getWSRule() {
 		return gaBase.getWSRule();
-	} 
+	}
 
 	//terminal ANY_OTHER:
 	//	.;
 	public TerminalRule getANY_OTHERRule() {
 		return gaBase.getANY_OTHERRule();
-	} 
+	}
 }
diff --git a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/validation/AbstractCompleteOCLJavaValidator.java b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/validation/AbstractCompleteOCLJavaValidator.java
index bcca016..905c693 100644
--- a/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/validation/AbstractCompleteOCLJavaValidator.java
+++ b/plugins/org.eclipse.ocl.xtext.completeocl/src-gen/org/eclipse/ocl/xtext/completeocl/validation/AbstractCompleteOCLJavaValidator.java
@@ -9,7 +9,7 @@
  *     E.D.Willink - initial API and implementation
  *******************************************************************************/
 package org.eclipse.ocl.xtext.completeocl.validation;
- 
+
 import java.util.ArrayList;
 import java.util.List;
 
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/AbstractEssentialOCLUiModule.java b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/AbstractEssentialOCLUiModule.java
index 067a717..55a6189 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/AbstractEssentialOCLUiModule.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/AbstractEssentialOCLUiModule.java
@@ -18,12 +18,12 @@
  */
 @SuppressWarnings("all")
 public abstract class AbstractEssentialOCLUiModule extends org.eclipse.xtext.ui.DefaultUiModule {
-	
+
 	public AbstractEssentialOCLUiModule(AbstractUIPlugin plugin) {
 		super(plugin);
 	}
-	
-	
+
+
 	// contributed by org.eclipse.xtext.ui.generator.ImplicitUiFragment
 	public com.google.inject.Provider<org.eclipse.xtext.resource.containers.IAllContainersState> provideIAllContainersState() {
 		return org.eclipse.xtext.ui.shared.Access.getJavaProjectsState();
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/EssentialOCLExecutableExtensionFactory.java b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/EssentialOCLExecutableExtensionFactory.java
index b0cce37..a12d112 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/EssentialOCLExecutableExtensionFactory.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/EssentialOCLExecutableExtensionFactory.java
@@ -19,7 +19,7 @@
 
 /**
  * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
+ * introduced subclass.
  */
 public class EssentialOCLExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory {
 
@@ -27,10 +27,10 @@
 	protected Bundle getBundle() {
 		return EssentialOCLActivator.getInstance().getBundle();
 	}
-	
+
 	@Override
 	protected Injector getInjector() {
 		return EssentialOCLActivator.getInstance().getInjector(EssentialOCLActivator.ORG_ECLIPSE_OCL_XTEXT_ESSENTIALOCL_ESSENTIALOCL);
 	}
-	
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/AbstractEssentialOCLProposalProvider.java b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/AbstractEssentialOCLProposalProvider.java
index 2761be8..504d713 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/AbstractEssentialOCLProposalProvider.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/contentassist/AbstractEssentialOCLProposalProvider.java
@@ -17,12 +17,12 @@
 
 /**
  * Represents a generated, default implementation of superclass {@link org.eclipse.ocl.xtext.base.ui.contentassist.BaseProposalProvider}.
- * Methods are dynamically dispatched on the first parameter, i.e., you can override them 
- * with a more concrete subtype. 
+ * Methods are dynamically dispatched on the first parameter, i.e., you can override them
+ * with a more concrete subtype.
  */
 @SuppressWarnings("all")
 public class AbstractEssentialOCLProposalProvider extends org.eclipse.ocl.xtext.base.ui.contentassist.BaseProposalProvider {
-		
+
 	public void completeModel_OwnedExpression(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
@@ -280,7 +280,7 @@
 	public void completeNestedExpCS_OwnedExpression(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
-    
+
 	public void complete_Model(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		// subclasses may override
 	}
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 5ee6e8e..0ed4f39 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
@@ -25,19 +25,19 @@
 import org.eclipse.ocl.xtext.essentialocl.services.EssentialOCLGrammarAccess;
 
 public class EssentialOCLParser extends AbstractContentAssistParser {
-	
+
 	@Inject
 	private EssentialOCLGrammarAccess grammarAccess;
-	
+
 	private Map<AbstractElement, String> nameMappings;
-	
+
 	@Override
 	protected org.eclipse.ocl.xtext.essentialocl.ui.contentassist.antlr.internal.InternalEssentialOCLParser createParser() {
 		org.eclipse.ocl.xtext.essentialocl.ui.contentassist.antlr.internal.InternalEssentialOCLParser result = new org.eclipse.ocl.xtext.essentialocl.ui.contentassist.antlr.internal.InternalEssentialOCLParser(null);
 		result.setGrammarAccess(grammarAccess);
 		return result;
 	}
-	
+
 	@Override
 	protected String getRuleName(AbstractElement element) {
 		if (nameMappings == null) {
@@ -298,7 +298,7 @@
 		}
 		return nameMappings.get(element);
 	}
-	
+
 	@Override
 	protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
 		try {
@@ -307,18 +307,18 @@
 			return typedParser.getFollowElements();
 		} catch(RecognitionException ex) {
 			throw new RuntimeException(ex);
-		}		
+		}
 	}
-	
+
 	@Override
 	protected String[] getInitialHiddenTokens() {
 		return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" };
 	}
-	
+
 	public EssentialOCLGrammarAccess getGrammarAccess() {
 		return this.grammarAccess;
 	}
-	
+
 	public void setGrammarAccess(EssentialOCLGrammarAccess grammarAccess) {
 		this.grammarAccess = grammarAccess;
 	}
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 be10d79..46b7b05 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
@@ -13,19 +13,19 @@
 options {
 	superClass=AbstractInternalContentAssistParser;
 	backtrack=true;
-	
+
 }
 
 @lexer::header {
 package org.eclipse.ocl.xtext.essentialocl.ui.contentassist.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
 }
 
 @parser::header {
-package org.eclipse.ocl.xtext.essentialocl.ui.contentassist.antlr.internal; 
+package org.eclipse.ocl.xtext.essentialocl.ui.contentassist.antlr.internal;
 
 import java.io.InputStream;
 import org.eclipse.xtext.*;
@@ -42,18 +42,18 @@
 }
 
 @parser::members {
- 
+
  	private EssentialOCLGrammarAccess grammarAccess;
- 	
+
     public void setGrammarAccess(EssentialOCLGrammarAccess grammarAccess) {
     	this.grammarAccess = grammarAccess;
     }
-    
+
     @Override
     protected Grammar getGrammar() {
     	return grammarAccess.getGrammar();
     }
-    
+
     @Override
     protected String getValueForTokenName(String tokenName) {
     	return tokenName;
@@ -65,12 +65,12 @@
 
 
 // Entry rule entryRuleModel
-entryRuleModel 
+entryRuleModel
 :
 { before(grammarAccess.getModelRule()); }
 	 ruleModel
-{ after(grammarAccess.getModelRule()); } 
-	 EOF 
+{ after(grammarAccess.getModelRule()); }
+	 EOF
 ;
 
 // Rule Model
@@ -95,12 +95,12 @@
 
 
 // Entry rule entryRuleEssentialOCLUnaryOperatorName
-entryRuleEssentialOCLUnaryOperatorName 
+entryRuleEssentialOCLUnaryOperatorName
 :
 { before(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); }
 	 ruleEssentialOCLUnaryOperatorName
-{ after(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnaryOperatorName
@@ -123,12 +123,12 @@
 
 
 // Entry rule entryRuleEssentialOCLInfixOperatorName
-entryRuleEssentialOCLInfixOperatorName 
+entryRuleEssentialOCLInfixOperatorName
 :
 { before(grammarAccess.getEssentialOCLInfixOperatorNameRule()); }
 	 ruleEssentialOCLInfixOperatorName
-{ after(grammarAccess.getEssentialOCLInfixOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLInfixOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLInfixOperatorName
@@ -151,12 +151,12 @@
 
 
 // Entry rule entryRuleEssentialOCLNavigationOperatorName
-entryRuleEssentialOCLNavigationOperatorName 
+entryRuleEssentialOCLNavigationOperatorName
 :
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); }
 	 ruleEssentialOCLNavigationOperatorName
-{ after(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLNavigationOperatorName
@@ -179,12 +179,12 @@
 
 
 // Entry rule entryRuleBinaryOperatorName
-entryRuleBinaryOperatorName 
+entryRuleBinaryOperatorName
 :
 { before(grammarAccess.getBinaryOperatorNameRule()); }
 	 ruleBinaryOperatorName
-{ after(grammarAccess.getBinaryOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getBinaryOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule BinaryOperatorName
@@ -207,12 +207,12 @@
 
 
 // Entry rule entryRuleInfixOperatorName
-entryRuleInfixOperatorName 
+entryRuleInfixOperatorName
 :
 { before(grammarAccess.getInfixOperatorNameRule()); }
 	 ruleInfixOperatorName
-{ after(grammarAccess.getInfixOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getInfixOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule InfixOperatorName
@@ -235,12 +235,12 @@
 
 
 // Entry rule entryRuleNavigationOperatorName
-entryRuleNavigationOperatorName 
+entryRuleNavigationOperatorName
 :
 { before(grammarAccess.getNavigationOperatorNameRule()); }
 	 ruleNavigationOperatorName
-{ after(grammarAccess.getNavigationOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigationOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule NavigationOperatorName
@@ -263,12 +263,12 @@
 
 
 // Entry rule entryRuleUnaryOperatorName
-entryRuleUnaryOperatorName 
+entryRuleUnaryOperatorName
 :
 { before(grammarAccess.getUnaryOperatorNameRule()); }
 	 ruleUnaryOperatorName
-{ after(grammarAccess.getUnaryOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnaryOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule UnaryOperatorName
@@ -291,12 +291,12 @@
 
 
 // Entry rule entryRuleEssentialOCLUnrestrictedName
-entryRuleEssentialOCLUnrestrictedName 
+entryRuleEssentialOCLUnrestrictedName
 :
 { before(grammarAccess.getEssentialOCLUnrestrictedNameRule()); }
 	 ruleEssentialOCLUnrestrictedName
-{ after(grammarAccess.getEssentialOCLUnrestrictedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLUnrestrictedNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnrestrictedName
@@ -319,12 +319,12 @@
 
 
 // Entry rule entryRuleUnrestrictedName
-entryRuleUnrestrictedName 
+entryRuleUnrestrictedName
 :
 { before(grammarAccess.getUnrestrictedNameRule()); }
 	 ruleUnrestrictedName
-{ after(grammarAccess.getUnrestrictedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnrestrictedNameRule()); }
+	 EOF
 ;
 
 // Rule UnrestrictedName
@@ -347,12 +347,12 @@
 
 
 // Entry rule entryRuleEssentialOCLUnreservedName
-entryRuleEssentialOCLUnreservedName 
+entryRuleEssentialOCLUnreservedName
 :
 { before(grammarAccess.getEssentialOCLUnreservedNameRule()); }
 	 ruleEssentialOCLUnreservedName
-{ after(grammarAccess.getEssentialOCLUnreservedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLUnreservedNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnreservedName
@@ -375,12 +375,12 @@
 
 
 // Entry rule entryRuleUnreservedName
-entryRuleUnreservedName 
+entryRuleUnreservedName
 :
 { before(grammarAccess.getUnreservedNameRule()); }
 	 ruleUnreservedName
-{ after(grammarAccess.getUnreservedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnreservedNameRule()); }
+	 EOF
 ;
 
 // Rule UnreservedName
@@ -405,12 +405,12 @@
 
 
 // Entry rule entryRuleURIFirstPathElementCS
-entryRuleURIFirstPathElementCS 
+entryRuleURIFirstPathElementCS
 :
 { before(grammarAccess.getURIFirstPathElementCSRule()); }
 	 ruleURIFirstPathElementCS
-{ after(grammarAccess.getURIFirstPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getURIFirstPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule URIFirstPathElementCS
@@ -433,12 +433,12 @@
 
 
 // Entry rule entryRulePrimitiveTypeIdentifier
-entryRulePrimitiveTypeIdentifier 
+entryRulePrimitiveTypeIdentifier
 :
 { before(grammarAccess.getPrimitiveTypeIdentifierRule()); }
 	 rulePrimitiveTypeIdentifier
-{ after(grammarAccess.getPrimitiveTypeIdentifierRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimitiveTypeIdentifierRule()); }
+	 EOF
 ;
 
 // Rule PrimitiveTypeIdentifier
@@ -461,12 +461,12 @@
 
 
 // Entry rule entryRulePrimitiveTypeCS
-entryRulePrimitiveTypeCS 
+entryRulePrimitiveTypeCS
 :
 { before(grammarAccess.getPrimitiveTypeCSRule()); }
 	 rulePrimitiveTypeCS
-{ after(grammarAccess.getPrimitiveTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimitiveTypeCSRule()); }
+	 EOF
 ;
 
 // Rule PrimitiveTypeCS
@@ -489,12 +489,12 @@
 
 
 // Entry rule entryRuleCollectionTypeIdentifier
-entryRuleCollectionTypeIdentifier 
+entryRuleCollectionTypeIdentifier
 :
 { before(grammarAccess.getCollectionTypeIdentifierRule()); }
 	 ruleCollectionTypeIdentifier
-{ after(grammarAccess.getCollectionTypeIdentifierRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionTypeIdentifierRule()); }
+	 EOF
 ;
 
 // Rule CollectionTypeIdentifier
@@ -517,12 +517,12 @@
 
 
 // Entry rule entryRuleCollectionTypeCS
-entryRuleCollectionTypeCS 
+entryRuleCollectionTypeCS
 :
 { before(grammarAccess.getCollectionTypeCSRule()); }
 	 ruleCollectionTypeCS
-{ after(grammarAccess.getCollectionTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionTypeCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionTypeCS
@@ -545,12 +545,12 @@
 
 
 // Entry rule entryRuleMapTypeCS
-entryRuleMapTypeCS 
+entryRuleMapTypeCS
 :
 { before(grammarAccess.getMapTypeCSRule()); }
 	 ruleMapTypeCS
-{ after(grammarAccess.getMapTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMapTypeCSRule()); }
+	 EOF
 ;
 
 // Rule MapTypeCS
@@ -573,12 +573,12 @@
 
 
 // Entry rule entryRuleTupleTypeCS
-entryRuleTupleTypeCS 
+entryRuleTupleTypeCS
 :
 { before(grammarAccess.getTupleTypeCSRule()); }
 	 ruleTupleTypeCS
-{ after(grammarAccess.getTupleTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTupleTypeCSRule()); }
+	 EOF
 ;
 
 // Rule TupleTypeCS
@@ -601,12 +601,12 @@
 
 
 // Entry rule entryRuleTuplePartCS
-entryRuleTuplePartCS 
+entryRuleTuplePartCS
 :
 { before(grammarAccess.getTuplePartCSRule()); }
 	 ruleTuplePartCS
-{ after(grammarAccess.getTuplePartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTuplePartCSRule()); }
+	 EOF
 ;
 
 // Rule TuplePartCS
@@ -629,12 +629,12 @@
 
 
 // Entry rule entryRuleCollectionLiteralExpCS
-entryRuleCollectionLiteralExpCS 
+entryRuleCollectionLiteralExpCS
 :
 { before(grammarAccess.getCollectionLiteralExpCSRule()); }
 	 ruleCollectionLiteralExpCS
-{ after(grammarAccess.getCollectionLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionLiteralExpCS
@@ -657,12 +657,12 @@
 
 
 // Entry rule entryRuleCollectionLiteralPartCS
-entryRuleCollectionLiteralPartCS 
+entryRuleCollectionLiteralPartCS
 :
 { before(grammarAccess.getCollectionLiteralPartCSRule()); }
 	 ruleCollectionLiteralPartCS
-{ after(grammarAccess.getCollectionLiteralPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionLiteralPartCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionLiteralPartCS
@@ -685,12 +685,12 @@
 
 
 // Entry rule entryRuleCollectionPatternCS
-entryRuleCollectionPatternCS 
+entryRuleCollectionPatternCS
 :
 { before(grammarAccess.getCollectionPatternCSRule()); }
 	 ruleCollectionPatternCS
-{ after(grammarAccess.getCollectionPatternCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionPatternCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionPatternCS
@@ -713,12 +713,12 @@
 
 
 // Entry rule entryRuleShadowPartCS
-entryRuleShadowPartCS 
+entryRuleShadowPartCS
 :
 { before(grammarAccess.getShadowPartCSRule()); }
 	 ruleShadowPartCS
-{ after(grammarAccess.getShadowPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getShadowPartCSRule()); }
+	 EOF
 ;
 
 // Rule ShadowPartCS
@@ -741,12 +741,12 @@
 
 
 // Entry rule entryRulePatternExpCS
-entryRulePatternExpCS 
+entryRulePatternExpCS
 :
 { before(grammarAccess.getPatternExpCSRule()); }
 	 rulePatternExpCS
-{ after(grammarAccess.getPatternExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPatternExpCSRule()); }
+	 EOF
 ;
 
 // Rule PatternExpCS
@@ -769,12 +769,12 @@
 
 
 // Entry rule entryRuleLambdaLiteralExpCS
-entryRuleLambdaLiteralExpCS 
+entryRuleLambdaLiteralExpCS
 :
 { before(grammarAccess.getLambdaLiteralExpCSRule()); }
 	 ruleLambdaLiteralExpCS
-{ after(grammarAccess.getLambdaLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLambdaLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule LambdaLiteralExpCS
@@ -797,12 +797,12 @@
 
 
 // Entry rule entryRuleMapLiteralExpCS
-entryRuleMapLiteralExpCS 
+entryRuleMapLiteralExpCS
 :
 { before(grammarAccess.getMapLiteralExpCSRule()); }
 	 ruleMapLiteralExpCS
-{ after(grammarAccess.getMapLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMapLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule MapLiteralExpCS
@@ -825,12 +825,12 @@
 
 
 // Entry rule entryRuleMapLiteralPartCS
-entryRuleMapLiteralPartCS 
+entryRuleMapLiteralPartCS
 :
 { before(grammarAccess.getMapLiteralPartCSRule()); }
 	 ruleMapLiteralPartCS
-{ after(grammarAccess.getMapLiteralPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMapLiteralPartCSRule()); }
+	 EOF
 ;
 
 // Rule MapLiteralPartCS
@@ -853,12 +853,12 @@
 
 
 // Entry rule entryRulePrimitiveLiteralExpCS
-entryRulePrimitiveLiteralExpCS 
+entryRulePrimitiveLiteralExpCS
 :
 { before(grammarAccess.getPrimitiveLiteralExpCSRule()); }
 	 rulePrimitiveLiteralExpCS
-{ after(grammarAccess.getPrimitiveLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimitiveLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrimitiveLiteralExpCS
@@ -881,12 +881,12 @@
 
 
 // Entry rule entryRuleTupleLiteralExpCS
-entryRuleTupleLiteralExpCS 
+entryRuleTupleLiteralExpCS
 :
 { before(grammarAccess.getTupleLiteralExpCSRule()); }
 	 ruleTupleLiteralExpCS
-{ after(grammarAccess.getTupleLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTupleLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule TupleLiteralExpCS
@@ -909,12 +909,12 @@
 
 
 // Entry rule entryRuleTupleLiteralPartCS
-entryRuleTupleLiteralPartCS 
+entryRuleTupleLiteralPartCS
 :
 { before(grammarAccess.getTupleLiteralPartCSRule()); }
 	 ruleTupleLiteralPartCS
-{ after(grammarAccess.getTupleLiteralPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTupleLiteralPartCSRule()); }
+	 EOF
 ;
 
 // Rule TupleLiteralPartCS
@@ -937,12 +937,12 @@
 
 
 // Entry rule entryRuleNumberLiteralExpCS
-entryRuleNumberLiteralExpCS 
+entryRuleNumberLiteralExpCS
 :
 { before(grammarAccess.getNumberLiteralExpCSRule()); }
 	 ruleNumberLiteralExpCS
-{ after(grammarAccess.getNumberLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNumberLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule NumberLiteralExpCS
@@ -965,12 +965,12 @@
 
 
 // Entry rule entryRuleStringLiteralExpCS
-entryRuleStringLiteralExpCS 
+entryRuleStringLiteralExpCS
 :
 { before(grammarAccess.getStringLiteralExpCSRule()); }
 	 ruleStringLiteralExpCS
-{ after(grammarAccess.getStringLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getStringLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule StringLiteralExpCS
@@ -1000,12 +1000,12 @@
 
 
 // Entry rule entryRuleBooleanLiteralExpCS
-entryRuleBooleanLiteralExpCS 
+entryRuleBooleanLiteralExpCS
 :
 { before(grammarAccess.getBooleanLiteralExpCSRule()); }
 	 ruleBooleanLiteralExpCS
-{ after(grammarAccess.getBooleanLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getBooleanLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule BooleanLiteralExpCS
@@ -1028,12 +1028,12 @@
 
 
 // Entry rule entryRuleUnlimitedNaturalLiteralExpCS
-entryRuleUnlimitedNaturalLiteralExpCS 
+entryRuleUnlimitedNaturalLiteralExpCS
 :
 { before(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); }
 	 ruleUnlimitedNaturalLiteralExpCS
-{ after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule UnlimitedNaturalLiteralExpCS
@@ -1056,12 +1056,12 @@
 
 
 // Entry rule entryRuleInvalidLiteralExpCS
-entryRuleInvalidLiteralExpCS 
+entryRuleInvalidLiteralExpCS
 :
 { before(grammarAccess.getInvalidLiteralExpCSRule()); }
 	 ruleInvalidLiteralExpCS
-{ after(grammarAccess.getInvalidLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getInvalidLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule InvalidLiteralExpCS
@@ -1084,12 +1084,12 @@
 
 
 // Entry rule entryRuleNullLiteralExpCS
-entryRuleNullLiteralExpCS 
+entryRuleNullLiteralExpCS
 :
 { before(grammarAccess.getNullLiteralExpCSRule()); }
 	 ruleNullLiteralExpCS
-{ after(grammarAccess.getNullLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNullLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule NullLiteralExpCS
@@ -1112,12 +1112,12 @@
 
 
 // Entry rule entryRuleTypeLiteralCS
-entryRuleTypeLiteralCS 
+entryRuleTypeLiteralCS
 :
 { before(grammarAccess.getTypeLiteralCSRule()); }
 	 ruleTypeLiteralCS
-{ after(grammarAccess.getTypeLiteralCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeLiteralCSRule()); }
+	 EOF
 ;
 
 // Rule TypeLiteralCS
@@ -1140,12 +1140,12 @@
 
 
 // Entry rule entryRuleTypeLiteralWithMultiplicityCS
-entryRuleTypeLiteralWithMultiplicityCS 
+entryRuleTypeLiteralWithMultiplicityCS
 :
 { before(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); }
 	 ruleTypeLiteralWithMultiplicityCS
-{ after(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); }
+	 EOF
 ;
 
 // Rule TypeLiteralWithMultiplicityCS
@@ -1168,12 +1168,12 @@
 
 
 // Entry rule entryRuleTypeLiteralExpCS
-entryRuleTypeLiteralExpCS 
+entryRuleTypeLiteralExpCS
 :
 { before(grammarAccess.getTypeLiteralExpCSRule()); }
 	 ruleTypeLiteralExpCS
-{ after(grammarAccess.getTypeLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule TypeLiteralExpCS
@@ -1196,12 +1196,12 @@
 
 
 // Entry rule entryRuleTypeNameExpCS
-entryRuleTypeNameExpCS 
+entryRuleTypeNameExpCS
 :
 { before(grammarAccess.getTypeNameExpCSRule()); }
 	 ruleTypeNameExpCS
-{ after(grammarAccess.getTypeNameExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeNameExpCSRule()); }
+	 EOF
 ;
 
 // Rule TypeNameExpCS
@@ -1224,12 +1224,12 @@
 
 
 // Entry rule entryRuleTypeExpCS
-entryRuleTypeExpCS 
+entryRuleTypeExpCS
 :
 { before(grammarAccess.getTypeExpCSRule()); }
 	 ruleTypeExpCS
-{ after(grammarAccess.getTypeExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeExpCSRule()); }
+	 EOF
 ;
 
 // Rule TypeExpCS
@@ -1252,12 +1252,12 @@
 
 
 // Entry rule entryRuleExpCS
-entryRuleExpCS 
+entryRuleExpCS
 :
 { before(grammarAccess.getExpCSRule()); }
 	 ruleExpCS
-{ after(grammarAccess.getExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getExpCSRule()); }
+	 EOF
 ;
 
 // Rule ExpCS
@@ -1280,12 +1280,12 @@
 
 
 // Entry rule entryRulePrefixedLetExpCS
-entryRulePrefixedLetExpCS 
+entryRulePrefixedLetExpCS
 :
 { before(grammarAccess.getPrefixedLetExpCSRule()); }
 	 rulePrefixedLetExpCS
-{ after(grammarAccess.getPrefixedLetExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrefixedLetExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrefixedLetExpCS
@@ -1308,12 +1308,12 @@
 
 
 // Entry rule entryRulePrefixedPrimaryExpCS
-entryRulePrefixedPrimaryExpCS 
+entryRulePrefixedPrimaryExpCS
 :
 { before(grammarAccess.getPrefixedPrimaryExpCSRule()); }
 	 rulePrefixedPrimaryExpCS
-{ after(grammarAccess.getPrefixedPrimaryExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrefixedPrimaryExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrefixedPrimaryExpCS
@@ -1336,12 +1336,12 @@
 
 
 // Entry rule entryRulePrimaryExpCS
-entryRulePrimaryExpCS 
+entryRulePrimaryExpCS
 :
 { before(grammarAccess.getPrimaryExpCSRule()); }
 	 rulePrimaryExpCS
-{ after(grammarAccess.getPrimaryExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimaryExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrimaryExpCS
@@ -1364,12 +1364,12 @@
 
 
 // Entry rule entryRuleNameExpCS
-entryRuleNameExpCS 
+entryRuleNameExpCS
 :
 { before(grammarAccess.getNameExpCSRule()); }
 	 ruleNameExpCS
-{ after(grammarAccess.getNameExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNameExpCSRule()); }
+	 EOF
 ;
 
 // Rule NameExpCS
@@ -1392,12 +1392,12 @@
 
 
 // Entry rule entryRuleCurlyBracketedClauseCS
-entryRuleCurlyBracketedClauseCS 
+entryRuleCurlyBracketedClauseCS
 :
 { before(grammarAccess.getCurlyBracketedClauseCSRule()); }
 	 ruleCurlyBracketedClauseCS
-{ after(grammarAccess.getCurlyBracketedClauseCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCurlyBracketedClauseCSRule()); }
+	 EOF
 ;
 
 // Rule CurlyBracketedClauseCS
@@ -1420,12 +1420,12 @@
 
 
 // Entry rule entryRuleRoundBracketedClauseCS
-entryRuleRoundBracketedClauseCS 
+entryRuleRoundBracketedClauseCS
 :
 { before(grammarAccess.getRoundBracketedClauseCSRule()); }
 	 ruleRoundBracketedClauseCS
-{ after(grammarAccess.getRoundBracketedClauseCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getRoundBracketedClauseCSRule()); }
+	 EOF
 ;
 
 // Rule RoundBracketedClauseCS
@@ -1448,12 +1448,12 @@
 
 
 // Entry rule entryRuleSquareBracketedClauseCS
-entryRuleSquareBracketedClauseCS 
+entryRuleSquareBracketedClauseCS
 :
 { before(grammarAccess.getSquareBracketedClauseCSRule()); }
 	 ruleSquareBracketedClauseCS
-{ after(grammarAccess.getSquareBracketedClauseCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getSquareBracketedClauseCSRule()); }
+	 EOF
 ;
 
 // Rule SquareBracketedClauseCS
@@ -1476,12 +1476,12 @@
 
 
 // Entry rule entryRuleNavigatingArgCS
-entryRuleNavigatingArgCS 
+entryRuleNavigatingArgCS
 :
 { before(grammarAccess.getNavigatingArgCSRule()); }
 	 ruleNavigatingArgCS
-{ after(grammarAccess.getNavigatingArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingArgCS
@@ -1504,12 +1504,12 @@
 
 
 // Entry rule entryRuleNavigatingBarArgCS
-entryRuleNavigatingBarArgCS 
+entryRuleNavigatingBarArgCS
 :
 { before(grammarAccess.getNavigatingBarArgCSRule()); }
 	 ruleNavigatingBarArgCS
-{ after(grammarAccess.getNavigatingBarArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingBarArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingBarArgCS
@@ -1532,12 +1532,12 @@
 
 
 // Entry rule entryRuleNavigatingCommaArgCS
-entryRuleNavigatingCommaArgCS 
+entryRuleNavigatingCommaArgCS
 :
 { before(grammarAccess.getNavigatingCommaArgCSRule()); }
 	 ruleNavigatingCommaArgCS
-{ after(grammarAccess.getNavigatingCommaArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingCommaArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingCommaArgCS
@@ -1560,12 +1560,12 @@
 
 
 // Entry rule entryRuleNavigatingSemiArgCS
-entryRuleNavigatingSemiArgCS 
+entryRuleNavigatingSemiArgCS
 :
 { before(grammarAccess.getNavigatingSemiArgCSRule()); }
 	 ruleNavigatingSemiArgCS
-{ after(grammarAccess.getNavigatingSemiArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingSemiArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingSemiArgCS
@@ -1588,12 +1588,12 @@
 
 
 // Entry rule entryRuleNavigatingArgExpCS
-entryRuleNavigatingArgExpCS 
+entryRuleNavigatingArgExpCS
 :
 { before(grammarAccess.getNavigatingArgExpCSRule()); }
 	 ruleNavigatingArgExpCS
-{ after(grammarAccess.getNavigatingArgExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingArgExpCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingArgExpCS
@@ -1616,12 +1616,12 @@
 
 
 // Entry rule entryRuleIfExpCS
-entryRuleIfExpCS 
+entryRuleIfExpCS
 :
 { before(grammarAccess.getIfExpCSRule()); }
 	 ruleIfExpCS
-{ after(grammarAccess.getIfExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getIfExpCSRule()); }
+	 EOF
 ;
 
 // Rule IfExpCS
@@ -1644,12 +1644,12 @@
 
 
 // Entry rule entryRuleElseIfThenExpCS
-entryRuleElseIfThenExpCS 
+entryRuleElseIfThenExpCS
 :
 { before(grammarAccess.getElseIfThenExpCSRule()); }
 	 ruleElseIfThenExpCS
-{ after(grammarAccess.getElseIfThenExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getElseIfThenExpCSRule()); }
+	 EOF
 ;
 
 // Rule ElseIfThenExpCS
@@ -1672,12 +1672,12 @@
 
 
 // Entry rule entryRuleLetExpCS
-entryRuleLetExpCS 
+entryRuleLetExpCS
 :
 { before(grammarAccess.getLetExpCSRule()); }
 	 ruleLetExpCS
-{ after(grammarAccess.getLetExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLetExpCSRule()); }
+	 EOF
 ;
 
 // Rule LetExpCS
@@ -1700,12 +1700,12 @@
 
 
 // Entry rule entryRuleLetVariableCS
-entryRuleLetVariableCS 
+entryRuleLetVariableCS
 :
 { before(grammarAccess.getLetVariableCSRule()); }
 	 ruleLetVariableCS
-{ after(grammarAccess.getLetVariableCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLetVariableCSRule()); }
+	 EOF
 ;
 
 // Rule LetVariableCS
@@ -1728,12 +1728,12 @@
 
 
 // Entry rule entryRuleNestedExpCS
-entryRuleNestedExpCS 
+entryRuleNestedExpCS
 :
 { before(grammarAccess.getNestedExpCSRule()); }
 	 ruleNestedExpCS
-{ after(grammarAccess.getNestedExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNestedExpCSRule()); }
+	 EOF
 ;
 
 // Rule NestedExpCS
@@ -1756,12 +1756,12 @@
 
 
 // Entry rule entryRuleSelfExpCS
-entryRuleSelfExpCS 
+entryRuleSelfExpCS
 :
 { before(grammarAccess.getSelfExpCSRule()); }
 	 ruleSelfExpCS
-{ after(grammarAccess.getSelfExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getSelfExpCSRule()); }
+	 EOF
 ;
 
 // Rule SelfExpCS
@@ -1784,12 +1784,12 @@
 
 
 // Entry rule entryRuleMultiplicityBoundsCS
-entryRuleMultiplicityBoundsCS 
+entryRuleMultiplicityBoundsCS
 :
 { before(grammarAccess.getMultiplicityBoundsCSRule()); }
 	 ruleMultiplicityBoundsCS
-{ after(grammarAccess.getMultiplicityBoundsCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityBoundsCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityBoundsCS
@@ -1812,12 +1812,12 @@
 
 
 // Entry rule entryRuleMultiplicityCS
-entryRuleMultiplicityCS 
+entryRuleMultiplicityCS
 :
 { before(grammarAccess.getMultiplicityCSRule()); }
 	 ruleMultiplicityCS
-{ after(grammarAccess.getMultiplicityCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityCS
@@ -1840,12 +1840,12 @@
 
 
 // Entry rule entryRuleMultiplicityStringCS
-entryRuleMultiplicityStringCS 
+entryRuleMultiplicityStringCS
 :
 { before(grammarAccess.getMultiplicityStringCSRule()); }
 	 ruleMultiplicityStringCS
-{ after(grammarAccess.getMultiplicityStringCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityStringCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityStringCS
@@ -1868,12 +1868,12 @@
 
 
 // Entry rule entryRulePathNameCS
-entryRulePathNameCS 
+entryRulePathNameCS
 :
 { before(grammarAccess.getPathNameCSRule()); }
 	 rulePathNameCS
-{ after(grammarAccess.getPathNameCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPathNameCSRule()); }
+	 EOF
 ;
 
 // Rule PathNameCS
@@ -1896,12 +1896,12 @@
 
 
 // Entry rule entryRuleFirstPathElementCS
-entryRuleFirstPathElementCS 
+entryRuleFirstPathElementCS
 :
 { before(grammarAccess.getFirstPathElementCSRule()); }
 	 ruleFirstPathElementCS
-{ after(grammarAccess.getFirstPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getFirstPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule FirstPathElementCS
@@ -1924,12 +1924,12 @@
 
 
 // Entry rule entryRuleNextPathElementCS
-entryRuleNextPathElementCS 
+entryRuleNextPathElementCS
 :
 { before(grammarAccess.getNextPathElementCSRule()); }
 	 ruleNextPathElementCS
-{ after(grammarAccess.getNextPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNextPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule NextPathElementCS
@@ -1952,12 +1952,12 @@
 
 
 // Entry rule entryRuleTemplateBindingCS
-entryRuleTemplateBindingCS 
+entryRuleTemplateBindingCS
 :
 { before(grammarAccess.getTemplateBindingCSRule()); }
 	 ruleTemplateBindingCS
-{ after(grammarAccess.getTemplateBindingCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTemplateBindingCSRule()); }
+	 EOF
 ;
 
 // Rule TemplateBindingCS
@@ -1980,12 +1980,12 @@
 
 
 // Entry rule entryRuleTemplateParameterSubstitutionCS
-entryRuleTemplateParameterSubstitutionCS 
+entryRuleTemplateParameterSubstitutionCS
 :
 { before(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
 	 ruleTemplateParameterSubstitutionCS
-{ after(grammarAccess.getTemplateParameterSubstitutionCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
+	 EOF
 ;
 
 // Rule TemplateParameterSubstitutionCS
@@ -2010,12 +2010,12 @@
 
 
 // Entry rule entryRuleTypeParameterCS
-entryRuleTypeParameterCS 
+entryRuleTypeParameterCS
 :
 { before(grammarAccess.getTypeParameterCSRule()); }
 	 ruleTypeParameterCS
-{ after(grammarAccess.getTypeParameterCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeParameterCSRule()); }
+	 EOF
 ;
 
 // Rule TypeParameterCS
@@ -2038,12 +2038,12 @@
 
 
 // Entry rule entryRuleTypeRefCS
-entryRuleTypeRefCS 
+entryRuleTypeRefCS
 :
 { before(grammarAccess.getTypeRefCSRule()); }
 	 ruleTypeRefCS
-{ after(grammarAccess.getTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypeRefCS
@@ -2066,12 +2066,12 @@
 
 
 // Entry rule entryRuleTypedRefCS
-entryRuleTypedRefCS 
+entryRuleTypedRefCS
 :
 { before(grammarAccess.getTypedRefCSRule()); }
 	 ruleTypedRefCS
-{ after(grammarAccess.getTypedRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypedRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypedRefCS
@@ -2094,12 +2094,12 @@
 
 
 // Entry rule entryRuleTypedTypeRefCS
-entryRuleTypedTypeRefCS 
+entryRuleTypedTypeRefCS
 :
 { before(grammarAccess.getTypedTypeRefCSRule()); }
 	 ruleTypedTypeRefCS
-{ after(grammarAccess.getTypedTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypedTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypedTypeRefCS
@@ -2122,12 +2122,12 @@
 
 
 // Entry rule entryRuleWildcardTypeRefCS
-entryRuleWildcardTypeRefCS 
+entryRuleWildcardTypeRefCS
 :
 { before(grammarAccess.getWildcardTypeRefCSRule()); }
 	 ruleWildcardTypeRefCS
-{ after(grammarAccess.getWildcardTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getWildcardTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule WildcardTypeRefCS
@@ -2150,12 +2150,12 @@
 
 
 // Entry rule entryRuleID
-entryRuleID 
+entryRuleID
 :
 { before(grammarAccess.getIDRule()); }
 	 ruleID
-{ after(grammarAccess.getIDRule()); } 
-	 EOF 
+{ after(grammarAccess.getIDRule()); }
+	 EOF
 ;
 
 // Rule ID
@@ -2178,12 +2178,12 @@
 
 
 // Entry rule entryRuleIdentifier
-entryRuleIdentifier 
+entryRuleIdentifier
 :
 { before(grammarAccess.getIdentifierRule()); }
 	 ruleIdentifier
-{ after(grammarAccess.getIdentifierRule()); } 
-	 EOF 
+{ after(grammarAccess.getIdentifierRule()); }
+	 EOF
 ;
 
 // Rule Identifier
@@ -2206,12 +2206,12 @@
 
 
 // Entry rule entryRuleLOWER
-entryRuleLOWER 
+entryRuleLOWER
 :
 { before(grammarAccess.getLOWERRule()); }
 	 ruleLOWER
-{ after(grammarAccess.getLOWERRule()); } 
-	 EOF 
+{ after(grammarAccess.getLOWERRule()); }
+	 EOF
 ;
 
 // Rule LOWER
@@ -2234,12 +2234,12 @@
 
 
 // Entry rule entryRuleNUMBER_LITERAL
-entryRuleNUMBER_LITERAL 
+entryRuleNUMBER_LITERAL
 :
 { before(grammarAccess.getNUMBER_LITERALRule()); }
 	 ruleNUMBER_LITERAL
-{ after(grammarAccess.getNUMBER_LITERALRule()); } 
-	 EOF 
+{ after(grammarAccess.getNUMBER_LITERALRule()); }
+	 EOF
 ;
 
 // Rule NUMBER_LITERAL
@@ -2262,12 +2262,12 @@
 
 
 // Entry rule entryRuleStringLiteral
-entryRuleStringLiteral 
+entryRuleStringLiteral
 :
 { before(grammarAccess.getStringLiteralRule()); }
 	 ruleStringLiteral
-{ after(grammarAccess.getStringLiteralRule()); } 
-	 EOF 
+{ after(grammarAccess.getStringLiteralRule()); }
+	 EOF
 ;
 
 // Rule StringLiteral
@@ -2290,12 +2290,12 @@
 
 
 // Entry rule entryRuleUPPER
-entryRuleUPPER 
+entryRuleUPPER
 :
 { before(grammarAccess.getUPPERRule()); }
 	 ruleUPPER
-{ after(grammarAccess.getUPPERRule()); } 
-	 EOF 
+{ after(grammarAccess.getUPPERRule()); }
+	 EOF
 ;
 
 // Rule UPPER
@@ -2318,12 +2318,12 @@
 
 
 // Entry rule entryRuleURI
-entryRuleURI 
+entryRuleURI
 :
 { before(grammarAccess.getURIRule()); }
 	 ruleURI
-{ after(grammarAccess.getURIRule()); } 
-	 EOF 
+{ after(grammarAccess.getURIRule()); }
+	 EOF
 ;
 
 // Rule URI
@@ -2355,7 +2355,7 @@
 (
 { before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); }
 
-	'-' 
+	'-'
 
 { after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); }
 )
@@ -2363,7 +2363,7 @@
     |(
 { before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); }
 
-	'not' 
+	'not'
 
 { after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); }
 )
@@ -2381,7 +2381,7 @@
 (
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); }
 )
@@ -2389,7 +2389,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); }
 
-	'/' 
+	'/'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); }
 )
@@ -2397,7 +2397,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); }
 
-	'+' 
+	'+'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); }
 )
@@ -2405,7 +2405,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); }
 
-	'-' 
+	'-'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); }
 )
@@ -2413,7 +2413,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); }
 
-	'>' 
+	'>'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); }
 )
@@ -2421,7 +2421,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); }
 
-	'<' 
+	'<'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); }
 )
@@ -2429,7 +2429,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); }
 
-	'>=' 
+	'>='
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); }
 )
@@ -2437,7 +2437,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); }
 
-	'<=' 
+	'<='
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); }
 )
@@ -2445,7 +2445,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); }
 )
@@ -2453,7 +2453,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); }
 
-	'<>' 
+	'<>'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); }
 )
@@ -2461,7 +2461,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); }
 
-	'and' 
+	'and'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); }
 )
@@ -2469,7 +2469,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); }
 
-	'or' 
+	'or'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); }
 )
@@ -2477,7 +2477,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); }
 
-	'xor' 
+	'xor'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); }
 )
@@ -2485,7 +2485,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); }
 
-	'implies' 
+	'implies'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); }
 )
@@ -2503,7 +2503,7 @@
 (
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); }
 
-	'.' 
+	'.'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); }
 )
@@ -2511,7 +2511,7 @@
     |(
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); }
 
-	'->' 
+	'->'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); }
 )
@@ -2519,7 +2519,7 @@
     |(
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); }
 
-	'?.' 
+	'?.'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); }
 )
@@ -2527,7 +2527,7 @@
     |(
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); }
 
-	'?->' 
+	'?->'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); }
 )
@@ -2585,7 +2585,7 @@
     |(
 { before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); }
 
-	'Map' 
+	'Map'
 
 { after(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); }
 )
@@ -2593,7 +2593,7 @@
     |(
 { before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); }
 
-	'Tuple' 
+	'Tuple'
 
 { after(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); }
 )
@@ -2633,7 +2633,7 @@
 (
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); }
 
-	'Boolean' 
+	'Boolean'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); }
 )
@@ -2641,7 +2641,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); }
 
-	'Integer' 
+	'Integer'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); }
 )
@@ -2649,7 +2649,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); }
 
-	'Real' 
+	'Real'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); }
 )
@@ -2657,7 +2657,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); }
 
-	'String' 
+	'String'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); }
 )
@@ -2665,7 +2665,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); }
 
-	'UnlimitedNatural' 
+	'UnlimitedNatural'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); }
 )
@@ -2673,7 +2673,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); }
 
-	'OclAny' 
+	'OclAny'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); }
 )
@@ -2681,7 +2681,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); }
 
-	'OclInvalid' 
+	'OclInvalid'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); }
 )
@@ -2689,7 +2689,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); }
 
-	'OclVoid' 
+	'OclVoid'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); }
 )
@@ -2707,7 +2707,7 @@
 (
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); }
 
-	'Set' 
+	'Set'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); }
 )
@@ -2715,7 +2715,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); }
 
-	'Bag' 
+	'Bag'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); }
 )
@@ -2723,7 +2723,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); }
 
-	'Sequence' 
+	'Sequence'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); }
 )
@@ -2731,7 +2731,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); }
 
-	'Collection' 
+	'Collection'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); }
 )
@@ -2739,7 +2739,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); }
 
-	'OrderedSet' 
+	'OrderedSet'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); }
 )
@@ -3199,7 +3199,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); }
 
-	'|?' 
+	'|?'
 
 { after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); }
 )
@@ -3223,7 +3223,7 @@
 (
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); }
 )
@@ -3231,7 +3231,7 @@
     |(
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); }
 
-	'+' 
+	'+'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); }
 )
@@ -3239,7 +3239,7 @@
     |(
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); }
 
-	'?' 
+	'?'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); }
 )
@@ -3307,7 +3307,7 @@
     |(
 { before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); }
 )
@@ -3465,7 +3465,7 @@
 (
 { before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -3524,7 +3524,7 @@
 (
 { before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 )
@@ -3622,7 +3622,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -3682,7 +3682,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); }
 )
@@ -3741,7 +3741,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); }
 )
@@ -3843,7 +3843,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -3902,7 +3902,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 )
@@ -4000,7 +4000,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); }
 )
@@ -4092,7 +4092,7 @@
 (
 { before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); }
 )
@@ -4186,7 +4186,7 @@
 (
 { before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -4245,7 +4245,7 @@
 (
 { before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -4345,7 +4345,7 @@
 (
 { before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 )
@@ -4469,7 +4469,7 @@
 (
 { before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); }
 
-	'..' 
+	'..'
 
 { after(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); }
 )
@@ -4561,7 +4561,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -4620,7 +4620,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -4751,7 +4751,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); }
 )
@@ -4814,7 +4814,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); }
 
-	'++' 
+	'++'
 
 { after(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); }
 )
@@ -4906,7 +4906,7 @@
 (
 { before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); }
 )
@@ -5000,7 +5000,7 @@
 (
 { before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); }
 )
@@ -5065,7 +5065,7 @@
 (
 { before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); }
 
-	'Lambda' 
+	'Lambda'
 
 { after(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); }
 )
@@ -5096,7 +5096,7 @@
 (
 { before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -5155,7 +5155,7 @@
 (
 { before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -5223,7 +5223,7 @@
 (
 { before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -5282,7 +5282,7 @@
 (
 { before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -5382,7 +5382,7 @@
 (
 { before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 )
@@ -5474,7 +5474,7 @@
 (
 { before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); }
 
-	'<-' 
+	'<-'
 
 { after(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); }
 )
@@ -5539,7 +5539,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); }
 
-	'Tuple' 
+	'Tuple'
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); }
 )
@@ -5570,7 +5570,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -5658,7 +5658,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); }
 )
@@ -5699,7 +5699,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); }
 )
@@ -5820,7 +5820,7 @@
 (
 { before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); }
 )
@@ -5887,7 +5887,7 @@
 (
 { before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); }
 )
@@ -5980,7 +5980,7 @@
 (
 { before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); }
 )
@@ -6045,7 +6045,7 @@
 (
 { before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); }
 
-	'invalid' 
+	'invalid'
 
 { after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); }
 )
@@ -6110,7 +6110,7 @@
 (
 { before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); }
 
-	'null' 
+	'null'
 
 { after(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); }
 )
@@ -6328,7 +6328,7 @@
 (
 { before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); }
 )
@@ -6387,7 +6387,7 @@
 (
 { before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); }
 )
@@ -7010,7 +7010,7 @@
 (
 { before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); }
 
-	'pre' 
+	'pre'
 
 { after(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); }
 )
@@ -7076,7 +7076,7 @@
 (
 { before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -7135,7 +7135,7 @@
 (
 { before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -7235,7 +7235,7 @@
 (
 { before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); }
 )
@@ -7329,7 +7329,7 @@
 (
 { before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); }
 )
@@ -7388,7 +7388,7 @@
 (
 { before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); }
 )
@@ -7672,7 +7672,7 @@
 (
 { before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); }
 )
@@ -7760,7 +7760,7 @@
 (
 { before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); }
 )
@@ -7799,7 +7799,7 @@
 (
 { before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); }
 )
@@ -7923,7 +7923,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); }
 )
@@ -8017,7 +8017,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); }
 )
@@ -8080,7 +8080,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); }
 
-	'in' 
+	'in'
 
 { after(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); }
 )
@@ -8143,7 +8143,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); }
 )
@@ -8298,7 +8298,7 @@
 (
 { before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); }
 )
@@ -8392,7 +8392,7 @@
 (
 { before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 )
@@ -8547,7 +8547,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); }
 )
@@ -8641,7 +8641,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); }
 )
@@ -8704,7 +8704,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); }
 
-	'in' 
+	'in'
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); }
 )
@@ -8859,7 +8859,7 @@
 (
 { before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); }
 )
@@ -8953,7 +8953,7 @@
 (
 { before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 )
@@ -9016,7 +9016,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); }
 
-	'if' 
+	'if'
 
 { after(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); }
 )
@@ -9076,7 +9076,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); }
 
-	'then' 
+	'then'
 
 { after(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); }
 )
@@ -9165,7 +9165,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); }
 
-	'else' 
+	'else'
 
 { after(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); }
 )
@@ -9224,7 +9224,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); }
 
-	'endif' 
+	'endif'
 
 { after(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); }
 )
@@ -9271,7 +9271,7 @@
 (
 { before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); }
 
-	'elseif' 
+	'elseif'
 
 { after(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); }
 )
@@ -9331,7 +9331,7 @@
 (
 { before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); }
 
-	'then' 
+	'then'
 
 { after(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); }
 )
@@ -9398,7 +9398,7 @@
 (
 { before(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); }
 
-	'let' 
+	'let'
 
 { after(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); }
 )
@@ -9487,7 +9487,7 @@
 (
 { before(grammarAccess.getLetExpCSAccess().getInKeyword_3()); }
 
-	'in' 
+	'in'
 
 { after(grammarAccess.getLetExpCSAccess().getInKeyword_3()); }
 )
@@ -9556,7 +9556,7 @@
 (
 { before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); }
 )
@@ -9706,7 +9706,7 @@
 (
 { before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); }
 )
@@ -9775,7 +9775,7 @@
 (
 { before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); }
 )
@@ -9838,7 +9838,7 @@
 (
 { before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); }
 )
@@ -9897,7 +9897,7 @@
 (
 { before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); }
 )
@@ -9964,7 +9964,7 @@
 (
 { before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); }
 
-	'self' 
+	'self'
 
 { after(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); }
 )
@@ -10060,7 +10060,7 @@
 (
 { before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); }
 
-	'..' 
+	'..'
 
 { after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); }
 )
@@ -10123,7 +10123,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); }
 )
@@ -10211,7 +10211,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); }
 )
@@ -10311,7 +10311,7 @@
 (
 { before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); }
 
-	'::' 
+	'::'
 
 { after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); }
 )
@@ -10466,7 +10466,7 @@
 (
 { before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); }
 )
@@ -10592,7 +10592,7 @@
 (
 { before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); }
 
-	'extends' 
+	'extends'
 
 { after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); }
 )
@@ -10686,7 +10686,7 @@
 (
 { before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); }
 
-	'&&' 
+	'&&'
 
 { after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); }
 )
@@ -10810,7 +10810,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -10869,7 +10869,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2()); }
 )
@@ -10937,7 +10937,7 @@
 (
 { before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); }
 
-	'?' 
+	'?'
 
 { after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); }
 )
@@ -11002,7 +11002,7 @@
 (
 { before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); }
 
-	'extends' 
+	'extends'
 
 { after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); }
 )
@@ -11156,7 +11156,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); }
 
-	'Map' 
+	'Map'
 
 { after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); }
 )
@@ -11209,7 +11209,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); }
 
-	'Tuple' 
+	'Tuple'
 
 { after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); }
 )
@@ -11702,7 +11702,7 @@
 (
 { before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); }
 
-	'true' 
+	'true'
 
 { after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); }
 )
@@ -11725,7 +11725,7 @@
 (
 { before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); }
 
-	'false' 
+	'false'
 
 { after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); }
 )
@@ -11988,7 +11988,7 @@
 (
 { before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); }
 
-	'@' 
+	'@'
 
 { after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); }
 )
@@ -12251,7 +12251,7 @@
 (
 { before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); }
 
-	'|' 
+	'|'
 
 { after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); }
 )
@@ -12319,7 +12319,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); }
 )
@@ -12402,7 +12402,7 @@
 (
 { before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); }
 )
@@ -12711,7 +12711,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); }
 
-	'|1' 
+	'|1'
 
 { after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); }
 )
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 0fdd7fc..6187256 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
@@ -1,6 +1,6 @@
 package org.eclipse.ocl.xtext.essentialocl.ui.contentassist.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
 
@@ -97,7 +97,7 @@
     // delegates
     // delegators
 
-    public InternalEssentialOCLLexer() {;} 
+    public InternalEssentialOCLLexer() {;}
     public InternalEssentialOCLLexer(CharStream input) {
         this(input, new RecognizerSharedState());
     }
@@ -115,7 +115,7 @@
             // InternalEssentialOCL.g:11:7: ( '-' )
             // InternalEssentialOCL.g:11:9: '-'
             {
-            match('-'); 
+            match('-');
 
             }
 
@@ -135,7 +135,7 @@
             // InternalEssentialOCL.g:12:7: ( 'not' )
             // InternalEssentialOCL.g:12:9: 'not'
             {
-            match("not"); 
+            match("not");
 
 
             }
@@ -156,7 +156,7 @@
             // InternalEssentialOCL.g:13:7: ( '*' )
             // InternalEssentialOCL.g:13:9: '*'
             {
-            match('*'); 
+            match('*');
 
             }
 
@@ -176,7 +176,7 @@
             // InternalEssentialOCL.g:14:7: ( '/' )
             // InternalEssentialOCL.g:14:9: '/'
             {
-            match('/'); 
+            match('/');
 
             }
 
@@ -196,7 +196,7 @@
             // InternalEssentialOCL.g:15:7: ( '+' )
             // InternalEssentialOCL.g:15:9: '+'
             {
-            match('+'); 
+            match('+');
 
             }
 
@@ -216,7 +216,7 @@
             // InternalEssentialOCL.g:16:7: ( '>' )
             // InternalEssentialOCL.g:16:9: '>'
             {
-            match('>'); 
+            match('>');
 
             }
 
@@ -236,7 +236,7 @@
             // InternalEssentialOCL.g:17:7: ( '<' )
             // InternalEssentialOCL.g:17:9: '<'
             {
-            match('<'); 
+            match('<');
 
             }
 
@@ -256,7 +256,7 @@
             // InternalEssentialOCL.g:18:7: ( '>=' )
             // InternalEssentialOCL.g:18:9: '>='
             {
-            match(">="); 
+            match(">=");
 
 
             }
@@ -277,7 +277,7 @@
             // InternalEssentialOCL.g:19:7: ( '<=' )
             // InternalEssentialOCL.g:19:9: '<='
             {
-            match("<="); 
+            match("<=");
 
 
             }
@@ -298,7 +298,7 @@
             // InternalEssentialOCL.g:20:7: ( '=' )
             // InternalEssentialOCL.g:20:9: '='
             {
-            match('='); 
+            match('=');
 
             }
 
@@ -318,7 +318,7 @@
             // InternalEssentialOCL.g:21:7: ( '<>' )
             // InternalEssentialOCL.g:21:9: '<>'
             {
-            match("<>"); 
+            match("<>");
 
 
             }
@@ -339,7 +339,7 @@
             // InternalEssentialOCL.g:22:7: ( 'and' )
             // InternalEssentialOCL.g:22:9: 'and'
             {
-            match("and"); 
+            match("and");
 
 
             }
@@ -360,7 +360,7 @@
             // InternalEssentialOCL.g:23:7: ( 'or' )
             // InternalEssentialOCL.g:23:9: 'or'
             {
-            match("or"); 
+            match("or");
 
 
             }
@@ -381,7 +381,7 @@
             // InternalEssentialOCL.g:24:7: ( 'xor' )
             // InternalEssentialOCL.g:24:9: 'xor'
             {
-            match("xor"); 
+            match("xor");
 
 
             }
@@ -402,7 +402,7 @@
             // InternalEssentialOCL.g:25:7: ( 'implies' )
             // InternalEssentialOCL.g:25:9: 'implies'
             {
-            match("implies"); 
+            match("implies");
 
 
             }
@@ -423,7 +423,7 @@
             // InternalEssentialOCL.g:26:7: ( '.' )
             // InternalEssentialOCL.g:26:9: '.'
             {
-            match('.'); 
+            match('.');
 
             }
 
@@ -443,7 +443,7 @@
             // InternalEssentialOCL.g:27:7: ( '->' )
             // InternalEssentialOCL.g:27:9: '->'
             {
-            match("->"); 
+            match("->");
 
 
             }
@@ -464,7 +464,7 @@
             // InternalEssentialOCL.g:28:7: ( '?.' )
             // InternalEssentialOCL.g:28:9: '?.'
             {
-            match("?."); 
+            match("?.");
 
 
             }
@@ -485,7 +485,7 @@
             // InternalEssentialOCL.g:29:7: ( '?->' )
             // InternalEssentialOCL.g:29:9: '?->'
             {
-            match("?->"); 
+            match("?->");
 
 
             }
@@ -506,7 +506,7 @@
             // InternalEssentialOCL.g:30:7: ( 'Map' )
             // InternalEssentialOCL.g:30:9: 'Map'
             {
-            match("Map"); 
+            match("Map");
 
 
             }
@@ -527,7 +527,7 @@
             // InternalEssentialOCL.g:31:7: ( 'Tuple' )
             // InternalEssentialOCL.g:31:9: 'Tuple'
             {
-            match("Tuple"); 
+            match("Tuple");
 
 
             }
@@ -548,7 +548,7 @@
             // InternalEssentialOCL.g:32:7: ( 'Boolean' )
             // InternalEssentialOCL.g:32:9: 'Boolean'
             {
-            match("Boolean"); 
+            match("Boolean");
 
 
             }
@@ -569,7 +569,7 @@
             // InternalEssentialOCL.g:33:7: ( 'Integer' )
             // InternalEssentialOCL.g:33:9: 'Integer'
             {
-            match("Integer"); 
+            match("Integer");
 
 
             }
@@ -590,7 +590,7 @@
             // InternalEssentialOCL.g:34:7: ( 'Real' )
             // InternalEssentialOCL.g:34:9: 'Real'
             {
-            match("Real"); 
+            match("Real");
 
 
             }
@@ -611,7 +611,7 @@
             // InternalEssentialOCL.g:35:7: ( 'String' )
             // InternalEssentialOCL.g:35:9: 'String'
             {
-            match("String"); 
+            match("String");
 
 
             }
@@ -632,7 +632,7 @@
             // InternalEssentialOCL.g:36:7: ( 'UnlimitedNatural' )
             // InternalEssentialOCL.g:36:9: 'UnlimitedNatural'
             {
-            match("UnlimitedNatural"); 
+            match("UnlimitedNatural");
 
 
             }
@@ -653,7 +653,7 @@
             // InternalEssentialOCL.g:37:7: ( 'OclAny' )
             // InternalEssentialOCL.g:37:9: 'OclAny'
             {
-            match("OclAny"); 
+            match("OclAny");
 
 
             }
@@ -674,7 +674,7 @@
             // InternalEssentialOCL.g:38:7: ( 'OclInvalid' )
             // InternalEssentialOCL.g:38:9: 'OclInvalid'
             {
-            match("OclInvalid"); 
+            match("OclInvalid");
 
 
             }
@@ -695,7 +695,7 @@
             // InternalEssentialOCL.g:39:7: ( 'OclVoid' )
             // InternalEssentialOCL.g:39:9: 'OclVoid'
             {
-            match("OclVoid"); 
+            match("OclVoid");
 
 
             }
@@ -716,7 +716,7 @@
             // InternalEssentialOCL.g:40:7: ( 'Set' )
             // InternalEssentialOCL.g:40:9: 'Set'
             {
-            match("Set"); 
+            match("Set");
 
 
             }
@@ -737,7 +737,7 @@
             // InternalEssentialOCL.g:41:7: ( 'Bag' )
             // InternalEssentialOCL.g:41:9: 'Bag'
             {
-            match("Bag"); 
+            match("Bag");
 
 
             }
@@ -758,7 +758,7 @@
             // InternalEssentialOCL.g:42:7: ( 'Sequence' )
             // InternalEssentialOCL.g:42:9: 'Sequence'
             {
-            match("Sequence"); 
+            match("Sequence");
 
 
             }
@@ -779,7 +779,7 @@
             // InternalEssentialOCL.g:43:7: ( 'Collection' )
             // InternalEssentialOCL.g:43:9: 'Collection'
             {
-            match("Collection"); 
+            match("Collection");
 
 
             }
@@ -800,7 +800,7 @@
             // InternalEssentialOCL.g:44:7: ( 'OrderedSet' )
             // InternalEssentialOCL.g:44:9: 'OrderedSet'
             {
-            match("OrderedSet"); 
+            match("OrderedSet");
 
 
             }
@@ -821,7 +821,7 @@
             // InternalEssentialOCL.g:45:7: ( '|?' )
             // InternalEssentialOCL.g:45:9: '|?'
             {
-            match("|?"); 
+            match("|?");
 
 
             }
@@ -842,7 +842,7 @@
             // InternalEssentialOCL.g:46:7: ( '?' )
             // InternalEssentialOCL.g:46:9: '?'
             {
-            match('?'); 
+            match('?');
 
             }
 
@@ -862,7 +862,7 @@
             // InternalEssentialOCL.g:47:7: ( '(' )
             // InternalEssentialOCL.g:47:9: '('
             {
-            match('('); 
+            match('(');
 
             }
 
@@ -882,7 +882,7 @@
             // InternalEssentialOCL.g:48:7: ( ')' )
             // InternalEssentialOCL.g:48:9: ')'
             {
-            match(')'); 
+            match(')');
 
             }
 
@@ -902,7 +902,7 @@
             // InternalEssentialOCL.g:49:7: ( ',' )
             // InternalEssentialOCL.g:49:9: ','
             {
-            match(','); 
+            match(',');
 
             }
 
@@ -922,7 +922,7 @@
             // InternalEssentialOCL.g:50:7: ( ':' )
             // InternalEssentialOCL.g:50:9: ':'
             {
-            match(':'); 
+            match(':');
 
             }
 
@@ -942,7 +942,7 @@
             // InternalEssentialOCL.g:51:7: ( '{' )
             // InternalEssentialOCL.g:51:9: '{'
             {
-            match('{'); 
+            match('{');
 
             }
 
@@ -962,7 +962,7 @@
             // InternalEssentialOCL.g:52:7: ( '}' )
             // InternalEssentialOCL.g:52:9: '}'
             {
-            match('}'); 
+            match('}');
 
             }
 
@@ -982,7 +982,7 @@
             // InternalEssentialOCL.g:53:7: ( '..' )
             // InternalEssentialOCL.g:53:9: '..'
             {
-            match(".."); 
+            match("..");
 
 
             }
@@ -1003,7 +1003,7 @@
             // InternalEssentialOCL.g:54:7: ( '++' )
             // InternalEssentialOCL.g:54:9: '++'
             {
-            match("++"); 
+            match("++");
 
 
             }
@@ -1024,7 +1024,7 @@
             // InternalEssentialOCL.g:55:7: ( 'Lambda' )
             // InternalEssentialOCL.g:55:9: 'Lambda'
             {
-            match("Lambda"); 
+            match("Lambda");
 
 
             }
@@ -1045,7 +1045,7 @@
             // InternalEssentialOCL.g:56:7: ( '<-' )
             // InternalEssentialOCL.g:56:9: '<-'
             {
-            match("<-"); 
+            match("<-");
 
 
             }
@@ -1066,7 +1066,7 @@
             // InternalEssentialOCL.g:57:7: ( 'invalid' )
             // InternalEssentialOCL.g:57:9: 'invalid'
             {
-            match("invalid"); 
+            match("invalid");
 
 
             }
@@ -1087,7 +1087,7 @@
             // InternalEssentialOCL.g:58:7: ( 'null' )
             // InternalEssentialOCL.g:58:9: 'null'
             {
-            match("null"); 
+            match("null");
 
 
             }
@@ -1108,7 +1108,7 @@
             // InternalEssentialOCL.g:59:7: ( 'pre' )
             // InternalEssentialOCL.g:59:9: 'pre'
             {
-            match("pre"); 
+            match("pre");
 
 
             }
@@ -1129,7 +1129,7 @@
             // InternalEssentialOCL.g:60:7: ( '[' )
             // InternalEssentialOCL.g:60:9: '['
             {
-            match('['); 
+            match('[');
 
             }
 
@@ -1149,7 +1149,7 @@
             // InternalEssentialOCL.g:61:7: ( ']' )
             // InternalEssentialOCL.g:61:9: ']'
             {
-            match(']'); 
+            match(']');
 
             }
 
@@ -1169,7 +1169,7 @@
             // InternalEssentialOCL.g:62:7: ( 'in' )
             // InternalEssentialOCL.g:62:9: 'in'
             {
-            match("in"); 
+            match("in");
 
 
             }
@@ -1190,7 +1190,7 @@
             // InternalEssentialOCL.g:63:7: ( 'if' )
             // InternalEssentialOCL.g:63:9: 'if'
             {
-            match("if"); 
+            match("if");
 
 
             }
@@ -1211,7 +1211,7 @@
             // InternalEssentialOCL.g:64:7: ( 'then' )
             // InternalEssentialOCL.g:64:9: 'then'
             {
-            match("then"); 
+            match("then");
 
 
             }
@@ -1232,7 +1232,7 @@
             // InternalEssentialOCL.g:65:7: ( 'else' )
             // InternalEssentialOCL.g:65:9: 'else'
             {
-            match("else"); 
+            match("else");
 
 
             }
@@ -1253,7 +1253,7 @@
             // InternalEssentialOCL.g:66:7: ( 'endif' )
             // InternalEssentialOCL.g:66:9: 'endif'
             {
-            match("endif"); 
+            match("endif");
 
 
             }
@@ -1274,7 +1274,7 @@
             // InternalEssentialOCL.g:67:7: ( 'elseif' )
             // InternalEssentialOCL.g:67:9: 'elseif'
             {
-            match("elseif"); 
+            match("elseif");
 
 
             }
@@ -1295,7 +1295,7 @@
             // InternalEssentialOCL.g:68:7: ( 'let' )
             // InternalEssentialOCL.g:68:9: 'let'
             {
-            match("let"); 
+            match("let");
 
 
             }
@@ -1316,7 +1316,7 @@
             // InternalEssentialOCL.g:69:7: ( 'self' )
             // InternalEssentialOCL.g:69:9: 'self'
             {
-            match("self"); 
+            match("self");
 
 
             }
@@ -1337,7 +1337,7 @@
             // InternalEssentialOCL.g:70:7: ( '::' )
             // InternalEssentialOCL.g:70:9: '::'
             {
-            match("::"); 
+            match("::");
 
 
             }
@@ -1358,7 +1358,7 @@
             // InternalEssentialOCL.g:71:7: ( 'extends' )
             // InternalEssentialOCL.g:71:9: 'extends'
             {
-            match("extends"); 
+            match("extends");
 
 
             }
@@ -1379,7 +1379,7 @@
             // InternalEssentialOCL.g:72:7: ( '&&' )
             // InternalEssentialOCL.g:72:9: '&&'
             {
-            match("&&"); 
+            match("&&");
 
 
             }
@@ -1400,7 +1400,7 @@
             // InternalEssentialOCL.g:73:7: ( 'true' )
             // InternalEssentialOCL.g:73:9: 'true'
             {
-            match("true"); 
+            match("true");
 
 
             }
@@ -1421,7 +1421,7 @@
             // InternalEssentialOCL.g:74:7: ( 'false' )
             // InternalEssentialOCL.g:74:9: 'false'
             {
-            match("false"); 
+            match("false");
 
 
             }
@@ -1442,7 +1442,7 @@
             // InternalEssentialOCL.g:75:7: ( '@' )
             // InternalEssentialOCL.g:75:9: '@'
             {
-            match('@'); 
+            match('@');
 
             }
 
@@ -1462,7 +1462,7 @@
             // InternalEssentialOCL.g:76:7: ( '|' )
             // InternalEssentialOCL.g:76:9: '|'
             {
-            match('|'); 
+            match('|');
 
             }
 
@@ -1482,7 +1482,7 @@
             // InternalEssentialOCL.g:77:7: ( ';' )
             // InternalEssentialOCL.g:77:9: ';'
             {
-            match(';'); 
+            match(';');
 
             }
 
@@ -1502,7 +1502,7 @@
             // InternalEssentialOCL.g:78:7: ( '|1' )
             // InternalEssentialOCL.g:78:9: '|1'
             {
-            match("|1"); 
+            match("|1");
 
 
             }
@@ -1521,7 +1521,7 @@
             // InternalEssentialOCL.g:12964:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
             // InternalEssentialOCL.g:12964:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
-            match('\\'); 
+            match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
                 input.consume();
 
@@ -1572,7 +1572,7 @@
             // InternalEssentialOCL.g:12968:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
             // InternalEssentialOCL.g:12968:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
-            match('\"'); 
+            match('\"');
             // InternalEssentialOCL.g:12968:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
@@ -1591,7 +1591,7 @@
             	case 1 :
             	    // InternalEssentialOCL.g:12968:34: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -1616,7 +1616,7 @@
                 }
             } while (true);
 
-            match('\"'); 
+            match('\"');
 
             }
 
@@ -1636,7 +1636,7 @@
             // InternalEssentialOCL.g:12970:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             // InternalEssentialOCL.g:12970:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
-            match('\''); 
+            match('\'');
             // InternalEssentialOCL.g:12970:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
@@ -1655,7 +1655,7 @@
             	case 1 :
             	    // InternalEssentialOCL.g:12970:35: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -1680,7 +1680,7 @@
                 }
             } while (true);
 
-            match('\''); 
+            match('\'');
 
             }
 
@@ -1700,7 +1700,7 @@
             // InternalEssentialOCL.g:12972:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
             // InternalEssentialOCL.g:12972:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
-            match("/'"); 
+            match("/'");
 
             // InternalEssentialOCL.g:12972:38: ( options {greedy=false; } : . )*
             loop3:
@@ -1729,7 +1729,7 @@
             	case 1 :
             	    // InternalEssentialOCL.g:12972:66: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -1739,7 +1739,7 @@
                 }
             } while (true);
 
-            match("'/"); 
+            match("'/");
 
 
             }
@@ -1760,7 +1760,7 @@
             // InternalEssentialOCL.g:12974:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
             // InternalEssentialOCL.g:12974:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
-            mRULE_LETTER_CHARACTER(); 
+            mRULE_LETTER_CHARACTER();
             // InternalEssentialOCL.g:12974:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
@@ -1813,8 +1813,8 @@
             // InternalEssentialOCL.g:12976:17: ( '_' RULE_SINGLE_QUOTED_STRING )
             // InternalEssentialOCL.g:12976:19: '_' RULE_SINGLE_QUOTED_STRING
             {
-            match('_'); 
-            mRULE_SINGLE_QUOTED_STRING(); 
+            match('_');
+            mRULE_SINGLE_QUOTED_STRING();
 
             }
 
@@ -1850,7 +1850,7 @@
             	case 1 :
             	    // InternalEssentialOCL.g:12978:13: '0' .. '9'
             	    {
-            	    matchRange('0','9'); 
+            	    matchRange('0','9');
 
             	    }
             	    break;
@@ -1883,7 +1883,7 @@
             // InternalEssentialOCL.g:12980:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
             // InternalEssentialOCL.g:12980:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
-            match("/*"); 
+            match("/*");
 
             // InternalEssentialOCL.g:12980:24: ( options {greedy=false; } : . )*
             loop6:
@@ -1912,7 +1912,7 @@
             	case 1 :
             	    // InternalEssentialOCL.g:12980:52: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -1922,7 +1922,7 @@
                 }
             } while (true);
 
-            match("*/"); 
+            match("*/");
 
 
             }
@@ -1943,7 +1943,7 @@
             // InternalEssentialOCL.g:12982:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
             // InternalEssentialOCL.g:12982:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
-            match("--"); 
+            match("--");
 
             // InternalEssentialOCL.g:12982:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
@@ -2000,14 +2000,14 @@
                         case 1 :
                             // InternalEssentialOCL.g:12982:41: '\\r'
                             {
-                            match('\r'); 
+                            match('\r');
 
                             }
                             break;
 
                     }
 
-                    match('\n'); 
+                    match('\n');
 
                     }
                     break;
@@ -2090,7 +2090,7 @@
             // InternalEssentialOCL.g:12986:16: ( . )
             // InternalEssentialOCL.g:12986:18: .
             {
-            matchAny(); 
+            matchAny();
 
             }
 
@@ -2110,546 +2110,546 @@
             case 1 :
                 // InternalEssentialOCL.g:1:10: T__16
                 {
-                mT__16(); 
+                mT__16();
 
                 }
                 break;
             case 2 :
                 // InternalEssentialOCL.g:1:16: T__17
                 {
-                mT__17(); 
+                mT__17();
 
                 }
                 break;
             case 3 :
                 // InternalEssentialOCL.g:1:22: T__18
                 {
-                mT__18(); 
+                mT__18();
 
                 }
                 break;
             case 4 :
                 // InternalEssentialOCL.g:1:28: T__19
                 {
-                mT__19(); 
+                mT__19();
 
                 }
                 break;
             case 5 :
                 // InternalEssentialOCL.g:1:34: T__20
                 {
-                mT__20(); 
+                mT__20();
 
                 }
                 break;
             case 6 :
                 // InternalEssentialOCL.g:1:40: T__21
                 {
-                mT__21(); 
+                mT__21();
 
                 }
                 break;
             case 7 :
                 // InternalEssentialOCL.g:1:46: T__22
                 {
-                mT__22(); 
+                mT__22();
 
                 }
                 break;
             case 8 :
                 // InternalEssentialOCL.g:1:52: T__23
                 {
-                mT__23(); 
+                mT__23();
 
                 }
                 break;
             case 9 :
                 // InternalEssentialOCL.g:1:58: T__24
                 {
-                mT__24(); 
+                mT__24();
 
                 }
                 break;
             case 10 :
                 // InternalEssentialOCL.g:1:64: T__25
                 {
-                mT__25(); 
+                mT__25();
 
                 }
                 break;
             case 11 :
                 // InternalEssentialOCL.g:1:70: T__26
                 {
-                mT__26(); 
+                mT__26();
 
                 }
                 break;
             case 12 :
                 // InternalEssentialOCL.g:1:76: T__27
                 {
-                mT__27(); 
+                mT__27();
 
                 }
                 break;
             case 13 :
                 // InternalEssentialOCL.g:1:82: T__28
                 {
-                mT__28(); 
+                mT__28();
 
                 }
                 break;
             case 14 :
                 // InternalEssentialOCL.g:1:88: T__29
                 {
-                mT__29(); 
+                mT__29();
 
                 }
                 break;
             case 15 :
                 // InternalEssentialOCL.g:1:94: T__30
                 {
-                mT__30(); 
+                mT__30();
 
                 }
                 break;
             case 16 :
                 // InternalEssentialOCL.g:1:100: T__31
                 {
-                mT__31(); 
+                mT__31();
 
                 }
                 break;
             case 17 :
                 // InternalEssentialOCL.g:1:106: T__32
                 {
-                mT__32(); 
+                mT__32();
 
                 }
                 break;
             case 18 :
                 // InternalEssentialOCL.g:1:112: T__33
                 {
-                mT__33(); 
+                mT__33();
 
                 }
                 break;
             case 19 :
                 // InternalEssentialOCL.g:1:118: T__34
                 {
-                mT__34(); 
+                mT__34();
 
                 }
                 break;
             case 20 :
                 // InternalEssentialOCL.g:1:124: T__35
                 {
-                mT__35(); 
+                mT__35();
 
                 }
                 break;
             case 21 :
                 // InternalEssentialOCL.g:1:130: T__36
                 {
-                mT__36(); 
+                mT__36();
 
                 }
                 break;
             case 22 :
                 // InternalEssentialOCL.g:1:136: T__37
                 {
-                mT__37(); 
+                mT__37();
 
                 }
                 break;
             case 23 :
                 // InternalEssentialOCL.g:1:142: T__38
                 {
-                mT__38(); 
+                mT__38();
 
                 }
                 break;
             case 24 :
                 // InternalEssentialOCL.g:1:148: T__39
                 {
-                mT__39(); 
+                mT__39();
 
                 }
                 break;
             case 25 :
                 // InternalEssentialOCL.g:1:154: T__40
                 {
-                mT__40(); 
+                mT__40();
 
                 }
                 break;
             case 26 :
                 // InternalEssentialOCL.g:1:160: T__41
                 {
-                mT__41(); 
+                mT__41();
 
                 }
                 break;
             case 27 :
                 // InternalEssentialOCL.g:1:166: T__42
                 {
-                mT__42(); 
+                mT__42();
 
                 }
                 break;
             case 28 :
                 // InternalEssentialOCL.g:1:172: T__43
                 {
-                mT__43(); 
+                mT__43();
 
                 }
                 break;
             case 29 :
                 // InternalEssentialOCL.g:1:178: T__44
                 {
-                mT__44(); 
+                mT__44();
 
                 }
                 break;
             case 30 :
                 // InternalEssentialOCL.g:1:184: T__45
                 {
-                mT__45(); 
+                mT__45();
 
                 }
                 break;
             case 31 :
                 // InternalEssentialOCL.g:1:190: T__46
                 {
-                mT__46(); 
+                mT__46();
 
                 }
                 break;
             case 32 :
                 // InternalEssentialOCL.g:1:196: T__47
                 {
-                mT__47(); 
+                mT__47();
 
                 }
                 break;
             case 33 :
                 // InternalEssentialOCL.g:1:202: T__48
                 {
-                mT__48(); 
+                mT__48();
 
                 }
                 break;
             case 34 :
                 // InternalEssentialOCL.g:1:208: T__49
                 {
-                mT__49(); 
+                mT__49();
 
                 }
                 break;
             case 35 :
                 // InternalEssentialOCL.g:1:214: T__50
                 {
-                mT__50(); 
+                mT__50();
 
                 }
                 break;
             case 36 :
                 // InternalEssentialOCL.g:1:220: T__51
                 {
-                mT__51(); 
+                mT__51();
 
                 }
                 break;
             case 37 :
                 // InternalEssentialOCL.g:1:226: T__52
                 {
-                mT__52(); 
+                mT__52();
 
                 }
                 break;
             case 38 :
                 // InternalEssentialOCL.g:1:232: T__53
                 {
-                mT__53(); 
+                mT__53();
 
                 }
                 break;
             case 39 :
                 // InternalEssentialOCL.g:1:238: T__54
                 {
-                mT__54(); 
+                mT__54();
 
                 }
                 break;
             case 40 :
                 // InternalEssentialOCL.g:1:244: T__55
                 {
-                mT__55(); 
+                mT__55();
 
                 }
                 break;
             case 41 :
                 // InternalEssentialOCL.g:1:250: T__56
                 {
-                mT__56(); 
+                mT__56();
 
                 }
                 break;
             case 42 :
                 // InternalEssentialOCL.g:1:256: T__57
                 {
-                mT__57(); 
+                mT__57();
 
                 }
                 break;
             case 43 :
                 // InternalEssentialOCL.g:1:262: T__58
                 {
-                mT__58(); 
+                mT__58();
 
                 }
                 break;
             case 44 :
                 // InternalEssentialOCL.g:1:268: T__59
                 {
-                mT__59(); 
+                mT__59();
 
                 }
                 break;
             case 45 :
                 // InternalEssentialOCL.g:1:274: T__60
                 {
-                mT__60(); 
+                mT__60();
 
                 }
                 break;
             case 46 :
                 // InternalEssentialOCL.g:1:280: T__61
                 {
-                mT__61(); 
+                mT__61();
 
                 }
                 break;
             case 47 :
                 // InternalEssentialOCL.g:1:286: T__62
                 {
-                mT__62(); 
+                mT__62();
 
                 }
                 break;
             case 48 :
                 // InternalEssentialOCL.g:1:292: T__63
                 {
-                mT__63(); 
+                mT__63();
 
                 }
                 break;
             case 49 :
                 // InternalEssentialOCL.g:1:298: T__64
                 {
-                mT__64(); 
+                mT__64();
 
                 }
                 break;
             case 50 :
                 // InternalEssentialOCL.g:1:304: T__65
                 {
-                mT__65(); 
+                mT__65();
 
                 }
                 break;
             case 51 :
                 // InternalEssentialOCL.g:1:310: T__66
                 {
-                mT__66(); 
+                mT__66();
 
                 }
                 break;
             case 52 :
                 // InternalEssentialOCL.g:1:316: T__67
                 {
-                mT__67(); 
+                mT__67();
 
                 }
                 break;
             case 53 :
                 // InternalEssentialOCL.g:1:322: T__68
                 {
-                mT__68(); 
+                mT__68();
 
                 }
                 break;
             case 54 :
                 // InternalEssentialOCL.g:1:328: T__69
                 {
-                mT__69(); 
+                mT__69();
 
                 }
                 break;
             case 55 :
                 // InternalEssentialOCL.g:1:334: T__70
                 {
-                mT__70(); 
+                mT__70();
 
                 }
                 break;
             case 56 :
                 // InternalEssentialOCL.g:1:340: T__71
                 {
-                mT__71(); 
+                mT__71();
 
                 }
                 break;
             case 57 :
                 // InternalEssentialOCL.g:1:346: T__72
                 {
-                mT__72(); 
+                mT__72();
 
                 }
                 break;
             case 58 :
                 // InternalEssentialOCL.g:1:352: T__73
                 {
-                mT__73(); 
+                mT__73();
 
                 }
                 break;
             case 59 :
                 // InternalEssentialOCL.g:1:358: T__74
                 {
-                mT__74(); 
+                mT__74();
 
                 }
                 break;
             case 60 :
                 // InternalEssentialOCL.g:1:364: T__75
                 {
-                mT__75(); 
+                mT__75();
 
                 }
                 break;
             case 61 :
                 // InternalEssentialOCL.g:1:370: T__76
                 {
-                mT__76(); 
+                mT__76();
 
                 }
                 break;
             case 62 :
                 // InternalEssentialOCL.g:1:376: T__77
                 {
-                mT__77(); 
+                mT__77();
 
                 }
                 break;
             case 63 :
                 // InternalEssentialOCL.g:1:382: T__78
                 {
-                mT__78(); 
+                mT__78();
 
                 }
                 break;
             case 64 :
                 // InternalEssentialOCL.g:1:388: T__79
                 {
-                mT__79(); 
+                mT__79();
 
                 }
                 break;
             case 65 :
                 // InternalEssentialOCL.g:1:394: T__80
                 {
-                mT__80(); 
+                mT__80();
 
                 }
                 break;
             case 66 :
                 // InternalEssentialOCL.g:1:400: T__81
                 {
-                mT__81(); 
+                mT__81();
 
                 }
                 break;
             case 67 :
                 // InternalEssentialOCL.g:1:406: T__82
                 {
-                mT__82(); 
+                mT__82();
 
                 }
                 break;
             case 68 :
                 // InternalEssentialOCL.g:1:412: T__83
                 {
-                mT__83(); 
+                mT__83();
 
                 }
                 break;
             case 69 :
                 // InternalEssentialOCL.g:1:418: RULE_DOUBLE_QUOTED_STRING
                 {
-                mRULE_DOUBLE_QUOTED_STRING(); 
+                mRULE_DOUBLE_QUOTED_STRING();
 
                 }
                 break;
             case 70 :
                 // InternalEssentialOCL.g:1:444: RULE_SINGLE_QUOTED_STRING
                 {
-                mRULE_SINGLE_QUOTED_STRING(); 
+                mRULE_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 71 :
                 // InternalEssentialOCL.g:1:470: RULE_ML_SINGLE_QUOTED_STRING
                 {
-                mRULE_ML_SINGLE_QUOTED_STRING(); 
+                mRULE_ML_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 72 :
                 // InternalEssentialOCL.g:1:499: RULE_SIMPLE_ID
                 {
-                mRULE_SIMPLE_ID(); 
+                mRULE_SIMPLE_ID();
 
                 }
                 break;
             case 73 :
                 // InternalEssentialOCL.g:1:514: RULE_ESCAPED_ID
                 {
-                mRULE_ESCAPED_ID(); 
+                mRULE_ESCAPED_ID();
 
                 }
                 break;
             case 74 :
                 // InternalEssentialOCL.g:1:530: RULE_INT
                 {
-                mRULE_INT(); 
+                mRULE_INT();
 
                 }
                 break;
             case 75 :
                 // InternalEssentialOCL.g:1:539: RULE_ML_COMMENT
                 {
-                mRULE_ML_COMMENT(); 
+                mRULE_ML_COMMENT();
 
                 }
                 break;
             case 76 :
                 // InternalEssentialOCL.g:1:555: RULE_SL_COMMENT
                 {
-                mRULE_SL_COMMENT(); 
+                mRULE_SL_COMMENT();
 
                 }
                 break;
             case 77 :
                 // InternalEssentialOCL.g:1:571: RULE_WS
                 {
-                mRULE_WS(); 
+                mRULE_WS();
 
                 }
                 break;
             case 78 :
                 // InternalEssentialOCL.g:1:579: RULE_ANY_OTHER
                 {
-                mRULE_ANY_OTHER(); 
+                mRULE_ANY_OTHER();
 
                 }
                 break;
@@ -2983,7 +2983,7 @@
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA11_43 = input.LA(1);
 
                         s = -1;
@@ -2993,7 +2993,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA11_0 = input.LA(1);
 
                         s = -1;
@@ -3097,7 +3097,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA11_44 = input.LA(1);
 
                         s = -1;
@@ -3114,6 +3114,6 @@
             throw nvae;
         }
     }
- 
+
 
 }
\ No newline at end of file
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 86e813f..59275a4 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
@@ -1,4 +1,4 @@
-package org.eclipse.ocl.xtext.essentialocl.ui.contentassist.antlr.internal; 
+package org.eclipse.ocl.xtext.essentialocl.ui.contentassist.antlr.internal;
 
 import java.io.InputStream;
 import org.eclipse.xtext.*;
@@ -126,26 +126,26 @@
         }
         public InternalEssentialOCLParser(TokenStream input, RecognizerSharedState state) {
             super(input, state);
-             
+
         }
-        
+
 
     public String[] getTokenNames() { return InternalEssentialOCLParser.tokenNames; }
     public String getGrammarFileName() { return "InternalEssentialOCL.g"; }
 
 
-     
+
      	private EssentialOCLGrammarAccess grammarAccess;
-     	
+
         public void setGrammarAccess(EssentialOCLGrammarAccess grammarAccess) {
         	this.grammarAccess = grammarAccess;
         }
-        
+
         @Override
         protected Grammar getGrammar() {
         	return grammarAccess.getGrammar();
         }
-        
+
         @Override
         protected String getValueForTokenName(String tokenName) {
         	return tokenName;
@@ -162,7 +162,7 @@
             // InternalEssentialOCL.g:70:1: ruleModel EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getModelRule()); 
+               before(grammarAccess.getModelRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleModel();
@@ -170,7 +170,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getModelRule()); 
+               after(grammarAccess.getModelRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -193,7 +193,7 @@
     public final void ruleModel() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:81:2: ( ( ( rule__Model__OwnedExpressionAssignment ) ) )
             // InternalEssentialOCL.g:82:1: ( ( rule__Model__OwnedExpressionAssignment ) )
@@ -202,7 +202,7 @@
             // InternalEssentialOCL.g:83:1: ( rule__Model__OwnedExpressionAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getModelAccess().getOwnedExpressionAssignment()); 
+               before(grammarAccess.getModelAccess().getOwnedExpressionAssignment());
             }
             // InternalEssentialOCL.g:84:1: ( rule__Model__OwnedExpressionAssignment )
             // InternalEssentialOCL.g:84:2: rule__Model__OwnedExpressionAssignment
@@ -216,7 +216,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getModelAccess().getOwnedExpressionAssignment()); 
+               after(grammarAccess.getModelAccess().getOwnedExpressionAssignment());
             }
 
             }
@@ -247,7 +247,7 @@
             // InternalEssentialOCL.g:100:1: ruleEssentialOCLUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); 
+               before(grammarAccess.getEssentialOCLUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLUnaryOperatorName();
@@ -255,7 +255,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); 
+               after(grammarAccess.getEssentialOCLUnaryOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -278,7 +278,7 @@
     public final void ruleEssentialOCLUnaryOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:111:2: ( ( ( rule__EssentialOCLUnaryOperatorName__Alternatives ) ) )
             // InternalEssentialOCL.g:112:1: ( ( rule__EssentialOCLUnaryOperatorName__Alternatives ) )
@@ -287,7 +287,7 @@
             // InternalEssentialOCL.g:113:1: ( rule__EssentialOCLUnaryOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:114:1: ( rule__EssentialOCLUnaryOperatorName__Alternatives )
             // InternalEssentialOCL.g:114:2: rule__EssentialOCLUnaryOperatorName__Alternatives
@@ -301,7 +301,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -332,7 +332,7 @@
             // InternalEssentialOCL.g:128:1: ruleEssentialOCLInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLInfixOperatorNameRule()); 
+               before(grammarAccess.getEssentialOCLInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLInfixOperatorName();
@@ -340,7 +340,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLInfixOperatorNameRule()); 
+               after(grammarAccess.getEssentialOCLInfixOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -363,7 +363,7 @@
     public final void ruleEssentialOCLInfixOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:139:2: ( ( ( rule__EssentialOCLInfixOperatorName__Alternatives ) ) )
             // InternalEssentialOCL.g:140:1: ( ( rule__EssentialOCLInfixOperatorName__Alternatives ) )
@@ -372,7 +372,7 @@
             // InternalEssentialOCL.g:141:1: ( rule__EssentialOCLInfixOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:142:1: ( rule__EssentialOCLInfixOperatorName__Alternatives )
             // InternalEssentialOCL.g:142:2: rule__EssentialOCLInfixOperatorName__Alternatives
@@ -386,7 +386,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -417,7 +417,7 @@
             // InternalEssentialOCL.g:156:1: ruleEssentialOCLNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); 
+               before(grammarAccess.getEssentialOCLNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLNavigationOperatorName();
@@ -425,7 +425,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); 
+               after(grammarAccess.getEssentialOCLNavigationOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -448,7 +448,7 @@
     public final void ruleEssentialOCLNavigationOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:167:2: ( ( ( rule__EssentialOCLNavigationOperatorName__Alternatives ) ) )
             // InternalEssentialOCL.g:168:1: ( ( rule__EssentialOCLNavigationOperatorName__Alternatives ) )
@@ -457,7 +457,7 @@
             // InternalEssentialOCL.g:169:1: ( rule__EssentialOCLNavigationOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:170:1: ( rule__EssentialOCLNavigationOperatorName__Alternatives )
             // InternalEssentialOCL.g:170:2: rule__EssentialOCLNavigationOperatorName__Alternatives
@@ -471,7 +471,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -502,7 +502,7 @@
             // InternalEssentialOCL.g:184:1: ruleBinaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBinaryOperatorNameRule()); 
+               before(grammarAccess.getBinaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleBinaryOperatorName();
@@ -510,7 +510,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBinaryOperatorNameRule()); 
+               after(grammarAccess.getBinaryOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -533,7 +533,7 @@
     public final void ruleBinaryOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:195:2: ( ( ( rule__BinaryOperatorName__Alternatives ) ) )
             // InternalEssentialOCL.g:196:1: ( ( rule__BinaryOperatorName__Alternatives ) )
@@ -542,7 +542,7 @@
             // InternalEssentialOCL.g:197:1: ( rule__BinaryOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBinaryOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getBinaryOperatorNameAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:198:1: ( rule__BinaryOperatorName__Alternatives )
             // InternalEssentialOCL.g:198:2: rule__BinaryOperatorName__Alternatives
@@ -556,7 +556,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBinaryOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getBinaryOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -587,7 +587,7 @@
             // InternalEssentialOCL.g:212:1: ruleInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInfixOperatorNameRule()); 
+               before(grammarAccess.getInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleInfixOperatorName();
@@ -595,7 +595,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInfixOperatorNameRule()); 
+               after(grammarAccess.getInfixOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -618,7 +618,7 @@
     public final void ruleInfixOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:223:2: ( ( ruleEssentialOCLInfixOperatorName ) )
             // InternalEssentialOCL.g:224:1: ( ruleEssentialOCLInfixOperatorName )
@@ -627,7 +627,7 @@
             // InternalEssentialOCL.g:225:1: ruleEssentialOCLInfixOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
+               before(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLInfixOperatorName();
@@ -635,7 +635,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
+               after(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
             }
 
             }
@@ -666,7 +666,7 @@
             // InternalEssentialOCL.g:240:1: ruleNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigationOperatorNameRule()); 
+               before(grammarAccess.getNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigationOperatorName();
@@ -674,7 +674,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigationOperatorNameRule()); 
+               after(grammarAccess.getNavigationOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -697,7 +697,7 @@
     public final void ruleNavigationOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:251:2: ( ( ruleEssentialOCLNavigationOperatorName ) )
             // InternalEssentialOCL.g:252:1: ( ruleEssentialOCLNavigationOperatorName )
@@ -706,7 +706,7 @@
             // InternalEssentialOCL.g:253:1: ruleEssentialOCLNavigationOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall()); 
+               before(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLNavigationOperatorName();
@@ -714,7 +714,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall()); 
+               after(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall());
             }
 
             }
@@ -745,7 +745,7 @@
             // InternalEssentialOCL.g:268:1: ruleUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnaryOperatorNameRule()); 
+               before(grammarAccess.getUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnaryOperatorName();
@@ -753,7 +753,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnaryOperatorNameRule()); 
+               after(grammarAccess.getUnaryOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -776,7 +776,7 @@
     public final void ruleUnaryOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:279:2: ( ( ruleEssentialOCLUnaryOperatorName ) )
             // InternalEssentialOCL.g:280:1: ( ruleEssentialOCLUnaryOperatorName )
@@ -785,7 +785,7 @@
             // InternalEssentialOCL.g:281:1: ruleEssentialOCLUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
+               before(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLUnaryOperatorName();
@@ -793,7 +793,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
+               after(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
             }
 
             }
@@ -824,7 +824,7 @@
             // InternalEssentialOCL.g:296:1: ruleEssentialOCLUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnrestrictedNameRule()); 
+               before(grammarAccess.getEssentialOCLUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLUnrestrictedName();
@@ -832,7 +832,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnrestrictedNameRule()); 
+               after(grammarAccess.getEssentialOCLUnrestrictedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -855,7 +855,7 @@
     public final void ruleEssentialOCLUnrestrictedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:307:2: ( ( ruleIdentifier ) )
             // InternalEssentialOCL.g:308:1: ( ruleIdentifier )
@@ -864,7 +864,7 @@
             // InternalEssentialOCL.g:309:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+               before(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -872,7 +872,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+               after(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
             }
 
             }
@@ -903,7 +903,7 @@
             // InternalEssentialOCL.g:324:1: ruleUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnrestrictedNameRule()); 
+               before(grammarAccess.getUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnrestrictedName();
@@ -911,7 +911,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnrestrictedNameRule()); 
+               after(grammarAccess.getUnrestrictedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -934,7 +934,7 @@
     public final void ruleUnrestrictedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:335:2: ( ( ruleEssentialOCLUnrestrictedName ) )
             // InternalEssentialOCL.g:336:1: ( ruleEssentialOCLUnrestrictedName )
@@ -943,7 +943,7 @@
             // InternalEssentialOCL.g:337:1: ruleEssentialOCLUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall()); 
+               before(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLUnrestrictedName();
@@ -951,7 +951,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall()); 
+               after(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall());
             }
 
             }
@@ -982,7 +982,7 @@
             // InternalEssentialOCL.g:352:1: ruleEssentialOCLUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnreservedNameRule()); 
+               before(grammarAccess.getEssentialOCLUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLUnreservedName();
@@ -990,7 +990,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnreservedNameRule()); 
+               after(grammarAccess.getEssentialOCLUnreservedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1013,7 +1013,7 @@
     public final void ruleEssentialOCLUnreservedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:363:2: ( ( ( rule__EssentialOCLUnreservedName__Alternatives ) ) )
             // InternalEssentialOCL.g:364:1: ( ( rule__EssentialOCLUnreservedName__Alternatives ) )
@@ -1022,7 +1022,7 @@
             // InternalEssentialOCL.g:365:1: ( rule__EssentialOCLUnreservedName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:366:1: ( rule__EssentialOCLUnreservedName__Alternatives )
             // InternalEssentialOCL.g:366:2: rule__EssentialOCLUnreservedName__Alternatives
@@ -1036,7 +1036,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives());
             }
 
             }
@@ -1067,7 +1067,7 @@
             // InternalEssentialOCL.g:380:1: ruleUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnreservedNameRule()); 
+               before(grammarAccess.getUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnreservedName();
@@ -1075,7 +1075,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnreservedNameRule()); 
+               after(grammarAccess.getUnreservedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1098,7 +1098,7 @@
     public final void ruleUnreservedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:391:2: ( ( ruleEssentialOCLUnreservedName ) )
             // InternalEssentialOCL.g:392:1: ( ruleEssentialOCLUnreservedName )
@@ -1107,7 +1107,7 @@
             // InternalEssentialOCL.g:393:1: ruleEssentialOCLUnreservedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
+               before(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLUnreservedName();
@@ -1115,7 +1115,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
+               after(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
             }
 
             }
@@ -1146,7 +1146,7 @@
             // InternalEssentialOCL.g:410:1: ruleURIFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSRule()); 
+               before(grammarAccess.getURIFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleURIFirstPathElementCS();
@@ -1154,7 +1154,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSRule()); 
+               after(grammarAccess.getURIFirstPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1177,7 +1177,7 @@
     public final void ruleURIFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:421:2: ( ( ( rule__URIFirstPathElementCS__Alternatives ) ) )
             // InternalEssentialOCL.g:422:1: ( ( rule__URIFirstPathElementCS__Alternatives ) )
@@ -1186,7 +1186,7 @@
             // InternalEssentialOCL.g:423:1: ( rule__URIFirstPathElementCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:424:1: ( rule__URIFirstPathElementCS__Alternatives )
             // InternalEssentialOCL.g:424:2: rule__URIFirstPathElementCS__Alternatives
@@ -1200,7 +1200,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives());
             }
 
             }
@@ -1231,7 +1231,7 @@
             // InternalEssentialOCL.g:438:1: rulePrimitiveTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeIdentifierRule()); 
+               before(grammarAccess.getPrimitiveTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimitiveTypeIdentifier();
@@ -1239,7 +1239,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeIdentifierRule()); 
+               after(grammarAccess.getPrimitiveTypeIdentifierRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1262,7 +1262,7 @@
     public final void rulePrimitiveTypeIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:449:2: ( ( ( rule__PrimitiveTypeIdentifier__Alternatives ) ) )
             // InternalEssentialOCL.g:450:1: ( ( rule__PrimitiveTypeIdentifier__Alternatives ) )
@@ -1271,7 +1271,7 @@
             // InternalEssentialOCL.g:451:1: ( rule__PrimitiveTypeIdentifier__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives()); 
+               before(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:452:1: ( rule__PrimitiveTypeIdentifier__Alternatives )
             // InternalEssentialOCL.g:452:2: rule__PrimitiveTypeIdentifier__Alternatives
@@ -1285,7 +1285,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives()); 
+               after(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives());
             }
 
             }
@@ -1316,7 +1316,7 @@
             // InternalEssentialOCL.g:466:1: rulePrimitiveTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeCSRule()); 
+               before(grammarAccess.getPrimitiveTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimitiveTypeCS();
@@ -1324,7 +1324,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeCSRule()); 
+               after(grammarAccess.getPrimitiveTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1347,7 +1347,7 @@
     public final void rulePrimitiveTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:477:2: ( ( ( rule__PrimitiveTypeCS__NameAssignment ) ) )
             // InternalEssentialOCL.g:478:1: ( ( rule__PrimitiveTypeCS__NameAssignment ) )
@@ -1356,7 +1356,7 @@
             // InternalEssentialOCL.g:479:1: ( rule__PrimitiveTypeCS__NameAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment()); 
+               before(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment());
             }
             // InternalEssentialOCL.g:480:1: ( rule__PrimitiveTypeCS__NameAssignment )
             // InternalEssentialOCL.g:480:2: rule__PrimitiveTypeCS__NameAssignment
@@ -1370,7 +1370,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment()); 
+               after(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment());
             }
 
             }
@@ -1401,7 +1401,7 @@
             // InternalEssentialOCL.g:494:1: ruleCollectionTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeIdentifierRule()); 
+               before(grammarAccess.getCollectionTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionTypeIdentifier();
@@ -1409,7 +1409,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeIdentifierRule()); 
+               after(grammarAccess.getCollectionTypeIdentifierRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1432,7 +1432,7 @@
     public final void ruleCollectionTypeIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:505:2: ( ( ( rule__CollectionTypeIdentifier__Alternatives ) ) )
             // InternalEssentialOCL.g:506:1: ( ( rule__CollectionTypeIdentifier__Alternatives ) )
@@ -1441,7 +1441,7 @@
             // InternalEssentialOCL.g:507:1: ( rule__CollectionTypeIdentifier__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives()); 
+               before(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:508:1: ( rule__CollectionTypeIdentifier__Alternatives )
             // InternalEssentialOCL.g:508:2: rule__CollectionTypeIdentifier__Alternatives
@@ -1455,7 +1455,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives()); 
+               after(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives());
             }
 
             }
@@ -1486,7 +1486,7 @@
             // InternalEssentialOCL.g:522:1: ruleCollectionTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSRule()); 
+               before(grammarAccess.getCollectionTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionTypeCS();
@@ -1494,7 +1494,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSRule()); 
+               after(grammarAccess.getCollectionTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1517,7 +1517,7 @@
     public final void ruleCollectionTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:533:2: ( ( ( rule__CollectionTypeCS__Group__0 ) ) )
             // InternalEssentialOCL.g:534:1: ( ( rule__CollectionTypeCS__Group__0 ) )
@@ -1526,7 +1526,7 @@
             // InternalEssentialOCL.g:535:1: ( rule__CollectionTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getGroup()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:536:1: ( rule__CollectionTypeCS__Group__0 )
             // InternalEssentialOCL.g:536:2: rule__CollectionTypeCS__Group__0
@@ -1540,7 +1540,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getGroup()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getGroup());
             }
 
             }
@@ -1571,7 +1571,7 @@
             // InternalEssentialOCL.g:550:1: ruleMapTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSRule()); 
+               before(grammarAccess.getMapTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMapTypeCS();
@@ -1579,7 +1579,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSRule()); 
+               after(grammarAccess.getMapTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1602,7 +1602,7 @@
     public final void ruleMapTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:561:2: ( ( ( rule__MapTypeCS__Group__0 ) ) )
             // InternalEssentialOCL.g:562:1: ( ( rule__MapTypeCS__Group__0 ) )
@@ -1611,7 +1611,7 @@
             // InternalEssentialOCL.g:563:1: ( rule__MapTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getGroup()); 
+               before(grammarAccess.getMapTypeCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:564:1: ( rule__MapTypeCS__Group__0 )
             // InternalEssentialOCL.g:564:2: rule__MapTypeCS__Group__0
@@ -1625,7 +1625,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getGroup()); 
+               after(grammarAccess.getMapTypeCSAccess().getGroup());
             }
 
             }
@@ -1656,7 +1656,7 @@
             // InternalEssentialOCL.g:578:1: ruleTupleTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSRule()); 
+               before(grammarAccess.getTupleTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTupleTypeCS();
@@ -1664,7 +1664,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSRule()); 
+               after(grammarAccess.getTupleTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1687,7 +1687,7 @@
     public final void ruleTupleTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:589:2: ( ( ( rule__TupleTypeCS__Group__0 ) ) )
             // InternalEssentialOCL.g:590:1: ( ( rule__TupleTypeCS__Group__0 ) )
@@ -1696,7 +1696,7 @@
             // InternalEssentialOCL.g:591:1: ( rule__TupleTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:592:1: ( rule__TupleTypeCS__Group__0 )
             // InternalEssentialOCL.g:592:2: rule__TupleTypeCS__Group__0
@@ -1710,7 +1710,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup());
             }
 
             }
@@ -1741,7 +1741,7 @@
             // InternalEssentialOCL.g:606:1: ruleTuplePartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSRule()); 
+               before(grammarAccess.getTuplePartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTuplePartCS();
@@ -1749,7 +1749,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSRule()); 
+               after(grammarAccess.getTuplePartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1772,7 +1772,7 @@
     public final void ruleTuplePartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:617:2: ( ( ( rule__TuplePartCS__Group__0 ) ) )
             // InternalEssentialOCL.g:618:1: ( ( rule__TuplePartCS__Group__0 ) )
@@ -1781,7 +1781,7 @@
             // InternalEssentialOCL.g:619:1: ( rule__TuplePartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getGroup()); 
+               before(grammarAccess.getTuplePartCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:620:1: ( rule__TuplePartCS__Group__0 )
             // InternalEssentialOCL.g:620:2: rule__TuplePartCS__Group__0
@@ -1795,7 +1795,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getGroup()); 
+               after(grammarAccess.getTuplePartCSAccess().getGroup());
             }
 
             }
@@ -1826,7 +1826,7 @@
             // InternalEssentialOCL.g:634:1: ruleCollectionLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSRule()); 
+               before(grammarAccess.getCollectionLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionLiteralExpCS();
@@ -1834,7 +1834,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSRule()); 
+               after(grammarAccess.getCollectionLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1857,7 +1857,7 @@
     public final void ruleCollectionLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:645:2: ( ( ( rule__CollectionLiteralExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:646:1: ( ( rule__CollectionLiteralExpCS__Group__0 ) )
@@ -1866,7 +1866,7 @@
             // InternalEssentialOCL.g:647:1: ( rule__CollectionLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:648:1: ( rule__CollectionLiteralExpCS__Group__0 )
             // InternalEssentialOCL.g:648:2: rule__CollectionLiteralExpCS__Group__0
@@ -1880,7 +1880,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -1911,7 +1911,7 @@
             // InternalEssentialOCL.g:662:1: ruleCollectionLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSRule()); 
+               before(grammarAccess.getCollectionLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionLiteralPartCS();
@@ -1919,7 +1919,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSRule()); 
+               after(grammarAccess.getCollectionLiteralPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1942,7 +1942,7 @@
     public final void ruleCollectionLiteralPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:673:2: ( ( ( rule__CollectionLiteralPartCS__Alternatives ) ) )
             // InternalEssentialOCL.g:674:1: ( ( rule__CollectionLiteralPartCS__Alternatives ) )
@@ -1951,7 +1951,7 @@
             // InternalEssentialOCL.g:675:1: ( rule__CollectionLiteralPartCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:676:1: ( rule__CollectionLiteralPartCS__Alternatives )
             // InternalEssentialOCL.g:676:2: rule__CollectionLiteralPartCS__Alternatives
@@ -1965,7 +1965,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives());
             }
 
             }
@@ -1996,7 +1996,7 @@
             // InternalEssentialOCL.g:690:1: ruleCollectionPatternCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSRule()); 
+               before(grammarAccess.getCollectionPatternCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionPatternCS();
@@ -2004,7 +2004,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSRule()); 
+               after(grammarAccess.getCollectionPatternCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2027,7 +2027,7 @@
     public final void ruleCollectionPatternCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:701:2: ( ( ( rule__CollectionPatternCS__Group__0 ) ) )
             // InternalEssentialOCL.g:702:1: ( ( rule__CollectionPatternCS__Group__0 ) )
@@ -2036,7 +2036,7 @@
             // InternalEssentialOCL.g:703:1: ( rule__CollectionPatternCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:704:1: ( rule__CollectionPatternCS__Group__0 )
             // InternalEssentialOCL.g:704:2: rule__CollectionPatternCS__Group__0
@@ -2050,7 +2050,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup());
             }
 
             }
@@ -2081,7 +2081,7 @@
             // InternalEssentialOCL.g:718:1: ruleShadowPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSRule()); 
+               before(grammarAccess.getShadowPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleShadowPartCS();
@@ -2089,7 +2089,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSRule()); 
+               after(grammarAccess.getShadowPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2112,7 +2112,7 @@
     public final void ruleShadowPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:729:2: ( ( ( rule__ShadowPartCS__Group__0 ) ) )
             // InternalEssentialOCL.g:730:1: ( ( rule__ShadowPartCS__Group__0 ) )
@@ -2121,7 +2121,7 @@
             // InternalEssentialOCL.g:731:1: ( rule__ShadowPartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getGroup()); 
+               before(grammarAccess.getShadowPartCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:732:1: ( rule__ShadowPartCS__Group__0 )
             // InternalEssentialOCL.g:732:2: rule__ShadowPartCS__Group__0
@@ -2135,7 +2135,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getGroup()); 
+               after(grammarAccess.getShadowPartCSAccess().getGroup());
             }
 
             }
@@ -2166,7 +2166,7 @@
             // InternalEssentialOCL.g:746:1: rulePatternExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSRule()); 
+               before(grammarAccess.getPatternExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePatternExpCS();
@@ -2174,7 +2174,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSRule()); 
+               after(grammarAccess.getPatternExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2197,7 +2197,7 @@
     public final void rulePatternExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:757:2: ( ( ( rule__PatternExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:758:1: ( ( rule__PatternExpCS__Group__0 ) )
@@ -2206,7 +2206,7 @@
             // InternalEssentialOCL.g:759:1: ( rule__PatternExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getGroup()); 
+               before(grammarAccess.getPatternExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:760:1: ( rule__PatternExpCS__Group__0 )
             // InternalEssentialOCL.g:760:2: rule__PatternExpCS__Group__0
@@ -2220,7 +2220,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getGroup()); 
+               after(grammarAccess.getPatternExpCSAccess().getGroup());
             }
 
             }
@@ -2251,7 +2251,7 @@
             // InternalEssentialOCL.g:774:1: ruleLambdaLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSRule()); 
+               before(grammarAccess.getLambdaLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLambdaLiteralExpCS();
@@ -2259,7 +2259,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSRule()); 
+               after(grammarAccess.getLambdaLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2282,7 +2282,7 @@
     public final void ruleLambdaLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:785:2: ( ( ( rule__LambdaLiteralExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:786:1: ( ( rule__LambdaLiteralExpCS__Group__0 ) )
@@ -2291,7 +2291,7 @@
             // InternalEssentialOCL.g:787:1: ( rule__LambdaLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:788:1: ( rule__LambdaLiteralExpCS__Group__0 )
             // InternalEssentialOCL.g:788:2: rule__LambdaLiteralExpCS__Group__0
@@ -2305,7 +2305,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -2336,7 +2336,7 @@
             // InternalEssentialOCL.g:802:1: ruleMapLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSRule()); 
+               before(grammarAccess.getMapLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMapLiteralExpCS();
@@ -2344,7 +2344,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSRule()); 
+               after(grammarAccess.getMapLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2367,7 +2367,7 @@
     public final void ruleMapLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:813:2: ( ( ( rule__MapLiteralExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:814:1: ( ( rule__MapLiteralExpCS__Group__0 ) )
@@ -2376,7 +2376,7 @@
             // InternalEssentialOCL.g:815:1: ( rule__MapLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:816:1: ( rule__MapLiteralExpCS__Group__0 )
             // InternalEssentialOCL.g:816:2: rule__MapLiteralExpCS__Group__0
@@ -2390,7 +2390,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -2421,7 +2421,7 @@
             // InternalEssentialOCL.g:830:1: ruleMapLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSRule()); 
+               before(grammarAccess.getMapLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMapLiteralPartCS();
@@ -2429,7 +2429,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSRule()); 
+               after(grammarAccess.getMapLiteralPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2452,7 +2452,7 @@
     public final void ruleMapLiteralPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:841:2: ( ( ( rule__MapLiteralPartCS__Group__0 ) ) )
             // InternalEssentialOCL.g:842:1: ( ( rule__MapLiteralPartCS__Group__0 ) )
@@ -2461,7 +2461,7 @@
             // InternalEssentialOCL.g:843:1: ( rule__MapLiteralPartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getGroup()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:844:1: ( rule__MapLiteralPartCS__Group__0 )
             // InternalEssentialOCL.g:844:2: rule__MapLiteralPartCS__Group__0
@@ -2475,7 +2475,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getGroup()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getGroup());
             }
 
             }
@@ -2506,7 +2506,7 @@
             // InternalEssentialOCL.g:858:1: rulePrimitiveLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveLiteralExpCSRule()); 
+               before(grammarAccess.getPrimitiveLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimitiveLiteralExpCS();
@@ -2514,7 +2514,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveLiteralExpCSRule()); 
+               after(grammarAccess.getPrimitiveLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2537,7 +2537,7 @@
     public final void rulePrimitiveLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:869:2: ( ( ( rule__PrimitiveLiteralExpCS__Alternatives ) ) )
             // InternalEssentialOCL.g:870:1: ( ( rule__PrimitiveLiteralExpCS__Alternatives ) )
@@ -2546,7 +2546,7 @@
             // InternalEssentialOCL.g:871:1: ( rule__PrimitiveLiteralExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:872:1: ( rule__PrimitiveLiteralExpCS__Alternatives )
             // InternalEssentialOCL.g:872:2: rule__PrimitiveLiteralExpCS__Alternatives
@@ -2560,7 +2560,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives());
             }
 
             }
@@ -2591,7 +2591,7 @@
             // InternalEssentialOCL.g:886:1: ruleTupleLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSRule()); 
+               before(grammarAccess.getTupleLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTupleLiteralExpCS();
@@ -2599,7 +2599,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSRule()); 
+               after(grammarAccess.getTupleLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2622,7 +2622,7 @@
     public final void ruleTupleLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:897:2: ( ( ( rule__TupleLiteralExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:898:1: ( ( rule__TupleLiteralExpCS__Group__0 ) )
@@ -2631,7 +2631,7 @@
             // InternalEssentialOCL.g:899:1: ( rule__TupleLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:900:1: ( rule__TupleLiteralExpCS__Group__0 )
             // InternalEssentialOCL.g:900:2: rule__TupleLiteralExpCS__Group__0
@@ -2645,7 +2645,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -2676,7 +2676,7 @@
             // InternalEssentialOCL.g:914:1: ruleTupleLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSRule()); 
+               before(grammarAccess.getTupleLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTupleLiteralPartCS();
@@ -2684,7 +2684,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSRule()); 
+               after(grammarAccess.getTupleLiteralPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2707,7 +2707,7 @@
     public final void ruleTupleLiteralPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:925:2: ( ( ( rule__TupleLiteralPartCS__Group__0 ) ) )
             // InternalEssentialOCL.g:926:1: ( ( rule__TupleLiteralPartCS__Group__0 ) )
@@ -2716,7 +2716,7 @@
             // InternalEssentialOCL.g:927:1: ( rule__TupleLiteralPartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:928:1: ( rule__TupleLiteralPartCS__Group__0 )
             // InternalEssentialOCL.g:928:2: rule__TupleLiteralPartCS__Group__0
@@ -2730,7 +2730,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup());
             }
 
             }
@@ -2761,7 +2761,7 @@
             // InternalEssentialOCL.g:942:1: ruleNumberLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNumberLiteralExpCSRule()); 
+               before(grammarAccess.getNumberLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNumberLiteralExpCS();
@@ -2769,7 +2769,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNumberLiteralExpCSRule()); 
+               after(grammarAccess.getNumberLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2792,7 +2792,7 @@
     public final void ruleNumberLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:953:2: ( ( ( rule__NumberLiteralExpCS__SymbolAssignment ) ) )
             // InternalEssentialOCL.g:954:1: ( ( rule__NumberLiteralExpCS__SymbolAssignment ) )
@@ -2801,7 +2801,7 @@
             // InternalEssentialOCL.g:955:1: ( rule__NumberLiteralExpCS__SymbolAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment()); 
+               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment());
             }
             // InternalEssentialOCL.g:956:1: ( rule__NumberLiteralExpCS__SymbolAssignment )
             // InternalEssentialOCL.g:956:2: rule__NumberLiteralExpCS__SymbolAssignment
@@ -2815,7 +2815,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment()); 
+               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment());
             }
 
             }
@@ -2846,7 +2846,7 @@
             // InternalEssentialOCL.g:970:1: ruleStringLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSRule()); 
+               before(grammarAccess.getStringLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleStringLiteralExpCS();
@@ -2854,7 +2854,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSRule()); 
+               after(grammarAccess.getStringLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2877,7 +2877,7 @@
     public final void ruleStringLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:981:2: ( ( ( ( rule__StringLiteralExpCS__SegmentsAssignment ) ) ( ( rule__StringLiteralExpCS__SegmentsAssignment )* ) ) )
             // InternalEssentialOCL.g:982:1: ( ( ( rule__StringLiteralExpCS__SegmentsAssignment ) ) ( ( rule__StringLiteralExpCS__SegmentsAssignment )* ) )
@@ -2889,7 +2889,7 @@
             // InternalEssentialOCL.g:984:1: ( rule__StringLiteralExpCS__SegmentsAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
             // InternalEssentialOCL.g:985:1: ( rule__StringLiteralExpCS__SegmentsAssignment )
             // InternalEssentialOCL.g:985:2: rule__StringLiteralExpCS__SegmentsAssignment
@@ -2903,7 +2903,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
 
             }
@@ -2912,7 +2912,7 @@
             // InternalEssentialOCL.g:989:1: ( rule__StringLiteralExpCS__SegmentsAssignment )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
             // InternalEssentialOCL.g:990:1: ( rule__StringLiteralExpCS__SegmentsAssignment )*
             loop1:
@@ -2944,7 +2944,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
 
             }
@@ -2978,7 +2978,7 @@
             // InternalEssentialOCL.g:1005:1: ruleBooleanLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSRule()); 
+               before(grammarAccess.getBooleanLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleBooleanLiteralExpCS();
@@ -2986,7 +2986,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSRule()); 
+               after(grammarAccess.getBooleanLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3009,7 +3009,7 @@
     public final void ruleBooleanLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1016:2: ( ( ( rule__BooleanLiteralExpCS__Alternatives ) ) )
             // InternalEssentialOCL.g:1017:1: ( ( rule__BooleanLiteralExpCS__Alternatives ) )
@@ -3018,7 +3018,7 @@
             // InternalEssentialOCL.g:1018:1: ( rule__BooleanLiteralExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:1019:1: ( rule__BooleanLiteralExpCS__Alternatives )
             // InternalEssentialOCL.g:1019:2: rule__BooleanLiteralExpCS__Alternatives
@@ -3032,7 +3032,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives());
             }
 
             }
@@ -3063,7 +3063,7 @@
             // InternalEssentialOCL.g:1033:1: ruleUnlimitedNaturalLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnlimitedNaturalLiteralExpCS();
@@ -3071,7 +3071,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3094,7 +3094,7 @@
     public final void ruleUnlimitedNaturalLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1044:2: ( ( ( rule__UnlimitedNaturalLiteralExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1045:1: ( ( rule__UnlimitedNaturalLiteralExpCS__Group__0 ) )
@@ -3103,7 +3103,7 @@
             // InternalEssentialOCL.g:1046:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1047:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0 )
             // InternalEssentialOCL.g:1047:2: rule__UnlimitedNaturalLiteralExpCS__Group__0
@@ -3117,7 +3117,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -3148,7 +3148,7 @@
             // InternalEssentialOCL.g:1061:1: ruleInvalidLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSRule()); 
+               before(grammarAccess.getInvalidLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleInvalidLiteralExpCS();
@@ -3156,7 +3156,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSRule()); 
+               after(grammarAccess.getInvalidLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3179,7 +3179,7 @@
     public final void ruleInvalidLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1072:2: ( ( ( rule__InvalidLiteralExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1073:1: ( ( rule__InvalidLiteralExpCS__Group__0 ) )
@@ -3188,7 +3188,7 @@
             // InternalEssentialOCL.g:1074:1: ( rule__InvalidLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getInvalidLiteralExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1075:1: ( rule__InvalidLiteralExpCS__Group__0 )
             // InternalEssentialOCL.g:1075:2: rule__InvalidLiteralExpCS__Group__0
@@ -3202,7 +3202,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getInvalidLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -3233,7 +3233,7 @@
             // InternalEssentialOCL.g:1089:1: ruleNullLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSRule()); 
+               before(grammarAccess.getNullLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNullLiteralExpCS();
@@ -3241,7 +3241,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSRule()); 
+               after(grammarAccess.getNullLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3264,7 +3264,7 @@
     public final void ruleNullLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1100:2: ( ( ( rule__NullLiteralExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1101:1: ( ( rule__NullLiteralExpCS__Group__0 ) )
@@ -3273,7 +3273,7 @@
             // InternalEssentialOCL.g:1102:1: ( rule__NullLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getNullLiteralExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1103:1: ( rule__NullLiteralExpCS__Group__0 )
             // InternalEssentialOCL.g:1103:2: rule__NullLiteralExpCS__Group__0
@@ -3287,7 +3287,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getNullLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -3318,7 +3318,7 @@
             // InternalEssentialOCL.g:1117:1: ruleTypeLiteralCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralCSRule()); 
+               before(grammarAccess.getTypeLiteralCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeLiteralCS();
@@ -3326,7 +3326,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralCSRule()); 
+               after(grammarAccess.getTypeLiteralCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3349,7 +3349,7 @@
     public final void ruleTypeLiteralCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1128:2: ( ( ( rule__TypeLiteralCS__Alternatives ) ) )
             // InternalEssentialOCL.g:1129:1: ( ( rule__TypeLiteralCS__Alternatives ) )
@@ -3358,7 +3358,7 @@
             // InternalEssentialOCL.g:1130:1: ( rule__TypeLiteralCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralCSAccess().getAlternatives()); 
+               before(grammarAccess.getTypeLiteralCSAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:1131:1: ( rule__TypeLiteralCS__Alternatives )
             // InternalEssentialOCL.g:1131:2: rule__TypeLiteralCS__Alternatives
@@ -3372,7 +3372,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralCSAccess().getAlternatives()); 
+               after(grammarAccess.getTypeLiteralCSAccess().getAlternatives());
             }
 
             }
@@ -3403,7 +3403,7 @@
             // InternalEssentialOCL.g:1145:1: ruleTypeLiteralWithMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeLiteralWithMultiplicityCS();
@@ -3411,7 +3411,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3434,7 +3434,7 @@
     public final void ruleTypeLiteralWithMultiplicityCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1156:2: ( ( ( rule__TypeLiteralWithMultiplicityCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1157:1: ( ( rule__TypeLiteralWithMultiplicityCS__Group__0 ) )
@@ -3443,7 +3443,7 @@
             // InternalEssentialOCL.g:1158:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1159:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0 )
             // InternalEssentialOCL.g:1159:2: rule__TypeLiteralWithMultiplicityCS__Group__0
@@ -3457,7 +3457,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup());
             }
 
             }
@@ -3488,7 +3488,7 @@
             // InternalEssentialOCL.g:1173:1: ruleTypeLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralExpCSRule()); 
+               before(grammarAccess.getTypeLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeLiteralExpCS();
@@ -3496,7 +3496,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralExpCSRule()); 
+               after(grammarAccess.getTypeLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3519,7 +3519,7 @@
     public final void ruleTypeLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1184:2: ( ( ( rule__TypeLiteralExpCS__OwnedTypeAssignment ) ) )
             // InternalEssentialOCL.g:1185:1: ( ( rule__TypeLiteralExpCS__OwnedTypeAssignment ) )
@@ -3528,7 +3528,7 @@
             // InternalEssentialOCL.g:1186:1: ( rule__TypeLiteralExpCS__OwnedTypeAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment()); 
+               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment());
             }
             // InternalEssentialOCL.g:1187:1: ( rule__TypeLiteralExpCS__OwnedTypeAssignment )
             // InternalEssentialOCL.g:1187:2: rule__TypeLiteralExpCS__OwnedTypeAssignment
@@ -3542,7 +3542,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment()); 
+               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment());
             }
 
             }
@@ -3573,7 +3573,7 @@
             // InternalEssentialOCL.g:1201:1: ruleTypeNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSRule()); 
+               before(grammarAccess.getTypeNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeNameExpCS();
@@ -3581,7 +3581,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSRule()); 
+               after(grammarAccess.getTypeNameExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3604,7 +3604,7 @@
     public final void ruleTypeNameExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1212:2: ( ( ( rule__TypeNameExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1213:1: ( ( rule__TypeNameExpCS__Group__0 ) )
@@ -3613,7 +3613,7 @@
             // InternalEssentialOCL.g:1214:1: ( rule__TypeNameExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getGroup()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1215:1: ( rule__TypeNameExpCS__Group__0 )
             // InternalEssentialOCL.g:1215:2: rule__TypeNameExpCS__Group__0
@@ -3627,7 +3627,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getGroup()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getGroup());
             }
 
             }
@@ -3658,7 +3658,7 @@
             // InternalEssentialOCL.g:1229:1: ruleTypeExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSRule()); 
+               before(grammarAccess.getTypeExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeExpCS();
@@ -3666,7 +3666,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSRule()); 
+               after(grammarAccess.getTypeExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3689,7 +3689,7 @@
     public final void ruleTypeExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1240:2: ( ( ( rule__TypeExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1241:1: ( ( rule__TypeExpCS__Group__0 ) )
@@ -3698,7 +3698,7 @@
             // InternalEssentialOCL.g:1242:1: ( rule__TypeExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getGroup()); 
+               before(grammarAccess.getTypeExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1243:1: ( rule__TypeExpCS__Group__0 )
             // InternalEssentialOCL.g:1243:2: rule__TypeExpCS__Group__0
@@ -3712,7 +3712,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getGroup()); 
+               after(grammarAccess.getTypeExpCSAccess().getGroup());
             }
 
             }
@@ -3743,7 +3743,7 @@
             // InternalEssentialOCL.g:1257:1: ruleExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSRule()); 
+               before(grammarAccess.getExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleExpCS();
@@ -3751,7 +3751,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSRule()); 
+               after(grammarAccess.getExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3774,7 +3774,7 @@
     public final void ruleExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1268:2: ( ( ( rule__ExpCS__Alternatives ) ) )
             // InternalEssentialOCL.g:1269:1: ( ( rule__ExpCS__Alternatives ) )
@@ -3783,7 +3783,7 @@
             // InternalEssentialOCL.g:1270:1: ( rule__ExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getExpCSAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:1271:1: ( rule__ExpCS__Alternatives )
             // InternalEssentialOCL.g:1271:2: rule__ExpCS__Alternatives
@@ -3797,7 +3797,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getExpCSAccess().getAlternatives());
             }
 
             }
@@ -3828,7 +3828,7 @@
             // InternalEssentialOCL.g:1285:1: rulePrefixedLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSRule()); 
+               before(grammarAccess.getPrefixedLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrefixedLetExpCS();
@@ -3836,7 +3836,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSRule()); 
+               after(grammarAccess.getPrefixedLetExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3859,7 +3859,7 @@
     public final void rulePrefixedLetExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1296:2: ( ( ( rule__PrefixedLetExpCS__Alternatives ) ) )
             // InternalEssentialOCL.g:1297:1: ( ( rule__PrefixedLetExpCS__Alternatives ) )
@@ -3868,7 +3868,7 @@
             // InternalEssentialOCL.g:1298:1: ( rule__PrefixedLetExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:1299:1: ( rule__PrefixedLetExpCS__Alternatives )
             // InternalEssentialOCL.g:1299:2: rule__PrefixedLetExpCS__Alternatives
@@ -3882,7 +3882,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives());
             }
 
             }
@@ -3913,7 +3913,7 @@
             // InternalEssentialOCL.g:1313:1: rulePrefixedPrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSRule()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrefixedPrimaryExpCS();
@@ -3921,7 +3921,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSRule()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3944,7 +3944,7 @@
     public final void rulePrefixedPrimaryExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1324:2: ( ( ( rule__PrefixedPrimaryExpCS__Alternatives ) ) )
             // InternalEssentialOCL.g:1325:1: ( ( rule__PrefixedPrimaryExpCS__Alternatives ) )
@@ -3953,7 +3953,7 @@
             // InternalEssentialOCL.g:1326:1: ( rule__PrefixedPrimaryExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:1327:1: ( rule__PrefixedPrimaryExpCS__Alternatives )
             // InternalEssentialOCL.g:1327:2: rule__PrefixedPrimaryExpCS__Alternatives
@@ -3967,7 +3967,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives());
             }
 
             }
@@ -3998,7 +3998,7 @@
             // InternalEssentialOCL.g:1341:1: rulePrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimaryExpCSRule()); 
+               before(grammarAccess.getPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimaryExpCS();
@@ -4006,7 +4006,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimaryExpCSRule()); 
+               after(grammarAccess.getPrimaryExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4029,7 +4029,7 @@
     public final void rulePrimaryExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1352:2: ( ( ( rule__PrimaryExpCS__Alternatives ) ) )
             // InternalEssentialOCL.g:1353:1: ( ( rule__PrimaryExpCS__Alternatives ) )
@@ -4038,7 +4038,7 @@
             // InternalEssentialOCL.g:1354:1: ( rule__PrimaryExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimaryExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrimaryExpCSAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:1355:1: ( rule__PrimaryExpCS__Alternatives )
             // InternalEssentialOCL.g:1355:2: rule__PrimaryExpCS__Alternatives
@@ -4052,7 +4052,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimaryExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrimaryExpCSAccess().getAlternatives());
             }
 
             }
@@ -4083,7 +4083,7 @@
             // InternalEssentialOCL.g:1369:1: ruleNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSRule()); 
+               before(grammarAccess.getNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNameExpCS();
@@ -4091,7 +4091,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSRule()); 
+               after(grammarAccess.getNameExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4114,7 +4114,7 @@
     public final void ruleNameExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1380:2: ( ( ( rule__NameExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1381:1: ( ( rule__NameExpCS__Group__0 ) )
@@ -4123,7 +4123,7 @@
             // InternalEssentialOCL.g:1382:1: ( rule__NameExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getGroup()); 
+               before(grammarAccess.getNameExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1383:1: ( rule__NameExpCS__Group__0 )
             // InternalEssentialOCL.g:1383:2: rule__NameExpCS__Group__0
@@ -4137,7 +4137,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getGroup()); 
+               after(grammarAccess.getNameExpCSAccess().getGroup());
             }
 
             }
@@ -4168,7 +4168,7 @@
             // InternalEssentialOCL.g:1397:1: ruleCurlyBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSRule()); 
+               before(grammarAccess.getCurlyBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCurlyBracketedClauseCS();
@@ -4176,7 +4176,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSRule()); 
+               after(grammarAccess.getCurlyBracketedClauseCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4199,7 +4199,7 @@
     public final void ruleCurlyBracketedClauseCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1408:2: ( ( ( rule__CurlyBracketedClauseCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1409:1: ( ( rule__CurlyBracketedClauseCS__Group__0 ) )
@@ -4208,7 +4208,7 @@
             // InternalEssentialOCL.g:1410:1: ( rule__CurlyBracketedClauseCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1411:1: ( rule__CurlyBracketedClauseCS__Group__0 )
             // InternalEssentialOCL.g:1411:2: rule__CurlyBracketedClauseCS__Group__0
@@ -4222,7 +4222,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup());
             }
 
             }
@@ -4253,7 +4253,7 @@
             // InternalEssentialOCL.g:1425:1: ruleRoundBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSRule()); 
+               before(grammarAccess.getRoundBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleRoundBracketedClauseCS();
@@ -4261,7 +4261,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSRule()); 
+               after(grammarAccess.getRoundBracketedClauseCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4284,7 +4284,7 @@
     public final void ruleRoundBracketedClauseCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1436:2: ( ( ( rule__RoundBracketedClauseCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1437:1: ( ( rule__RoundBracketedClauseCS__Group__0 ) )
@@ -4293,7 +4293,7 @@
             // InternalEssentialOCL.g:1438:1: ( rule__RoundBracketedClauseCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1439:1: ( rule__RoundBracketedClauseCS__Group__0 )
             // InternalEssentialOCL.g:1439:2: rule__RoundBracketedClauseCS__Group__0
@@ -4307,7 +4307,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup());
             }
 
             }
@@ -4338,7 +4338,7 @@
             // InternalEssentialOCL.g:1453:1: ruleSquareBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSRule()); 
+               before(grammarAccess.getSquareBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleSquareBracketedClauseCS();
@@ -4346,7 +4346,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSRule()); 
+               after(grammarAccess.getSquareBracketedClauseCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4369,7 +4369,7 @@
     public final void ruleSquareBracketedClauseCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1464:2: ( ( ( rule__SquareBracketedClauseCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1465:1: ( ( rule__SquareBracketedClauseCS__Group__0 ) )
@@ -4378,7 +4378,7 @@
             // InternalEssentialOCL.g:1466:1: ( rule__SquareBracketedClauseCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1467:1: ( rule__SquareBracketedClauseCS__Group__0 )
             // InternalEssentialOCL.g:1467:2: rule__SquareBracketedClauseCS__Group__0
@@ -4392,7 +4392,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup());
             }
 
             }
@@ -4423,7 +4423,7 @@
             // InternalEssentialOCL.g:1481:1: ruleNavigatingArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSRule()); 
+               before(grammarAccess.getNavigatingArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingArgCS();
@@ -4431,7 +4431,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSRule()); 
+               after(grammarAccess.getNavigatingArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4454,7 +4454,7 @@
     public final void ruleNavigatingArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1492:2: ( ( ( rule__NavigatingArgCS__Alternatives ) ) )
             // InternalEssentialOCL.g:1493:1: ( ( rule__NavigatingArgCS__Alternatives ) )
@@ -4463,7 +4463,7 @@
             // InternalEssentialOCL.g:1494:1: ( rule__NavigatingArgCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:1495:1: ( rule__NavigatingArgCS__Alternatives )
             // InternalEssentialOCL.g:1495:2: rule__NavigatingArgCS__Alternatives
@@ -4477,7 +4477,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives());
             }
 
             }
@@ -4508,7 +4508,7 @@
             // InternalEssentialOCL.g:1509:1: ruleNavigatingBarArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSRule()); 
+               before(grammarAccess.getNavigatingBarArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingBarArgCS();
@@ -4516,7 +4516,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSRule()); 
+               after(grammarAccess.getNavigatingBarArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4539,7 +4539,7 @@
     public final void ruleNavigatingBarArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1520:2: ( ( ( rule__NavigatingBarArgCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1521:1: ( ( rule__NavigatingBarArgCS__Group__0 ) )
@@ -4548,7 +4548,7 @@
             // InternalEssentialOCL.g:1522:1: ( rule__NavigatingBarArgCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1523:1: ( rule__NavigatingBarArgCS__Group__0 )
             // InternalEssentialOCL.g:1523:2: rule__NavigatingBarArgCS__Group__0
@@ -4562,7 +4562,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup());
             }
 
             }
@@ -4593,7 +4593,7 @@
             // InternalEssentialOCL.g:1537:1: ruleNavigatingCommaArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSRule()); 
+               before(grammarAccess.getNavigatingCommaArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingCommaArgCS();
@@ -4601,7 +4601,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSRule()); 
+               after(grammarAccess.getNavigatingCommaArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4624,7 +4624,7 @@
     public final void ruleNavigatingCommaArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1548:2: ( ( ( rule__NavigatingCommaArgCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1549:1: ( ( rule__NavigatingCommaArgCS__Group__0 ) )
@@ -4633,7 +4633,7 @@
             // InternalEssentialOCL.g:1550:1: ( rule__NavigatingCommaArgCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1551:1: ( rule__NavigatingCommaArgCS__Group__0 )
             // InternalEssentialOCL.g:1551:2: rule__NavigatingCommaArgCS__Group__0
@@ -4647,7 +4647,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup());
             }
 
             }
@@ -4678,7 +4678,7 @@
             // InternalEssentialOCL.g:1565:1: ruleNavigatingSemiArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSRule()); 
+               before(grammarAccess.getNavigatingSemiArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingSemiArgCS();
@@ -4686,7 +4686,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSRule()); 
+               after(grammarAccess.getNavigatingSemiArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4709,7 +4709,7 @@
     public final void ruleNavigatingSemiArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1576:2: ( ( ( rule__NavigatingSemiArgCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1577:1: ( ( rule__NavigatingSemiArgCS__Group__0 ) )
@@ -4718,7 +4718,7 @@
             // InternalEssentialOCL.g:1578:1: ( rule__NavigatingSemiArgCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1579:1: ( rule__NavigatingSemiArgCS__Group__0 )
             // InternalEssentialOCL.g:1579:2: rule__NavigatingSemiArgCS__Group__0
@@ -4732,7 +4732,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup());
             }
 
             }
@@ -4763,7 +4763,7 @@
             // InternalEssentialOCL.g:1593:1: ruleNavigatingArgExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgExpCSRule()); 
+               before(grammarAccess.getNavigatingArgExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingArgExpCS();
@@ -4771,7 +4771,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgExpCSRule()); 
+               after(grammarAccess.getNavigatingArgExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4794,7 +4794,7 @@
     public final void ruleNavigatingArgExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1604:2: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:1605:1: ( ruleExpCS )
@@ -4803,7 +4803,7 @@
             // InternalEssentialOCL.g:1606:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall()); 
+               before(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -4811,7 +4811,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall()); 
+               after(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall());
             }
 
             }
@@ -4842,7 +4842,7 @@
             // InternalEssentialOCL.g:1621:1: ruleIfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSRule()); 
+               before(grammarAccess.getIfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleIfExpCS();
@@ -4850,7 +4850,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSRule()); 
+               after(grammarAccess.getIfExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4873,7 +4873,7 @@
     public final void ruleIfExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1632:2: ( ( ( rule__IfExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1633:1: ( ( rule__IfExpCS__Group__0 ) )
@@ -4882,7 +4882,7 @@
             // InternalEssentialOCL.g:1634:1: ( rule__IfExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getGroup()); 
+               before(grammarAccess.getIfExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1635:1: ( rule__IfExpCS__Group__0 )
             // InternalEssentialOCL.g:1635:2: rule__IfExpCS__Group__0
@@ -4896,7 +4896,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getGroup()); 
+               after(grammarAccess.getIfExpCSAccess().getGroup());
             }
 
             }
@@ -4927,7 +4927,7 @@
             // InternalEssentialOCL.g:1649:1: ruleElseIfThenExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSRule()); 
+               before(grammarAccess.getElseIfThenExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleElseIfThenExpCS();
@@ -4935,7 +4935,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSRule()); 
+               after(grammarAccess.getElseIfThenExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4958,7 +4958,7 @@
     public final void ruleElseIfThenExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1660:2: ( ( ( rule__ElseIfThenExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1661:1: ( ( rule__ElseIfThenExpCS__Group__0 ) )
@@ -4967,7 +4967,7 @@
             // InternalEssentialOCL.g:1662:1: ( rule__ElseIfThenExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getGroup()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1663:1: ( rule__ElseIfThenExpCS__Group__0 )
             // InternalEssentialOCL.g:1663:2: rule__ElseIfThenExpCS__Group__0
@@ -4981,7 +4981,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getGroup()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getGroup());
             }
 
             }
@@ -5012,7 +5012,7 @@
             // InternalEssentialOCL.g:1677:1: ruleLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSRule()); 
+               before(grammarAccess.getLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLetExpCS();
@@ -5020,7 +5020,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSRule()); 
+               after(grammarAccess.getLetExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5043,7 +5043,7 @@
     public final void ruleLetExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1688:2: ( ( ( rule__LetExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1689:1: ( ( rule__LetExpCS__Group__0 ) )
@@ -5052,7 +5052,7 @@
             // InternalEssentialOCL.g:1690:1: ( rule__LetExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getGroup()); 
+               before(grammarAccess.getLetExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1691:1: ( rule__LetExpCS__Group__0 )
             // InternalEssentialOCL.g:1691:2: rule__LetExpCS__Group__0
@@ -5066,7 +5066,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getGroup()); 
+               after(grammarAccess.getLetExpCSAccess().getGroup());
             }
 
             }
@@ -5097,7 +5097,7 @@
             // InternalEssentialOCL.g:1705:1: ruleLetVariableCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSRule()); 
+               before(grammarAccess.getLetVariableCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLetVariableCS();
@@ -5105,7 +5105,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSRule()); 
+               after(grammarAccess.getLetVariableCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5128,7 +5128,7 @@
     public final void ruleLetVariableCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1716:2: ( ( ( rule__LetVariableCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1717:1: ( ( rule__LetVariableCS__Group__0 ) )
@@ -5137,7 +5137,7 @@
             // InternalEssentialOCL.g:1718:1: ( rule__LetVariableCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getGroup()); 
+               before(grammarAccess.getLetVariableCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1719:1: ( rule__LetVariableCS__Group__0 )
             // InternalEssentialOCL.g:1719:2: rule__LetVariableCS__Group__0
@@ -5151,7 +5151,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getGroup()); 
+               after(grammarAccess.getLetVariableCSAccess().getGroup());
             }
 
             }
@@ -5182,7 +5182,7 @@
             // InternalEssentialOCL.g:1733:1: ruleNestedExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSRule()); 
+               before(grammarAccess.getNestedExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNestedExpCS();
@@ -5190,7 +5190,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSRule()); 
+               after(grammarAccess.getNestedExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5213,7 +5213,7 @@
     public final void ruleNestedExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1744:2: ( ( ( rule__NestedExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1745:1: ( ( rule__NestedExpCS__Group__0 ) )
@@ -5222,7 +5222,7 @@
             // InternalEssentialOCL.g:1746:1: ( rule__NestedExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getGroup()); 
+               before(grammarAccess.getNestedExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1747:1: ( rule__NestedExpCS__Group__0 )
             // InternalEssentialOCL.g:1747:2: rule__NestedExpCS__Group__0
@@ -5236,7 +5236,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getGroup()); 
+               after(grammarAccess.getNestedExpCSAccess().getGroup());
             }
 
             }
@@ -5267,7 +5267,7 @@
             // InternalEssentialOCL.g:1761:1: ruleSelfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSRule()); 
+               before(grammarAccess.getSelfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleSelfExpCS();
@@ -5275,7 +5275,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSRule()); 
+               after(grammarAccess.getSelfExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5298,7 +5298,7 @@
     public final void ruleSelfExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1772:2: ( ( ( rule__SelfExpCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1773:1: ( ( rule__SelfExpCS__Group__0 ) )
@@ -5307,7 +5307,7 @@
             // InternalEssentialOCL.g:1774:1: ( rule__SelfExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSAccess().getGroup()); 
+               before(grammarAccess.getSelfExpCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1775:1: ( rule__SelfExpCS__Group__0 )
             // InternalEssentialOCL.g:1775:2: rule__SelfExpCS__Group__0
@@ -5321,7 +5321,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSAccess().getGroup()); 
+               after(grammarAccess.getSelfExpCSAccess().getGroup());
             }
 
             }
@@ -5352,7 +5352,7 @@
             // InternalEssentialOCL.g:1789:1: ruleMultiplicityBoundsCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSRule()); 
+               before(grammarAccess.getMultiplicityBoundsCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityBoundsCS();
@@ -5360,7 +5360,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSRule()); 
+               after(grammarAccess.getMultiplicityBoundsCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5383,7 +5383,7 @@
     public final void ruleMultiplicityBoundsCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1800:2: ( ( ( rule__MultiplicityBoundsCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1801:1: ( ( rule__MultiplicityBoundsCS__Group__0 ) )
@@ -5392,7 +5392,7 @@
             // InternalEssentialOCL.g:1802:1: ( rule__MultiplicityBoundsCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1803:1: ( rule__MultiplicityBoundsCS__Group__0 )
             // InternalEssentialOCL.g:1803:2: rule__MultiplicityBoundsCS__Group__0
@@ -5406,7 +5406,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup());
             }
 
             }
@@ -5437,7 +5437,7 @@
             // InternalEssentialOCL.g:1817:1: ruleMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSRule()); 
+               before(grammarAccess.getMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityCS();
@@ -5445,7 +5445,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSRule()); 
+               after(grammarAccess.getMultiplicityCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5468,7 +5468,7 @@
     public final void ruleMultiplicityCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1828:2: ( ( ( rule__MultiplicityCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1829:1: ( ( rule__MultiplicityCS__Group__0 ) )
@@ -5477,7 +5477,7 @@
             // InternalEssentialOCL.g:1830:1: ( rule__MultiplicityCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getGroup()); 
+               before(grammarAccess.getMultiplicityCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1831:1: ( rule__MultiplicityCS__Group__0 )
             // InternalEssentialOCL.g:1831:2: rule__MultiplicityCS__Group__0
@@ -5491,7 +5491,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getGroup()); 
+               after(grammarAccess.getMultiplicityCSAccess().getGroup());
             }
 
             }
@@ -5522,7 +5522,7 @@
             // InternalEssentialOCL.g:1845:1: ruleMultiplicityStringCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSRule()); 
+               before(grammarAccess.getMultiplicityStringCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityStringCS();
@@ -5530,7 +5530,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSRule()); 
+               after(grammarAccess.getMultiplicityStringCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5553,7 +5553,7 @@
     public final void ruleMultiplicityStringCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1856:2: ( ( ( rule__MultiplicityStringCS__StringBoundsAssignment ) ) )
             // InternalEssentialOCL.g:1857:1: ( ( rule__MultiplicityStringCS__StringBoundsAssignment ) )
@@ -5562,7 +5562,7 @@
             // InternalEssentialOCL.g:1858:1: ( rule__MultiplicityStringCS__StringBoundsAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment()); 
+               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment());
             }
             // InternalEssentialOCL.g:1859:1: ( rule__MultiplicityStringCS__StringBoundsAssignment )
             // InternalEssentialOCL.g:1859:2: rule__MultiplicityStringCS__StringBoundsAssignment
@@ -5576,7 +5576,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment()); 
+               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment());
             }
 
             }
@@ -5607,7 +5607,7 @@
             // InternalEssentialOCL.g:1873:1: rulePathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSRule()); 
+               before(grammarAccess.getPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePathNameCS();
@@ -5615,7 +5615,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSRule()); 
+               after(grammarAccess.getPathNameCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5638,7 +5638,7 @@
     public final void rulePathNameCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1884:2: ( ( ( rule__PathNameCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1885:1: ( ( rule__PathNameCS__Group__0 ) )
@@ -5647,7 +5647,7 @@
             // InternalEssentialOCL.g:1886:1: ( rule__PathNameCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getGroup()); 
+               before(grammarAccess.getPathNameCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1887:1: ( rule__PathNameCS__Group__0 )
             // InternalEssentialOCL.g:1887:2: rule__PathNameCS__Group__0
@@ -5661,7 +5661,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getGroup()); 
+               after(grammarAccess.getPathNameCSAccess().getGroup());
             }
 
             }
@@ -5692,7 +5692,7 @@
             // InternalEssentialOCL.g:1901:1: ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSRule()); 
+               before(grammarAccess.getFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleFirstPathElementCS();
@@ -5700,7 +5700,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSRule()); 
+               after(grammarAccess.getFirstPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5723,7 +5723,7 @@
     public final void ruleFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1912:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
             // InternalEssentialOCL.g:1913:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
@@ -5732,7 +5732,7 @@
             // InternalEssentialOCL.g:1914:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
             // InternalEssentialOCL.g:1915:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             // InternalEssentialOCL.g:1915:2: rule__FirstPathElementCS__ReferredElementAssignment
@@ -5746,7 +5746,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
 
             }
@@ -5777,7 +5777,7 @@
             // InternalEssentialOCL.g:1929:1: ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSRule()); 
+               before(grammarAccess.getNextPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNextPathElementCS();
@@ -5785,7 +5785,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSRule()); 
+               after(grammarAccess.getNextPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5808,7 +5808,7 @@
     public final void ruleNextPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1940:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
             // InternalEssentialOCL.g:1941:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
@@ -5817,7 +5817,7 @@
             // InternalEssentialOCL.g:1942:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
             // InternalEssentialOCL.g:1943:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             // InternalEssentialOCL.g:1943:2: rule__NextPathElementCS__ReferredElementAssignment
@@ -5831,7 +5831,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
 
             }
@@ -5862,7 +5862,7 @@
             // InternalEssentialOCL.g:1957:1: ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSRule()); 
+               before(grammarAccess.getTemplateBindingCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTemplateBindingCS();
@@ -5870,7 +5870,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSRule()); 
+               after(grammarAccess.getTemplateBindingCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5893,7 +5893,7 @@
     public final void ruleTemplateBindingCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1968:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
             // InternalEssentialOCL.g:1969:1: ( ( rule__TemplateBindingCS__Group__0 ) )
@@ -5902,7 +5902,7 @@
             // InternalEssentialOCL.g:1970:1: ( rule__TemplateBindingCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getGroup()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:1971:1: ( rule__TemplateBindingCS__Group__0 )
             // InternalEssentialOCL.g:1971:2: rule__TemplateBindingCS__Group__0
@@ -5916,7 +5916,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getGroup()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
 
             }
@@ -5947,7 +5947,7 @@
             // InternalEssentialOCL.g:1985:1: ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTemplateParameterSubstitutionCS();
@@ -5955,7 +5955,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5978,7 +5978,7 @@
     public final void ruleTemplateParameterSubstitutionCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:1996:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
             // InternalEssentialOCL.g:1997:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
@@ -5987,7 +5987,7 @@
             // InternalEssentialOCL.g:1998:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
             // InternalEssentialOCL.g:1999:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             // InternalEssentialOCL.g:1999:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
@@ -6001,7 +6001,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
 
             }
@@ -6032,7 +6032,7 @@
             // InternalEssentialOCL.g:2015:1: ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSRule()); 
+               before(grammarAccess.getTypeParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeParameterCS();
@@ -6040,7 +6040,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSRule()); 
+               after(grammarAccess.getTypeParameterCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6063,7 +6063,7 @@
     public final void ruleTypeParameterCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2026:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
             // InternalEssentialOCL.g:2027:1: ( ( rule__TypeParameterCS__Group__0 ) )
@@ -6072,7 +6072,7 @@
             // InternalEssentialOCL.g:2028:1: ( rule__TypeParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:2029:1: ( rule__TypeParameterCS__Group__0 )
             // InternalEssentialOCL.g:2029:2: rule__TypeParameterCS__Group__0
@@ -6086,7 +6086,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
 
             }
@@ -6117,7 +6117,7 @@
             // InternalEssentialOCL.g:2043:1: ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeRefCSRule()); 
+               before(grammarAccess.getTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeRefCS();
@@ -6125,7 +6125,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeRefCSRule()); 
+               after(grammarAccess.getTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6148,7 +6148,7 @@
     public final void ruleTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2054:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
             // InternalEssentialOCL.g:2055:1: ( ( rule__TypeRefCS__Alternatives ) )
@@ -6157,7 +6157,7 @@
             // InternalEssentialOCL.g:2056:1: ( rule__TypeRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeRefCSAccess().getAlternatives()); 
+               before(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:2057:1: ( rule__TypeRefCS__Alternatives )
             // InternalEssentialOCL.g:2057:2: rule__TypeRefCS__Alternatives
@@ -6171,7 +6171,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeRefCSAccess().getAlternatives()); 
+               after(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
 
             }
@@ -6202,7 +6202,7 @@
             // InternalEssentialOCL.g:2071:1: ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedRefCSRule()); 
+               before(grammarAccess.getTypedRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypedRefCS();
@@ -6210,7 +6210,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedRefCSRule()); 
+               after(grammarAccess.getTypedRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6233,7 +6233,7 @@
     public final void ruleTypedRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2082:2: ( ( ruleTypedTypeRefCS ) )
             // InternalEssentialOCL.g:2083:1: ( ruleTypedTypeRefCS )
@@ -6242,7 +6242,7 @@
             // InternalEssentialOCL.g:2084:1: ruleTypedTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall()); 
+               before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedTypeRefCS();
@@ -6250,7 +6250,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall()); 
+               after(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall());
             }
 
             }
@@ -6281,7 +6281,7 @@
             // InternalEssentialOCL.g:2099:1: ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSRule()); 
+               before(grammarAccess.getTypedTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypedTypeRefCS();
@@ -6289,7 +6289,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSRule()); 
+               after(grammarAccess.getTypedTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6312,7 +6312,7 @@
     public final void ruleTypedTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2110:2: ( ( ( rule__TypedTypeRefCS__Group__0 ) ) )
             // InternalEssentialOCL.g:2111:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
@@ -6321,7 +6321,7 @@
             // InternalEssentialOCL.g:2112:1: ( rule__TypedTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getGroup()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:2113:1: ( rule__TypedTypeRefCS__Group__0 )
             // InternalEssentialOCL.g:2113:2: rule__TypedTypeRefCS__Group__0
@@ -6335,7 +6335,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getGroup()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getGroup());
             }
 
             }
@@ -6366,7 +6366,7 @@
             // InternalEssentialOCL.g:2127:1: ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSRule()); 
+               before(grammarAccess.getWildcardTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleWildcardTypeRefCS();
@@ -6374,7 +6374,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSRule()); 
+               after(grammarAccess.getWildcardTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6397,7 +6397,7 @@
     public final void ruleWildcardTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2138:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
             // InternalEssentialOCL.g:2139:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
@@ -6406,7 +6406,7 @@
             // InternalEssentialOCL.g:2140:1: ( rule__WildcardTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
             // InternalEssentialOCL.g:2141:1: ( rule__WildcardTypeRefCS__Group__0 )
             // InternalEssentialOCL.g:2141:2: rule__WildcardTypeRefCS__Group__0
@@ -6420,7 +6420,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
 
             }
@@ -6451,7 +6451,7 @@
             // InternalEssentialOCL.g:2155:1: ruleID EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIDRule()); 
+               before(grammarAccess.getIDRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleID();
@@ -6459,7 +6459,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIDRule()); 
+               after(grammarAccess.getIDRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6482,7 +6482,7 @@
     public final void ruleID() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2166:2: ( ( ( rule__ID__Alternatives ) ) )
             // InternalEssentialOCL.g:2167:1: ( ( rule__ID__Alternatives ) )
@@ -6491,7 +6491,7 @@
             // InternalEssentialOCL.g:2168:1: ( rule__ID__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIDAccess().getAlternatives()); 
+               before(grammarAccess.getIDAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:2169:1: ( rule__ID__Alternatives )
             // InternalEssentialOCL.g:2169:2: rule__ID__Alternatives
@@ -6505,7 +6505,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIDAccess().getAlternatives()); 
+               after(grammarAccess.getIDAccess().getAlternatives());
             }
 
             }
@@ -6536,7 +6536,7 @@
             // InternalEssentialOCL.g:2183:1: ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIdentifierRule()); 
+               before(grammarAccess.getIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleIdentifier();
@@ -6544,7 +6544,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIdentifierRule()); 
+               after(grammarAccess.getIdentifierRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6567,7 +6567,7 @@
     public final void ruleIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2194:2: ( ( ruleID ) )
             // InternalEssentialOCL.g:2195:1: ( ruleID )
@@ -6576,7 +6576,7 @@
             // InternalEssentialOCL.g:2196:1: ruleID
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
+               before(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleID();
@@ -6584,7 +6584,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
+               after(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
             }
 
             }
@@ -6615,7 +6615,7 @@
             // InternalEssentialOCL.g:2211:1: ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLOWERRule()); 
+               before(grammarAccess.getLOWERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLOWER();
@@ -6623,7 +6623,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLOWERRule()); 
+               after(grammarAccess.getLOWERRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6646,7 +6646,7 @@
     public final void ruleLOWER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2222:2: ( ( RULE_INT ) )
             // InternalEssentialOCL.g:2223:1: ( RULE_INT )
@@ -6655,11 +6655,11 @@
             // InternalEssentialOCL.g:2224:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+               before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+               after(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
             }
 
             }
@@ -6690,7 +6690,7 @@
             // InternalEssentialOCL.g:2239:1: ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNUMBER_LITERALRule()); 
+               before(grammarAccess.getNUMBER_LITERALRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNUMBER_LITERAL();
@@ -6698,7 +6698,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNUMBER_LITERALRule()); 
+               after(grammarAccess.getNUMBER_LITERALRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6721,7 +6721,7 @@
     public final void ruleNUMBER_LITERAL() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2250:2: ( ( RULE_INT ) )
             // InternalEssentialOCL.g:2251:1: ( RULE_INT )
@@ -6730,11 +6730,11 @@
             // InternalEssentialOCL.g:2252:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
+               before(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
+               after(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
             }
 
             }
@@ -6765,7 +6765,7 @@
             // InternalEssentialOCL.g:2267:1: ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralRule()); 
+               before(grammarAccess.getStringLiteralRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleStringLiteral();
@@ -6773,7 +6773,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralRule()); 
+               after(grammarAccess.getStringLiteralRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6796,7 +6796,7 @@
     public final void ruleStringLiteral() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2278:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalEssentialOCL.g:2279:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -6805,11 +6805,11 @@
             // InternalEssentialOCL.g:2280:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               before(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               after(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
 
             }
@@ -6840,7 +6840,7 @@
             // InternalEssentialOCL.g:2295:1: ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUPPERRule()); 
+               before(grammarAccess.getUPPERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUPPER();
@@ -6848,7 +6848,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUPPERRule()); 
+               after(grammarAccess.getUPPERRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6871,7 +6871,7 @@
     public final void ruleUPPER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2306:2: ( ( ( rule__UPPER__Alternatives ) ) )
             // InternalEssentialOCL.g:2307:1: ( ( rule__UPPER__Alternatives ) )
@@ -6880,7 +6880,7 @@
             // InternalEssentialOCL.g:2308:1: ( rule__UPPER__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUPPERAccess().getAlternatives()); 
+               before(grammarAccess.getUPPERAccess().getAlternatives());
             }
             // InternalEssentialOCL.g:2309:1: ( rule__UPPER__Alternatives )
             // InternalEssentialOCL.g:2309:2: rule__UPPER__Alternatives
@@ -6894,7 +6894,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUPPERAccess().getAlternatives()); 
+               after(grammarAccess.getUPPERAccess().getAlternatives());
             }
 
             }
@@ -6925,7 +6925,7 @@
             // InternalEssentialOCL.g:2323:1: ruleURI EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIRule()); 
+               before(grammarAccess.getURIRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleURI();
@@ -6933,7 +6933,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIRule()); 
+               after(grammarAccess.getURIRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6956,7 +6956,7 @@
     public final void ruleURI() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2334:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalEssentialOCL.g:2335:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -6965,11 +6965,11 @@
             // InternalEssentialOCL.g:2336:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               before(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               after(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
 
             }
@@ -6997,7 +6997,7 @@
     public final void rule__EssentialOCLUnaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2354:1: ( ( '-' ) | ( 'not' ) )
             int alt2=2;
@@ -7024,11 +7024,11 @@
                     // InternalEssentialOCL.g:2356:1: '-'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
+                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
                     }
                     match(input,16,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
+                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
                     }
 
                     }
@@ -7043,11 +7043,11 @@
                     // InternalEssentialOCL.g:2364:1: 'not'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
+                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
                     }
                     match(input,17,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
+                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
                     }
 
                     }
@@ -7077,7 +7077,7 @@
     public final void rule__EssentialOCLInfixOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2380:1: ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'or' ) | ( 'xor' ) | ( 'implies' ) )
             int alt3=14;
@@ -7168,11 +7168,11 @@
                     // InternalEssentialOCL.g:2382:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
                     }
                     match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
                     }
 
                     }
@@ -7187,11 +7187,11 @@
                     // InternalEssentialOCL.g:2390:1: '/'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
                     }
                     match(input,19,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
                     }
 
                     }
@@ -7206,11 +7206,11 @@
                     // InternalEssentialOCL.g:2398:1: '+'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
                     }
                     match(input,20,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
                     }
 
                     }
@@ -7225,11 +7225,11 @@
                     // InternalEssentialOCL.g:2406:1: '-'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
                     }
                     match(input,16,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
                     }
 
                     }
@@ -7244,11 +7244,11 @@
                     // InternalEssentialOCL.g:2414:1: '>'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
                     }
                     match(input,21,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
                     }
 
                     }
@@ -7263,11 +7263,11 @@
                     // InternalEssentialOCL.g:2422:1: '<'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
                     }
                     match(input,22,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
                     }
 
                     }
@@ -7282,11 +7282,11 @@
                     // InternalEssentialOCL.g:2430:1: '>='
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
                     }
                     match(input,23,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
                     }
 
                     }
@@ -7301,11 +7301,11 @@
                     // InternalEssentialOCL.g:2438:1: '<='
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
                     }
                     match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
                     }
 
                     }
@@ -7320,11 +7320,11 @@
                     // InternalEssentialOCL.g:2446:1: '='
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
                     }
                     match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
                     }
 
                     }
@@ -7339,11 +7339,11 @@
                     // InternalEssentialOCL.g:2454:1: '<>'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
                     }
                     match(input,26,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
                     }
 
                     }
@@ -7358,11 +7358,11 @@
                     // InternalEssentialOCL.g:2462:1: 'and'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
                     }
                     match(input,27,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
                     }
 
                     }
@@ -7377,11 +7377,11 @@
                     // InternalEssentialOCL.g:2470:1: 'or'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
                     }
                     match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
                     }
 
                     }
@@ -7396,11 +7396,11 @@
                     // InternalEssentialOCL.g:2478:1: 'xor'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
                     }
                     match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
                     }
 
                     }
@@ -7415,11 +7415,11 @@
                     // InternalEssentialOCL.g:2486:1: 'implies'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
                     }
                     match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
                     }
 
                     }
@@ -7449,7 +7449,7 @@
     public final void rule__EssentialOCLNavigationOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2502:1: ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) )
             int alt4=4;
@@ -7490,11 +7490,11 @@
                     // InternalEssentialOCL.g:2504:1: '.'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
                     }
                     match(input,31,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
                     }
 
                     }
@@ -7509,11 +7509,11 @@
                     // InternalEssentialOCL.g:2512:1: '->'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
                     }
                     match(input,32,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
                     }
 
                     }
@@ -7528,11 +7528,11 @@
                     // InternalEssentialOCL.g:2520:1: '?.'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
                     }
                     match(input,33,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
                     }
 
                     }
@@ -7547,11 +7547,11 @@
                     // InternalEssentialOCL.g:2528:1: '?->'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
                     }
                     match(input,34,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
                     }
 
                     }
@@ -7581,7 +7581,7 @@
     public final void rule__BinaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2544:1: ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) )
             int alt5=2;
@@ -7608,7 +7608,7 @@
                     // InternalEssentialOCL.g:2546:1: ruleInfixOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
+                       before(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleInfixOperatorName();
@@ -7616,7 +7616,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
+                       after(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
                     }
 
                     }
@@ -7631,7 +7631,7 @@
                     // InternalEssentialOCL.g:2552:1: ruleNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
+                       before(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNavigationOperatorName();
@@ -7639,7 +7639,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
+                       after(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
                     }
 
                     }
@@ -7669,7 +7669,7 @@
     public final void rule__EssentialOCLUnreservedName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2566:1: ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) )
             int alt6=5;
@@ -7727,7 +7727,7 @@
                     // InternalEssentialOCL.g:2568:1: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -7735,7 +7735,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
                     }
 
                     }
@@ -7750,7 +7750,7 @@
                     // InternalEssentialOCL.g:2574:1: ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionTypeIdentifier();
@@ -7758,7 +7758,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
                     }
 
                     }
@@ -7773,7 +7773,7 @@
                     // InternalEssentialOCL.g:2580:1: rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimitiveTypeIdentifier();
@@ -7781,7 +7781,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
                     }
 
                     }
@@ -7796,11 +7796,11 @@
                     // InternalEssentialOCL.g:2586:1: 'Map'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
                     }
                     match(input,35,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
                     }
 
                     }
@@ -7815,11 +7815,11 @@
                     // InternalEssentialOCL.g:2594:1: 'Tuple'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
                     }
                     match(input,36,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
                     }
 
                     }
@@ -7849,7 +7849,7 @@
     public final void rule__URIFirstPathElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2610:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) )
             int alt7=2;
@@ -7876,7 +7876,7 @@
                     // InternalEssentialOCL.g:2612:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0()); 
+                       before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0());
                     }
                     // InternalEssentialOCL.g:2613:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
                     // InternalEssentialOCL.g:2613:2: rule__URIFirstPathElementCS__ReferredElementAssignment_0
@@ -7890,7 +7890,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0()); 
+                       after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0());
                     }
 
                     }
@@ -7905,7 +7905,7 @@
                     // InternalEssentialOCL.g:2618:1: ( rule__URIFirstPathElementCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1()); 
+                       before(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1());
                     }
                     // InternalEssentialOCL.g:2619:1: ( rule__URIFirstPathElementCS__Group_1__0 )
                     // InternalEssentialOCL.g:2619:2: rule__URIFirstPathElementCS__Group_1__0
@@ -7919,7 +7919,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1()); 
+                       after(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1());
                     }
 
                     }
@@ -7949,7 +7949,7 @@
     public final void rule__PrimitiveTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2632:1: ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) )
             int alt8=8;
@@ -8010,11 +8010,11 @@
                     // InternalEssentialOCL.g:2634:1: 'Boolean'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
                     }
                     match(input,37,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
                     }
 
                     }
@@ -8029,11 +8029,11 @@
                     // InternalEssentialOCL.g:2642:1: 'Integer'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
                     }
                     match(input,38,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
                     }
 
                     }
@@ -8048,11 +8048,11 @@
                     // InternalEssentialOCL.g:2650:1: 'Real'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
                     }
                     match(input,39,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
                     }
 
                     }
@@ -8067,11 +8067,11 @@
                     // InternalEssentialOCL.g:2658:1: 'String'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
                     }
                     match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
                     }
 
                     }
@@ -8086,11 +8086,11 @@
                     // InternalEssentialOCL.g:2666:1: 'UnlimitedNatural'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
                     }
                     match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
                     }
 
                     }
@@ -8105,11 +8105,11 @@
                     // InternalEssentialOCL.g:2674:1: 'OclAny'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
                     }
                     match(input,42,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
                     }
 
                     }
@@ -8124,11 +8124,11 @@
                     // InternalEssentialOCL.g:2682:1: 'OclInvalid'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
                     }
                     match(input,43,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
                     }
 
                     }
@@ -8143,11 +8143,11 @@
                     // InternalEssentialOCL.g:2690:1: 'OclVoid'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
                     }
                     match(input,44,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
                     }
 
                     }
@@ -8177,7 +8177,7 @@
     public final void rule__CollectionTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2706:1: ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) )
             int alt9=5;
@@ -8223,11 +8223,11 @@
                     // InternalEssentialOCL.g:2708:1: 'Set'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
                     }
                     match(input,45,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
                     }
 
                     }
@@ -8242,11 +8242,11 @@
                     // InternalEssentialOCL.g:2716:1: 'Bag'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
                     }
                     match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
                     }
 
                     }
@@ -8261,11 +8261,11 @@
                     // InternalEssentialOCL.g:2724:1: 'Sequence'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
                     }
                     match(input,47,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
                     }
 
                     }
@@ -8280,11 +8280,11 @@
                     // InternalEssentialOCL.g:2732:1: 'Collection'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
                     }
                     match(input,48,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
                     }
 
                     }
@@ -8299,11 +8299,11 @@
                     // InternalEssentialOCL.g:2740:1: 'OrderedSet'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
                     }
                     match(input,49,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
                     }
 
                     }
@@ -8333,7 +8333,7 @@
     public final void rule__CollectionLiteralPartCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2756:1: ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) )
             int alt10=2;
@@ -8430,7 +8430,7 @@
                     // InternalEssentialOCL.g:2758:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0()); 
+                       before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0());
                     }
                     // InternalEssentialOCL.g:2759:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
                     // InternalEssentialOCL.g:2759:2: rule__CollectionLiteralPartCS__Group_0__0
@@ -8444,7 +8444,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0()); 
+                       after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0());
                     }
 
                     }
@@ -8459,7 +8459,7 @@
                     // InternalEssentialOCL.g:2764:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1()); 
+                       before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1());
                     }
                     // InternalEssentialOCL.g:2765:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
                     // InternalEssentialOCL.g:2765:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1
@@ -8473,7 +8473,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1()); 
+                       after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1());
                     }
 
                     }
@@ -8503,7 +8503,7 @@
     public final void rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2778:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt11=2;
@@ -8600,7 +8600,7 @@
                     // InternalEssentialOCL.g:2780:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
+                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleExpCS();
@@ -8608,7 +8608,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
+                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
                     }
 
                     }
@@ -8623,7 +8623,7 @@
                     // InternalEssentialOCL.g:2786:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
+                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePatternExpCS();
@@ -8631,7 +8631,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
+                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
                     }
 
                     }
@@ -8661,7 +8661,7 @@
     public final void rule__PrimitiveLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2800:1: ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) )
             int alt12=6;
@@ -8713,7 +8713,7 @@
                     // InternalEssentialOCL.g:2802:1: ruleNumberLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNumberLiteralExpCS();
@@ -8721,7 +8721,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
                     }
 
                     }
@@ -8736,7 +8736,7 @@
                     // InternalEssentialOCL.g:2808:1: ruleStringLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleStringLiteralExpCS();
@@ -8744,7 +8744,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
                     }
 
                     }
@@ -8759,7 +8759,7 @@
                     // InternalEssentialOCL.g:2814:1: ruleBooleanLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleBooleanLiteralExpCS();
@@ -8767,7 +8767,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
                     }
 
                     }
@@ -8782,7 +8782,7 @@
                     // InternalEssentialOCL.g:2820:1: ruleUnlimitedNaturalLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnlimitedNaturalLiteralExpCS();
@@ -8790,7 +8790,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
                     }
 
                     }
@@ -8805,7 +8805,7 @@
                     // InternalEssentialOCL.g:2826:1: ruleInvalidLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleInvalidLiteralExpCS();
@@ -8813,7 +8813,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
                     }
 
                     }
@@ -8828,7 +8828,7 @@
                     // InternalEssentialOCL.g:2832:1: ruleNullLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNullLiteralExpCS();
@@ -8836,7 +8836,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
                     }
 
                     }
@@ -8866,7 +8866,7 @@
     public final void rule__BooleanLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2846:1: ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) )
             int alt13=2;
@@ -8893,7 +8893,7 @@
                     // InternalEssentialOCL.g:2848:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0()); 
+                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0());
                     }
                     // InternalEssentialOCL.g:2849:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
                     // InternalEssentialOCL.g:2849:2: rule__BooleanLiteralExpCS__SymbolAssignment_0
@@ -8907,7 +8907,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0()); 
+                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0());
                     }
 
                     }
@@ -8922,7 +8922,7 @@
                     // InternalEssentialOCL.g:2854:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1()); 
+                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1());
                     }
                     // InternalEssentialOCL.g:2855:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
                     // InternalEssentialOCL.g:2855:2: rule__BooleanLiteralExpCS__SymbolAssignment_1
@@ -8936,7 +8936,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1()); 
+                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1());
                     }
 
                     }
@@ -8966,7 +8966,7 @@
     public final void rule__TypeLiteralCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2868:1: ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) )
             int alt14=4;
@@ -9018,7 +9018,7 @@
                     // InternalEssentialOCL.g:2870:1: rulePrimitiveTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimitiveTypeCS();
@@ -9026,7 +9026,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
                     }
 
                     }
@@ -9041,7 +9041,7 @@
                     // InternalEssentialOCL.g:2876:1: ruleCollectionTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionTypeCS();
@@ -9049,7 +9049,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
                     }
 
                     }
@@ -9064,7 +9064,7 @@
                     // InternalEssentialOCL.g:2882:1: ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMapTypeCS();
@@ -9072,7 +9072,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
                     }
 
                     }
@@ -9087,7 +9087,7 @@
                     // InternalEssentialOCL.g:2888:1: ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTupleTypeCS();
@@ -9095,7 +9095,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
                     }
 
                     }
@@ -9125,7 +9125,7 @@
     public final void rule__TypeExpCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2902:1: ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) )
             int alt15=3;
@@ -9138,7 +9138,7 @@
                     // InternalEssentialOCL.g:2904:1: ruleTypeNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
+                       before(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeNameExpCS();
@@ -9146,7 +9146,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
+                       after(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
                     }
 
                     }
@@ -9161,7 +9161,7 @@
                     // InternalEssentialOCL.g:2910:1: ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+                       before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeLiteralCS();
@@ -9169,7 +9169,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+                       after(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
                     }
 
                     }
@@ -9184,7 +9184,7 @@
                     // InternalEssentialOCL.g:2916:1: ruleCollectionPatternCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
+                       before(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionPatternCS();
@@ -9192,7 +9192,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
+                       after(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
                     }
 
                     }
@@ -9222,7 +9222,7 @@
     public final void rule__ExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2930:1: ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) )
             int alt16=2;
@@ -9235,7 +9235,7 @@
                     // InternalEssentialOCL.g:2932:1: ( rule__ExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getExpCSAccess().getGroup_0()); 
+                       before(grammarAccess.getExpCSAccess().getGroup_0());
                     }
                     // InternalEssentialOCL.g:2933:1: ( rule__ExpCS__Group_0__0 )
                     // InternalEssentialOCL.g:2933:2: rule__ExpCS__Group_0__0
@@ -9249,7 +9249,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getExpCSAccess().getGroup_0()); 
+                       after(grammarAccess.getExpCSAccess().getGroup_0());
                     }
 
                     }
@@ -9264,7 +9264,7 @@
                     // InternalEssentialOCL.g:2938:1: rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrefixedLetExpCS();
@@ -9272,7 +9272,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
                     }
 
                     }
@@ -9302,7 +9302,7 @@
     public final void rule__PrefixedLetExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2952:1: ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) )
             int alt17=2;
@@ -9329,7 +9329,7 @@
                     // InternalEssentialOCL.g:2954:1: ( rule__PrefixedLetExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0()); 
+                       before(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0());
                     }
                     // InternalEssentialOCL.g:2955:1: ( rule__PrefixedLetExpCS__Group_0__0 )
                     // InternalEssentialOCL.g:2955:2: rule__PrefixedLetExpCS__Group_0__0
@@ -9343,7 +9343,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0()); 
+                       after(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0());
                     }
 
                     }
@@ -9358,7 +9358,7 @@
                     // InternalEssentialOCL.g:2960:1: ruleLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleLetExpCS();
@@ -9366,7 +9366,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
                     }
 
                     }
@@ -9396,7 +9396,7 @@
     public final void rule__PrefixedPrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2974:1: ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) )
             int alt18=2;
@@ -9423,7 +9423,7 @@
                     // InternalEssentialOCL.g:2976:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0()); 
+                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0());
                     }
                     // InternalEssentialOCL.g:2977:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
                     // InternalEssentialOCL.g:2977:2: rule__PrefixedPrimaryExpCS__Group_0__0
@@ -9437,7 +9437,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0()); 
+                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0());
                     }
 
                     }
@@ -9452,7 +9452,7 @@
                     // InternalEssentialOCL.g:2982:1: rulePrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimaryExpCS();
@@ -9460,7 +9460,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
                     }
 
                     }
@@ -9490,7 +9490,7 @@
     public final void rule__PrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:2996:1: ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) )
             int alt19=10;
@@ -9503,7 +9503,7 @@
                     // InternalEssentialOCL.g:2998:1: ruleNestedExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNestedExpCS();
@@ -9511,7 +9511,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
                     }
 
                     }
@@ -9526,7 +9526,7 @@
                     // InternalEssentialOCL.g:3004:1: ruleIfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleIfExpCS();
@@ -9534,7 +9534,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
                     }
 
                     }
@@ -9549,7 +9549,7 @@
                     // InternalEssentialOCL.g:3010:1: ruleSelfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleSelfExpCS();
@@ -9557,7 +9557,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
                     }
 
                     }
@@ -9572,7 +9572,7 @@
                     // InternalEssentialOCL.g:3016:1: rulePrimitiveLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimitiveLiteralExpCS();
@@ -9580,7 +9580,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
                     }
 
                     }
@@ -9595,7 +9595,7 @@
                     // InternalEssentialOCL.g:3022:1: ruleTupleLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTupleLiteralExpCS();
@@ -9603,7 +9603,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
                     }
 
                     }
@@ -9618,7 +9618,7 @@
                     // InternalEssentialOCL.g:3028:1: ruleMapLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMapLiteralExpCS();
@@ -9626,7 +9626,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
                     }
 
                     }
@@ -9641,7 +9641,7 @@
                     // InternalEssentialOCL.g:3034:1: ruleCollectionLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionLiteralExpCS();
@@ -9649,7 +9649,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
                     }
 
                     }
@@ -9664,7 +9664,7 @@
                     // InternalEssentialOCL.g:3040:1: ruleLambdaLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleLambdaLiteralExpCS();
@@ -9672,7 +9672,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
                     }
 
                     }
@@ -9687,7 +9687,7 @@
                     // InternalEssentialOCL.g:3046:1: ruleTypeLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeLiteralExpCS();
@@ -9695,7 +9695,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
                     }
 
                     }
@@ -9710,7 +9710,7 @@
                     // InternalEssentialOCL.g:3052:1: ruleNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNameExpCS();
@@ -9718,7 +9718,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
                     }
 
                     }
@@ -9748,7 +9748,7 @@
     public final void rule__CurlyBracketedClauseCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3066:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_0__0 )? ) | ( ( rule__CurlyBracketedClauseCS__ValueAssignment_2_1 ) ) )
             int alt21=2;
@@ -9775,7 +9775,7 @@
                     // InternalEssentialOCL.g:3068:1: ( rule__CurlyBracketedClauseCS__Group_2_0__0 )?
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0()); 
+                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0());
                     }
                     // InternalEssentialOCL.g:3069:1: ( rule__CurlyBracketedClauseCS__Group_2_0__0 )?
                     int alt20=2;
@@ -9800,7 +9800,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0()); 
+                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0());
                     }
 
                     }
@@ -9815,7 +9815,7 @@
                     // InternalEssentialOCL.g:3074:1: ( rule__CurlyBracketedClauseCS__ValueAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1()); 
+                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1());
                     }
                     // InternalEssentialOCL.g:3075:1: ( rule__CurlyBracketedClauseCS__ValueAssignment_2_1 )
                     // InternalEssentialOCL.g:3075:2: rule__CurlyBracketedClauseCS__ValueAssignment_2_1
@@ -9829,7 +9829,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1()); 
+                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1());
                     }
 
                     }
@@ -9859,7 +9859,7 @@
     public final void rule__NavigatingArgCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3088:1: ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) )
             int alt22=2;
@@ -9886,7 +9886,7 @@
                     // InternalEssentialOCL.g:3090:1: ( rule__NavigatingArgCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0());
                     }
                     // InternalEssentialOCL.g:3091:1: ( rule__NavigatingArgCS__Group_0__0 )
                     // InternalEssentialOCL.g:3091:2: rule__NavigatingArgCS__Group_0__0
@@ -9900,7 +9900,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0());
                     }
 
                     }
@@ -9915,7 +9915,7 @@
                     // InternalEssentialOCL.g:3096:1: ( rule__NavigatingArgCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_1()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_1());
                     }
                     // InternalEssentialOCL.g:3097:1: ( rule__NavigatingArgCS__Group_1__0 )
                     // InternalEssentialOCL.g:3097:2: rule__NavigatingArgCS__Group_1__0
@@ -9929,7 +9929,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_1()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_1());
                     }
 
                     }
@@ -9959,7 +9959,7 @@
     public final void rule__NavigatingArgCS__Alternatives_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3110:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) )
             int alt23=2;
@@ -9986,7 +9986,7 @@
                     // InternalEssentialOCL.g:3112:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
                     }
                     // InternalEssentialOCL.g:3113:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
                     // InternalEssentialOCL.g:3113:2: rule__NavigatingArgCS__Group_0_1_0__0
@@ -10000,7 +10000,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
                     }
 
                     }
@@ -10015,7 +10015,7 @@
                     // InternalEssentialOCL.g:3118:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
                     }
                     // InternalEssentialOCL.g:3119:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
                     // InternalEssentialOCL.g:3119:2: rule__NavigatingArgCS__Group_0_1_1__0
@@ -10029,7 +10029,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
                     }
 
                     }
@@ -10059,7 +10059,7 @@
     public final void rule__NavigatingCommaArgCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3132:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) )
             int alt24=2;
@@ -10086,7 +10086,7 @@
                     // InternalEssentialOCL.g:3134:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0()); 
+                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
                     }
                     // InternalEssentialOCL.g:3135:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
                     // InternalEssentialOCL.g:3135:2: rule__NavigatingCommaArgCS__Group_2_0__0
@@ -10100,7 +10100,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0()); 
+                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
                     }
 
                     }
@@ -10115,7 +10115,7 @@
                     // InternalEssentialOCL.g:3140:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1()); 
+                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
                     }
                     // InternalEssentialOCL.g:3141:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
                     // InternalEssentialOCL.g:3141:2: rule__NavigatingCommaArgCS__Group_2_1__0
@@ -10129,7 +10129,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1()); 
+                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
                     }
 
                     }
@@ -10159,7 +10159,7 @@
     public final void rule__IfExpCS__OwnedConditionAlternatives_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3154:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt25=2;
@@ -10256,7 +10256,7 @@
                     // InternalEssentialOCL.g:3156:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
+                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleExpCS();
@@ -10264,7 +10264,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
+                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
                     }
 
                     }
@@ -10279,7 +10279,7 @@
                     // InternalEssentialOCL.g:3162:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
+                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePatternExpCS();
@@ -10287,7 +10287,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
+                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
                     }
 
                     }
@@ -10317,7 +10317,7 @@
     public final void rule__MultiplicityCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3176:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
             int alt26=2;
@@ -10344,7 +10344,7 @@
                     // InternalEssentialOCL.g:3178:1: ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMultiplicityBoundsCS();
@@ -10352,7 +10352,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
                     }
 
                     }
@@ -10367,7 +10367,7 @@
                     // InternalEssentialOCL.g:3184:1: ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMultiplicityStringCS();
@@ -10375,7 +10375,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
                     }
 
                     }
@@ -10405,7 +10405,7 @@
     public final void rule__MultiplicityCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3198:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
             int alt27=2;
@@ -10432,11 +10432,11 @@
                     // InternalEssentialOCL.g:3200:1: '|?'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
                     }
                     match(input,50,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
                     }
 
                     }
@@ -10451,7 +10451,7 @@
                     // InternalEssentialOCL.g:3208:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
                     // InternalEssentialOCL.g:3209:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     // InternalEssentialOCL.g:3209:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
@@ -10465,7 +10465,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
 
                     }
@@ -10495,7 +10495,7 @@
     public final void rule__MultiplicityStringCS__StringBoundsAlternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3222:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
             int alt28=3;
@@ -10531,11 +10531,11 @@
                     // InternalEssentialOCL.g:3224:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
                     }
                     match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
                     }
 
                     }
@@ -10550,11 +10550,11 @@
                     // InternalEssentialOCL.g:3232:1: '+'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
                     }
                     match(input,20,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
                     }
 
                     }
@@ -10569,11 +10569,11 @@
                     // InternalEssentialOCL.g:3240:1: '?'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
                     }
                     match(input,51,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
                     }
 
                     }
@@ -10603,7 +10603,7 @@
     public final void rule__TypeRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3256:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
             int alt29=2;
@@ -10630,7 +10630,7 @@
                     // InternalEssentialOCL.g:3258:1: ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+                       before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypedRefCS();
@@ -10638,7 +10638,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+                       after(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
                     }
 
                     }
@@ -10653,7 +10653,7 @@
                     // InternalEssentialOCL.g:3264:1: ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+                       before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleWildcardTypeRefCS();
@@ -10661,7 +10661,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+                       after(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
                     }
 
                     }
@@ -10691,7 +10691,7 @@
     public final void rule__ID__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3278:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
             int alt30=2;
@@ -10718,11 +10718,11 @@
                     // InternalEssentialOCL.g:3280:1: RULE_SIMPLE_ID
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+                       before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
                     }
                     match(input,RULE_SIMPLE_ID,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+                       after(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
                     }
 
                     }
@@ -10737,11 +10737,11 @@
                     // InternalEssentialOCL.g:3286:1: RULE_ESCAPED_ID
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+                       before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
                     }
                     match(input,RULE_ESCAPED_ID,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+                       after(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
                     }
 
                     }
@@ -10771,7 +10771,7 @@
     public final void rule__UPPER__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3300:1: ( ( RULE_INT ) | ( '*' ) )
             int alt31=2;
@@ -10798,11 +10798,11 @@
                     // InternalEssentialOCL.g:3302:1: RULE_INT
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+                       before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
                     }
                     match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+                       after(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
                     }
 
                     }
@@ -10817,11 +10817,11 @@
                     // InternalEssentialOCL.g:3308:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+                       before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
                     }
                     match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+                       after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
                     }
 
                     }
@@ -10851,7 +10851,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3328:1: ( rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 )
             // InternalEssentialOCL.g:3329:2: rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1
@@ -10889,7 +10889,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3340:1: ( ( () ) )
             // InternalEssentialOCL.g:3341:1: ( () )
@@ -10898,15 +10898,15 @@
             // InternalEssentialOCL.g:3342:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0());
             }
             // InternalEssentialOCL.g:3343:1: ()
-            // InternalEssentialOCL.g:3345:1: 
+            // InternalEssentialOCL.g:3345:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0());
             }
 
             }
@@ -10930,7 +10930,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3359:1: ( rule__URIFirstPathElementCS__Group_1__1__Impl )
             // InternalEssentialOCL.g:3360:2: rule__URIFirstPathElementCS__Group_1__1__Impl
@@ -10963,7 +10963,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3370:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) )
             // InternalEssentialOCL.g:3371:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
@@ -10972,7 +10972,7 @@
             // InternalEssentialOCL.g:3372:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1());
             }
             // InternalEssentialOCL.g:3373:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
             // InternalEssentialOCL.g:3373:2: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1
@@ -10986,7 +10986,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1());
             }
 
             }
@@ -11014,7 +11014,7 @@
     public final void rule__CollectionTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3391:1: ( rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 )
             // InternalEssentialOCL.g:3392:2: rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1
@@ -11052,7 +11052,7 @@
     public final void rule__CollectionTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3403:1: ( ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) )
             // InternalEssentialOCL.g:3404:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
@@ -11061,7 +11061,7 @@
             // InternalEssentialOCL.g:3405:1: ( rule__CollectionTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0());
             }
             // InternalEssentialOCL.g:3406:1: ( rule__CollectionTypeCS__NameAssignment_0 )
             // InternalEssentialOCL.g:3406:2: rule__CollectionTypeCS__NameAssignment_0
@@ -11075,7 +11075,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0());
             }
 
             }
@@ -11103,7 +11103,7 @@
     public final void rule__CollectionTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3420:1: ( rule__CollectionTypeCS__Group__1__Impl )
             // InternalEssentialOCL.g:3421:2: rule__CollectionTypeCS__Group__1__Impl
@@ -11136,7 +11136,7 @@
     public final void rule__CollectionTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3431:1: ( ( ( rule__CollectionTypeCS__Group_1__0 )? ) )
             // InternalEssentialOCL.g:3432:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
@@ -11145,7 +11145,7 @@
             // InternalEssentialOCL.g:3433:1: ( rule__CollectionTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getGroup_1()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getGroup_1());
             }
             // InternalEssentialOCL.g:3434:1: ( rule__CollectionTypeCS__Group_1__0 )?
             int alt32=2;
@@ -11170,7 +11170,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getGroup_1()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getGroup_1());
             }
 
             }
@@ -11198,7 +11198,7 @@
     public final void rule__CollectionTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3452:1: ( rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 )
             // InternalEssentialOCL.g:3453:2: rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1
@@ -11236,7 +11236,7 @@
     public final void rule__CollectionTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3464:1: ( ( '(' ) )
             // InternalEssentialOCL.g:3465:1: ( '(' )
@@ -11245,11 +11245,11 @@
             // InternalEssentialOCL.g:3466:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -11277,7 +11277,7 @@
     public final void rule__CollectionTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3483:1: ( rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 )
             // InternalEssentialOCL.g:3484:2: rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2
@@ -11315,7 +11315,7 @@
     public final void rule__CollectionTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3495:1: ( ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) )
             // InternalEssentialOCL.g:3496:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
@@ -11324,7 +11324,7 @@
             // InternalEssentialOCL.g:3497:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1());
             }
             // InternalEssentialOCL.g:3498:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
             // InternalEssentialOCL.g:3498:2: rule__CollectionTypeCS__OwnedTypeAssignment_1_1
@@ -11338,7 +11338,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1());
             }
 
             }
@@ -11366,7 +11366,7 @@
     public final void rule__CollectionTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3512:1: ( rule__CollectionTypeCS__Group_1__2__Impl )
             // InternalEssentialOCL.g:3513:2: rule__CollectionTypeCS__Group_1__2__Impl
@@ -11399,7 +11399,7 @@
     public final void rule__CollectionTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3523:1: ( ( ')' ) )
             // InternalEssentialOCL.g:3524:1: ( ')' )
@@ -11408,11 +11408,11 @@
             // InternalEssentialOCL.g:3525:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
             match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
 
             }
@@ -11440,7 +11440,7 @@
     public final void rule__MapTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3548:1: ( rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 )
             // InternalEssentialOCL.g:3549:2: rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1
@@ -11478,7 +11478,7 @@
     public final void rule__MapTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3560:1: ( ( ( rule__MapTypeCS__NameAssignment_0 ) ) )
             // InternalEssentialOCL.g:3561:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
@@ -11487,7 +11487,7 @@
             // InternalEssentialOCL.g:3562:1: ( rule__MapTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getNameAssignment_0());
             }
             // InternalEssentialOCL.g:3563:1: ( rule__MapTypeCS__NameAssignment_0 )
             // InternalEssentialOCL.g:3563:2: rule__MapTypeCS__NameAssignment_0
@@ -11501,7 +11501,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getNameAssignment_0());
             }
 
             }
@@ -11529,7 +11529,7 @@
     public final void rule__MapTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3577:1: ( rule__MapTypeCS__Group__1__Impl )
             // InternalEssentialOCL.g:3578:2: rule__MapTypeCS__Group__1__Impl
@@ -11562,7 +11562,7 @@
     public final void rule__MapTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3588:1: ( ( ( rule__MapTypeCS__Group_1__0 )? ) )
             // InternalEssentialOCL.g:3589:1: ( ( rule__MapTypeCS__Group_1__0 )? )
@@ -11571,7 +11571,7 @@
             // InternalEssentialOCL.g:3590:1: ( rule__MapTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getGroup_1()); 
+               before(grammarAccess.getMapTypeCSAccess().getGroup_1());
             }
             // InternalEssentialOCL.g:3591:1: ( rule__MapTypeCS__Group_1__0 )?
             int alt33=2;
@@ -11596,7 +11596,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getGroup_1()); 
+               after(grammarAccess.getMapTypeCSAccess().getGroup_1());
             }
 
             }
@@ -11624,7 +11624,7 @@
     public final void rule__MapTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3609:1: ( rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 )
             // InternalEssentialOCL.g:3610:2: rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1
@@ -11662,7 +11662,7 @@
     public final void rule__MapTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3621:1: ( ( '(' ) )
             // InternalEssentialOCL.g:3622:1: ( '(' )
@@ -11671,11 +11671,11 @@
             // InternalEssentialOCL.g:3623:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -11703,7 +11703,7 @@
     public final void rule__MapTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3640:1: ( rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 )
             // InternalEssentialOCL.g:3641:2: rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2
@@ -11741,7 +11741,7 @@
     public final void rule__MapTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3652:1: ( ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) )
             // InternalEssentialOCL.g:3653:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
@@ -11750,7 +11750,7 @@
             // InternalEssentialOCL.g:3654:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1());
             }
             // InternalEssentialOCL.g:3655:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
             // InternalEssentialOCL.g:3655:2: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1
@@ -11764,7 +11764,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1());
             }
 
             }
@@ -11792,7 +11792,7 @@
     public final void rule__MapTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3669:1: ( rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 )
             // InternalEssentialOCL.g:3670:2: rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3
@@ -11830,7 +11830,7 @@
     public final void rule__MapTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3681:1: ( ( ',' ) )
             // InternalEssentialOCL.g:3682:1: ( ',' )
@@ -11839,11 +11839,11 @@
             // InternalEssentialOCL.g:3683:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); 
+               before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
             }
             match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); 
+               after(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
             }
 
             }
@@ -11871,7 +11871,7 @@
     public final void rule__MapTypeCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3700:1: ( rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 )
             // InternalEssentialOCL.g:3701:2: rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4
@@ -11909,7 +11909,7 @@
     public final void rule__MapTypeCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3712:1: ( ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) )
             // InternalEssentialOCL.g:3713:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
@@ -11918,7 +11918,7 @@
             // InternalEssentialOCL.g:3714:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3());
             }
             // InternalEssentialOCL.g:3715:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
             // InternalEssentialOCL.g:3715:2: rule__MapTypeCS__OwnedValueTypeAssignment_1_3
@@ -11932,7 +11932,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3());
             }
 
             }
@@ -11960,7 +11960,7 @@
     public final void rule__MapTypeCS__Group_1__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3729:1: ( rule__MapTypeCS__Group_1__4__Impl )
             // InternalEssentialOCL.g:3730:2: rule__MapTypeCS__Group_1__4__Impl
@@ -11993,7 +11993,7 @@
     public final void rule__MapTypeCS__Group_1__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3740:1: ( ( ')' ) )
             // InternalEssentialOCL.g:3741:1: ( ')' )
@@ -12002,11 +12002,11 @@
             // InternalEssentialOCL.g:3742:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); 
+               before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
             }
             match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); 
+               after(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
             }
 
             }
@@ -12034,7 +12034,7 @@
     public final void rule__TupleTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3769:1: ( rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 )
             // InternalEssentialOCL.g:3770:2: rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1
@@ -12072,7 +12072,7 @@
     public final void rule__TupleTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3781:1: ( ( ( rule__TupleTypeCS__NameAssignment_0 ) ) )
             // InternalEssentialOCL.g:3782:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
@@ -12081,7 +12081,7 @@
             // InternalEssentialOCL.g:3783:1: ( rule__TupleTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0());
             }
             // InternalEssentialOCL.g:3784:1: ( rule__TupleTypeCS__NameAssignment_0 )
             // InternalEssentialOCL.g:3784:2: rule__TupleTypeCS__NameAssignment_0
@@ -12095,7 +12095,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0());
             }
 
             }
@@ -12123,7 +12123,7 @@
     public final void rule__TupleTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3798:1: ( rule__TupleTypeCS__Group__1__Impl )
             // InternalEssentialOCL.g:3799:2: rule__TupleTypeCS__Group__1__Impl
@@ -12156,7 +12156,7 @@
     public final void rule__TupleTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3809:1: ( ( ( rule__TupleTypeCS__Group_1__0 )? ) )
             // InternalEssentialOCL.g:3810:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
@@ -12165,7 +12165,7 @@
             // InternalEssentialOCL.g:3811:1: ( rule__TupleTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup_1());
             }
             // InternalEssentialOCL.g:3812:1: ( rule__TupleTypeCS__Group_1__0 )?
             int alt34=2;
@@ -12190,7 +12190,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup_1());
             }
 
             }
@@ -12218,7 +12218,7 @@
     public final void rule__TupleTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3830:1: ( rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 )
             // InternalEssentialOCL.g:3831:2: rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1
@@ -12256,7 +12256,7 @@
     public final void rule__TupleTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3842:1: ( ( '(' ) )
             // InternalEssentialOCL.g:3843:1: ( '(' )
@@ -12265,11 +12265,11 @@
             // InternalEssentialOCL.g:3844:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -12297,7 +12297,7 @@
     public final void rule__TupleTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3861:1: ( rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 )
             // InternalEssentialOCL.g:3862:2: rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2
@@ -12335,7 +12335,7 @@
     public final void rule__TupleTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3873:1: ( ( ( rule__TupleTypeCS__Group_1_1__0 )? ) )
             // InternalEssentialOCL.g:3874:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
@@ -12344,7 +12344,7 @@
             // InternalEssentialOCL.g:3875:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1());
             }
             // InternalEssentialOCL.g:3876:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             int alt35=2;
@@ -12369,7 +12369,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1());
             }
 
             }
@@ -12397,7 +12397,7 @@
     public final void rule__TupleTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3890:1: ( rule__TupleTypeCS__Group_1__2__Impl )
             // InternalEssentialOCL.g:3891:2: rule__TupleTypeCS__Group_1__2__Impl
@@ -12430,7 +12430,7 @@
     public final void rule__TupleTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3901:1: ( ( ')' ) )
             // InternalEssentialOCL.g:3902:1: ( ')' )
@@ -12439,11 +12439,11 @@
             // InternalEssentialOCL.g:3903:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
             match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               after(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
 
             }
@@ -12471,7 +12471,7 @@
     public final void rule__TupleTypeCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3926:1: ( rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 )
             // InternalEssentialOCL.g:3927:2: rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1
@@ -12509,7 +12509,7 @@
     public final void rule__TupleTypeCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3938:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) )
             // InternalEssentialOCL.g:3939:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
@@ -12518,7 +12518,7 @@
             // InternalEssentialOCL.g:3940:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0());
             }
             // InternalEssentialOCL.g:3941:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
             // InternalEssentialOCL.g:3941:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0
@@ -12532,7 +12532,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0());
             }
 
             }
@@ -12560,7 +12560,7 @@
     public final void rule__TupleTypeCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3955:1: ( rule__TupleTypeCS__Group_1_1__1__Impl )
             // InternalEssentialOCL.g:3956:2: rule__TupleTypeCS__Group_1_1__1__Impl
@@ -12593,7 +12593,7 @@
     public final void rule__TupleTypeCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3966:1: ( ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) )
             // InternalEssentialOCL.g:3967:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
@@ -12602,7 +12602,7 @@
             // InternalEssentialOCL.g:3968:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1());
             }
             // InternalEssentialOCL.g:3969:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             loop36:
@@ -12634,7 +12634,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1());
             }
 
             }
@@ -12662,7 +12662,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3987:1: ( rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 )
             // InternalEssentialOCL.g:3988:2: rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1
@@ -12700,7 +12700,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:3999:1: ( ( ',' ) )
             // InternalEssentialOCL.g:4000:1: ( ',' )
@@ -12709,11 +12709,11 @@
             // InternalEssentialOCL.g:4001:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
             }
             match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
             }
 
             }
@@ -12741,7 +12741,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4018:1: ( rule__TupleTypeCS__Group_1_1_1__1__Impl )
             // InternalEssentialOCL.g:4019:2: rule__TupleTypeCS__Group_1_1_1__1__Impl
@@ -12774,7 +12774,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4029:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) )
             // InternalEssentialOCL.g:4030:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
@@ -12783,7 +12783,7 @@
             // InternalEssentialOCL.g:4031:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1());
             }
             // InternalEssentialOCL.g:4032:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
             // InternalEssentialOCL.g:4032:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1
@@ -12797,7 +12797,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1());
             }
 
             }
@@ -12825,7 +12825,7 @@
     public final void rule__TuplePartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4050:1: ( rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 )
             // InternalEssentialOCL.g:4051:2: rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1
@@ -12863,7 +12863,7 @@
     public final void rule__TuplePartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4062:1: ( ( ( rule__TuplePartCS__NameAssignment_0 ) ) )
             // InternalEssentialOCL.g:4063:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
@@ -12872,7 +12872,7 @@
             // InternalEssentialOCL.g:4064:1: ( rule__TuplePartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTuplePartCSAccess().getNameAssignment_0());
             }
             // InternalEssentialOCL.g:4065:1: ( rule__TuplePartCS__NameAssignment_0 )
             // InternalEssentialOCL.g:4065:2: rule__TuplePartCS__NameAssignment_0
@@ -12886,7 +12886,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTuplePartCSAccess().getNameAssignment_0());
             }
 
             }
@@ -12914,7 +12914,7 @@
     public final void rule__TuplePartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4079:1: ( rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 )
             // InternalEssentialOCL.g:4080:2: rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2
@@ -12952,7 +12952,7 @@
     public final void rule__TuplePartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4091:1: ( ( ':' ) )
             // InternalEssentialOCL.g:4092:1: ( ':' )
@@ -12961,11 +12961,11 @@
             // InternalEssentialOCL.g:4093:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
             }
             match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
             }
 
             }
@@ -12993,7 +12993,7 @@
     public final void rule__TuplePartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4110:1: ( rule__TuplePartCS__Group__2__Impl )
             // InternalEssentialOCL.g:4111:2: rule__TuplePartCS__Group__2__Impl
@@ -13026,7 +13026,7 @@
     public final void rule__TuplePartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4121:1: ( ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) )
             // InternalEssentialOCL.g:4122:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
@@ -13035,7 +13035,7 @@
             // InternalEssentialOCL.g:4123:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2()); 
+               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2());
             }
             // InternalEssentialOCL.g:4124:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
             // InternalEssentialOCL.g:4124:2: rule__TuplePartCS__OwnedTypeAssignment_2
@@ -13049,7 +13049,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2()); 
+               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2());
             }
 
             }
@@ -13077,7 +13077,7 @@
     public final void rule__CollectionLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4144:1: ( rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 )
             // InternalEssentialOCL.g:4145:2: rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1
@@ -13115,7 +13115,7 @@
     public final void rule__CollectionLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4156:1: ( ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) )
             // InternalEssentialOCL.g:4157:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
@@ -13124,7 +13124,7 @@
             // InternalEssentialOCL.g:4158:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
             // InternalEssentialOCL.g:4159:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
             // InternalEssentialOCL.g:4159:2: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0
@@ -13138,7 +13138,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
 
             }
@@ -13166,7 +13166,7 @@
     public final void rule__CollectionLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4173:1: ( rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 )
             // InternalEssentialOCL.g:4174:2: rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2
@@ -13204,7 +13204,7 @@
     public final void rule__CollectionLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4185:1: ( ( '{' ) )
             // InternalEssentialOCL.g:4186:1: ( '{' )
@@ -13213,11 +13213,11 @@
             // InternalEssentialOCL.g:4187:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,56,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -13245,7 +13245,7 @@
     public final void rule__CollectionLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4204:1: ( rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 )
             // InternalEssentialOCL.g:4205:2: rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3
@@ -13283,7 +13283,7 @@
     public final void rule__CollectionLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4216:1: ( ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) )
             // InternalEssentialOCL.g:4217:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
@@ -13292,7 +13292,7 @@
             // InternalEssentialOCL.g:4218:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2());
             }
             // InternalEssentialOCL.g:4219:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             int alt37=2;
@@ -13317,7 +13317,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2());
             }
 
             }
@@ -13345,7 +13345,7 @@
     public final void rule__CollectionLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4233:1: ( rule__CollectionLiteralExpCS__Group__3__Impl )
             // InternalEssentialOCL.g:4234:2: rule__CollectionLiteralExpCS__Group__3__Impl
@@ -13378,7 +13378,7 @@
     public final void rule__CollectionLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4244:1: ( ( '}' ) )
             // InternalEssentialOCL.g:4245:1: ( '}' )
@@ -13387,11 +13387,11 @@
             // InternalEssentialOCL.g:4246:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -13419,7 +13419,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4271:1: ( rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 )
             // InternalEssentialOCL.g:4272:2: rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1
@@ -13457,7 +13457,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4283:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
             // InternalEssentialOCL.g:4284:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
@@ -13466,7 +13466,7 @@
             // InternalEssentialOCL.g:4285:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
             // InternalEssentialOCL.g:4286:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
             // InternalEssentialOCL.g:4286:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0
@@ -13480,7 +13480,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
 
             }
@@ -13508,7 +13508,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4300:1: ( rule__CollectionLiteralExpCS__Group_2__1__Impl )
             // InternalEssentialOCL.g:4301:2: rule__CollectionLiteralExpCS__Group_2__1__Impl
@@ -13541,7 +13541,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4311:1: ( ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) )
             // InternalEssentialOCL.g:4312:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
@@ -13550,7 +13550,7 @@
             // InternalEssentialOCL.g:4313:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1());
             }
             // InternalEssentialOCL.g:4314:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             loop38:
@@ -13582,7 +13582,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1());
             }
 
             }
@@ -13610,7 +13610,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4332:1: ( rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 )
             // InternalEssentialOCL.g:4333:2: rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1
@@ -13648,7 +13648,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4344:1: ( ( ',' ) )
             // InternalEssentialOCL.g:4345:1: ( ',' )
@@ -13657,11 +13657,11 @@
             // InternalEssentialOCL.g:4346:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
             match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
 
             }
@@ -13689,7 +13689,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4363:1: ( rule__CollectionLiteralExpCS__Group_2_1__1__Impl )
             // InternalEssentialOCL.g:4364:2: rule__CollectionLiteralExpCS__Group_2_1__1__Impl
@@ -13722,7 +13722,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4374:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
             // InternalEssentialOCL.g:4375:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
@@ -13731,7 +13731,7 @@
             // InternalEssentialOCL.g:4376:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
             // InternalEssentialOCL.g:4377:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             // InternalEssentialOCL.g:4377:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1
@@ -13745,7 +13745,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
 
             }
@@ -13773,7 +13773,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4395:1: ( rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 )
             // InternalEssentialOCL.g:4396:2: rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1
@@ -13811,7 +13811,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4407:1: ( ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) )
             // InternalEssentialOCL.g:4408:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
@@ -13820,7 +13820,7 @@
             // InternalEssentialOCL.g:4409:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0());
             }
             // InternalEssentialOCL.g:4410:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
             // InternalEssentialOCL.g:4410:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0
@@ -13834,7 +13834,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0());
             }
 
             }
@@ -13862,7 +13862,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4424:1: ( rule__CollectionLiteralPartCS__Group_0__1__Impl )
             // InternalEssentialOCL.g:4425:2: rule__CollectionLiteralPartCS__Group_0__1__Impl
@@ -13895,7 +13895,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4435:1: ( ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) )
             // InternalEssentialOCL.g:4436:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
@@ -13904,7 +13904,7 @@
             // InternalEssentialOCL.g:4437:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1());
             }
             // InternalEssentialOCL.g:4438:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             int alt39=2;
@@ -13929,7 +13929,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1());
             }
 
             }
@@ -13957,7 +13957,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4456:1: ( rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 )
             // InternalEssentialOCL.g:4457:2: rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1
@@ -13995,7 +13995,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4468:1: ( ( '..' ) )
             // InternalEssentialOCL.g:4469:1: ( '..' )
@@ -14004,11 +14004,11 @@
             // InternalEssentialOCL.g:4470:1: '..'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
             }
             match(input,58,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
             }
 
             }
@@ -14036,7 +14036,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4487:1: ( rule__CollectionLiteralPartCS__Group_0_1__1__Impl )
             // InternalEssentialOCL.g:4488:2: rule__CollectionLiteralPartCS__Group_0_1__1__Impl
@@ -14069,7 +14069,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4498:1: ( ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) )
             // InternalEssentialOCL.g:4499:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
@@ -14078,7 +14078,7 @@
             // InternalEssentialOCL.g:4500:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1());
             }
             // InternalEssentialOCL.g:4501:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
             // InternalEssentialOCL.g:4501:2: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1
@@ -14092,7 +14092,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1());
             }
 
             }
@@ -14120,7 +14120,7 @@
     public final void rule__CollectionPatternCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4519:1: ( rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 )
             // InternalEssentialOCL.g:4520:2: rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1
@@ -14158,7 +14158,7 @@
     public final void rule__CollectionPatternCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4531:1: ( ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) )
             // InternalEssentialOCL.g:4532:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
@@ -14167,7 +14167,7 @@
             // InternalEssentialOCL.g:4533:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0());
             }
             // InternalEssentialOCL.g:4534:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
             // InternalEssentialOCL.g:4534:2: rule__CollectionPatternCS__OwnedTypeAssignment_0
@@ -14181,7 +14181,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0());
             }
 
             }
@@ -14209,7 +14209,7 @@
     public final void rule__CollectionPatternCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4548:1: ( rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 )
             // InternalEssentialOCL.g:4549:2: rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2
@@ -14247,7 +14247,7 @@
     public final void rule__CollectionPatternCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4560:1: ( ( '{' ) )
             // InternalEssentialOCL.g:4561:1: ( '{' )
@@ -14256,11 +14256,11 @@
             // InternalEssentialOCL.g:4562:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,56,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -14288,7 +14288,7 @@
     public final void rule__CollectionPatternCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4579:1: ( rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 )
             // InternalEssentialOCL.g:4580:2: rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3
@@ -14326,7 +14326,7 @@
     public final void rule__CollectionPatternCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4591:1: ( ( ( rule__CollectionPatternCS__Group_2__0 )? ) )
             // InternalEssentialOCL.g:4592:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
@@ -14335,7 +14335,7 @@
             // InternalEssentialOCL.g:4593:1: ( rule__CollectionPatternCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2());
             }
             // InternalEssentialOCL.g:4594:1: ( rule__CollectionPatternCS__Group_2__0 )?
             int alt40=2;
@@ -14360,7 +14360,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2());
             }
 
             }
@@ -14388,7 +14388,7 @@
     public final void rule__CollectionPatternCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4608:1: ( rule__CollectionPatternCS__Group__3__Impl )
             // InternalEssentialOCL.g:4609:2: rule__CollectionPatternCS__Group__3__Impl
@@ -14421,7 +14421,7 @@
     public final void rule__CollectionPatternCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4619:1: ( ( '}' ) )
             // InternalEssentialOCL.g:4620:1: ( '}' )
@@ -14430,11 +14430,11 @@
             // InternalEssentialOCL.g:4621:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -14462,7 +14462,7 @@
     public final void rule__CollectionPatternCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4646:1: ( rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 )
             // InternalEssentialOCL.g:4647:2: rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1
@@ -14500,7 +14500,7 @@
     public final void rule__CollectionPatternCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4658:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) )
             // InternalEssentialOCL.g:4659:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
@@ -14509,7 +14509,7 @@
             // InternalEssentialOCL.g:4660:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0());
             }
             // InternalEssentialOCL.g:4661:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
             // InternalEssentialOCL.g:4661:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_0
@@ -14523,7 +14523,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0());
             }
 
             }
@@ -14551,7 +14551,7 @@
     public final void rule__CollectionPatternCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4675:1: ( rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 )
             // InternalEssentialOCL.g:4676:2: rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2
@@ -14589,7 +14589,7 @@
     public final void rule__CollectionPatternCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4687:1: ( ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) )
             // InternalEssentialOCL.g:4688:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
@@ -14598,7 +14598,7 @@
             // InternalEssentialOCL.g:4689:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1());
             }
             // InternalEssentialOCL.g:4690:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             loop41:
@@ -14630,7 +14630,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1());
             }
 
             }
@@ -14658,7 +14658,7 @@
     public final void rule__CollectionPatternCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4704:1: ( rule__CollectionPatternCS__Group_2__2__Impl )
             // InternalEssentialOCL.g:4705:2: rule__CollectionPatternCS__Group_2__2__Impl
@@ -14691,7 +14691,7 @@
     public final void rule__CollectionPatternCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4715:1: ( ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) )
             // InternalEssentialOCL.g:4716:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
@@ -14700,7 +14700,7 @@
             // InternalEssentialOCL.g:4717:1: ( rule__CollectionPatternCS__Group_2_2__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2());
             }
             // InternalEssentialOCL.g:4718:1: ( rule__CollectionPatternCS__Group_2_2__0 )
             // InternalEssentialOCL.g:4718:2: rule__CollectionPatternCS__Group_2_2__0
@@ -14714,7 +14714,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2());
             }
 
             }
@@ -14742,7 +14742,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4738:1: ( rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 )
             // InternalEssentialOCL.g:4739:2: rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1
@@ -14780,7 +14780,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4750:1: ( ( ',' ) )
             // InternalEssentialOCL.g:4751:1: ( ',' )
@@ -14789,11 +14789,11 @@
             // InternalEssentialOCL.g:4752:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
             }
             match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
             }
 
             }
@@ -14821,7 +14821,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4769:1: ( rule__CollectionPatternCS__Group_2_1__1__Impl )
             // InternalEssentialOCL.g:4770:2: rule__CollectionPatternCS__Group_2_1__1__Impl
@@ -14854,7 +14854,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4780:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) )
             // InternalEssentialOCL.g:4781:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
@@ -14863,7 +14863,7 @@
             // InternalEssentialOCL.g:4782:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1());
             }
             // InternalEssentialOCL.g:4783:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
             // InternalEssentialOCL.g:4783:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1
@@ -14877,7 +14877,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1());
             }
 
             }
@@ -14905,7 +14905,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4801:1: ( rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 )
             // InternalEssentialOCL.g:4802:2: rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1
@@ -14943,7 +14943,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4813:1: ( ( '++' ) )
             // InternalEssentialOCL.g:4814:1: ( '++' )
@@ -14952,11 +14952,11 @@
             // InternalEssentialOCL.g:4815:1: '++'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
             }
             match(input,59,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
             }
 
             }
@@ -14984,7 +14984,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4832:1: ( rule__CollectionPatternCS__Group_2_2__1__Impl )
             // InternalEssentialOCL.g:4833:2: rule__CollectionPatternCS__Group_2_2__1__Impl
@@ -15017,7 +15017,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4843:1: ( ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) )
             // InternalEssentialOCL.g:4844:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
@@ -15026,7 +15026,7 @@
             // InternalEssentialOCL.g:4845:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1());
             }
             // InternalEssentialOCL.g:4846:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
             // InternalEssentialOCL.g:4846:2: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1
@@ -15040,7 +15040,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1());
             }
 
             }
@@ -15068,7 +15068,7 @@
     public final void rule__ShadowPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4864:1: ( rule__ShadowPartCS__Group__0__Impl rule__ShadowPartCS__Group__1 )
             // InternalEssentialOCL.g:4865:2: rule__ShadowPartCS__Group__0__Impl rule__ShadowPartCS__Group__1
@@ -15106,7 +15106,7 @@
     public final void rule__ShadowPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4876:1: ( ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0 ) ) )
             // InternalEssentialOCL.g:4877:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0 ) )
@@ -15115,7 +15115,7 @@
             // InternalEssentialOCL.g:4878:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0()); 
+               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0());
             }
             // InternalEssentialOCL.g:4879:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0 )
             // InternalEssentialOCL.g:4879:2: rule__ShadowPartCS__ReferredPropertyAssignment_0
@@ -15129,7 +15129,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0()); 
+               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0());
             }
 
             }
@@ -15157,7 +15157,7 @@
     public final void rule__ShadowPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4893:1: ( rule__ShadowPartCS__Group__1__Impl rule__ShadowPartCS__Group__2 )
             // InternalEssentialOCL.g:4894:2: rule__ShadowPartCS__Group__1__Impl rule__ShadowPartCS__Group__2
@@ -15195,7 +15195,7 @@
     public final void rule__ShadowPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4905:1: ( ( '=' ) )
             // InternalEssentialOCL.g:4906:1: ( '=' )
@@ -15204,11 +15204,11 @@
             // InternalEssentialOCL.g:4907:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); 
+               before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
             }
             match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); 
+               after(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
             }
 
             }
@@ -15236,7 +15236,7 @@
     public final void rule__ShadowPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4924:1: ( rule__ShadowPartCS__Group__2__Impl )
             // InternalEssentialOCL.g:4925:2: rule__ShadowPartCS__Group__2__Impl
@@ -15269,7 +15269,7 @@
     public final void rule__ShadowPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4935:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 ) ) )
             // InternalEssentialOCL.g:4936:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 ) )
@@ -15278,7 +15278,7 @@
             // InternalEssentialOCL.g:4937:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2()); 
+               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2());
             }
             // InternalEssentialOCL.g:4938:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 )
             // InternalEssentialOCL.g:4938:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_2
@@ -15292,7 +15292,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2()); 
+               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2());
             }
 
             }
@@ -15320,7 +15320,7 @@
     public final void rule__PatternExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4958:1: ( rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 )
             // InternalEssentialOCL.g:4959:2: rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1
@@ -15358,7 +15358,7 @@
     public final void rule__PatternExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4970:1: ( ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) )
             // InternalEssentialOCL.g:4971:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
@@ -15367,7 +15367,7 @@
             // InternalEssentialOCL.g:4972:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0()); 
+               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0());
             }
             // InternalEssentialOCL.g:4973:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             int alt42=2;
@@ -15392,7 +15392,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0()); 
+               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0());
             }
 
             }
@@ -15420,7 +15420,7 @@
     public final void rule__PatternExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4987:1: ( rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 )
             // InternalEssentialOCL.g:4988:2: rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2
@@ -15458,7 +15458,7 @@
     public final void rule__PatternExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:4999:1: ( ( ':' ) )
             // InternalEssentialOCL.g:5000:1: ( ':' )
@@ -15467,11 +15467,11 @@
             // InternalEssentialOCL.g:5001:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
             }
             match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
             }
 
             }
@@ -15499,7 +15499,7 @@
     public final void rule__PatternExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5018:1: ( rule__PatternExpCS__Group__2__Impl )
             // InternalEssentialOCL.g:5019:2: rule__PatternExpCS__Group__2__Impl
@@ -15532,7 +15532,7 @@
     public final void rule__PatternExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5029:1: ( ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) )
             // InternalEssentialOCL.g:5030:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
@@ -15541,7 +15541,7 @@
             // InternalEssentialOCL.g:5031:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2()); 
+               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2());
             }
             // InternalEssentialOCL.g:5032:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
             // InternalEssentialOCL.g:5032:2: rule__PatternExpCS__OwnedPatternTypeAssignment_2
@@ -15555,7 +15555,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2()); 
+               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2());
             }
 
             }
@@ -15583,7 +15583,7 @@
     public final void rule__LambdaLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5052:1: ( rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 )
             // InternalEssentialOCL.g:5053:2: rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1
@@ -15621,7 +15621,7 @@
     public final void rule__LambdaLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5064:1: ( ( 'Lambda' ) )
             // InternalEssentialOCL.g:5065:1: ( 'Lambda' )
@@ -15630,11 +15630,11 @@
             // InternalEssentialOCL.g:5066:1: 'Lambda'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
             }
 
             }
@@ -15662,7 +15662,7 @@
     public final void rule__LambdaLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5083:1: ( rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 )
             // InternalEssentialOCL.g:5084:2: rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2
@@ -15700,7 +15700,7 @@
     public final void rule__LambdaLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5095:1: ( ( '{' ) )
             // InternalEssentialOCL.g:5096:1: ( '{' )
@@ -15709,11 +15709,11 @@
             // InternalEssentialOCL.g:5097:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,56,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -15741,7 +15741,7 @@
     public final void rule__LambdaLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5114:1: ( rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 )
             // InternalEssentialOCL.g:5115:2: rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3
@@ -15779,7 +15779,7 @@
     public final void rule__LambdaLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5126:1: ( ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) )
             // InternalEssentialOCL.g:5127:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
@@ -15788,7 +15788,7 @@
             // InternalEssentialOCL.g:5128:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2());
             }
             // InternalEssentialOCL.g:5129:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
             // InternalEssentialOCL.g:5129:2: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2
@@ -15802,7 +15802,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2());
             }
 
             }
@@ -15830,7 +15830,7 @@
     public final void rule__LambdaLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5143:1: ( rule__LambdaLiteralExpCS__Group__3__Impl )
             // InternalEssentialOCL.g:5144:2: rule__LambdaLiteralExpCS__Group__3__Impl
@@ -15863,7 +15863,7 @@
     public final void rule__LambdaLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5154:1: ( ( '}' ) )
             // InternalEssentialOCL.g:5155:1: ( '}' )
@@ -15872,11 +15872,11 @@
             // InternalEssentialOCL.g:5156:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -15904,7 +15904,7 @@
     public final void rule__MapLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5181:1: ( rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 )
             // InternalEssentialOCL.g:5182:2: rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1
@@ -15942,7 +15942,7 @@
     public final void rule__MapLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5193:1: ( ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) )
             // InternalEssentialOCL.g:5194:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
@@ -15951,7 +15951,7 @@
             // InternalEssentialOCL.g:5195:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
             // InternalEssentialOCL.g:5196:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
             // InternalEssentialOCL.g:5196:2: rule__MapLiteralExpCS__OwnedTypeAssignment_0
@@ -15965,7 +15965,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
 
             }
@@ -15993,7 +15993,7 @@
     public final void rule__MapLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5210:1: ( rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 )
             // InternalEssentialOCL.g:5211:2: rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2
@@ -16031,7 +16031,7 @@
     public final void rule__MapLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5222:1: ( ( '{' ) )
             // InternalEssentialOCL.g:5223:1: ( '{' )
@@ -16040,11 +16040,11 @@
             // InternalEssentialOCL.g:5224:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,56,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -16072,7 +16072,7 @@
     public final void rule__MapLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5241:1: ( rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 )
             // InternalEssentialOCL.g:5242:2: rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3
@@ -16110,7 +16110,7 @@
     public final void rule__MapLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5253:1: ( ( ( rule__MapLiteralExpCS__Group_2__0 )? ) )
             // InternalEssentialOCL.g:5254:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
@@ -16119,7 +16119,7 @@
             // InternalEssentialOCL.g:5255:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2());
             }
             // InternalEssentialOCL.g:5256:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             int alt43=2;
@@ -16144,7 +16144,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2());
             }
 
             }
@@ -16172,7 +16172,7 @@
     public final void rule__MapLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5270:1: ( rule__MapLiteralExpCS__Group__3__Impl )
             // InternalEssentialOCL.g:5271:2: rule__MapLiteralExpCS__Group__3__Impl
@@ -16205,7 +16205,7 @@
     public final void rule__MapLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5281:1: ( ( '}' ) )
             // InternalEssentialOCL.g:5282:1: ( '}' )
@@ -16214,11 +16214,11 @@
             // InternalEssentialOCL.g:5283:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -16246,7 +16246,7 @@
     public final void rule__MapLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5308:1: ( rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 )
             // InternalEssentialOCL.g:5309:2: rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1
@@ -16284,7 +16284,7 @@
     public final void rule__MapLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5320:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
             // InternalEssentialOCL.g:5321:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
@@ -16293,7 +16293,7 @@
             // InternalEssentialOCL.g:5322:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
             // InternalEssentialOCL.g:5323:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
             // InternalEssentialOCL.g:5323:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0
@@ -16307,7 +16307,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
 
             }
@@ -16335,7 +16335,7 @@
     public final void rule__MapLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5337:1: ( rule__MapLiteralExpCS__Group_2__1__Impl )
             // InternalEssentialOCL.g:5338:2: rule__MapLiteralExpCS__Group_2__1__Impl
@@ -16368,7 +16368,7 @@
     public final void rule__MapLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5348:1: ( ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) )
             // InternalEssentialOCL.g:5349:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
@@ -16377,7 +16377,7 @@
             // InternalEssentialOCL.g:5350:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1());
             }
             // InternalEssentialOCL.g:5351:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             loop44:
@@ -16409,7 +16409,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1());
             }
 
             }
@@ -16437,7 +16437,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5369:1: ( rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 )
             // InternalEssentialOCL.g:5370:2: rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1
@@ -16475,7 +16475,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5381:1: ( ( ',' ) )
             // InternalEssentialOCL.g:5382:1: ( ',' )
@@ -16484,11 +16484,11 @@
             // InternalEssentialOCL.g:5383:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
             match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
 
             }
@@ -16516,7 +16516,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5400:1: ( rule__MapLiteralExpCS__Group_2_1__1__Impl )
             // InternalEssentialOCL.g:5401:2: rule__MapLiteralExpCS__Group_2_1__1__Impl
@@ -16549,7 +16549,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5411:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
             // InternalEssentialOCL.g:5412:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
@@ -16558,7 +16558,7 @@
             // InternalEssentialOCL.g:5413:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
             // InternalEssentialOCL.g:5414:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             // InternalEssentialOCL.g:5414:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1
@@ -16572,7 +16572,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
 
             }
@@ -16600,7 +16600,7 @@
     public final void rule__MapLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5432:1: ( rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 )
             // InternalEssentialOCL.g:5433:2: rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1
@@ -16638,7 +16638,7 @@
     public final void rule__MapLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5444:1: ( ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) )
             // InternalEssentialOCL.g:5445:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
@@ -16647,7 +16647,7 @@
             // InternalEssentialOCL.g:5446:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0());
             }
             // InternalEssentialOCL.g:5447:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
             // InternalEssentialOCL.g:5447:2: rule__MapLiteralPartCS__OwnedKeyAssignment_0
@@ -16661,7 +16661,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0());
             }
 
             }
@@ -16689,7 +16689,7 @@
     public final void rule__MapLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5461:1: ( rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 )
             // InternalEssentialOCL.g:5462:2: rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2
@@ -16727,7 +16727,7 @@
     public final void rule__MapLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5473:1: ( ( '<-' ) )
             // InternalEssentialOCL.g:5474:1: ( '<-' )
@@ -16736,11 +16736,11 @@
             // InternalEssentialOCL.g:5475:1: '<-'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
             }
             match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
             }
 
             }
@@ -16768,7 +16768,7 @@
     public final void rule__MapLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5492:1: ( rule__MapLiteralPartCS__Group__2__Impl )
             // InternalEssentialOCL.g:5493:2: rule__MapLiteralPartCS__Group__2__Impl
@@ -16801,7 +16801,7 @@
     public final void rule__MapLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5503:1: ( ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) )
             // InternalEssentialOCL.g:5504:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
@@ -16810,7 +16810,7 @@
             // InternalEssentialOCL.g:5505:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2());
             }
             // InternalEssentialOCL.g:5506:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
             // InternalEssentialOCL.g:5506:2: rule__MapLiteralPartCS__OwnedValueAssignment_2
@@ -16824,7 +16824,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2());
             }
 
             }
@@ -16852,7 +16852,7 @@
     public final void rule__TupleLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5526:1: ( rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 )
             // InternalEssentialOCL.g:5527:2: rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1
@@ -16890,7 +16890,7 @@
     public final void rule__TupleLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5538:1: ( ( 'Tuple' ) )
             // InternalEssentialOCL.g:5539:1: ( 'Tuple' )
@@ -16899,11 +16899,11 @@
             // InternalEssentialOCL.g:5540:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
             }
             match(input,36,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
             }
 
             }
@@ -16931,7 +16931,7 @@
     public final void rule__TupleLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5557:1: ( rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 )
             // InternalEssentialOCL.g:5558:2: rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2
@@ -16969,7 +16969,7 @@
     public final void rule__TupleLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5569:1: ( ( '{' ) )
             // InternalEssentialOCL.g:5570:1: ( '{' )
@@ -16978,11 +16978,11 @@
             // InternalEssentialOCL.g:5571:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,56,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -17010,7 +17010,7 @@
     public final void rule__TupleLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5588:1: ( rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 )
             // InternalEssentialOCL.g:5589:2: rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3
@@ -17048,7 +17048,7 @@
     public final void rule__TupleLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5600:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) )
             // InternalEssentialOCL.g:5601:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
@@ -17057,7 +17057,7 @@
             // InternalEssentialOCL.g:5602:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2());
             }
             // InternalEssentialOCL.g:5603:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
             // InternalEssentialOCL.g:5603:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_2
@@ -17071,7 +17071,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2());
             }
 
             }
@@ -17099,7 +17099,7 @@
     public final void rule__TupleLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5617:1: ( rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 )
             // InternalEssentialOCL.g:5618:2: rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4
@@ -17137,7 +17137,7 @@
     public final void rule__TupleLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5629:1: ( ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) )
             // InternalEssentialOCL.g:5630:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
@@ -17146,7 +17146,7 @@
             // InternalEssentialOCL.g:5631:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3());
             }
             // InternalEssentialOCL.g:5632:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             loop45:
@@ -17178,7 +17178,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3());
             }
 
             }
@@ -17206,7 +17206,7 @@
     public final void rule__TupleLiteralExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5646:1: ( rule__TupleLiteralExpCS__Group__4__Impl )
             // InternalEssentialOCL.g:5647:2: rule__TupleLiteralExpCS__Group__4__Impl
@@ -17239,7 +17239,7 @@
     public final void rule__TupleLiteralExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5657:1: ( ( '}' ) )
             // InternalEssentialOCL.g:5658:1: ( '}' )
@@ -17248,11 +17248,11 @@
             // InternalEssentialOCL.g:5659:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
             }
             match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
             }
 
             }
@@ -17280,7 +17280,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5686:1: ( rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 )
             // InternalEssentialOCL.g:5687:2: rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1
@@ -17318,7 +17318,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5698:1: ( ( ',' ) )
             // InternalEssentialOCL.g:5699:1: ( ',' )
@@ -17327,11 +17327,11 @@
             // InternalEssentialOCL.g:5700:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
             }
             match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
             }
 
             }
@@ -17359,7 +17359,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5717:1: ( rule__TupleLiteralExpCS__Group_3__1__Impl )
             // InternalEssentialOCL.g:5718:2: rule__TupleLiteralExpCS__Group_3__1__Impl
@@ -17392,7 +17392,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5728:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) )
             // InternalEssentialOCL.g:5729:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
@@ -17401,7 +17401,7 @@
             // InternalEssentialOCL.g:5730:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1());
             }
             // InternalEssentialOCL.g:5731:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
             // InternalEssentialOCL.g:5731:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1
@@ -17415,7 +17415,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1());
             }
 
             }
@@ -17443,7 +17443,7 @@
     public final void rule__TupleLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5749:1: ( rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 )
             // InternalEssentialOCL.g:5750:2: rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1
@@ -17481,7 +17481,7 @@
     public final void rule__TupleLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5761:1: ( ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) )
             // InternalEssentialOCL.g:5762:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
@@ -17490,7 +17490,7 @@
             // InternalEssentialOCL.g:5763:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0());
             }
             // InternalEssentialOCL.g:5764:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
             // InternalEssentialOCL.g:5764:2: rule__TupleLiteralPartCS__NameAssignment_0
@@ -17504,7 +17504,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0());
             }
 
             }
@@ -17532,7 +17532,7 @@
     public final void rule__TupleLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5778:1: ( rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 )
             // InternalEssentialOCL.g:5779:2: rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2
@@ -17570,7 +17570,7 @@
     public final void rule__TupleLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5790:1: ( ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) )
             // InternalEssentialOCL.g:5791:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
@@ -17579,7 +17579,7 @@
             // InternalEssentialOCL.g:5792:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1());
             }
             // InternalEssentialOCL.g:5793:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             int alt46=2;
@@ -17604,7 +17604,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1());
             }
 
             }
@@ -17632,7 +17632,7 @@
     public final void rule__TupleLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5807:1: ( rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 )
             // InternalEssentialOCL.g:5808:2: rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3
@@ -17670,7 +17670,7 @@
     public final void rule__TupleLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5819:1: ( ( '=' ) )
             // InternalEssentialOCL.g:5820:1: ( '=' )
@@ -17679,11 +17679,11 @@
             // InternalEssentialOCL.g:5821:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
             }
             match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
             }
 
             }
@@ -17711,7 +17711,7 @@
     public final void rule__TupleLiteralPartCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5838:1: ( rule__TupleLiteralPartCS__Group__3__Impl )
             // InternalEssentialOCL.g:5839:2: rule__TupleLiteralPartCS__Group__3__Impl
@@ -17744,7 +17744,7 @@
     public final void rule__TupleLiteralPartCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5849:1: ( ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) )
             // InternalEssentialOCL.g:5850:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
@@ -17753,7 +17753,7 @@
             // InternalEssentialOCL.g:5851:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3());
             }
             // InternalEssentialOCL.g:5852:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
             // InternalEssentialOCL.g:5852:2: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3
@@ -17767,7 +17767,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3());
             }
 
             }
@@ -17795,7 +17795,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5874:1: ( rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 )
             // InternalEssentialOCL.g:5875:2: rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1
@@ -17833,7 +17833,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5886:1: ( ( ':' ) )
             // InternalEssentialOCL.g:5887:1: ( ':' )
@@ -17842,11 +17842,11 @@
             // InternalEssentialOCL.g:5888:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
             }
             match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
             }
 
             }
@@ -17874,7 +17874,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5905:1: ( rule__TupleLiteralPartCS__Group_1__1__Impl )
             // InternalEssentialOCL.g:5906:2: rule__TupleLiteralPartCS__Group_1__1__Impl
@@ -17907,7 +17907,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5916:1: ( ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) )
             // InternalEssentialOCL.g:5917:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
@@ -17916,7 +17916,7 @@
             // InternalEssentialOCL.g:5918:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1());
             }
             // InternalEssentialOCL.g:5919:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
             // InternalEssentialOCL.g:5919:2: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1
@@ -17930,7 +17930,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1());
             }
 
             }
@@ -17958,7 +17958,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5937:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 )
             // InternalEssentialOCL.g:5938:2: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1
@@ -17996,7 +17996,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5949:1: ( ( () ) )
             // InternalEssentialOCL.g:5950:1: ( () )
@@ -18005,15 +18005,15 @@
             // InternalEssentialOCL.g:5951:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0());
             }
             // InternalEssentialOCL.g:5952:1: ()
-            // InternalEssentialOCL.g:5954:1: 
+            // InternalEssentialOCL.g:5954:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0());
             }
 
             }
@@ -18037,7 +18037,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5968:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl )
             // InternalEssentialOCL.g:5969:2: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl
@@ -18070,7 +18070,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:5979:1: ( ( '*' ) )
             // InternalEssentialOCL.g:5980:1: ( '*' )
@@ -18079,11 +18079,11 @@
             // InternalEssentialOCL.g:5981:1: '*'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
             }
             match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
             }
 
             }
@@ -18111,7 +18111,7 @@
     public final void rule__InvalidLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6002:1: ( rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 )
             // InternalEssentialOCL.g:6003:2: rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1
@@ -18149,7 +18149,7 @@
     public final void rule__InvalidLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6014:1: ( ( () ) )
             // InternalEssentialOCL.g:6015:1: ( () )
@@ -18158,15 +18158,15 @@
             // InternalEssentialOCL.g:6016:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0()); 
+               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0());
             }
             // InternalEssentialOCL.g:6017:1: ()
-            // InternalEssentialOCL.g:6019:1: 
+            // InternalEssentialOCL.g:6019:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0()); 
+               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0());
             }
 
             }
@@ -18190,7 +18190,7 @@
     public final void rule__InvalidLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6033:1: ( rule__InvalidLiteralExpCS__Group__1__Impl )
             // InternalEssentialOCL.g:6034:2: rule__InvalidLiteralExpCS__Group__1__Impl
@@ -18223,7 +18223,7 @@
     public final void rule__InvalidLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6044:1: ( ( 'invalid' ) )
             // InternalEssentialOCL.g:6045:1: ( 'invalid' )
@@ -18232,11 +18232,11 @@
             // InternalEssentialOCL.g:6046:1: 'invalid'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); 
+               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); 
+               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
             }
 
             }
@@ -18264,7 +18264,7 @@
     public final void rule__NullLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6067:1: ( rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 )
             // InternalEssentialOCL.g:6068:2: rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1
@@ -18302,7 +18302,7 @@
     public final void rule__NullLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6079:1: ( ( () ) )
             // InternalEssentialOCL.g:6080:1: ( () )
@@ -18311,15 +18311,15 @@
             // InternalEssentialOCL.g:6081:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0()); 
+               before(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0());
             }
             // InternalEssentialOCL.g:6082:1: ()
-            // InternalEssentialOCL.g:6084:1: 
+            // InternalEssentialOCL.g:6084:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0()); 
+               after(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0());
             }
 
             }
@@ -18343,7 +18343,7 @@
     public final void rule__NullLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6098:1: ( rule__NullLiteralExpCS__Group__1__Impl )
             // InternalEssentialOCL.g:6099:2: rule__NullLiteralExpCS__Group__1__Impl
@@ -18376,7 +18376,7 @@
     public final void rule__NullLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6109:1: ( ( 'null' ) )
             // InternalEssentialOCL.g:6110:1: ( 'null' )
@@ -18385,11 +18385,11 @@
             // InternalEssentialOCL.g:6111:1: 'null'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); 
+               before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
             }
             match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); 
+               after(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
             }
 
             }
@@ -18417,7 +18417,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6132:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 )
             // InternalEssentialOCL.g:6133:2: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1
@@ -18455,7 +18455,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6144:1: ( ( ruleTypeLiteralCS ) )
             // InternalEssentialOCL.g:6145:1: ( ruleTypeLiteralCS )
@@ -18464,7 +18464,7 @@
             // InternalEssentialOCL.g:6146:1: ruleTypeLiteralCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeLiteralCS();
@@ -18472,7 +18472,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
             }
 
             }
@@ -18500,7 +18500,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6161:1: ( rule__TypeLiteralWithMultiplicityCS__Group__1__Impl )
             // InternalEssentialOCL.g:6162:2: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl
@@ -18533,7 +18533,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6172:1: ( ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) )
             // InternalEssentialOCL.g:6173:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
@@ -18542,7 +18542,7 @@
             // InternalEssentialOCL.g:6174:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1());
             }
             // InternalEssentialOCL.g:6175:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             int alt47=2;
@@ -18567,7 +18567,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1());
             }
 
             }
@@ -18595,7 +18595,7 @@
     public final void rule__TypeNameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6193:1: ( rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 )
             // InternalEssentialOCL.g:6194:2: rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1
@@ -18633,7 +18633,7 @@
     public final void rule__TypeNameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6205:1: ( ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) )
             // InternalEssentialOCL.g:6206:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
@@ -18642,7 +18642,7 @@
             // InternalEssentialOCL.g:6207:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
             // InternalEssentialOCL.g:6208:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
             // InternalEssentialOCL.g:6208:2: rule__TypeNameExpCS__OwnedPathNameAssignment_0
@@ -18656,7 +18656,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
 
             }
@@ -18684,7 +18684,7 @@
     public final void rule__TypeNameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6222:1: ( rule__TypeNameExpCS__Group__1__Impl )
             // InternalEssentialOCL.g:6223:2: rule__TypeNameExpCS__Group__1__Impl
@@ -18717,7 +18717,7 @@
     public final void rule__TypeNameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6233:1: ( ( ( rule__TypeNameExpCS__Group_1__0 )? ) )
             // InternalEssentialOCL.g:6234:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
@@ -18726,7 +18726,7 @@
             // InternalEssentialOCL.g:6235:1: ( rule__TypeNameExpCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1());
             }
             // InternalEssentialOCL.g:6236:1: ( rule__TypeNameExpCS__Group_1__0 )?
             int alt48=2;
@@ -18751,7 +18751,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1());
             }
 
             }
@@ -18779,7 +18779,7 @@
     public final void rule__TypeNameExpCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6254:1: ( rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 )
             // InternalEssentialOCL.g:6255:2: rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1
@@ -18817,7 +18817,7 @@
     public final void rule__TypeNameExpCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6266:1: ( ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) )
             // InternalEssentialOCL.g:6267:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
@@ -18826,7 +18826,7 @@
             // InternalEssentialOCL.g:6268:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0());
             }
             // InternalEssentialOCL.g:6269:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
             // InternalEssentialOCL.g:6269:2: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0
@@ -18840,7 +18840,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0());
             }
 
             }
@@ -18868,7 +18868,7 @@
     public final void rule__TypeNameExpCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6283:1: ( rule__TypeNameExpCS__Group_1__1__Impl )
             // InternalEssentialOCL.g:6284:2: rule__TypeNameExpCS__Group_1__1__Impl
@@ -18901,7 +18901,7 @@
     public final void rule__TypeNameExpCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6294:1: ( ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) )
             // InternalEssentialOCL.g:6295:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
@@ -18910,7 +18910,7 @@
             // InternalEssentialOCL.g:6296:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1());
             }
             // InternalEssentialOCL.g:6297:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             int alt49=2;
@@ -18935,7 +18935,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1());
             }
 
             }
@@ -18963,7 +18963,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6315:1: ( rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 )
             // InternalEssentialOCL.g:6316:2: rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1
@@ -19001,7 +19001,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6327:1: ( ( '{' ) )
             // InternalEssentialOCL.g:6328:1: ( '{' )
@@ -19010,11 +19010,11 @@
             // InternalEssentialOCL.g:6329:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
             }
             match(input,56,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
             }
 
             }
@@ -19042,7 +19042,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6346:1: ( rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 )
             // InternalEssentialOCL.g:6347:2: rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2
@@ -19080,7 +19080,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6358:1: ( ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) )
             // InternalEssentialOCL.g:6359:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
@@ -19089,7 +19089,7 @@
             // InternalEssentialOCL.g:6360:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1());
             }
             // InternalEssentialOCL.g:6361:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
             // InternalEssentialOCL.g:6361:2: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1
@@ -19103,7 +19103,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1());
             }
 
             }
@@ -19131,7 +19131,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6375:1: ( rule__TypeNameExpCS__Group_1_1__2__Impl )
             // InternalEssentialOCL.g:6376:2: rule__TypeNameExpCS__Group_1_1__2__Impl
@@ -19164,7 +19164,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6386:1: ( ( '}' ) )
             // InternalEssentialOCL.g:6387:1: ( '}' )
@@ -19173,11 +19173,11 @@
             // InternalEssentialOCL.g:6388:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
             }
             match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
             }
 
             }
@@ -19205,7 +19205,7 @@
     public final void rule__TypeExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6411:1: ( rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 )
             // InternalEssentialOCL.g:6412:2: rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1
@@ -19243,7 +19243,7 @@
     public final void rule__TypeExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6423:1: ( ( ( rule__TypeExpCS__Alternatives_0 ) ) )
             // InternalEssentialOCL.g:6424:1: ( ( rule__TypeExpCS__Alternatives_0 ) )
@@ -19252,7 +19252,7 @@
             // InternalEssentialOCL.g:6425:1: ( rule__TypeExpCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getAlternatives_0()); 
+               before(grammarAccess.getTypeExpCSAccess().getAlternatives_0());
             }
             // InternalEssentialOCL.g:6426:1: ( rule__TypeExpCS__Alternatives_0 )
             // InternalEssentialOCL.g:6426:2: rule__TypeExpCS__Alternatives_0
@@ -19266,7 +19266,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getAlternatives_0()); 
+               after(grammarAccess.getTypeExpCSAccess().getAlternatives_0());
             }
 
             }
@@ -19294,7 +19294,7 @@
     public final void rule__TypeExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6440:1: ( rule__TypeExpCS__Group__1__Impl )
             // InternalEssentialOCL.g:6441:2: rule__TypeExpCS__Group__1__Impl
@@ -19327,7 +19327,7 @@
     public final void rule__TypeExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6451:1: ( ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) )
             // InternalEssentialOCL.g:6452:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
@@ -19336,7 +19336,7 @@
             // InternalEssentialOCL.g:6453:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1()); 
+               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1());
             }
             // InternalEssentialOCL.g:6454:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             int alt50=2;
@@ -19361,7 +19361,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1()); 
+               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1());
             }
 
             }
@@ -19389,7 +19389,7 @@
     public final void rule__ExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6472:1: ( rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 )
             // InternalEssentialOCL.g:6473:2: rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1
@@ -19427,7 +19427,7 @@
     public final void rule__ExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6484:1: ( ( rulePrefixedPrimaryExpCS ) )
             // InternalEssentialOCL.g:6485:1: ( rulePrefixedPrimaryExpCS )
@@ -19436,7 +19436,7 @@
             // InternalEssentialOCL.g:6486:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
+               before(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrefixedPrimaryExpCS();
@@ -19444,7 +19444,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
+               after(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
             }
 
             }
@@ -19472,7 +19472,7 @@
     public final void rule__ExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6501:1: ( rule__ExpCS__Group_0__1__Impl )
             // InternalEssentialOCL.g:6502:2: rule__ExpCS__Group_0__1__Impl
@@ -19505,7 +19505,7 @@
     public final void rule__ExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6512:1: ( ( ( rule__ExpCS__Group_0_1__0 )? ) )
             // InternalEssentialOCL.g:6513:1: ( ( rule__ExpCS__Group_0_1__0 )? )
@@ -19514,7 +19514,7 @@
             // InternalEssentialOCL.g:6514:1: ( rule__ExpCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getGroup_0_1()); 
+               before(grammarAccess.getExpCSAccess().getGroup_0_1());
             }
             // InternalEssentialOCL.g:6515:1: ( rule__ExpCS__Group_0_1__0 )?
             int alt51=2;
@@ -19539,7 +19539,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getGroup_0_1()); 
+               after(grammarAccess.getExpCSAccess().getGroup_0_1());
             }
 
             }
@@ -19567,7 +19567,7 @@
     public final void rule__ExpCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6533:1: ( rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 )
             // InternalEssentialOCL.g:6534:2: rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1
@@ -19605,7 +19605,7 @@
     public final void rule__ExpCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6545:1: ( ( () ) )
             // InternalEssentialOCL.g:6546:1: ( () )
@@ -19614,15 +19614,15 @@
             // InternalEssentialOCL.g:6547:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0()); 
+               before(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0());
             }
             // InternalEssentialOCL.g:6548:1: ()
-            // InternalEssentialOCL.g:6550:1: 
+            // InternalEssentialOCL.g:6550:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0()); 
+               after(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0());
             }
 
             }
@@ -19646,7 +19646,7 @@
     public final void rule__ExpCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6564:1: ( rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 )
             // InternalEssentialOCL.g:6565:2: rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2
@@ -19684,7 +19684,7 @@
     public final void rule__ExpCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6576:1: ( ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) )
             // InternalEssentialOCL.g:6577:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
@@ -19693,7 +19693,7 @@
             // InternalEssentialOCL.g:6578:1: ( rule__ExpCS__NameAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1()); 
+               before(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1());
             }
             // InternalEssentialOCL.g:6579:1: ( rule__ExpCS__NameAssignment_0_1_1 )
             // InternalEssentialOCL.g:6579:2: rule__ExpCS__NameAssignment_0_1_1
@@ -19707,7 +19707,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1()); 
+               after(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1());
             }
 
             }
@@ -19735,7 +19735,7 @@
     public final void rule__ExpCS__Group_0_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6593:1: ( rule__ExpCS__Group_0_1__2__Impl )
             // InternalEssentialOCL.g:6594:2: rule__ExpCS__Group_0_1__2__Impl
@@ -19768,7 +19768,7 @@
     public final void rule__ExpCS__Group_0_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6604:1: ( ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) )
             // InternalEssentialOCL.g:6605:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
@@ -19777,7 +19777,7 @@
             // InternalEssentialOCL.g:6606:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2()); 
+               before(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2());
             }
             // InternalEssentialOCL.g:6607:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
             // InternalEssentialOCL.g:6607:2: rule__ExpCS__OwnedRightAssignment_0_1_2
@@ -19791,7 +19791,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2()); 
+               after(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2());
             }
 
             }
@@ -19819,7 +19819,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6627:1: ( rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 )
             // InternalEssentialOCL.g:6628:2: rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1
@@ -19857,7 +19857,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6639:1: ( ( () ) )
             // InternalEssentialOCL.g:6640:1: ( () )
@@ -19866,15 +19866,15 @@
             // InternalEssentialOCL.g:6641:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0());
             }
             // InternalEssentialOCL.g:6642:1: ()
-            // InternalEssentialOCL.g:6644:1: 
+            // InternalEssentialOCL.g:6644:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0());
             }
 
             }
@@ -19898,7 +19898,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6658:1: ( rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 )
             // InternalEssentialOCL.g:6659:2: rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2
@@ -19936,7 +19936,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6670:1: ( ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) )
             // InternalEssentialOCL.g:6671:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
@@ -19945,7 +19945,7 @@
             // InternalEssentialOCL.g:6672:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1());
             }
             // InternalEssentialOCL.g:6673:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
             // InternalEssentialOCL.g:6673:2: rule__PrefixedLetExpCS__NameAssignment_0_1
@@ -19959,7 +19959,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1());
             }
 
             }
@@ -19987,7 +19987,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6687:1: ( rule__PrefixedLetExpCS__Group_0__2__Impl )
             // InternalEssentialOCL.g:6688:2: rule__PrefixedLetExpCS__Group_0__2__Impl
@@ -20020,7 +20020,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6698:1: ( ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) )
             // InternalEssentialOCL.g:6699:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
@@ -20029,7 +20029,7 @@
             // InternalEssentialOCL.g:6700:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2());
             }
             // InternalEssentialOCL.g:6701:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
             // InternalEssentialOCL.g:6701:2: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2
@@ -20043,7 +20043,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2());
             }
 
             }
@@ -20071,7 +20071,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6721:1: ( rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 )
             // InternalEssentialOCL.g:6722:2: rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1
@@ -20109,7 +20109,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6733:1: ( ( () ) )
             // InternalEssentialOCL.g:6734:1: ( () )
@@ -20118,15 +20118,15 @@
             // InternalEssentialOCL.g:6735:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0());
             }
             // InternalEssentialOCL.g:6736:1: ()
-            // InternalEssentialOCL.g:6738:1: 
+            // InternalEssentialOCL.g:6738:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0());
             }
 
             }
@@ -20150,7 +20150,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6752:1: ( rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 )
             // InternalEssentialOCL.g:6753:2: rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2
@@ -20188,7 +20188,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6764:1: ( ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) )
             // InternalEssentialOCL.g:6765:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
@@ -20197,7 +20197,7 @@
             // InternalEssentialOCL.g:6766:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1());
             }
             // InternalEssentialOCL.g:6767:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
             // InternalEssentialOCL.g:6767:2: rule__PrefixedPrimaryExpCS__NameAssignment_0_1
@@ -20211,7 +20211,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1());
             }
 
             }
@@ -20239,7 +20239,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6781:1: ( rule__PrefixedPrimaryExpCS__Group_0__2__Impl )
             // InternalEssentialOCL.g:6782:2: rule__PrefixedPrimaryExpCS__Group_0__2__Impl
@@ -20272,7 +20272,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6792:1: ( ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) )
             // InternalEssentialOCL.g:6793:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
@@ -20281,7 +20281,7 @@
             // InternalEssentialOCL.g:6794:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2());
             }
             // InternalEssentialOCL.g:6795:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
             // InternalEssentialOCL.g:6795:2: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2
@@ -20295,7 +20295,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2());
             }
 
             }
@@ -20323,7 +20323,7 @@
     public final void rule__NameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6815:1: ( rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 )
             // InternalEssentialOCL.g:6816:2: rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1
@@ -20361,7 +20361,7 @@
     public final void rule__NameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6827:1: ( ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) )
             // InternalEssentialOCL.g:6828:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
@@ -20370,7 +20370,7 @@
             // InternalEssentialOCL.g:6829:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
             // InternalEssentialOCL.g:6830:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
             // InternalEssentialOCL.g:6830:2: rule__NameExpCS__OwnedPathNameAssignment_0
@@ -20384,7 +20384,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
 
             }
@@ -20412,7 +20412,7 @@
     public final void rule__NameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6844:1: ( rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 )
             // InternalEssentialOCL.g:6845:2: rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2
@@ -20450,7 +20450,7 @@
     public final void rule__NameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6856:1: ( ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) )
             // InternalEssentialOCL.g:6857:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
@@ -20459,7 +20459,7 @@
             // InternalEssentialOCL.g:6858:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1());
             }
             // InternalEssentialOCL.g:6859:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             loop52:
@@ -20491,7 +20491,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1());
             }
 
             }
@@ -20519,7 +20519,7 @@
     public final void rule__NameExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6873:1: ( rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 )
             // InternalEssentialOCL.g:6874:2: rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3
@@ -20557,7 +20557,7 @@
     public final void rule__NameExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6885:1: ( ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) )
             // InternalEssentialOCL.g:6886:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
@@ -20566,7 +20566,7 @@
             // InternalEssentialOCL.g:6887:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2());
             }
             // InternalEssentialOCL.g:6888:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             int alt53=2;
@@ -20591,7 +20591,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2());
             }
 
             }
@@ -20619,7 +20619,7 @@
     public final void rule__NameExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6902:1: ( rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 )
             // InternalEssentialOCL.g:6903:2: rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4
@@ -20657,7 +20657,7 @@
     public final void rule__NameExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6914:1: ( ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) )
             // InternalEssentialOCL.g:6915:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
@@ -20666,7 +20666,7 @@
             // InternalEssentialOCL.g:6916:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3());
             }
             // InternalEssentialOCL.g:6917:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             int alt54=2;
@@ -20691,7 +20691,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3());
             }
 
             }
@@ -20719,7 +20719,7 @@
     public final void rule__NameExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6931:1: ( rule__NameExpCS__Group__4__Impl )
             // InternalEssentialOCL.g:6932:2: rule__NameExpCS__Group__4__Impl
@@ -20752,7 +20752,7 @@
     public final void rule__NameExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6942:1: ( ( ( rule__NameExpCS__Group_4__0 )? ) )
             // InternalEssentialOCL.g:6943:1: ( ( rule__NameExpCS__Group_4__0 )? )
@@ -20761,7 +20761,7 @@
             // InternalEssentialOCL.g:6944:1: ( rule__NameExpCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getGroup_4()); 
+               before(grammarAccess.getNameExpCSAccess().getGroup_4());
             }
             // InternalEssentialOCL.g:6945:1: ( rule__NameExpCS__Group_4__0 )?
             int alt55=2;
@@ -20786,7 +20786,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getGroup_4()); 
+               after(grammarAccess.getNameExpCSAccess().getGroup_4());
             }
 
             }
@@ -20814,7 +20814,7 @@
     public final void rule__NameExpCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6969:1: ( rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 )
             // InternalEssentialOCL.g:6970:2: rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1
@@ -20852,7 +20852,7 @@
     public final void rule__NameExpCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6981:1: ( ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) )
             // InternalEssentialOCL.g:6982:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
@@ -20861,7 +20861,7 @@
             // InternalEssentialOCL.g:6983:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0()); 
+               before(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0());
             }
             // InternalEssentialOCL.g:6984:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
             // InternalEssentialOCL.g:6984:2: rule__NameExpCS__IsPreAssignment_4_0
@@ -20875,7 +20875,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0()); 
+               after(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0());
             }
 
             }
@@ -20903,7 +20903,7 @@
     public final void rule__NameExpCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:6998:1: ( rule__NameExpCS__Group_4__1__Impl )
             // InternalEssentialOCL.g:6999:2: rule__NameExpCS__Group_4__1__Impl
@@ -20936,7 +20936,7 @@
     public final void rule__NameExpCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7009:1: ( ( 'pre' ) )
             // InternalEssentialOCL.g:7010:1: ( 'pre' )
@@ -20945,11 +20945,11 @@
             // InternalEssentialOCL.g:7011:1: 'pre'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); 
+               before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
             }
             match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); 
+               after(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
             }
 
             }
@@ -20977,7 +20977,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7032:1: ( rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 )
             // InternalEssentialOCL.g:7033:2: rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1
@@ -21015,7 +21015,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7044:1: ( ( () ) )
             // InternalEssentialOCL.g:7045:1: ( () )
@@ -21024,15 +21024,15 @@
             // InternalEssentialOCL.g:7046:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0());
             }
             // InternalEssentialOCL.g:7047:1: ()
-            // InternalEssentialOCL.g:7049:1: 
+            // InternalEssentialOCL.g:7049:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0());
             }
 
             }
@@ -21056,7 +21056,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7063:1: ( rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 )
             // InternalEssentialOCL.g:7064:2: rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2
@@ -21094,7 +21094,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7075:1: ( ( '{' ) )
             // InternalEssentialOCL.g:7076:1: ( '{' )
@@ -21103,11 +21103,11 @@
             // InternalEssentialOCL.g:7077:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,56,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -21135,7 +21135,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7094:1: ( rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 )
             // InternalEssentialOCL.g:7095:2: rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3
@@ -21173,7 +21173,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7106:1: ( ( ( rule__CurlyBracketedClauseCS__Alternatives_2 ) ) )
             // InternalEssentialOCL.g:7107:1: ( ( rule__CurlyBracketedClauseCS__Alternatives_2 ) )
@@ -21182,7 +21182,7 @@
             // InternalEssentialOCL.g:7108:1: ( rule__CurlyBracketedClauseCS__Alternatives_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2());
             }
             // InternalEssentialOCL.g:7109:1: ( rule__CurlyBracketedClauseCS__Alternatives_2 )
             // InternalEssentialOCL.g:7109:2: rule__CurlyBracketedClauseCS__Alternatives_2
@@ -21196,7 +21196,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2());
             }
 
             }
@@ -21224,7 +21224,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7123:1: ( rule__CurlyBracketedClauseCS__Group__3__Impl )
             // InternalEssentialOCL.g:7124:2: rule__CurlyBracketedClauseCS__Group__3__Impl
@@ -21257,7 +21257,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7134:1: ( ( '}' ) )
             // InternalEssentialOCL.g:7135:1: ( '}' )
@@ -21266,11 +21266,11 @@
             // InternalEssentialOCL.g:7136:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -21298,7 +21298,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7161:1: ( rule__CurlyBracketedClauseCS__Group_2_0__0__Impl rule__CurlyBracketedClauseCS__Group_2_0__1 )
             // InternalEssentialOCL.g:7162:2: rule__CurlyBracketedClauseCS__Group_2_0__0__Impl rule__CurlyBracketedClauseCS__Group_2_0__1
@@ -21336,7 +21336,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7173:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 ) ) )
             // InternalEssentialOCL.g:7174:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 ) )
@@ -21345,7 +21345,7 @@
             // InternalEssentialOCL.g:7175:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0());
             }
             // InternalEssentialOCL.g:7176:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 )
             // InternalEssentialOCL.g:7176:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0
@@ -21359,7 +21359,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0());
             }
 
             }
@@ -21387,7 +21387,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7190:1: ( rule__CurlyBracketedClauseCS__Group_2_0__1__Impl )
             // InternalEssentialOCL.g:7191:2: rule__CurlyBracketedClauseCS__Group_2_0__1__Impl
@@ -21420,7 +21420,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7201:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )* ) )
             // InternalEssentialOCL.g:7202:1: ( ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )* )
@@ -21429,7 +21429,7 @@
             // InternalEssentialOCL.g:7203:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1());
             }
             // InternalEssentialOCL.g:7204:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )*
             loop56:
@@ -21461,7 +21461,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1());
             }
 
             }
@@ -21489,7 +21489,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7222:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_0_1__1 )
             // InternalEssentialOCL.g:7223:2: rule__CurlyBracketedClauseCS__Group_2_0_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_0_1__1
@@ -21527,7 +21527,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7234:1: ( ( ',' ) )
             // InternalEssentialOCL.g:7235:1: ( ',' )
@@ -21536,11 +21536,11 @@
             // InternalEssentialOCL.g:7236:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
             }
             match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
             }
 
             }
@@ -21568,7 +21568,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7253:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__1__Impl )
             // InternalEssentialOCL.g:7254:2: rule__CurlyBracketedClauseCS__Group_2_0_1__1__Impl
@@ -21601,7 +21601,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7264:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 ) ) )
             // InternalEssentialOCL.g:7265:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 ) )
@@ -21610,7 +21610,7 @@
             // InternalEssentialOCL.g:7266:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1());
             }
             // InternalEssentialOCL.g:7267:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 )
             // InternalEssentialOCL.g:7267:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1
@@ -21624,7 +21624,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1());
             }
 
             }
@@ -21652,7 +21652,7 @@
     public final void rule__RoundBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7285:1: ( rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 )
             // InternalEssentialOCL.g:7286:2: rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1
@@ -21690,7 +21690,7 @@
     public final void rule__RoundBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7297:1: ( ( () ) )
             // InternalEssentialOCL.g:7298:1: ( () )
@@ -21699,15 +21699,15 @@
             // InternalEssentialOCL.g:7299:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0());
             }
             // InternalEssentialOCL.g:7300:1: ()
-            // InternalEssentialOCL.g:7302:1: 
+            // InternalEssentialOCL.g:7302:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0());
             }
 
             }
@@ -21731,7 +21731,7 @@
     public final void rule__RoundBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7316:1: ( rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 )
             // InternalEssentialOCL.g:7317:2: rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2
@@ -21769,7 +21769,7 @@
     public final void rule__RoundBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7328:1: ( ( '(' ) )
             // InternalEssentialOCL.g:7329:1: ( '(' )
@@ -21778,11 +21778,11 @@
             // InternalEssentialOCL.g:7330:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
             }
 
             }
@@ -21810,7 +21810,7 @@
     public final void rule__RoundBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7347:1: ( rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 )
             // InternalEssentialOCL.g:7348:2: rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3
@@ -21848,7 +21848,7 @@
     public final void rule__RoundBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7359:1: ( ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) )
             // InternalEssentialOCL.g:7360:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
@@ -21857,7 +21857,7 @@
             // InternalEssentialOCL.g:7361:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2());
             }
             // InternalEssentialOCL.g:7362:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             int alt57=2;
@@ -21882,7 +21882,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2());
             }
 
             }
@@ -21910,7 +21910,7 @@
     public final void rule__RoundBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7376:1: ( rule__RoundBracketedClauseCS__Group__3__Impl )
             // InternalEssentialOCL.g:7377:2: rule__RoundBracketedClauseCS__Group__3__Impl
@@ -21943,7 +21943,7 @@
     public final void rule__RoundBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7387:1: ( ( ')' ) )
             // InternalEssentialOCL.g:7388:1: ( ')' )
@@ -21952,11 +21952,11 @@
             // InternalEssentialOCL.g:7389:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
             }
             match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
             }
 
             }
@@ -21984,7 +21984,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7414:1: ( rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 )
             // InternalEssentialOCL.g:7415:2: rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1
@@ -22022,7 +22022,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7426:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) )
             // InternalEssentialOCL.g:7427:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
@@ -22031,7 +22031,7 @@
             // InternalEssentialOCL.g:7428:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0());
             }
             // InternalEssentialOCL.g:7429:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
             // InternalEssentialOCL.g:7429:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0
@@ -22045,7 +22045,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0());
             }
 
             }
@@ -22073,7 +22073,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7443:1: ( rule__RoundBracketedClauseCS__Group_2__1__Impl rule__RoundBracketedClauseCS__Group_2__2 )
             // InternalEssentialOCL.g:7444:2: rule__RoundBracketedClauseCS__Group_2__1__Impl rule__RoundBracketedClauseCS__Group_2__2
@@ -22111,7 +22111,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7455:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) )
             // InternalEssentialOCL.g:7456:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
@@ -22120,7 +22120,7 @@
             // InternalEssentialOCL.g:7457:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1());
             }
             // InternalEssentialOCL.g:7458:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             loop58:
@@ -22152,7 +22152,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1());
             }
 
             }
@@ -22180,7 +22180,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7472:1: ( rule__RoundBracketedClauseCS__Group_2__2__Impl rule__RoundBracketedClauseCS__Group_2__3 )
             // InternalEssentialOCL.g:7473:2: rule__RoundBracketedClauseCS__Group_2__2__Impl rule__RoundBracketedClauseCS__Group_2__3
@@ -22218,7 +22218,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7484:1: ( ( ( rule__RoundBracketedClauseCS__Group_2_2__0 )? ) )
             // InternalEssentialOCL.g:7485:1: ( ( rule__RoundBracketedClauseCS__Group_2_2__0 )? )
@@ -22227,7 +22227,7 @@
             // InternalEssentialOCL.g:7486:1: ( rule__RoundBracketedClauseCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2());
             }
             // InternalEssentialOCL.g:7487:1: ( rule__RoundBracketedClauseCS__Group_2_2__0 )?
             int alt59=2;
@@ -22252,7 +22252,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2());
             }
 
             }
@@ -22280,7 +22280,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7501:1: ( rule__RoundBracketedClauseCS__Group_2__3__Impl )
             // InternalEssentialOCL.g:7502:2: rule__RoundBracketedClauseCS__Group_2__3__Impl
@@ -22313,7 +22313,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7512:1: ( ( ( rule__RoundBracketedClauseCS__Group_2_3__0 )* ) )
             // InternalEssentialOCL.g:7513:1: ( ( rule__RoundBracketedClauseCS__Group_2_3__0 )* )
@@ -22322,7 +22322,7 @@
             // InternalEssentialOCL.g:7514:1: ( rule__RoundBracketedClauseCS__Group_2_3__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3());
             }
             // InternalEssentialOCL.g:7515:1: ( rule__RoundBracketedClauseCS__Group_2_3__0 )*
             loop60:
@@ -22354,7 +22354,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3());
             }
 
             }
@@ -22382,7 +22382,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7537:1: ( rule__RoundBracketedClauseCS__Group_2_2__0__Impl rule__RoundBracketedClauseCS__Group_2_2__1 )
             // InternalEssentialOCL.g:7538:2: rule__RoundBracketedClauseCS__Group_2_2__0__Impl rule__RoundBracketedClauseCS__Group_2_2__1
@@ -22420,7 +22420,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7549:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 ) ) )
             // InternalEssentialOCL.g:7550:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 ) )
@@ -22429,7 +22429,7 @@
             // InternalEssentialOCL.g:7551:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0());
             }
             // InternalEssentialOCL.g:7552:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 )
             // InternalEssentialOCL.g:7552:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0
@@ -22443,7 +22443,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0());
             }
 
             }
@@ -22471,7 +22471,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7566:1: ( rule__RoundBracketedClauseCS__Group_2_2__1__Impl )
             // InternalEssentialOCL.g:7567:2: rule__RoundBracketedClauseCS__Group_2_2__1__Impl
@@ -22504,7 +22504,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7577:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )* ) )
             // InternalEssentialOCL.g:7578:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )* )
@@ -22513,7 +22513,7 @@
             // InternalEssentialOCL.g:7579:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1());
             }
             // InternalEssentialOCL.g:7580:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )*
             loop61:
@@ -22545,7 +22545,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1());
             }
 
             }
@@ -22573,7 +22573,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7598:1: ( rule__RoundBracketedClauseCS__Group_2_3__0__Impl rule__RoundBracketedClauseCS__Group_2_3__1 )
             // InternalEssentialOCL.g:7599:2: rule__RoundBracketedClauseCS__Group_2_3__0__Impl rule__RoundBracketedClauseCS__Group_2_3__1
@@ -22611,7 +22611,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7610:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 ) ) )
             // InternalEssentialOCL.g:7611:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 ) )
@@ -22620,7 +22620,7 @@
             // InternalEssentialOCL.g:7612:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0());
             }
             // InternalEssentialOCL.g:7613:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 )
             // InternalEssentialOCL.g:7613:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0
@@ -22634,7 +22634,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0());
             }
 
             }
@@ -22662,7 +22662,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7627:1: ( rule__RoundBracketedClauseCS__Group_2_3__1__Impl )
             // InternalEssentialOCL.g:7628:2: rule__RoundBracketedClauseCS__Group_2_3__1__Impl
@@ -22695,7 +22695,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7638:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )* ) )
             // InternalEssentialOCL.g:7639:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )* )
@@ -22704,7 +22704,7 @@
             // InternalEssentialOCL.g:7640:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1());
             }
             // InternalEssentialOCL.g:7641:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )*
             loop62:
@@ -22736,7 +22736,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1());
             }
 
             }
@@ -22764,7 +22764,7 @@
     public final void rule__SquareBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7659:1: ( rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 )
             // InternalEssentialOCL.g:7660:2: rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1
@@ -22802,7 +22802,7 @@
     public final void rule__SquareBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7671:1: ( ( '[' ) )
             // InternalEssentialOCL.g:7672:1: ( '[' )
@@ -22811,11 +22811,11 @@
             // InternalEssentialOCL.g:7673:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
             }
             match(input,65,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
             }
 
             }
@@ -22843,7 +22843,7 @@
     public final void rule__SquareBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7690:1: ( rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 )
             // InternalEssentialOCL.g:7691:2: rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2
@@ -22881,7 +22881,7 @@
     public final void rule__SquareBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7702:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) )
             // InternalEssentialOCL.g:7703:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
@@ -22890,7 +22890,7 @@
             // InternalEssentialOCL.g:7704:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1());
             }
             // InternalEssentialOCL.g:7705:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
             // InternalEssentialOCL.g:7705:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1
@@ -22904,7 +22904,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1());
             }
 
             }
@@ -22932,7 +22932,7 @@
     public final void rule__SquareBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7719:1: ( rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 )
             // InternalEssentialOCL.g:7720:2: rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3
@@ -22970,7 +22970,7 @@
     public final void rule__SquareBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7731:1: ( ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) )
             // InternalEssentialOCL.g:7732:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
@@ -22979,7 +22979,7 @@
             // InternalEssentialOCL.g:7733:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2());
             }
             // InternalEssentialOCL.g:7734:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             loop63:
@@ -23011,7 +23011,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2());
             }
 
             }
@@ -23039,7 +23039,7 @@
     public final void rule__SquareBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7748:1: ( rule__SquareBracketedClauseCS__Group__3__Impl )
             // InternalEssentialOCL.g:7749:2: rule__SquareBracketedClauseCS__Group__3__Impl
@@ -23072,7 +23072,7 @@
     public final void rule__SquareBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7759:1: ( ( ']' ) )
             // InternalEssentialOCL.g:7760:1: ( ']' )
@@ -23081,11 +23081,11 @@
             // InternalEssentialOCL.g:7761:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
             }
 
             }
@@ -23113,7 +23113,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7786:1: ( rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 )
             // InternalEssentialOCL.g:7787:2: rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1
@@ -23151,7 +23151,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7798:1: ( ( ',' ) )
             // InternalEssentialOCL.g:7799:1: ( ',' )
@@ -23160,11 +23160,11 @@
             // InternalEssentialOCL.g:7800:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
             }
             match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
             }
 
             }
@@ -23192,7 +23192,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7817:1: ( rule__SquareBracketedClauseCS__Group_2__1__Impl )
             // InternalEssentialOCL.g:7818:2: rule__SquareBracketedClauseCS__Group_2__1__Impl
@@ -23225,7 +23225,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7828:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) )
             // InternalEssentialOCL.g:7829:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
@@ -23234,7 +23234,7 @@
             // InternalEssentialOCL.g:7830:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1());
             }
             // InternalEssentialOCL.g:7831:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
             // InternalEssentialOCL.g:7831:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1
@@ -23248,7 +23248,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1());
             }
 
             }
@@ -23276,7 +23276,7 @@
     public final void rule__NavigatingArgCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7849:1: ( rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 )
             // InternalEssentialOCL.g:7850:2: rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1
@@ -23314,7 +23314,7 @@
     public final void rule__NavigatingArgCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7861:1: ( ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) )
             // InternalEssentialOCL.g:7862:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
@@ -23323,7 +23323,7 @@
             // InternalEssentialOCL.g:7863:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0());
             }
             // InternalEssentialOCL.g:7864:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
             // InternalEssentialOCL.g:7864:2: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0
@@ -23337,7 +23337,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0());
             }
 
             }
@@ -23365,7 +23365,7 @@
     public final void rule__NavigatingArgCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7878:1: ( rule__NavigatingArgCS__Group_0__1__Impl )
             // InternalEssentialOCL.g:7879:2: rule__NavigatingArgCS__Group_0__1__Impl
@@ -23398,7 +23398,7 @@
     public final void rule__NavigatingArgCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7889:1: ( ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) )
             // InternalEssentialOCL.g:7890:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
@@ -23407,7 +23407,7 @@
             // InternalEssentialOCL.g:7891:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1());
             }
             // InternalEssentialOCL.g:7892:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             int alt64=2;
@@ -23432,7 +23432,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1());
             }
 
             }
@@ -23460,7 +23460,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7910:1: ( rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 )
             // InternalEssentialOCL.g:7911:2: rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1
@@ -23498,7 +23498,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7922:1: ( ( ':' ) )
             // InternalEssentialOCL.g:7923:1: ( ':' )
@@ -23507,11 +23507,11 @@
             // InternalEssentialOCL.g:7924:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
             }
             match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
             }
 
             }
@@ -23539,7 +23539,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7941:1: ( rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 )
             // InternalEssentialOCL.g:7942:2: rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2
@@ -23577,7 +23577,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7953:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 ) ) )
             // InternalEssentialOCL.g:7954:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 ) )
@@ -23586,7 +23586,7 @@
             // InternalEssentialOCL.g:7955:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1());
             }
             // InternalEssentialOCL.g:7956:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 )
             // InternalEssentialOCL.g:7956:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1
@@ -23600,7 +23600,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1());
             }
 
             }
@@ -23628,7 +23628,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7970:1: ( rule__NavigatingArgCS__Group_0_1_0__2__Impl )
             // InternalEssentialOCL.g:7971:2: rule__NavigatingArgCS__Group_0_1_0__2__Impl
@@ -23661,7 +23661,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:7981:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) )
             // InternalEssentialOCL.g:7982:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
@@ -23670,7 +23670,7 @@
             // InternalEssentialOCL.g:7983:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2());
             }
             // InternalEssentialOCL.g:7984:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             int alt65=2;
@@ -23695,7 +23695,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2());
             }
 
             }
@@ -23723,7 +23723,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8004:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 )
             // InternalEssentialOCL.g:8005:2: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1
@@ -23761,7 +23761,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8016:1: ( ( '=' ) )
             // InternalEssentialOCL.g:8017:1: ( '=' )
@@ -23770,11 +23770,11 @@
             // InternalEssentialOCL.g:8018:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
             }
             match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
             }
 
             }
@@ -23802,7 +23802,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8035:1: ( rule__NavigatingArgCS__Group_0_1_0_2__1__Impl )
             // InternalEssentialOCL.g:8036:2: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl
@@ -23835,7 +23835,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8046:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) )
             // InternalEssentialOCL.g:8047:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
@@ -23844,7 +23844,7 @@
             // InternalEssentialOCL.g:8048:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1());
             }
             // InternalEssentialOCL.g:8049:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
             // InternalEssentialOCL.g:8049:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1
@@ -23858,7 +23858,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1());
             }
 
             }
@@ -23886,7 +23886,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8067:1: ( rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 )
             // InternalEssentialOCL.g:8068:2: rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1
@@ -23924,7 +23924,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8079:1: ( ( 'in' ) )
             // InternalEssentialOCL.g:8080:1: ( 'in' )
@@ -23933,11 +23933,11 @@
             // InternalEssentialOCL.g:8081:1: 'in'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
             }
             match(input,67,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
             }
 
             }
@@ -23965,7 +23965,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8098:1: ( rule__NavigatingArgCS__Group_0_1_1__1__Impl )
             // InternalEssentialOCL.g:8099:2: rule__NavigatingArgCS__Group_0_1_1__1__Impl
@@ -23998,7 +23998,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8109:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 ) ) )
             // InternalEssentialOCL.g:8110:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 ) )
@@ -24007,7 +24007,7 @@
             // InternalEssentialOCL.g:8111:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1());
             }
             // InternalEssentialOCL.g:8112:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 )
             // InternalEssentialOCL.g:8112:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1
@@ -24021,7 +24021,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1());
             }
 
             }
@@ -24049,7 +24049,7 @@
     public final void rule__NavigatingArgCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8130:1: ( rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 )
             // InternalEssentialOCL.g:8131:2: rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1
@@ -24087,7 +24087,7 @@
     public final void rule__NavigatingArgCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8142:1: ( ( ':' ) )
             // InternalEssentialOCL.g:8143:1: ( ':' )
@@ -24096,11 +24096,11 @@
             // InternalEssentialOCL.g:8144:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
             }
             match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
             }
 
             }
@@ -24128,7 +24128,7 @@
     public final void rule__NavigatingArgCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8161:1: ( rule__NavigatingArgCS__Group_1__1__Impl )
             // InternalEssentialOCL.g:8162:2: rule__NavigatingArgCS__Group_1__1__Impl
@@ -24161,7 +24161,7 @@
     public final void rule__NavigatingArgCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8172:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) )
             // InternalEssentialOCL.g:8173:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
@@ -24170,7 +24170,7 @@
             // InternalEssentialOCL.g:8174:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1());
             }
             // InternalEssentialOCL.g:8175:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
             // InternalEssentialOCL.g:8175:2: rule__NavigatingArgCS__OwnedTypeAssignment_1_1
@@ -24184,7 +24184,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1());
             }
 
             }
@@ -24212,7 +24212,7 @@
     public final void rule__NavigatingBarArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8193:1: ( rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 )
             // InternalEssentialOCL.g:8194:2: rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1
@@ -24250,7 +24250,7 @@
     public final void rule__NavigatingBarArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8205:1: ( ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) )
             // InternalEssentialOCL.g:8206:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
@@ -24259,7 +24259,7 @@
             // InternalEssentialOCL.g:8207:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0());
             }
             // InternalEssentialOCL.g:8208:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
             // InternalEssentialOCL.g:8208:2: rule__NavigatingBarArgCS__PrefixAssignment_0
@@ -24273,7 +24273,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0());
             }
 
             }
@@ -24301,7 +24301,7 @@
     public final void rule__NavigatingBarArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8222:1: ( rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 )
             // InternalEssentialOCL.g:8223:2: rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2
@@ -24339,7 +24339,7 @@
     public final void rule__NavigatingBarArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8234:1: ( ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) )
             // InternalEssentialOCL.g:8235:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
@@ -24348,7 +24348,7 @@
             // InternalEssentialOCL.g:8236:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
             // InternalEssentialOCL.g:8237:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
             // InternalEssentialOCL.g:8237:2: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1
@@ -24362,7 +24362,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
 
             }
@@ -24390,7 +24390,7 @@
     public final void rule__NavigatingBarArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8251:1: ( rule__NavigatingBarArgCS__Group__2__Impl )
             // InternalEssentialOCL.g:8252:2: rule__NavigatingBarArgCS__Group__2__Impl
@@ -24423,7 +24423,7 @@
     public final void rule__NavigatingBarArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8262:1: ( ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) )
             // InternalEssentialOCL.g:8263:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
@@ -24432,7 +24432,7 @@
             // InternalEssentialOCL.g:8264:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2());
             }
             // InternalEssentialOCL.g:8265:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             int alt66=2;
@@ -24457,7 +24457,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2());
             }
 
             }
@@ -24485,7 +24485,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8285:1: ( rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 )
             // InternalEssentialOCL.g:8286:2: rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1
@@ -24523,7 +24523,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8297:1: ( ( ':' ) )
             // InternalEssentialOCL.g:8298:1: ( ':' )
@@ -24532,11 +24532,11 @@
             // InternalEssentialOCL.g:8299:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
             }
             match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -24564,7 +24564,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8316:1: ( rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 )
             // InternalEssentialOCL.g:8317:2: rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2
@@ -24602,7 +24602,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8328:1: ( ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) )
             // InternalEssentialOCL.g:8329:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
@@ -24611,7 +24611,7 @@
             // InternalEssentialOCL.g:8330:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1());
             }
             // InternalEssentialOCL.g:8331:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
             // InternalEssentialOCL.g:8331:2: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1
@@ -24625,7 +24625,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1());
             }
 
             }
@@ -24653,7 +24653,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8345:1: ( rule__NavigatingBarArgCS__Group_2__2__Impl )
             // InternalEssentialOCL.g:8346:2: rule__NavigatingBarArgCS__Group_2__2__Impl
@@ -24686,7 +24686,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8356:1: ( ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) )
             // InternalEssentialOCL.g:8357:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
@@ -24695,7 +24695,7 @@
             // InternalEssentialOCL.g:8358:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2());
             }
             // InternalEssentialOCL.g:8359:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             int alt67=2;
@@ -24720,7 +24720,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2());
             }
 
             }
@@ -24748,7 +24748,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8379:1: ( rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 )
             // InternalEssentialOCL.g:8380:2: rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1
@@ -24786,7 +24786,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8391:1: ( ( '=' ) )
             // InternalEssentialOCL.g:8392:1: ( '=' )
@@ -24795,11 +24795,11 @@
             // InternalEssentialOCL.g:8393:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
             match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
 
             }
@@ -24827,7 +24827,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8410:1: ( rule__NavigatingBarArgCS__Group_2_2__1__Impl )
             // InternalEssentialOCL.g:8411:2: rule__NavigatingBarArgCS__Group_2_2__1__Impl
@@ -24860,7 +24860,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8421:1: ( ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
             // InternalEssentialOCL.g:8422:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
@@ -24869,7 +24869,7 @@
             // InternalEssentialOCL.g:8423:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
             // InternalEssentialOCL.g:8424:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
             // InternalEssentialOCL.g:8424:2: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1
@@ -24883,7 +24883,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
 
             }
@@ -24911,7 +24911,7 @@
     public final void rule__NavigatingCommaArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8442:1: ( rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 )
             // InternalEssentialOCL.g:8443:2: rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1
@@ -24949,7 +24949,7 @@
     public final void rule__NavigatingCommaArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8454:1: ( ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) )
             // InternalEssentialOCL.g:8455:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
@@ -24958,7 +24958,7 @@
             // InternalEssentialOCL.g:8456:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0());
             }
             // InternalEssentialOCL.g:8457:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
             // InternalEssentialOCL.g:8457:2: rule__NavigatingCommaArgCS__PrefixAssignment_0
@@ -24972,7 +24972,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0());
             }
 
             }
@@ -25000,7 +25000,7 @@
     public final void rule__NavigatingCommaArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8471:1: ( rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 )
             // InternalEssentialOCL.g:8472:2: rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2
@@ -25038,7 +25038,7 @@
     public final void rule__NavigatingCommaArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8483:1: ( ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) )
             // InternalEssentialOCL.g:8484:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
@@ -25047,7 +25047,7 @@
             // InternalEssentialOCL.g:8485:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
             // InternalEssentialOCL.g:8486:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
             // InternalEssentialOCL.g:8486:2: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1
@@ -25061,7 +25061,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
 
             }
@@ -25089,7 +25089,7 @@
     public final void rule__NavigatingCommaArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8500:1: ( rule__NavigatingCommaArgCS__Group__2__Impl )
             // InternalEssentialOCL.g:8501:2: rule__NavigatingCommaArgCS__Group__2__Impl
@@ -25122,7 +25122,7 @@
     public final void rule__NavigatingCommaArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8511:1: ( ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) )
             // InternalEssentialOCL.g:8512:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
@@ -25131,7 +25131,7 @@
             // InternalEssentialOCL.g:8513:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2());
             }
             // InternalEssentialOCL.g:8514:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             int alt68=2;
@@ -25156,7 +25156,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2());
             }
 
             }
@@ -25184,7 +25184,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8534:1: ( rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 )
             // InternalEssentialOCL.g:8535:2: rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1
@@ -25222,7 +25222,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8546:1: ( ( ':' ) )
             // InternalEssentialOCL.g:8547:1: ( ':' )
@@ -25231,11 +25231,11 @@
             // InternalEssentialOCL.g:8548:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
             }
             match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
             }
 
             }
@@ -25263,7 +25263,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8565:1: ( rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 )
             // InternalEssentialOCL.g:8566:2: rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2
@@ -25301,7 +25301,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8577:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 ) ) )
             // InternalEssentialOCL.g:8578:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 ) )
@@ -25310,7 +25310,7 @@
             // InternalEssentialOCL.g:8579:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1());
             }
             // InternalEssentialOCL.g:8580:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 )
             // InternalEssentialOCL.g:8580:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1
@@ -25324,7 +25324,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1());
             }
 
             }
@@ -25352,7 +25352,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8594:1: ( rule__NavigatingCommaArgCS__Group_2_0__2__Impl )
             // InternalEssentialOCL.g:8595:2: rule__NavigatingCommaArgCS__Group_2_0__2__Impl
@@ -25385,7 +25385,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8605:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) )
             // InternalEssentialOCL.g:8606:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
@@ -25394,7 +25394,7 @@
             // InternalEssentialOCL.g:8607:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2());
             }
             // InternalEssentialOCL.g:8608:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             int alt69=2;
@@ -25419,7 +25419,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2());
             }
 
             }
@@ -25447,7 +25447,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8628:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 )
             // InternalEssentialOCL.g:8629:2: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1
@@ -25485,7 +25485,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8640:1: ( ( '=' ) )
             // InternalEssentialOCL.g:8641:1: ( '=' )
@@ -25494,11 +25494,11 @@
             // InternalEssentialOCL.g:8642:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
             }
             match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
             }
 
             }
@@ -25526,7 +25526,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8659:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl )
             // InternalEssentialOCL.g:8660:2: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl
@@ -25559,7 +25559,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8670:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) )
             // InternalEssentialOCL.g:8671:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
@@ -25568,7 +25568,7 @@
             // InternalEssentialOCL.g:8672:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1());
             }
             // InternalEssentialOCL.g:8673:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
             // InternalEssentialOCL.g:8673:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1
@@ -25582,7 +25582,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1());
             }
 
             }
@@ -25610,7 +25610,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8691:1: ( rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 )
             // InternalEssentialOCL.g:8692:2: rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1
@@ -25648,7 +25648,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8703:1: ( ( 'in' ) )
             // InternalEssentialOCL.g:8704:1: ( 'in' )
@@ -25657,11 +25657,11 @@
             // InternalEssentialOCL.g:8705:1: 'in'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
             }
             match(input,67,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
             }
 
             }
@@ -25689,7 +25689,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8722:1: ( rule__NavigatingCommaArgCS__Group_2_1__1__Impl )
             // InternalEssentialOCL.g:8723:2: rule__NavigatingCommaArgCS__Group_2_1__1__Impl
@@ -25722,7 +25722,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8733:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 ) ) )
             // InternalEssentialOCL.g:8734:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 ) )
@@ -25731,7 +25731,7 @@
             // InternalEssentialOCL.g:8735:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1());
             }
             // InternalEssentialOCL.g:8736:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 )
             // InternalEssentialOCL.g:8736:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1
@@ -25745,7 +25745,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1());
             }
 
             }
@@ -25773,7 +25773,7 @@
     public final void rule__NavigatingSemiArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8754:1: ( rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 )
             // InternalEssentialOCL.g:8755:2: rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1
@@ -25811,7 +25811,7 @@
     public final void rule__NavigatingSemiArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8766:1: ( ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) )
             // InternalEssentialOCL.g:8767:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
@@ -25820,7 +25820,7 @@
             // InternalEssentialOCL.g:8768:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0());
             }
             // InternalEssentialOCL.g:8769:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
             // InternalEssentialOCL.g:8769:2: rule__NavigatingSemiArgCS__PrefixAssignment_0
@@ -25834,7 +25834,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0());
             }
 
             }
@@ -25862,7 +25862,7 @@
     public final void rule__NavigatingSemiArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8783:1: ( rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 )
             // InternalEssentialOCL.g:8784:2: rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2
@@ -25900,7 +25900,7 @@
     public final void rule__NavigatingSemiArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8795:1: ( ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) )
             // InternalEssentialOCL.g:8796:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
@@ -25909,7 +25909,7 @@
             // InternalEssentialOCL.g:8797:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
             // InternalEssentialOCL.g:8798:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
             // InternalEssentialOCL.g:8798:2: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1
@@ -25923,7 +25923,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
 
             }
@@ -25951,7 +25951,7 @@
     public final void rule__NavigatingSemiArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8812:1: ( rule__NavigatingSemiArgCS__Group__2__Impl )
             // InternalEssentialOCL.g:8813:2: rule__NavigatingSemiArgCS__Group__2__Impl
@@ -25984,7 +25984,7 @@
     public final void rule__NavigatingSemiArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8823:1: ( ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) )
             // InternalEssentialOCL.g:8824:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
@@ -25993,7 +25993,7 @@
             // InternalEssentialOCL.g:8825:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2());
             }
             // InternalEssentialOCL.g:8826:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             int alt70=2;
@@ -26018,7 +26018,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2());
             }
 
             }
@@ -26046,7 +26046,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8846:1: ( rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 )
             // InternalEssentialOCL.g:8847:2: rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1
@@ -26084,7 +26084,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8858:1: ( ( ':' ) )
             // InternalEssentialOCL.g:8859:1: ( ':' )
@@ -26093,11 +26093,11 @@
             // InternalEssentialOCL.g:8860:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
             }
             match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -26125,7 +26125,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8877:1: ( rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 )
             // InternalEssentialOCL.g:8878:2: rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2
@@ -26163,7 +26163,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8889:1: ( ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) )
             // InternalEssentialOCL.g:8890:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
@@ -26172,7 +26172,7 @@
             // InternalEssentialOCL.g:8891:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1());
             }
             // InternalEssentialOCL.g:8892:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
             // InternalEssentialOCL.g:8892:2: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1
@@ -26186,7 +26186,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1());
             }
 
             }
@@ -26214,7 +26214,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8906:1: ( rule__NavigatingSemiArgCS__Group_2__2__Impl )
             // InternalEssentialOCL.g:8907:2: rule__NavigatingSemiArgCS__Group_2__2__Impl
@@ -26247,7 +26247,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8917:1: ( ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) )
             // InternalEssentialOCL.g:8918:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
@@ -26256,7 +26256,7 @@
             // InternalEssentialOCL.g:8919:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2());
             }
             // InternalEssentialOCL.g:8920:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             int alt71=2;
@@ -26281,7 +26281,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2());
             }
 
             }
@@ -26309,7 +26309,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8940:1: ( rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 )
             // InternalEssentialOCL.g:8941:2: rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1
@@ -26347,7 +26347,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8952:1: ( ( '=' ) )
             // InternalEssentialOCL.g:8953:1: ( '=' )
@@ -26356,11 +26356,11 @@
             // InternalEssentialOCL.g:8954:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
             match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
 
             }
@@ -26388,7 +26388,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8971:1: ( rule__NavigatingSemiArgCS__Group_2_2__1__Impl )
             // InternalEssentialOCL.g:8972:2: rule__NavigatingSemiArgCS__Group_2_2__1__Impl
@@ -26421,7 +26421,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:8982:1: ( ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
             // InternalEssentialOCL.g:8983:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
@@ -26430,7 +26430,7 @@
             // InternalEssentialOCL.g:8984:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
             // InternalEssentialOCL.g:8985:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
             // InternalEssentialOCL.g:8985:2: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1
@@ -26444,7 +26444,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
 
             }
@@ -26472,7 +26472,7 @@
     public final void rule__IfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9003:1: ( rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 )
             // InternalEssentialOCL.g:9004:2: rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1
@@ -26510,7 +26510,7 @@
     public final void rule__IfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9015:1: ( ( 'if' ) )
             // InternalEssentialOCL.g:9016:1: ( 'if' )
@@ -26519,11 +26519,11 @@
             // InternalEssentialOCL.g:9017:1: 'if'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); 
+               before(grammarAccess.getIfExpCSAccess().getIfKeyword_0());
             }
             match(input,68,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); 
+               after(grammarAccess.getIfExpCSAccess().getIfKeyword_0());
             }
 
             }
@@ -26551,7 +26551,7 @@
     public final void rule__IfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9034:1: ( rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 )
             // InternalEssentialOCL.g:9035:2: rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2
@@ -26589,7 +26589,7 @@
     public final void rule__IfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9046:1: ( ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) )
             // InternalEssentialOCL.g:9047:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
@@ -26598,7 +26598,7 @@
             // InternalEssentialOCL.g:9048:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1());
             }
             // InternalEssentialOCL.g:9049:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
             // InternalEssentialOCL.g:9049:2: rule__IfExpCS__OwnedConditionAssignment_1
@@ -26612,7 +26612,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1());
             }
 
             }
@@ -26640,7 +26640,7 @@
     public final void rule__IfExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9063:1: ( rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 )
             // InternalEssentialOCL.g:9064:2: rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3
@@ -26678,7 +26678,7 @@
     public final void rule__IfExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9075:1: ( ( 'then' ) )
             // InternalEssentialOCL.g:9076:1: ( 'then' )
@@ -26687,11 +26687,11 @@
             // InternalEssentialOCL.g:9077:1: 'then'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); 
+               before(grammarAccess.getIfExpCSAccess().getThenKeyword_2());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); 
+               after(grammarAccess.getIfExpCSAccess().getThenKeyword_2());
             }
 
             }
@@ -26719,7 +26719,7 @@
     public final void rule__IfExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9094:1: ( rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 )
             // InternalEssentialOCL.g:9095:2: rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4
@@ -26757,7 +26757,7 @@
     public final void rule__IfExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9106:1: ( ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) )
             // InternalEssentialOCL.g:9107:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
@@ -26766,7 +26766,7 @@
             // InternalEssentialOCL.g:9108:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
             // InternalEssentialOCL.g:9109:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
             // InternalEssentialOCL.g:9109:2: rule__IfExpCS__OwnedThenExpressionAssignment_3
@@ -26780,7 +26780,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
 
             }
@@ -26808,7 +26808,7 @@
     public final void rule__IfExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9123:1: ( rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 )
             // InternalEssentialOCL.g:9124:2: rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5
@@ -26846,7 +26846,7 @@
     public final void rule__IfExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9135:1: ( ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) )
             // InternalEssentialOCL.g:9136:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
@@ -26855,7 +26855,7 @@
             // InternalEssentialOCL.g:9137:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4());
             }
             // InternalEssentialOCL.g:9138:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             loop72:
@@ -26887,7 +26887,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4());
             }
 
             }
@@ -26915,7 +26915,7 @@
     public final void rule__IfExpCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9152:1: ( rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 )
             // InternalEssentialOCL.g:9153:2: rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6
@@ -26953,7 +26953,7 @@
     public final void rule__IfExpCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9164:1: ( ( 'else' ) )
             // InternalEssentialOCL.g:9165:1: ( 'else' )
@@ -26962,11 +26962,11 @@
             // InternalEssentialOCL.g:9166:1: 'else'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); 
+               before(grammarAccess.getIfExpCSAccess().getElseKeyword_5());
             }
             match(input,70,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); 
+               after(grammarAccess.getIfExpCSAccess().getElseKeyword_5());
             }
 
             }
@@ -26994,7 +26994,7 @@
     public final void rule__IfExpCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9183:1: ( rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 )
             // InternalEssentialOCL.g:9184:2: rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7
@@ -27032,7 +27032,7 @@
     public final void rule__IfExpCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9195:1: ( ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) )
             // InternalEssentialOCL.g:9196:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
@@ -27041,7 +27041,7 @@
             // InternalEssentialOCL.g:9197:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6());
             }
             // InternalEssentialOCL.g:9198:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
             // InternalEssentialOCL.g:9198:2: rule__IfExpCS__OwnedElseExpressionAssignment_6
@@ -27055,7 +27055,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6());
             }
 
             }
@@ -27083,7 +27083,7 @@
     public final void rule__IfExpCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9212:1: ( rule__IfExpCS__Group__7__Impl )
             // InternalEssentialOCL.g:9213:2: rule__IfExpCS__Group__7__Impl
@@ -27116,7 +27116,7 @@
     public final void rule__IfExpCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9223:1: ( ( 'endif' ) )
             // InternalEssentialOCL.g:9224:1: ( 'endif' )
@@ -27125,11 +27125,11 @@
             // InternalEssentialOCL.g:9225:1: 'endif'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); 
+               before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
             }
             match(input,71,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); 
+               after(grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
             }
 
             }
@@ -27157,7 +27157,7 @@
     public final void rule__ElseIfThenExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9258:1: ( rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 )
             // InternalEssentialOCL.g:9259:2: rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1
@@ -27195,7 +27195,7 @@
     public final void rule__ElseIfThenExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9270:1: ( ( 'elseif' ) )
             // InternalEssentialOCL.g:9271:1: ( 'elseif' )
@@ -27204,11 +27204,11 @@
             // InternalEssentialOCL.g:9272:1: 'elseif'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
             }
             match(input,72,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
             }
 
             }
@@ -27236,7 +27236,7 @@
     public final void rule__ElseIfThenExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9289:1: ( rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 )
             // InternalEssentialOCL.g:9290:2: rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2
@@ -27274,7 +27274,7 @@
     public final void rule__ElseIfThenExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9301:1: ( ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) )
             // InternalEssentialOCL.g:9302:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
@@ -27283,7 +27283,7 @@
             // InternalEssentialOCL.g:9303:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1());
             }
             // InternalEssentialOCL.g:9304:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
             // InternalEssentialOCL.g:9304:2: rule__ElseIfThenExpCS__OwnedConditionAssignment_1
@@ -27297,7 +27297,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1());
             }
 
             }
@@ -27325,7 +27325,7 @@
     public final void rule__ElseIfThenExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9318:1: ( rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 )
             // InternalEssentialOCL.g:9319:2: rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3
@@ -27363,7 +27363,7 @@
     public final void rule__ElseIfThenExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9330:1: ( ( 'then' ) )
             // InternalEssentialOCL.g:9331:1: ( 'then' )
@@ -27372,11 +27372,11 @@
             // InternalEssentialOCL.g:9332:1: 'then'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
             }
 
             }
@@ -27404,7 +27404,7 @@
     public final void rule__ElseIfThenExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9349:1: ( rule__ElseIfThenExpCS__Group__3__Impl )
             // InternalEssentialOCL.g:9350:2: rule__ElseIfThenExpCS__Group__3__Impl
@@ -27437,7 +27437,7 @@
     public final void rule__ElseIfThenExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9360:1: ( ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) )
             // InternalEssentialOCL.g:9361:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
@@ -27446,7 +27446,7 @@
             // InternalEssentialOCL.g:9362:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
             // InternalEssentialOCL.g:9363:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
             // InternalEssentialOCL.g:9363:2: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3
@@ -27460,7 +27460,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
 
             }
@@ -27488,7 +27488,7 @@
     public final void rule__LetExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9385:1: ( rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 )
             // InternalEssentialOCL.g:9386:2: rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1
@@ -27526,7 +27526,7 @@
     public final void rule__LetExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9397:1: ( ( 'let' ) )
             // InternalEssentialOCL.g:9398:1: ( 'let' )
@@ -27535,11 +27535,11 @@
             // InternalEssentialOCL.g:9399:1: 'let'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); 
+               before(grammarAccess.getLetExpCSAccess().getLetKeyword_0());
             }
             match(input,73,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); 
+               after(grammarAccess.getLetExpCSAccess().getLetKeyword_0());
             }
 
             }
@@ -27567,7 +27567,7 @@
     public final void rule__LetExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9416:1: ( rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 )
             // InternalEssentialOCL.g:9417:2: rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2
@@ -27605,7 +27605,7 @@
     public final void rule__LetExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9428:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) )
             // InternalEssentialOCL.g:9429:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
@@ -27614,7 +27614,7 @@
             // InternalEssentialOCL.g:9430:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1());
             }
             // InternalEssentialOCL.g:9431:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
             // InternalEssentialOCL.g:9431:2: rule__LetExpCS__OwnedVariablesAssignment_1
@@ -27628,7 +27628,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1());
             }
 
             }
@@ -27656,7 +27656,7 @@
     public final void rule__LetExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9445:1: ( rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 )
             // InternalEssentialOCL.g:9446:2: rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3
@@ -27694,7 +27694,7 @@
     public final void rule__LetExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9457:1: ( ( ( rule__LetExpCS__Group_2__0 )* ) )
             // InternalEssentialOCL.g:9458:1: ( ( rule__LetExpCS__Group_2__0 )* )
@@ -27703,7 +27703,7 @@
             // InternalEssentialOCL.g:9459:1: ( rule__LetExpCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getGroup_2()); 
+               before(grammarAccess.getLetExpCSAccess().getGroup_2());
             }
             // InternalEssentialOCL.g:9460:1: ( rule__LetExpCS__Group_2__0 )*
             loop73:
@@ -27735,7 +27735,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getGroup_2()); 
+               after(grammarAccess.getLetExpCSAccess().getGroup_2());
             }
 
             }
@@ -27763,7 +27763,7 @@
     public final void rule__LetExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9474:1: ( rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 )
             // InternalEssentialOCL.g:9475:2: rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4
@@ -27801,7 +27801,7 @@
     public final void rule__LetExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9486:1: ( ( 'in' ) )
             // InternalEssentialOCL.g:9487:1: ( 'in' )
@@ -27810,11 +27810,11 @@
             // InternalEssentialOCL.g:9488:1: 'in'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getInKeyword_3()); 
+               before(grammarAccess.getLetExpCSAccess().getInKeyword_3());
             }
             match(input,67,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getInKeyword_3()); 
+               after(grammarAccess.getLetExpCSAccess().getInKeyword_3());
             }
 
             }
@@ -27842,7 +27842,7 @@
     public final void rule__LetExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9505:1: ( rule__LetExpCS__Group__4__Impl )
             // InternalEssentialOCL.g:9506:2: rule__LetExpCS__Group__4__Impl
@@ -27875,7 +27875,7 @@
     public final void rule__LetExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9516:1: ( ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) )
             // InternalEssentialOCL.g:9517:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
@@ -27884,7 +27884,7 @@
             // InternalEssentialOCL.g:9518:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4());
             }
             // InternalEssentialOCL.g:9519:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
             // InternalEssentialOCL.g:9519:2: rule__LetExpCS__OwnedInExpressionAssignment_4
@@ -27898,7 +27898,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4());
             }
 
             }
@@ -27926,7 +27926,7 @@
     public final void rule__LetExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9543:1: ( rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 )
             // InternalEssentialOCL.g:9544:2: rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1
@@ -27964,7 +27964,7 @@
     public final void rule__LetExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9555:1: ( ( ',' ) )
             // InternalEssentialOCL.g:9556:1: ( ',' )
@@ -27973,11 +27973,11 @@
             // InternalEssentialOCL.g:9557:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); 
+               before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
             }
             match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); 
+               after(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
             }
 
             }
@@ -28005,7 +28005,7 @@
     public final void rule__LetExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9574:1: ( rule__LetExpCS__Group_2__1__Impl )
             // InternalEssentialOCL.g:9575:2: rule__LetExpCS__Group_2__1__Impl
@@ -28038,7 +28038,7 @@
     public final void rule__LetExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9585:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) )
             // InternalEssentialOCL.g:9586:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
@@ -28047,7 +28047,7 @@
             // InternalEssentialOCL.g:9587:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1());
             }
             // InternalEssentialOCL.g:9588:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
             // InternalEssentialOCL.g:9588:2: rule__LetExpCS__OwnedVariablesAssignment_2_1
@@ -28061,7 +28061,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1());
             }
 
             }
@@ -28089,7 +28089,7 @@
     public final void rule__LetVariableCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9606:1: ( rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 )
             // InternalEssentialOCL.g:9607:2: rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1
@@ -28127,7 +28127,7 @@
     public final void rule__LetVariableCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9618:1: ( ( ( rule__LetVariableCS__NameAssignment_0 ) ) )
             // InternalEssentialOCL.g:9619:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
@@ -28136,7 +28136,7 @@
             // InternalEssentialOCL.g:9620:1: ( rule__LetVariableCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getNameAssignment_0());
             }
             // InternalEssentialOCL.g:9621:1: ( rule__LetVariableCS__NameAssignment_0 )
             // InternalEssentialOCL.g:9621:2: rule__LetVariableCS__NameAssignment_0
@@ -28150,7 +28150,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getNameAssignment_0());
             }
 
             }
@@ -28178,7 +28178,7 @@
     public final void rule__LetVariableCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9635:1: ( rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 )
             // InternalEssentialOCL.g:9636:2: rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2
@@ -28216,7 +28216,7 @@
     public final void rule__LetVariableCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9647:1: ( ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) )
             // InternalEssentialOCL.g:9648:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
@@ -28225,7 +28225,7 @@
             // InternalEssentialOCL.g:9649:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1());
             }
             // InternalEssentialOCL.g:9650:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             int alt74=2;
@@ -28250,7 +28250,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1());
             }
 
             }
@@ -28278,7 +28278,7 @@
     public final void rule__LetVariableCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9664:1: ( rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 )
             // InternalEssentialOCL.g:9665:2: rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3
@@ -28316,7 +28316,7 @@
     public final void rule__LetVariableCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9676:1: ( ( ( rule__LetVariableCS__Group_2__0 )? ) )
             // InternalEssentialOCL.g:9677:1: ( ( rule__LetVariableCS__Group_2__0 )? )
@@ -28325,7 +28325,7 @@
             // InternalEssentialOCL.g:9678:1: ( rule__LetVariableCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getGroup_2()); 
+               before(grammarAccess.getLetVariableCSAccess().getGroup_2());
             }
             // InternalEssentialOCL.g:9679:1: ( rule__LetVariableCS__Group_2__0 )?
             int alt75=2;
@@ -28350,7 +28350,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getGroup_2()); 
+               after(grammarAccess.getLetVariableCSAccess().getGroup_2());
             }
 
             }
@@ -28378,7 +28378,7 @@
     public final void rule__LetVariableCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9693:1: ( rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 )
             // InternalEssentialOCL.g:9694:2: rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4
@@ -28416,7 +28416,7 @@
     public final void rule__LetVariableCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9705:1: ( ( '=' ) )
             // InternalEssentialOCL.g:9706:1: ( '=' )
@@ -28425,11 +28425,11 @@
             // InternalEssentialOCL.g:9707:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); 
+               before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
             }
             match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); 
+               after(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
             }
 
             }
@@ -28457,7 +28457,7 @@
     public final void rule__LetVariableCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9724:1: ( rule__LetVariableCS__Group__4__Impl )
             // InternalEssentialOCL.g:9725:2: rule__LetVariableCS__Group__4__Impl
@@ -28490,7 +28490,7 @@
     public final void rule__LetVariableCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9735:1: ( ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) )
             // InternalEssentialOCL.g:9736:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
@@ -28499,7 +28499,7 @@
             // InternalEssentialOCL.g:9737:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4());
             }
             // InternalEssentialOCL.g:9738:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
             // InternalEssentialOCL.g:9738:2: rule__LetVariableCS__OwnedInitExpressionAssignment_4
@@ -28513,7 +28513,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4());
             }
 
             }
@@ -28541,7 +28541,7 @@
     public final void rule__LetVariableCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9762:1: ( rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 )
             // InternalEssentialOCL.g:9763:2: rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1
@@ -28579,7 +28579,7 @@
     public final void rule__LetVariableCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9774:1: ( ( ':' ) )
             // InternalEssentialOCL.g:9775:1: ( ':' )
@@ -28588,11 +28588,11 @@
             // InternalEssentialOCL.g:9776:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
             }
             match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -28620,7 +28620,7 @@
     public final void rule__LetVariableCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9793:1: ( rule__LetVariableCS__Group_2__1__Impl )
             // InternalEssentialOCL.g:9794:2: rule__LetVariableCS__Group_2__1__Impl
@@ -28653,7 +28653,7 @@
     public final void rule__LetVariableCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9804:1: ( ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) )
             // InternalEssentialOCL.g:9805:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
@@ -28662,7 +28662,7 @@
             // InternalEssentialOCL.g:9806:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1());
             }
             // InternalEssentialOCL.g:9807:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
             // InternalEssentialOCL.g:9807:2: rule__LetVariableCS__OwnedTypeAssignment_2_1
@@ -28676,7 +28676,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1());
             }
 
             }
@@ -28704,7 +28704,7 @@
     public final void rule__NestedExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9825:1: ( rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 )
             // InternalEssentialOCL.g:9826:2: rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1
@@ -28742,7 +28742,7 @@
     public final void rule__NestedExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9837:1: ( ( '(' ) )
             // InternalEssentialOCL.g:9838:1: ( '(' )
@@ -28751,11 +28751,11 @@
             // InternalEssentialOCL.g:9839:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); 
+               before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); 
+               after(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
             }
 
             }
@@ -28783,7 +28783,7 @@
     public final void rule__NestedExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9856:1: ( rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 )
             // InternalEssentialOCL.g:9857:2: rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2
@@ -28821,7 +28821,7 @@
     public final void rule__NestedExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9868:1: ( ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) )
             // InternalEssentialOCL.g:9869:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
@@ -28830,7 +28830,7 @@
             // InternalEssentialOCL.g:9870:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1()); 
+               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1());
             }
             // InternalEssentialOCL.g:9871:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
             // InternalEssentialOCL.g:9871:2: rule__NestedExpCS__OwnedExpressionAssignment_1
@@ -28844,7 +28844,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1()); 
+               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1());
             }
 
             }
@@ -28872,7 +28872,7 @@
     public final void rule__NestedExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9885:1: ( rule__NestedExpCS__Group__2__Impl )
             // InternalEssentialOCL.g:9886:2: rule__NestedExpCS__Group__2__Impl
@@ -28905,7 +28905,7 @@
     public final void rule__NestedExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9896:1: ( ( ')' ) )
             // InternalEssentialOCL.g:9897:1: ( ')' )
@@ -28914,11 +28914,11 @@
             // InternalEssentialOCL.g:9898:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); 
+               before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
             }
             match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); 
+               after(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
             }
 
             }
@@ -28946,7 +28946,7 @@
     public final void rule__SelfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9921:1: ( rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 )
             // InternalEssentialOCL.g:9922:2: rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1
@@ -28984,7 +28984,7 @@
     public final void rule__SelfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9933:1: ( ( () ) )
             // InternalEssentialOCL.g:9934:1: ( () )
@@ -28993,15 +28993,15 @@
             // InternalEssentialOCL.g:9935:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0()); 
+               before(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0());
             }
             // InternalEssentialOCL.g:9936:1: ()
-            // InternalEssentialOCL.g:9938:1: 
+            // InternalEssentialOCL.g:9938:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0()); 
+               after(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0());
             }
 
             }
@@ -29025,7 +29025,7 @@
     public final void rule__SelfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9952:1: ( rule__SelfExpCS__Group__1__Impl )
             // InternalEssentialOCL.g:9953:2: rule__SelfExpCS__Group__1__Impl
@@ -29058,7 +29058,7 @@
     public final void rule__SelfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9963:1: ( ( 'self' ) )
             // InternalEssentialOCL.g:9964:1: ( 'self' )
@@ -29067,11 +29067,11 @@
             // InternalEssentialOCL.g:9965:1: 'self'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); 
+               before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
             }
             match(input,74,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); 
+               after(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
             }
 
             }
@@ -29099,7 +29099,7 @@
     public final void rule__MultiplicityBoundsCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9986:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
             // InternalEssentialOCL.g:9987:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
@@ -29137,7 +29137,7 @@
     public final void rule__MultiplicityBoundsCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:9998:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
             // InternalEssentialOCL.g:9999:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
@@ -29146,7 +29146,7 @@
             // InternalEssentialOCL.g:10000:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
             // InternalEssentialOCL.g:10001:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             // InternalEssentialOCL.g:10001:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
@@ -29160,7 +29160,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
 
             }
@@ -29188,7 +29188,7 @@
     public final void rule__MultiplicityBoundsCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10015:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
             // InternalEssentialOCL.g:10016:2: rule__MultiplicityBoundsCS__Group__1__Impl
@@ -29221,7 +29221,7 @@
     public final void rule__MultiplicityBoundsCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10026:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
             // InternalEssentialOCL.g:10027:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
@@ -29230,7 +29230,7 @@
             // InternalEssentialOCL.g:10028:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
             // InternalEssentialOCL.g:10029:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             int alt76=2;
@@ -29255,7 +29255,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
 
             }
@@ -29283,7 +29283,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10047:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
             // InternalEssentialOCL.g:10048:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
@@ -29321,7 +29321,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10059:1: ( ( '..' ) )
             // InternalEssentialOCL.g:10060:1: ( '..' )
@@ -29330,11 +29330,11 @@
             // InternalEssentialOCL.g:10061:1: '..'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
             }
             match(input,58,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
             }
 
             }
@@ -29362,7 +29362,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10078:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
             // InternalEssentialOCL.g:10079:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
@@ -29395,7 +29395,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10089:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
             // InternalEssentialOCL.g:10090:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
@@ -29404,7 +29404,7 @@
             // InternalEssentialOCL.g:10091:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
             // InternalEssentialOCL.g:10092:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             // InternalEssentialOCL.g:10092:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
@@ -29418,7 +29418,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
 
             }
@@ -29446,7 +29446,7 @@
     public final void rule__MultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10110:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
             // InternalEssentialOCL.g:10111:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
@@ -29484,7 +29484,7 @@
     public final void rule__MultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10122:1: ( ( '[' ) )
             // InternalEssentialOCL.g:10123:1: ( '[' )
@@ -29493,11 +29493,11 @@
             // InternalEssentialOCL.g:10124:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
             }
             match(input,65,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
             }
 
             }
@@ -29525,7 +29525,7 @@
     public final void rule__MultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10141:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
             // InternalEssentialOCL.g:10142:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
@@ -29563,7 +29563,7 @@
     public final void rule__MultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10153:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
             // InternalEssentialOCL.g:10154:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
@@ -29572,7 +29572,7 @@
             // InternalEssentialOCL.g:10155:1: ( rule__MultiplicityCS__Alternatives_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1()); 
+               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
             // InternalEssentialOCL.g:10156:1: ( rule__MultiplicityCS__Alternatives_1 )
             // InternalEssentialOCL.g:10156:2: rule__MultiplicityCS__Alternatives_1
@@ -29586,7 +29586,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_1()); 
+               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
 
             }
@@ -29614,7 +29614,7 @@
     public final void rule__MultiplicityCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10170:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
             // InternalEssentialOCL.g:10171:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
@@ -29652,7 +29652,7 @@
     public final void rule__MultiplicityCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10182:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
             // InternalEssentialOCL.g:10183:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
@@ -29661,7 +29661,7 @@
             // InternalEssentialOCL.g:10184:1: ( rule__MultiplicityCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
             // InternalEssentialOCL.g:10185:1: ( rule__MultiplicityCS__Alternatives_2 )?
             int alt77=2;
@@ -29686,7 +29686,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
 
             }
@@ -29714,7 +29714,7 @@
     public final void rule__MultiplicityCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10199:1: ( rule__MultiplicityCS__Group__3__Impl )
             // InternalEssentialOCL.g:10200:2: rule__MultiplicityCS__Group__3__Impl
@@ -29747,7 +29747,7 @@
     public final void rule__MultiplicityCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10210:1: ( ( ']' ) )
             // InternalEssentialOCL.g:10211:1: ( ']' )
@@ -29756,11 +29756,11 @@
             // InternalEssentialOCL.g:10212:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); 
+               before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); 
+               after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
             }
 
             }
@@ -29788,7 +29788,7 @@
     public final void rule__PathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10237:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
             // InternalEssentialOCL.g:10238:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
@@ -29826,7 +29826,7 @@
     public final void rule__PathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10249:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
             // InternalEssentialOCL.g:10250:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
@@ -29835,7 +29835,7 @@
             // InternalEssentialOCL.g:10251:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
             // InternalEssentialOCL.g:10252:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             // InternalEssentialOCL.g:10252:2: rule__PathNameCS__OwnedPathElementsAssignment_0
@@ -29849,7 +29849,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
 
             }
@@ -29877,7 +29877,7 @@
     public final void rule__PathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10266:1: ( rule__PathNameCS__Group__1__Impl )
             // InternalEssentialOCL.g:10267:2: rule__PathNameCS__Group__1__Impl
@@ -29910,7 +29910,7 @@
     public final void rule__PathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10277:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
             // InternalEssentialOCL.g:10278:1: ( ( rule__PathNameCS__Group_1__0 )* )
@@ -29919,7 +29919,7 @@
             // InternalEssentialOCL.g:10279:1: ( rule__PathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getGroup_1()); 
+               before(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
             // InternalEssentialOCL.g:10280:1: ( rule__PathNameCS__Group_1__0 )*
             loop78:
@@ -29951,7 +29951,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getGroup_1()); 
+               after(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
 
             }
@@ -29979,7 +29979,7 @@
     public final void rule__PathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10298:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
             // InternalEssentialOCL.g:10299:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
@@ -30017,7 +30017,7 @@
     public final void rule__PathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10310:1: ( ( '::' ) )
             // InternalEssentialOCL.g:10311:1: ( '::' )
@@ -30026,11 +30026,11 @@
             // InternalEssentialOCL.g:10312:1: '::'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); 
+               before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
             }
             match(input,75,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); 
+               after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
             }
 
             }
@@ -30058,7 +30058,7 @@
     public final void rule__PathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10329:1: ( rule__PathNameCS__Group_1__1__Impl )
             // InternalEssentialOCL.g:10330:2: rule__PathNameCS__Group_1__1__Impl
@@ -30091,7 +30091,7 @@
     public final void rule__PathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10340:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
             // InternalEssentialOCL.g:10341:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
@@ -30100,7 +30100,7 @@
             // InternalEssentialOCL.g:10342:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
             // InternalEssentialOCL.g:10343:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             // InternalEssentialOCL.g:10343:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
@@ -30114,7 +30114,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
 
             }
@@ -30142,7 +30142,7 @@
     public final void rule__TemplateBindingCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10361:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
             // InternalEssentialOCL.g:10362:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
@@ -30180,7 +30180,7 @@
     public final void rule__TemplateBindingCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10373:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
             // InternalEssentialOCL.g:10374:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
@@ -30189,7 +30189,7 @@
             // InternalEssentialOCL.g:10375:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
             // InternalEssentialOCL.g:10376:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             // InternalEssentialOCL.g:10376:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
@@ -30203,7 +30203,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
 
             }
@@ -30231,7 +30231,7 @@
     public final void rule__TemplateBindingCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10390:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
             // InternalEssentialOCL.g:10391:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
@@ -30269,7 +30269,7 @@
     public final void rule__TemplateBindingCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10402:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
             // InternalEssentialOCL.g:10403:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
@@ -30278,7 +30278,7 @@
             // InternalEssentialOCL.g:10404:1: ( rule__TemplateBindingCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getGroup_1()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
             // InternalEssentialOCL.g:10405:1: ( rule__TemplateBindingCS__Group_1__0 )*
             loop79:
@@ -30310,7 +30310,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getGroup_1()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
 
             }
@@ -30338,7 +30338,7 @@
     public final void rule__TemplateBindingCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10419:1: ( rule__TemplateBindingCS__Group__2__Impl )
             // InternalEssentialOCL.g:10420:2: rule__TemplateBindingCS__Group__2__Impl
@@ -30371,7 +30371,7 @@
     public final void rule__TemplateBindingCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10430:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
             // InternalEssentialOCL.g:10431:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
@@ -30380,7 +30380,7 @@
             // InternalEssentialOCL.g:10432:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
             // InternalEssentialOCL.g:10433:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             int alt80=2;
@@ -30405,7 +30405,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
 
             }
@@ -30433,7 +30433,7 @@
     public final void rule__TemplateBindingCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10453:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
             // InternalEssentialOCL.g:10454:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
@@ -30471,7 +30471,7 @@
     public final void rule__TemplateBindingCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10465:1: ( ( ',' ) )
             // InternalEssentialOCL.g:10466:1: ( ',' )
@@ -30480,11 +30480,11 @@
             // InternalEssentialOCL.g:10467:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
             }
             match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
             }
 
             }
@@ -30512,7 +30512,7 @@
     public final void rule__TemplateBindingCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10484:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
             // InternalEssentialOCL.g:10485:2: rule__TemplateBindingCS__Group_1__1__Impl
@@ -30545,7 +30545,7 @@
     public final void rule__TemplateBindingCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10495:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
             // InternalEssentialOCL.g:10496:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
@@ -30554,7 +30554,7 @@
             // InternalEssentialOCL.g:10497:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
             // InternalEssentialOCL.g:10498:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             // InternalEssentialOCL.g:10498:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
@@ -30568,7 +30568,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
 
             }
@@ -30596,7 +30596,7 @@
     public final void rule__TypeParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10518:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
             // InternalEssentialOCL.g:10519:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
@@ -30634,7 +30634,7 @@
     public final void rule__TypeParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10530:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
             // InternalEssentialOCL.g:10531:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
@@ -30643,7 +30643,7 @@
             // InternalEssentialOCL.g:10532:1: ( rule__TypeParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
             // InternalEssentialOCL.g:10533:1: ( rule__TypeParameterCS__NameAssignment_0 )
             // InternalEssentialOCL.g:10533:2: rule__TypeParameterCS__NameAssignment_0
@@ -30657,7 +30657,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
 
             }
@@ -30685,7 +30685,7 @@
     public final void rule__TypeParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10547:1: ( rule__TypeParameterCS__Group__1__Impl )
             // InternalEssentialOCL.g:10548:2: rule__TypeParameterCS__Group__1__Impl
@@ -30718,7 +30718,7 @@
     public final void rule__TypeParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10558:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
             // InternalEssentialOCL.g:10559:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
@@ -30727,7 +30727,7 @@
             // InternalEssentialOCL.g:10560:1: ( rule__TypeParameterCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
             // InternalEssentialOCL.g:10561:1: ( rule__TypeParameterCS__Group_1__0 )?
             int alt81=2;
@@ -30752,7 +30752,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
 
             }
@@ -30780,7 +30780,7 @@
     public final void rule__TypeParameterCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10579:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
             // InternalEssentialOCL.g:10580:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
@@ -30818,7 +30818,7 @@
     public final void rule__TypeParameterCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10591:1: ( ( 'extends' ) )
             // InternalEssentialOCL.g:10592:1: ( 'extends' )
@@ -30827,11 +30827,11 @@
             // InternalEssentialOCL.g:10593:1: 'extends'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
             }
             match(input,76,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
             }
 
             }
@@ -30859,7 +30859,7 @@
     public final void rule__TypeParameterCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10610:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
             // InternalEssentialOCL.g:10611:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
@@ -30897,7 +30897,7 @@
     public final void rule__TypeParameterCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10622:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
             // InternalEssentialOCL.g:10623:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
@@ -30906,7 +30906,7 @@
             // InternalEssentialOCL.g:10624:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
             // InternalEssentialOCL.g:10625:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             // InternalEssentialOCL.g:10625:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
@@ -30920,7 +30920,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
 
             }
@@ -30948,7 +30948,7 @@
     public final void rule__TypeParameterCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10639:1: ( rule__TypeParameterCS__Group_1__2__Impl )
             // InternalEssentialOCL.g:10640:2: rule__TypeParameterCS__Group_1__2__Impl
@@ -30981,7 +30981,7 @@
     public final void rule__TypeParameterCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10650:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
             // InternalEssentialOCL.g:10651:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
@@ -30990,7 +30990,7 @@
             // InternalEssentialOCL.g:10652:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
             // InternalEssentialOCL.g:10653:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             loop82:
@@ -31022,7 +31022,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup_1_2()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
 
             }
@@ -31050,7 +31050,7 @@
     public final void rule__TypeParameterCS__Group_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10673:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
             // InternalEssentialOCL.g:10674:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
@@ -31088,7 +31088,7 @@
     public final void rule__TypeParameterCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10685:1: ( ( '&&' ) )
             // InternalEssentialOCL.g:10686:1: ( '&&' )
@@ -31097,11 +31097,11 @@
             // InternalEssentialOCL.g:10687:1: '&&'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
             }
             match(input,77,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
             }
 
             }
@@ -31129,7 +31129,7 @@
     public final void rule__TypeParameterCS__Group_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10704:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
             // InternalEssentialOCL.g:10705:2: rule__TypeParameterCS__Group_1_2__1__Impl
@@ -31162,7 +31162,7 @@
     public final void rule__TypeParameterCS__Group_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10715:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
             // InternalEssentialOCL.g:10716:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
@@ -31171,7 +31171,7 @@
             // InternalEssentialOCL.g:10717:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
             // InternalEssentialOCL.g:10718:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             // InternalEssentialOCL.g:10718:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
@@ -31185,7 +31185,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
 
             }
@@ -31213,7 +31213,7 @@
     public final void rule__TypedTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10736:1: ( rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 )
             // InternalEssentialOCL.g:10737:2: rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1
@@ -31251,7 +31251,7 @@
     public final void rule__TypedTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10748:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) )
             // InternalEssentialOCL.g:10749:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
@@ -31260,7 +31260,7 @@
             // InternalEssentialOCL.g:10750:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0());
             }
             // InternalEssentialOCL.g:10751:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
             // InternalEssentialOCL.g:10751:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0
@@ -31274,7 +31274,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0());
             }
 
             }
@@ -31302,7 +31302,7 @@
     public final void rule__TypedTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10765:1: ( rule__TypedTypeRefCS__Group__1__Impl )
             // InternalEssentialOCL.g:10766:2: rule__TypedTypeRefCS__Group__1__Impl
@@ -31335,7 +31335,7 @@
     public final void rule__TypedTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10776:1: ( ( ( rule__TypedTypeRefCS__Group_1__0 )? ) )
             // InternalEssentialOCL.g:10777:1: ( ( rule__TypedTypeRefCS__Group_1__0 )? )
@@ -31344,7 +31344,7 @@
             // InternalEssentialOCL.g:10778:1: ( rule__TypedTypeRefCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1());
             }
             // InternalEssentialOCL.g:10779:1: ( rule__TypedTypeRefCS__Group_1__0 )?
             int alt83=2;
@@ -31369,7 +31369,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1());
             }
 
             }
@@ -31397,7 +31397,7 @@
     public final void rule__TypedTypeRefCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10797:1: ( rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 )
             // InternalEssentialOCL.g:10798:2: rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1
@@ -31435,7 +31435,7 @@
     public final void rule__TypedTypeRefCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10809:1: ( ( '(' ) )
             // InternalEssentialOCL.g:10810:1: ( '(' )
@@ -31444,11 +31444,11 @@
             // InternalEssentialOCL.g:10811:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -31476,7 +31476,7 @@
     public final void rule__TypedTypeRefCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10828:1: ( rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2 )
             // InternalEssentialOCL.g:10829:2: rule__TypedTypeRefCS__Group_1__1__Impl rule__TypedTypeRefCS__Group_1__2
@@ -31514,7 +31514,7 @@
     public final void rule__TypedTypeRefCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10840:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) ) )
             // InternalEssentialOCL.g:10841:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 ) )
@@ -31523,7 +31523,7 @@
             // InternalEssentialOCL.g:10842:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1());
             }
             // InternalEssentialOCL.g:10843:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1 )
             // InternalEssentialOCL.g:10843:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1
@@ -31537,7 +31537,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1());
             }
 
             }
@@ -31565,7 +31565,7 @@
     public final void rule__TypedTypeRefCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10857:1: ( rule__TypedTypeRefCS__Group_1__2__Impl )
             // InternalEssentialOCL.g:10858:2: rule__TypedTypeRefCS__Group_1__2__Impl
@@ -31598,7 +31598,7 @@
     public final void rule__TypedTypeRefCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10868:1: ( ( ')' ) )
             // InternalEssentialOCL.g:10869:1: ( ')' )
@@ -31607,11 +31607,11 @@
             // InternalEssentialOCL.g:10870:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
             }
             match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
             }
 
             }
@@ -31639,7 +31639,7 @@
     public final void rule__WildcardTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10893:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
             // InternalEssentialOCL.g:10894:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
@@ -31677,7 +31677,7 @@
     public final void rule__WildcardTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10905:1: ( ( () ) )
             // InternalEssentialOCL.g:10906:1: ( () )
@@ -31686,15 +31686,15 @@
             // InternalEssentialOCL.g:10907:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
             // InternalEssentialOCL.g:10908:1: ()
-            // InternalEssentialOCL.g:10910:1: 
+            // InternalEssentialOCL.g:10910:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
 
             }
@@ -31718,7 +31718,7 @@
     public final void rule__WildcardTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10924:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
             // InternalEssentialOCL.g:10925:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
@@ -31756,7 +31756,7 @@
     public final void rule__WildcardTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10936:1: ( ( '?' ) )
             // InternalEssentialOCL.g:10937:1: ( '?' )
@@ -31765,11 +31765,11 @@
             // InternalEssentialOCL.g:10938:1: '?'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
             }
             match(input,51,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
             }
 
             }
@@ -31797,7 +31797,7 @@
     public final void rule__WildcardTypeRefCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10955:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
             // InternalEssentialOCL.g:10956:2: rule__WildcardTypeRefCS__Group__2__Impl
@@ -31830,7 +31830,7 @@
     public final void rule__WildcardTypeRefCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10966:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
             // InternalEssentialOCL.g:10967:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
@@ -31839,7 +31839,7 @@
             // InternalEssentialOCL.g:10968:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
             // InternalEssentialOCL.g:10969:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             int alt84=2;
@@ -31864,7 +31864,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
 
             }
@@ -31892,7 +31892,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:10989:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
             // InternalEssentialOCL.g:10990:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
@@ -31930,7 +31930,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11001:1: ( ( 'extends' ) )
             // InternalEssentialOCL.g:11002:1: ( 'extends' )
@@ -31939,11 +31939,11 @@
             // InternalEssentialOCL.g:11003:1: 'extends'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
             }
             match(input,76,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
             }
 
             }
@@ -31971,7 +31971,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11020:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
             // InternalEssentialOCL.g:11021:2: rule__WildcardTypeRefCS__Group_2__1__Impl
@@ -32004,7 +32004,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11031:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
             // InternalEssentialOCL.g:11032:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
@@ -32013,7 +32013,7 @@
             // InternalEssentialOCL.g:11033:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
             // InternalEssentialOCL.g:11034:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             // InternalEssentialOCL.g:11034:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
@@ -32027,7 +32027,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
 
             }
@@ -32055,7 +32055,7 @@
     public final void rule__Model__OwnedExpressionAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11053:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:11054:1: ( ruleExpCS )
@@ -32064,7 +32064,7 @@
             // InternalEssentialOCL.g:11055:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getModelAccess().getOwnedExpressionExpCSParserRuleCall_0()); 
+               before(grammarAccess.getModelAccess().getOwnedExpressionExpCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -32072,7 +32072,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getModelAccess().getOwnedExpressionExpCSParserRuleCall_0()); 
+               after(grammarAccess.getModelAccess().getOwnedExpressionExpCSParserRuleCall_0());
             }
 
             }
@@ -32100,7 +32100,7 @@
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11070:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalEssentialOCL.g:11071:1: ( ( ruleUnrestrictedName ) )
@@ -32109,13 +32109,13 @@
             // InternalEssentialOCL.g:11072:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
             }
             // InternalEssentialOCL.g:11073:1: ( ruleUnrestrictedName )
             // InternalEssentialOCL.g:11074:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -32123,13 +32123,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
             }
 
             }
@@ -32157,7 +32157,7 @@
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11089:1: ( ( ( ruleURI ) ) )
             // InternalEssentialOCL.g:11090:1: ( ( ruleURI ) )
@@ -32166,13 +32166,13 @@
             // InternalEssentialOCL.g:11091:1: ( ruleURI )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
             }
             // InternalEssentialOCL.g:11092:1: ( ruleURI )
             // InternalEssentialOCL.g:11093:1: ruleURI
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleURI();
@@ -32180,13 +32180,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
             }
 
             }
@@ -32214,7 +32214,7 @@
     public final void rule__PrimitiveTypeCS__NameAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11108:1: ( ( rulePrimitiveTypeIdentifier ) )
             // InternalEssentialOCL.g:11109:1: ( rulePrimitiveTypeIdentifier )
@@ -32223,7 +32223,7 @@
             // InternalEssentialOCL.g:11110:1: rulePrimitiveTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
+               before(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrimitiveTypeIdentifier();
@@ -32231,7 +32231,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
+               after(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
             }
 
             }
@@ -32259,7 +32259,7 @@
     public final void rule__CollectionTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11123:1: ( ( ruleCollectionTypeIdentifier ) )
             // InternalEssentialOCL.g:11124:1: ( ruleCollectionTypeIdentifier )
@@ -32268,7 +32268,7 @@
             // InternalEssentialOCL.g:11125:1: ruleCollectionTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionTypeIdentifier();
@@ -32276,7 +32276,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
             }
 
             }
@@ -32304,7 +32304,7 @@
     public final void rule__CollectionTypeCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11138:1: ( ( ruleTypeExpCS ) )
             // InternalEssentialOCL.g:11139:1: ( ruleTypeExpCS )
@@ -32313,7 +32313,7 @@
             // InternalEssentialOCL.g:11140:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -32321,7 +32321,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -32349,7 +32349,7 @@
     public final void rule__MapTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11153:1: ( ( ( 'Map' ) ) )
             // InternalEssentialOCL.g:11154:1: ( ( 'Map' ) )
@@ -32358,23 +32358,23 @@
             // InternalEssentialOCL.g:11155:1: ( 'Map' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
             // InternalEssentialOCL.g:11156:1: ( 'Map' )
             // InternalEssentialOCL.g:11157:1: 'Map'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
             match(input,35,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
 
             }
@@ -32402,7 +32402,7 @@
     public final void rule__MapTypeCS__OwnedKeyTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11176:1: ( ( ruleTypeExpCS ) )
             // InternalEssentialOCL.g:11177:1: ( ruleTypeExpCS )
@@ -32411,7 +32411,7 @@
             // InternalEssentialOCL.g:11178:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -32419,7 +32419,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -32447,7 +32447,7 @@
     public final void rule__MapTypeCS__OwnedValueTypeAssignment_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11191:1: ( ( ruleTypeExpCS ) )
             // InternalEssentialOCL.g:11192:1: ( ruleTypeExpCS )
@@ -32456,7 +32456,7 @@
             // InternalEssentialOCL.g:11193:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -32464,7 +32464,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
             }
 
             }
@@ -32492,7 +32492,7 @@
     public final void rule__TupleTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11206:1: ( ( ( 'Tuple' ) ) )
             // InternalEssentialOCL.g:11207:1: ( ( 'Tuple' ) )
@@ -32501,23 +32501,23 @@
             // InternalEssentialOCL.g:11208:1: ( 'Tuple' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
             // InternalEssentialOCL.g:11209:1: ( 'Tuple' )
             // InternalEssentialOCL.g:11210:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
             match(input,36,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
 
             }
@@ -32545,7 +32545,7 @@
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11229:1: ( ( ruleTuplePartCS ) )
             // InternalEssentialOCL.g:11230:1: ( ruleTuplePartCS )
@@ -32554,7 +32554,7 @@
             // InternalEssentialOCL.g:11231:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTuplePartCS();
@@ -32562,7 +32562,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
             }
 
             }
@@ -32590,7 +32590,7 @@
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11244:1: ( ( ruleTuplePartCS ) )
             // InternalEssentialOCL.g:11245:1: ( ruleTuplePartCS )
@@ -32599,7 +32599,7 @@
             // InternalEssentialOCL.g:11246:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTuplePartCS();
@@ -32607,7 +32607,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
             }
 
             }
@@ -32635,7 +32635,7 @@
     public final void rule__TuplePartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11259:1: ( ( ruleUnrestrictedName ) )
             // InternalEssentialOCL.g:11260:1: ( ruleUnrestrictedName )
@@ -32644,7 +32644,7 @@
             // InternalEssentialOCL.g:11261:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -32652,7 +32652,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -32680,7 +32680,7 @@
     public final void rule__TuplePartCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11274:1: ( ( ruleTypeExpCS ) )
             // InternalEssentialOCL.g:11275:1: ( ruleTypeExpCS )
@@ -32689,7 +32689,7 @@
             // InternalEssentialOCL.g:11276:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -32697,7 +32697,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
             }
 
             }
@@ -32725,7 +32725,7 @@
     public final void rule__CollectionLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11289:1: ( ( ruleCollectionTypeCS ) )
             // InternalEssentialOCL.g:11290:1: ( ruleCollectionTypeCS )
@@ -32734,7 +32734,7 @@
             // InternalEssentialOCL.g:11291:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionTypeCS();
@@ -32742,7 +32742,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
 
             }
@@ -32770,7 +32770,7 @@
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11304:1: ( ( ruleCollectionLiteralPartCS ) )
             // InternalEssentialOCL.g:11305:1: ( ruleCollectionLiteralPartCS )
@@ -32779,7 +32779,7 @@
             // InternalEssentialOCL.g:11306:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionLiteralPartCS();
@@ -32787,7 +32787,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
             }
 
             }
@@ -32815,7 +32815,7 @@
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11319:1: ( ( ruleCollectionLiteralPartCS ) )
             // InternalEssentialOCL.g:11320:1: ( ruleCollectionLiteralPartCS )
@@ -32824,7 +32824,7 @@
             // InternalEssentialOCL.g:11321:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionLiteralPartCS();
@@ -32832,7 +32832,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -32860,7 +32860,7 @@
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11334:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:11335:1: ( ruleExpCS )
@@ -32869,7 +32869,7 @@
             // InternalEssentialOCL.g:11336:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -32877,7 +32877,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
             }
 
             }
@@ -32905,7 +32905,7 @@
     public final void rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11349:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:11350:1: ( ruleExpCS )
@@ -32914,7 +32914,7 @@
             // InternalEssentialOCL.g:11351:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -32922,7 +32922,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
             }
 
             }
@@ -32950,7 +32950,7 @@
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11364:1: ( ( rulePatternExpCS ) )
             // InternalEssentialOCL.g:11365:1: ( rulePatternExpCS )
@@ -32959,7 +32959,7 @@
             // InternalEssentialOCL.g:11366:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePatternExpCS();
@@ -32967,7 +32967,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
             }
 
             }
@@ -32995,7 +32995,7 @@
     public final void rule__CollectionPatternCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11379:1: ( ( ruleCollectionTypeCS ) )
             // InternalEssentialOCL.g:11380:1: ( ruleCollectionTypeCS )
@@ -33004,7 +33004,7 @@
             // InternalEssentialOCL.g:11381:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionTypeCS();
@@ -33012,7 +33012,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
 
             }
@@ -33040,7 +33040,7 @@
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11394:1: ( ( rulePatternExpCS ) )
             // InternalEssentialOCL.g:11395:1: ( rulePatternExpCS )
@@ -33049,7 +33049,7 @@
             // InternalEssentialOCL.g:11396:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePatternExpCS();
@@ -33057,7 +33057,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
             }
 
             }
@@ -33085,7 +33085,7 @@
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11409:1: ( ( rulePatternExpCS ) )
             // InternalEssentialOCL.g:11410:1: ( rulePatternExpCS )
@@ -33094,7 +33094,7 @@
             // InternalEssentialOCL.g:11411:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePatternExpCS();
@@ -33102,7 +33102,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -33130,7 +33130,7 @@
     public final void rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11424:1: ( ( ruleIdentifier ) )
             // InternalEssentialOCL.g:11425:1: ( ruleIdentifier )
@@ -33139,7 +33139,7 @@
             // InternalEssentialOCL.g:11426:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -33147,7 +33147,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
             }
 
             }
@@ -33175,7 +33175,7 @@
     public final void rule__ShadowPartCS__ReferredPropertyAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11439:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalEssentialOCL.g:11440:1: ( ( ruleUnrestrictedName ) )
@@ -33184,13 +33184,13 @@
             // InternalEssentialOCL.g:11441:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
+               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
             }
             // InternalEssentialOCL.g:11442:1: ( ruleUnrestrictedName )
             // InternalEssentialOCL.g:11443:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1()); 
+               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -33198,13 +33198,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1()); 
+               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
+               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
             }
 
             }
@@ -33232,7 +33232,7 @@
     public final void rule__ShadowPartCS__OwnedInitExpressionAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11458:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 ) ) )
             // InternalEssentialOCL.g:11459:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 ) )
@@ -33241,7 +33241,7 @@
             // InternalEssentialOCL.g:11460:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0()); 
+               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0());
             }
             // InternalEssentialOCL.g:11461:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 )
             // InternalEssentialOCL.g:11461:2: rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0
@@ -33255,7 +33255,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0()); 
+               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0());
             }
 
             }
@@ -33283,7 +33283,7 @@
     public final void rule__PatternExpCS__PatternVariableNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11474:1: ( ( ruleUnrestrictedName ) )
             // InternalEssentialOCL.g:11475:1: ( ruleUnrestrictedName )
@@ -33292,7 +33292,7 @@
             // InternalEssentialOCL.g:11476:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -33300,7 +33300,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -33328,7 +33328,7 @@
     public final void rule__PatternExpCS__OwnedPatternTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11489:1: ( ( ruleTypeExpCS ) )
             // InternalEssentialOCL.g:11490:1: ( ruleTypeExpCS )
@@ -33337,7 +33337,7 @@
             // InternalEssentialOCL.g:11491:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -33345,7 +33345,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
             }
 
             }
@@ -33373,7 +33373,7 @@
     public final void rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11504:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:11505:1: ( ruleExpCS )
@@ -33382,7 +33382,7 @@
             // InternalEssentialOCL.g:11506:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -33390,7 +33390,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
             }
 
             }
@@ -33418,7 +33418,7 @@
     public final void rule__MapLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11519:1: ( ( ruleMapTypeCS ) )
             // InternalEssentialOCL.g:11520:1: ( ruleMapTypeCS )
@@ -33427,7 +33427,7 @@
             // InternalEssentialOCL.g:11521:1: ruleMapTypeCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMapTypeCS();
@@ -33435,7 +33435,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
             }
 
             }
@@ -33463,7 +33463,7 @@
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11534:1: ( ( ruleMapLiteralPartCS ) )
             // InternalEssentialOCL.g:11535:1: ( ruleMapLiteralPartCS )
@@ -33472,7 +33472,7 @@
             // InternalEssentialOCL.g:11536:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMapLiteralPartCS();
@@ -33480,7 +33480,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
             }
 
             }
@@ -33508,7 +33508,7 @@
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11549:1: ( ( ruleMapLiteralPartCS ) )
             // InternalEssentialOCL.g:11550:1: ( ruleMapLiteralPartCS )
@@ -33517,7 +33517,7 @@
             // InternalEssentialOCL.g:11551:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMapLiteralPartCS();
@@ -33525,7 +33525,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -33553,7 +33553,7 @@
     public final void rule__MapLiteralPartCS__OwnedKeyAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11564:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:11565:1: ( ruleExpCS )
@@ -33562,7 +33562,7 @@
             // InternalEssentialOCL.g:11566:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -33570,7 +33570,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
             }
 
             }
@@ -33598,7 +33598,7 @@
     public final void rule__MapLiteralPartCS__OwnedValueAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11579:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:11580:1: ( ruleExpCS )
@@ -33607,7 +33607,7 @@
             // InternalEssentialOCL.g:11581:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -33615,7 +33615,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
             }
 
             }
@@ -33643,7 +33643,7 @@
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11594:1: ( ( ruleTupleLiteralPartCS ) )
             // InternalEssentialOCL.g:11595:1: ( ruleTupleLiteralPartCS )
@@ -33652,7 +33652,7 @@
             // InternalEssentialOCL.g:11596:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTupleLiteralPartCS();
@@ -33660,7 +33660,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
             }
 
             }
@@ -33688,7 +33688,7 @@
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11609:1: ( ( ruleTupleLiteralPartCS ) )
             // InternalEssentialOCL.g:11610:1: ( ruleTupleLiteralPartCS )
@@ -33697,7 +33697,7 @@
             // InternalEssentialOCL.g:11611:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTupleLiteralPartCS();
@@ -33705,7 +33705,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
             }
 
             }
@@ -33733,7 +33733,7 @@
     public final void rule__TupleLiteralPartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11624:1: ( ( ruleUnrestrictedName ) )
             // InternalEssentialOCL.g:11625:1: ( ruleUnrestrictedName )
@@ -33742,7 +33742,7 @@
             // InternalEssentialOCL.g:11626:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -33750,7 +33750,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -33778,7 +33778,7 @@
     public final void rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11639:1: ( ( ruleTypeExpCS ) )
             // InternalEssentialOCL.g:11640:1: ( ruleTypeExpCS )
@@ -33787,7 +33787,7 @@
             // InternalEssentialOCL.g:11641:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -33795,7 +33795,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -33823,7 +33823,7 @@
     public final void rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11654:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:11655:1: ( ruleExpCS )
@@ -33832,7 +33832,7 @@
             // InternalEssentialOCL.g:11656:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -33840,7 +33840,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
             }
 
             }
@@ -33868,7 +33868,7 @@
     public final void rule__NumberLiteralExpCS__SymbolAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11669:1: ( ( ruleNUMBER_LITERAL ) )
             // InternalEssentialOCL.g:11670:1: ( ruleNUMBER_LITERAL )
@@ -33877,7 +33877,7 @@
             // InternalEssentialOCL.g:11671:1: ruleNUMBER_LITERAL
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
+               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNUMBER_LITERAL();
@@ -33885,7 +33885,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
+               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
             }
 
             }
@@ -33913,7 +33913,7 @@
     public final void rule__StringLiteralExpCS__SegmentsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11684:1: ( ( ruleStringLiteral ) )
             // InternalEssentialOCL.g:11685:1: ( ruleStringLiteral )
@@ -33922,7 +33922,7 @@
             // InternalEssentialOCL.g:11686:1: ruleStringLiteral
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
+               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleStringLiteral();
@@ -33930,7 +33930,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
+               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
             }
 
             }
@@ -33958,7 +33958,7 @@
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11699:1: ( ( ( 'true' ) ) )
             // InternalEssentialOCL.g:11700:1: ( ( 'true' ) )
@@ -33967,23 +33967,23 @@
             // InternalEssentialOCL.g:11701:1: ( 'true' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
             // InternalEssentialOCL.g:11702:1: ( 'true' )
             // InternalEssentialOCL.g:11703:1: 'true'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
             match(input,78,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
 
             }
@@ -34011,7 +34011,7 @@
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11722:1: ( ( ( 'false' ) ) )
             // InternalEssentialOCL.g:11723:1: ( ( 'false' ) )
@@ -34020,23 +34020,23 @@
             // InternalEssentialOCL.g:11724:1: ( 'false' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
             // InternalEssentialOCL.g:11725:1: ( 'false' )
             // InternalEssentialOCL.g:11726:1: 'false'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
             match(input,79,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
 
             }
@@ -34064,7 +34064,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11745:1: ( ( ruleMultiplicityCS ) )
             // InternalEssentialOCL.g:11746:1: ( ruleMultiplicityCS )
@@ -34073,7 +34073,7 @@
             // InternalEssentialOCL.g:11747:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -34081,7 +34081,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
 
             }
@@ -34109,7 +34109,7 @@
     public final void rule__TypeLiteralExpCS__OwnedTypeAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11760:1: ( ( ruleTypeLiteralWithMultiplicityCS ) )
             // InternalEssentialOCL.g:11761:1: ( ruleTypeLiteralWithMultiplicityCS )
@@ -34118,7 +34118,7 @@
             // InternalEssentialOCL.g:11762:1: ruleTypeLiteralWithMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
+               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeLiteralWithMultiplicityCS();
@@ -34126,7 +34126,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
+               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
             }
 
             }
@@ -34154,7 +34154,7 @@
     public final void rule__TypeNameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11775:1: ( ( rulePathNameCS ) )
             // InternalEssentialOCL.g:11776:1: ( rulePathNameCS )
@@ -34163,7 +34163,7 @@
             // InternalEssentialOCL.g:11777:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -34171,7 +34171,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
 
             }
@@ -34199,7 +34199,7 @@
     public final void rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11790:1: ( ( ruleCurlyBracketedClauseCS ) )
             // InternalEssentialOCL.g:11791:1: ( ruleCurlyBracketedClauseCS )
@@ -34208,7 +34208,7 @@
             // InternalEssentialOCL.g:11792:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCurlyBracketedClauseCS();
@@ -34216,7 +34216,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
             }
 
             }
@@ -34244,7 +34244,7 @@
     public final void rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11805:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:11806:1: ( ruleExpCS )
@@ -34253,7 +34253,7 @@
             // InternalEssentialOCL.g:11807:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -34261,7 +34261,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
             }
 
             }
@@ -34289,7 +34289,7 @@
     public final void rule__TypeExpCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11820:1: ( ( ruleMultiplicityCS ) )
             // InternalEssentialOCL.g:11821:1: ( ruleMultiplicityCS )
@@ -34298,7 +34298,7 @@
             // InternalEssentialOCL.g:11822:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -34306,7 +34306,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
 
             }
@@ -34334,7 +34334,7 @@
     public final void rule__ExpCS__NameAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11835:1: ( ( ruleBinaryOperatorName ) )
             // InternalEssentialOCL.g:11836:1: ( ruleBinaryOperatorName )
@@ -34343,7 +34343,7 @@
             // InternalEssentialOCL.g:11837:1: ruleBinaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
+               before(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleBinaryOperatorName();
@@ -34351,7 +34351,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
+               after(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
             }
 
             }
@@ -34379,7 +34379,7 @@
     public final void rule__ExpCS__OwnedRightAssignment_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11850:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:11851:1: ( ruleExpCS )
@@ -34388,7 +34388,7 @@
             // InternalEssentialOCL.g:11852:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
+               before(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -34396,7 +34396,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
+               after(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
             }
 
             }
@@ -34424,7 +34424,7 @@
     public final void rule__PrefixedLetExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11865:1: ( ( ruleUnaryOperatorName ) )
             // InternalEssentialOCL.g:11866:1: ( ruleUnaryOperatorName )
@@ -34433,7 +34433,7 @@
             // InternalEssentialOCL.g:11867:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnaryOperatorName();
@@ -34441,7 +34441,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
 
             }
@@ -34469,7 +34469,7 @@
     public final void rule__PrefixedLetExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11880:1: ( ( rulePrefixedLetExpCS ) )
             // InternalEssentialOCL.g:11881:1: ( rulePrefixedLetExpCS )
@@ -34478,7 +34478,7 @@
             // InternalEssentialOCL.g:11882:1: rulePrefixedLetExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrefixedLetExpCS();
@@ -34486,7 +34486,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
             }
 
             }
@@ -34514,7 +34514,7 @@
     public final void rule__PrefixedPrimaryExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11895:1: ( ( ruleUnaryOperatorName ) )
             // InternalEssentialOCL.g:11896:1: ( ruleUnaryOperatorName )
@@ -34523,7 +34523,7 @@
             // InternalEssentialOCL.g:11897:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnaryOperatorName();
@@ -34531,7 +34531,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
 
             }
@@ -34559,7 +34559,7 @@
     public final void rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11910:1: ( ( rulePrefixedPrimaryExpCS ) )
             // InternalEssentialOCL.g:11911:1: ( rulePrefixedPrimaryExpCS )
@@ -34568,7 +34568,7 @@
             // InternalEssentialOCL.g:11912:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrefixedPrimaryExpCS();
@@ -34576,7 +34576,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
             }
 
             }
@@ -34604,7 +34604,7 @@
     public final void rule__NameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11925:1: ( ( rulePathNameCS ) )
             // InternalEssentialOCL.g:11926:1: ( rulePathNameCS )
@@ -34613,7 +34613,7 @@
             // InternalEssentialOCL.g:11927:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -34621,7 +34621,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
 
             }
@@ -34649,7 +34649,7 @@
     public final void rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11940:1: ( ( ruleSquareBracketedClauseCS ) )
             // InternalEssentialOCL.g:11941:1: ( ruleSquareBracketedClauseCS )
@@ -34658,7 +34658,7 @@
             // InternalEssentialOCL.g:11942:1: ruleSquareBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSquareBracketedClauseCS();
@@ -34666,7 +34666,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
             }
 
             }
@@ -34694,7 +34694,7 @@
     public final void rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11955:1: ( ( ruleRoundBracketedClauseCS ) )
             // InternalEssentialOCL.g:11956:1: ( ruleRoundBracketedClauseCS )
@@ -34703,7 +34703,7 @@
             // InternalEssentialOCL.g:11957:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleRoundBracketedClauseCS();
@@ -34711,7 +34711,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
             }
 
             }
@@ -34739,7 +34739,7 @@
     public final void rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11970:1: ( ( ruleCurlyBracketedClauseCS ) )
             // InternalEssentialOCL.g:11971:1: ( ruleCurlyBracketedClauseCS )
@@ -34748,7 +34748,7 @@
             // InternalEssentialOCL.g:11972:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCurlyBracketedClauseCS();
@@ -34756,7 +34756,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
             }
 
             }
@@ -34784,7 +34784,7 @@
     public final void rule__NameExpCS__IsPreAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:11985:1: ( ( ( '@' ) ) )
             // InternalEssentialOCL.g:11986:1: ( ( '@' ) )
@@ -34793,23 +34793,23 @@
             // InternalEssentialOCL.g:11987:1: ( '@' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
             // InternalEssentialOCL.g:11988:1: ( '@' )
             // InternalEssentialOCL.g:11989:1: '@'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
             match(input,80,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
 
             }
@@ -34837,7 +34837,7 @@
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12008:1: ( ( ruleShadowPartCS ) )
             // InternalEssentialOCL.g:12009:1: ( ruleShadowPartCS )
@@ -34846,7 +34846,7 @@
             // InternalEssentialOCL.g:12010:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleShadowPartCS();
@@ -34854,7 +34854,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
             }
 
             }
@@ -34882,7 +34882,7 @@
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12023:1: ( ( ruleShadowPartCS ) )
             // InternalEssentialOCL.g:12024:1: ( ruleShadowPartCS )
@@ -34891,7 +34891,7 @@
             // InternalEssentialOCL.g:12025:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleShadowPartCS();
@@ -34899,7 +34899,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
             }
 
             }
@@ -34927,7 +34927,7 @@
     public final void rule__CurlyBracketedClauseCS__ValueAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12038:1: ( ( ruleStringLiteral ) )
             // InternalEssentialOCL.g:12039:1: ( ruleStringLiteral )
@@ -34936,7 +34936,7 @@
             // InternalEssentialOCL.g:12040:1: ruleStringLiteral
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleStringLiteral();
@@ -34944,7 +34944,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
             }
 
             }
@@ -34972,7 +34972,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12053:1: ( ( ruleNavigatingArgCS ) )
             // InternalEssentialOCL.g:12054:1: ( ruleNavigatingArgCS )
@@ -34981,7 +34981,7 @@
             // InternalEssentialOCL.g:12055:1: ruleNavigatingArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgCS();
@@ -34989,7 +34989,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
             }
 
             }
@@ -35017,7 +35017,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12068:1: ( ( ruleNavigatingCommaArgCS ) )
             // InternalEssentialOCL.g:12069:1: ( ruleNavigatingCommaArgCS )
@@ -35026,7 +35026,7 @@
             // InternalEssentialOCL.g:12070:1: ruleNavigatingCommaArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingCommaArgCS();
@@ -35034,7 +35034,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
             }
 
             }
@@ -35062,7 +35062,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12083:1: ( ( ruleNavigatingSemiArgCS ) )
             // InternalEssentialOCL.g:12084:1: ( ruleNavigatingSemiArgCS )
@@ -35071,7 +35071,7 @@
             // InternalEssentialOCL.g:12085:1: ruleNavigatingSemiArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingSemiArgCS();
@@ -35079,7 +35079,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
             }
 
             }
@@ -35107,7 +35107,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12098:1: ( ( ruleNavigatingCommaArgCS ) )
             // InternalEssentialOCL.g:12099:1: ( ruleNavigatingCommaArgCS )
@@ -35116,7 +35116,7 @@
             // InternalEssentialOCL.g:12100:1: ruleNavigatingCommaArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingCommaArgCS();
@@ -35124,7 +35124,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
             }
 
             }
@@ -35152,7 +35152,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12113:1: ( ( ruleNavigatingBarArgCS ) )
             // InternalEssentialOCL.g:12114:1: ( ruleNavigatingBarArgCS )
@@ -35161,7 +35161,7 @@
             // InternalEssentialOCL.g:12115:1: ruleNavigatingBarArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingBarArgCS();
@@ -35169,7 +35169,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
             }
 
             }
@@ -35197,7 +35197,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12128:1: ( ( ruleNavigatingCommaArgCS ) )
             // InternalEssentialOCL.g:12129:1: ( ruleNavigatingCommaArgCS )
@@ -35206,7 +35206,7 @@
             // InternalEssentialOCL.g:12130:1: ruleNavigatingCommaArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingCommaArgCS();
@@ -35214,7 +35214,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
             }
 
             }
@@ -35242,7 +35242,7 @@
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12143:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12144:1: ( ruleExpCS )
@@ -35251,7 +35251,7 @@
             // InternalEssentialOCL.g:12145:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -35259,7 +35259,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
             }
 
             }
@@ -35287,7 +35287,7 @@
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12158:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12159:1: ( ruleExpCS )
@@ -35296,7 +35296,7 @@
             // InternalEssentialOCL.g:12160:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -35304,7 +35304,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -35332,7 +35332,7 @@
     public final void rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12173:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalEssentialOCL.g:12174:1: ( ruleNavigatingArgExpCS )
@@ -35341,7 +35341,7 @@
             // InternalEssentialOCL.g:12175:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -35349,7 +35349,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
             }
 
             }
@@ -35377,7 +35377,7 @@
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12188:1: ( ( ruleTypeExpCS ) )
             // InternalEssentialOCL.g:12189:1: ( ruleTypeExpCS )
@@ -35386,7 +35386,7 @@
             // InternalEssentialOCL.g:12190:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -35394,7 +35394,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
             }
 
             }
@@ -35422,7 +35422,7 @@
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12203:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12204:1: ( ruleExpCS )
@@ -35431,7 +35431,7 @@
             // InternalEssentialOCL.g:12205:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -35439,7 +35439,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
             }
 
             }
@@ -35467,7 +35467,7 @@
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12218:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12219:1: ( ruleExpCS )
@@ -35476,7 +35476,7 @@
             // InternalEssentialOCL.g:12220:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -35484,7 +35484,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
             }
 
             }
@@ -35512,7 +35512,7 @@
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12233:1: ( ( ruleTypeExpCS ) )
             // InternalEssentialOCL.g:12234:1: ( ruleTypeExpCS )
@@ -35521,7 +35521,7 @@
             // InternalEssentialOCL.g:12235:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -35529,7 +35529,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -35557,7 +35557,7 @@
     public final void rule__NavigatingBarArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12248:1: ( ( ( '|' ) ) )
             // InternalEssentialOCL.g:12249:1: ( ( '|' ) )
@@ -35566,23 +35566,23 @@
             // InternalEssentialOCL.g:12250:1: ( '|' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
             // InternalEssentialOCL.g:12251:1: ( '|' )
             // InternalEssentialOCL.g:12252:1: '|'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
             match(input,81,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
 
             }
@@ -35610,7 +35610,7 @@
     public final void rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12271:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalEssentialOCL.g:12272:1: ( ruleNavigatingArgExpCS )
@@ -35619,7 +35619,7 @@
             // InternalEssentialOCL.g:12273:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -35627,7 +35627,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
 
             }
@@ -35655,7 +35655,7 @@
     public final void rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12286:1: ( ( ruleTypeExpCS ) )
             // InternalEssentialOCL.g:12287:1: ( ruleTypeExpCS )
@@ -35664,7 +35664,7 @@
             // InternalEssentialOCL.g:12288:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -35672,7 +35672,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -35700,7 +35700,7 @@
     public final void rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12301:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12302:1: ( ruleExpCS )
@@ -35709,7 +35709,7 @@
             // InternalEssentialOCL.g:12303:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -35717,7 +35717,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
 
             }
@@ -35745,7 +35745,7 @@
     public final void rule__NavigatingCommaArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12316:1: ( ( ( ',' ) ) )
             // InternalEssentialOCL.g:12317:1: ( ( ',' ) )
@@ -35754,23 +35754,23 @@
             // InternalEssentialOCL.g:12318:1: ( ',' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
             // InternalEssentialOCL.g:12319:1: ( ',' )
             // InternalEssentialOCL.g:12320:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
             match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
 
             }
@@ -35798,7 +35798,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12339:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalEssentialOCL.g:12340:1: ( ruleNavigatingArgExpCS )
@@ -35807,7 +35807,7 @@
             // InternalEssentialOCL.g:12341:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -35815,7 +35815,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
 
             }
@@ -35843,7 +35843,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12354:1: ( ( ruleTypeExpCS ) )
             // InternalEssentialOCL.g:12355:1: ( ruleTypeExpCS )
@@ -35852,7 +35852,7 @@
             // InternalEssentialOCL.g:12356:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -35860,7 +35860,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
             }
 
             }
@@ -35888,7 +35888,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12369:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12370:1: ( ruleExpCS )
@@ -35897,7 +35897,7 @@
             // InternalEssentialOCL.g:12371:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -35905,7 +35905,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
             }
 
             }
@@ -35933,7 +35933,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12384:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12385:1: ( ruleExpCS )
@@ -35942,7 +35942,7 @@
             // InternalEssentialOCL.g:12386:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -35950,7 +35950,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -35978,7 +35978,7 @@
     public final void rule__NavigatingSemiArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12399:1: ( ( ( ';' ) ) )
             // InternalEssentialOCL.g:12400:1: ( ( ';' ) )
@@ -35987,23 +35987,23 @@
             // InternalEssentialOCL.g:12401:1: ( ';' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
             // InternalEssentialOCL.g:12402:1: ( ';' )
             // InternalEssentialOCL.g:12403:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
 
             }
@@ -36031,7 +36031,7 @@
     public final void rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12422:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalEssentialOCL.g:12423:1: ( ruleNavigatingArgExpCS )
@@ -36040,7 +36040,7 @@
             // InternalEssentialOCL.g:12424:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -36048,7 +36048,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
 
             }
@@ -36076,7 +36076,7 @@
     public final void rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12437:1: ( ( ruleTypeExpCS ) )
             // InternalEssentialOCL.g:12438:1: ( ruleTypeExpCS )
@@ -36085,7 +36085,7 @@
             // InternalEssentialOCL.g:12439:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -36093,7 +36093,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -36121,7 +36121,7 @@
     public final void rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12452:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12453:1: ( ruleExpCS )
@@ -36130,7 +36130,7 @@
             // InternalEssentialOCL.g:12454:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -36138,7 +36138,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
 
             }
@@ -36166,7 +36166,7 @@
     public final void rule__IfExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12467:1: ( ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) )
             // InternalEssentialOCL.g:12468:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
@@ -36175,7 +36175,7 @@
             // InternalEssentialOCL.g:12469:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0());
             }
             // InternalEssentialOCL.g:12470:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
             // InternalEssentialOCL.g:12470:2: rule__IfExpCS__OwnedConditionAlternatives_1_0
@@ -36189,7 +36189,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0());
             }
 
             }
@@ -36217,7 +36217,7 @@
     public final void rule__IfExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12483:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12484:1: ( ruleExpCS )
@@ -36226,7 +36226,7 @@
             // InternalEssentialOCL.g:12485:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -36234,7 +36234,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
 
             }
@@ -36262,7 +36262,7 @@
     public final void rule__IfExpCS__OwnedIfThenExpressionsAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12498:1: ( ( ruleElseIfThenExpCS ) )
             // InternalEssentialOCL.g:12499:1: ( ruleElseIfThenExpCS )
@@ -36271,7 +36271,7 @@
             // InternalEssentialOCL.g:12500:1: ruleElseIfThenExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleElseIfThenExpCS();
@@ -36279,7 +36279,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
             }
 
             }
@@ -36307,7 +36307,7 @@
     public final void rule__IfExpCS__OwnedElseExpressionAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12513:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12514:1: ( ruleExpCS )
@@ -36316,7 +36316,7 @@
             // InternalEssentialOCL.g:12515:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -36324,7 +36324,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
             }
 
             }
@@ -36352,7 +36352,7 @@
     public final void rule__ElseIfThenExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12528:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12529:1: ( ruleExpCS )
@@ -36361,7 +36361,7 @@
             // InternalEssentialOCL.g:12530:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -36369,7 +36369,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
             }
 
             }
@@ -36397,7 +36397,7 @@
     public final void rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12543:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12544:1: ( ruleExpCS )
@@ -36406,7 +36406,7 @@
             // InternalEssentialOCL.g:12545:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -36414,7 +36414,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
 
             }
@@ -36442,7 +36442,7 @@
     public final void rule__LetExpCS__OwnedVariablesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12558:1: ( ( ruleLetVariableCS ) )
             // InternalEssentialOCL.g:12559:1: ( ruleLetVariableCS )
@@ -36451,7 +36451,7 @@
             // InternalEssentialOCL.g:12560:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLetVariableCS();
@@ -36459,7 +36459,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
             }
 
             }
@@ -36487,7 +36487,7 @@
     public final void rule__LetExpCS__OwnedVariablesAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12573:1: ( ( ruleLetVariableCS ) )
             // InternalEssentialOCL.g:12574:1: ( ruleLetVariableCS )
@@ -36496,7 +36496,7 @@
             // InternalEssentialOCL.g:12575:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLetVariableCS();
@@ -36504,7 +36504,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
             }
 
             }
@@ -36532,7 +36532,7 @@
     public final void rule__LetExpCS__OwnedInExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12588:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12589:1: ( ruleExpCS )
@@ -36541,7 +36541,7 @@
             // InternalEssentialOCL.g:12590:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -36549,7 +36549,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
             }
 
             }
@@ -36577,7 +36577,7 @@
     public final void rule__LetVariableCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12603:1: ( ( ruleUnrestrictedName ) )
             // InternalEssentialOCL.g:12604:1: ( ruleUnrestrictedName )
@@ -36586,7 +36586,7 @@
             // InternalEssentialOCL.g:12605:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -36594,7 +36594,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -36622,7 +36622,7 @@
     public final void rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12618:1: ( ( ruleRoundBracketedClauseCS ) )
             // InternalEssentialOCL.g:12619:1: ( ruleRoundBracketedClauseCS )
@@ -36631,7 +36631,7 @@
             // InternalEssentialOCL.g:12620:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleRoundBracketedClauseCS();
@@ -36639,7 +36639,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
             }
 
             }
@@ -36667,7 +36667,7 @@
     public final void rule__LetVariableCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12633:1: ( ( ruleTypeExpCS ) )
             // InternalEssentialOCL.g:12634:1: ( ruleTypeExpCS )
@@ -36676,7 +36676,7 @@
             // InternalEssentialOCL.g:12635:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -36684,7 +36684,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -36712,7 +36712,7 @@
     public final void rule__LetVariableCS__OwnedInitExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12648:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12649:1: ( ruleExpCS )
@@ -36721,7 +36721,7 @@
             // InternalEssentialOCL.g:12650:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -36729,7 +36729,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
             }
 
             }
@@ -36757,7 +36757,7 @@
     public final void rule__NestedExpCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12663:1: ( ( ruleExpCS ) )
             // InternalEssentialOCL.g:12664:1: ( ruleExpCS )
@@ -36766,7 +36766,7 @@
             // InternalEssentialOCL.g:12665:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -36774,7 +36774,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
             }
 
             }
@@ -36802,7 +36802,7 @@
     public final void rule__MultiplicityBoundsCS__LowerBoundAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12678:1: ( ( ruleLOWER ) )
             // InternalEssentialOCL.g:12679:1: ( ruleLOWER )
@@ -36811,7 +36811,7 @@
             // InternalEssentialOCL.g:12680:1: ruleLOWER
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLOWER();
@@ -36819,7 +36819,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
             }
 
             }
@@ -36847,7 +36847,7 @@
     public final void rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12693:1: ( ( ruleUPPER ) )
             // InternalEssentialOCL.g:12694:1: ( ruleUPPER )
@@ -36856,7 +36856,7 @@
             // InternalEssentialOCL.g:12695:1: ruleUPPER
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUPPER();
@@ -36864,7 +36864,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
             }
 
             }
@@ -36892,7 +36892,7 @@
     public final void rule__MultiplicityCS__IsNullFreeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12708:1: ( ( ( '|1' ) ) )
             // InternalEssentialOCL.g:12709:1: ( ( '|1' ) )
@@ -36901,23 +36901,23 @@
             // InternalEssentialOCL.g:12710:1: ( '|1' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
             // InternalEssentialOCL.g:12711:1: ( '|1' )
             // InternalEssentialOCL.g:12712:1: '|1'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
 
             }
@@ -36945,7 +36945,7 @@
     public final void rule__MultiplicityStringCS__StringBoundsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12731:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
             // InternalEssentialOCL.g:12732:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
@@ -36954,7 +36954,7 @@
             // InternalEssentialOCL.g:12733:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0()); 
+               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
             // InternalEssentialOCL.g:12734:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             // InternalEssentialOCL.g:12734:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
@@ -36968,7 +36968,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0()); 
+               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
 
             }
@@ -36996,7 +36996,7 @@
     public final void rule__PathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12747:1: ( ( ruleFirstPathElementCS ) )
             // InternalEssentialOCL.g:12748:1: ( ruleFirstPathElementCS )
@@ -37005,7 +37005,7 @@
             // InternalEssentialOCL.g:12749:1: ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleFirstPathElementCS();
@@ -37013,7 +37013,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
             }
 
             }
@@ -37041,7 +37041,7 @@
     public final void rule__PathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12762:1: ( ( ruleNextPathElementCS ) )
             // InternalEssentialOCL.g:12763:1: ( ruleNextPathElementCS )
@@ -37050,7 +37050,7 @@
             // InternalEssentialOCL.g:12764:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNextPathElementCS();
@@ -37058,7 +37058,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
 
             }
@@ -37086,7 +37086,7 @@
     public final void rule__FirstPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12777:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalEssentialOCL.g:12778:1: ( ( ruleUnrestrictedName ) )
@@ -37095,13 +37095,13 @@
             // InternalEssentialOCL.g:12779:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
             // InternalEssentialOCL.g:12780:1: ( ruleUnrestrictedName )
             // InternalEssentialOCL.g:12781:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -37109,13 +37109,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
 
             }
@@ -37143,7 +37143,7 @@
     public final void rule__NextPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12796:1: ( ( ( ruleUnreservedName ) ) )
             // InternalEssentialOCL.g:12797:1: ( ( ruleUnreservedName ) )
@@ -37152,13 +37152,13 @@
             // InternalEssentialOCL.g:12798:1: ( ruleUnreservedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
             // InternalEssentialOCL.g:12799:1: ( ruleUnreservedName )
             // InternalEssentialOCL.g:12800:1: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnreservedName();
@@ -37166,13 +37166,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
 
             }
@@ -37200,7 +37200,7 @@
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12815:1: ( ( ruleTemplateParameterSubstitutionCS ) )
             // InternalEssentialOCL.g:12816:1: ( ruleTemplateParameterSubstitutionCS )
@@ -37209,7 +37209,7 @@
             // InternalEssentialOCL.g:12817:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateParameterSubstitutionCS();
@@ -37217,7 +37217,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
             }
 
             }
@@ -37245,7 +37245,7 @@
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12830:1: ( ( ruleTemplateParameterSubstitutionCS ) )
             // InternalEssentialOCL.g:12831:1: ( ruleTemplateParameterSubstitutionCS )
@@ -37254,7 +37254,7 @@
             // InternalEssentialOCL.g:12832:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateParameterSubstitutionCS();
@@ -37262,7 +37262,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
             }
 
             }
@@ -37290,7 +37290,7 @@
     public final void rule__TemplateBindingCS__OwnedMultiplicityAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12845:1: ( ( ruleMultiplicityCS ) )
             // InternalEssentialOCL.g:12846:1: ( ruleMultiplicityCS )
@@ -37299,7 +37299,7 @@
             // InternalEssentialOCL.g:12847:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -37307,7 +37307,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
             }
 
             }
@@ -37335,7 +37335,7 @@
     public final void rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12860:1: ( ( ruleTypeRefCS ) )
             // InternalEssentialOCL.g:12861:1: ( ruleTypeRefCS )
@@ -37344,7 +37344,7 @@
             // InternalEssentialOCL.g:12862:1: ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeRefCS();
@@ -37352,7 +37352,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
             }
 
             }
@@ -37380,7 +37380,7 @@
     public final void rule__TypeParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12877:1: ( ( ruleUnrestrictedName ) )
             // InternalEssentialOCL.g:12878:1: ( ruleUnrestrictedName )
@@ -37389,7 +37389,7 @@
             // InternalEssentialOCL.g:12879:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -37397,7 +37397,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -37425,7 +37425,7 @@
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12892:1: ( ( ruleTypedRefCS ) )
             // InternalEssentialOCL.g:12893:1: ( ruleTypedRefCS )
@@ -37434,7 +37434,7 @@
             // InternalEssentialOCL.g:12894:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -37442,7 +37442,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
             }
 
             }
@@ -37470,7 +37470,7 @@
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12907:1: ( ( ruleTypedRefCS ) )
             // InternalEssentialOCL.g:12908:1: ( ruleTypedRefCS )
@@ -37479,7 +37479,7 @@
             // InternalEssentialOCL.g:12909:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -37487,7 +37487,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
             }
 
             }
@@ -37515,7 +37515,7 @@
     public final void rule__TypedTypeRefCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12922:1: ( ( rulePathNameCS ) )
             // InternalEssentialOCL.g:12923:1: ( rulePathNameCS )
@@ -37524,7 +37524,7 @@
             // InternalEssentialOCL.g:12924:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -37532,7 +37532,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
 
             }
@@ -37560,7 +37560,7 @@
     public final void rule__TypedTypeRefCS__OwnedBindingAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12937:1: ( ( ruleTemplateBindingCS ) )
             // InternalEssentialOCL.g:12938:1: ( ruleTemplateBindingCS )
@@ -37569,7 +37569,7 @@
             // InternalEssentialOCL.g:12939:1: ruleTemplateBindingCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateBindingCS();
@@ -37577,7 +37577,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
             }
 
             }
@@ -37605,7 +37605,7 @@
     public final void rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalEssentialOCL.g:12952:1: ( ( ruleTypedRefCS ) )
             // InternalEssentialOCL.g:12953:1: ( ruleTypedRefCS )
@@ -37614,7 +37614,7 @@
             // InternalEssentialOCL.g:12954:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -37622,7 +37622,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
             }
 
             }
@@ -37645,7 +37645,7 @@
     // $ANTLR end "rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1"
 
     // $ANTLR start synpred48_InternalEssentialOCL
-    public final void synpred48_InternalEssentialOCL_fragment() throws RecognitionException {   
+    public final void synpred48_InternalEssentialOCL_fragment() throws RecognitionException {
         // InternalEssentialOCL.g:2909:6: ( ( ruleTypeLiteralCS ) )
         // InternalEssentialOCL.g:2909:6: ( ruleTypeLiteralCS )
         {
@@ -37653,7 +37653,7 @@
         // InternalEssentialOCL.g:2910:1: ruleTypeLiteralCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+           before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleTypeLiteralCS();
@@ -37669,7 +37669,7 @@
     // $ANTLR end synpred48_InternalEssentialOCL
 
     // $ANTLR start synpred49_InternalEssentialOCL
-    public final void synpred49_InternalEssentialOCL_fragment() throws RecognitionException {   
+    public final void synpred49_InternalEssentialOCL_fragment() throws RecognitionException {
         // InternalEssentialOCL.g:2931:1: ( ( ( rule__ExpCS__Group_0__0 ) ) )
         // InternalEssentialOCL.g:2931:1: ( ( rule__ExpCS__Group_0__0 ) )
         {
@@ -37677,7 +37677,7 @@
         // InternalEssentialOCL.g:2932:1: ( rule__ExpCS__Group_0__0 )
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getExpCSAccess().getGroup_0()); 
+           before(grammarAccess.getExpCSAccess().getGroup_0());
         }
         // InternalEssentialOCL.g:2933:1: ( rule__ExpCS__Group_0__0 )
         // InternalEssentialOCL.g:2933:2: rule__ExpCS__Group_0__0
@@ -37699,7 +37699,7 @@
     // $ANTLR end synpred49_InternalEssentialOCL
 
     // $ANTLR start synpred56_InternalEssentialOCL
-    public final void synpred56_InternalEssentialOCL_fragment() throws RecognitionException {   
+    public final void synpred56_InternalEssentialOCL_fragment() throws RecognitionException {
         // InternalEssentialOCL.g:3021:6: ( ( ruleTupleLiteralExpCS ) )
         // InternalEssentialOCL.g:3021:6: ( ruleTupleLiteralExpCS )
         {
@@ -37707,7 +37707,7 @@
         // InternalEssentialOCL.g:3022:1: ruleTupleLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleTupleLiteralExpCS();
@@ -37723,7 +37723,7 @@
     // $ANTLR end synpred56_InternalEssentialOCL
 
     // $ANTLR start synpred57_InternalEssentialOCL
-    public final void synpred57_InternalEssentialOCL_fragment() throws RecognitionException {   
+    public final void synpred57_InternalEssentialOCL_fragment() throws RecognitionException {
         // InternalEssentialOCL.g:3027:6: ( ( ruleMapLiteralExpCS ) )
         // InternalEssentialOCL.g:3027:6: ( ruleMapLiteralExpCS )
         {
@@ -37731,7 +37731,7 @@
         // InternalEssentialOCL.g:3028:1: ruleMapLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleMapLiteralExpCS();
@@ -37747,7 +37747,7 @@
     // $ANTLR end synpred57_InternalEssentialOCL
 
     // $ANTLR start synpred58_InternalEssentialOCL
-    public final void synpred58_InternalEssentialOCL_fragment() throws RecognitionException {   
+    public final void synpred58_InternalEssentialOCL_fragment() throws RecognitionException {
         // InternalEssentialOCL.g:3033:6: ( ( ruleCollectionLiteralExpCS ) )
         // InternalEssentialOCL.g:3033:6: ( ruleCollectionLiteralExpCS )
         {
@@ -37755,7 +37755,7 @@
         // InternalEssentialOCL.g:3034:1: ruleCollectionLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleCollectionLiteralExpCS();
@@ -37771,7 +37771,7 @@
     // $ANTLR end synpred58_InternalEssentialOCL
 
     // $ANTLR start synpred60_InternalEssentialOCL
-    public final void synpred60_InternalEssentialOCL_fragment() throws RecognitionException {   
+    public final void synpred60_InternalEssentialOCL_fragment() throws RecognitionException {
         // InternalEssentialOCL.g:3045:6: ( ( ruleTypeLiteralExpCS ) )
         // InternalEssentialOCL.g:3045:6: ( ruleTypeLiteralExpCS )
         {
@@ -37779,7 +37779,7 @@
         // InternalEssentialOCL.g:3046:1: ruleTypeLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleTypeLiteralExpCS();
@@ -37939,10 +37939,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA15_11 = input.LA(1);
 
-                         
+
                         int index15_11 = input.index();
                         input.rewind();
                         s = -1;
@@ -37950,14 +37950,14 @@
 
                         else if ( (true) ) {s = 18;}
 
-                         
+
                         input.seek(index15_11);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA15_12 = input.LA(1);
 
-                         
+
                         int index15_12 = input.index();
                         input.rewind();
                         s = -1;
@@ -37965,14 +37965,14 @@
 
                         else if ( (true) ) {s = 18;}
 
-                         
+
                         input.seek(index15_12);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA15_13 = input.LA(1);
 
-                         
+
                         int index15_13 = input.index();
                         input.rewind();
                         s = -1;
@@ -37980,14 +37980,14 @@
 
                         else if ( (true) ) {s = 18;}
 
-                         
+
                         input.seek(index15_13);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA15_14 = input.LA(1);
 
-                         
+
                         int index15_14 = input.index();
                         input.rewind();
                         s = -1;
@@ -37995,14 +37995,14 @@
 
                         else if ( (true) ) {s = 18;}
 
-                         
+
                         input.seek(index15_14);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA15_15 = input.LA(1);
 
-                         
+
                         int index15_15 = input.index();
                         input.rewind();
                         s = -1;
@@ -38010,7 +38010,7 @@
 
                         else if ( (true) ) {s = 18;}
 
-                         
+
                         input.seek(index15_15);
                         if ( s>=0 ) return s;
                         break;
@@ -38089,10 +38089,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA16_1 = input.LA(1);
 
-                         
+
                         int index16_1 = input.index();
                         input.rewind();
                         s = -1;
@@ -38100,14 +38100,14 @@
 
                         else if ( (true) ) {s = 31;}
 
-                         
+
                         input.seek(index16_1);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA16_2 = input.LA(1);
 
-                         
+
                         int index16_2 = input.index();
                         input.rewind();
                         s = -1;
@@ -38115,7 +38115,7 @@
 
                         else if ( (true) ) {s = 31;}
 
-                         
+
                         input.seek(index16_2);
                         if ( s>=0 ) return s;
                         break;
@@ -38191,10 +38191,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA19_11 = input.LA(1);
 
-                         
+
                         int index19_11 = input.index();
                         input.rewind();
                         s = -1;
@@ -38202,14 +38202,14 @@
 
                         else if ( (synpred60_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index19_11);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA19_12 = input.LA(1);
 
-                         
+
                         int index19_12 = input.index();
                         input.rewind();
                         s = -1;
@@ -38217,14 +38217,14 @@
 
                         else if ( (synpred60_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index19_12);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA19_13 = input.LA(1);
 
-                         
+
                         int index19_13 = input.index();
                         input.rewind();
                         s = -1;
@@ -38232,14 +38232,14 @@
 
                         else if ( (synpred60_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index19_13);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA19_14 = input.LA(1);
 
-                         
+
                         int index19_14 = input.index();
                         input.rewind();
                         s = -1;
@@ -38247,14 +38247,14 @@
 
                         else if ( (synpred60_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index19_14);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA19_15 = input.LA(1);
 
-                         
+
                         int index19_15 = input.index();
                         input.rewind();
                         s = -1;
@@ -38262,14 +38262,14 @@
 
                         else if ( (synpred60_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index19_15);
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA19_16 = input.LA(1);
 
-                         
+
                         int index19_16 = input.index();
                         input.rewind();
                         s = -1;
@@ -38277,14 +38277,14 @@
 
                         else if ( (synpred60_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index19_16);
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA19_17 = input.LA(1);
 
-                         
+
                         int index19_17 = input.index();
                         input.rewind();
                         s = -1;
@@ -38292,7 +38292,7 @@
 
                         else if ( (synpred60_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index19_17);
                         if ( s>=0 ) return s;
                         break;
@@ -38304,9 +38304,9 @@
             throw nvae;
         }
     }
- 
 
-    
+
+
     private static class FollowSets000 {
         public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
         public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/internal/EssentialOCLActivator.java b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/internal/EssentialOCLActivator.java
index 3e4ac3b..a8feccb 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/internal/EssentialOCLActivator.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl.ui/src-gen/org/eclipse/ocl/xtext/essentialocl/ui/internal/EssentialOCLActivator.java
@@ -26,35 +26,35 @@
 
 /**
  * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
+ * introduced subclass.
  */
 public class EssentialOCLActivator extends AbstractUIPlugin {
-	
+
 	public static final String ORG_ECLIPSE_OCL_XTEXT_ESSENTIALOCL_ESSENTIALOCL = "org.eclipse.ocl.xtext.essentialocl.EssentialOCL";
-	
+
 	private static final Logger logger = Logger.getLogger(EssentialOCLActivator.class);
-	
+
 	private static EssentialOCLActivator INSTANCE;
-	
+
 	private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1));
-	
+
 	@Override
 	public void start(BundleContext context) throws Exception {
 		super.start(context);
 		INSTANCE = this;
 	}
-	
+
 	@Override
 	public void stop(BundleContext context) throws Exception {
 		injectors.clear();
 		INSTANCE = null;
 		super.stop(context);
 	}
-	
+
 	public static EssentialOCLActivator getInstance() {
 		return INSTANCE;
 	}
-	
+
 	public Injector getInjector(String language) {
 		synchronized (injectors) {
 			Injector injector = injectors.get(language);
@@ -64,7 +64,7 @@
 			return injector;
 		}
 	}
-	
+
 	protected Injector createInjector(String language) {
 		try {
 			Module runtimeModule = getRuntimeModule(language);
@@ -83,20 +83,20 @@
 		if (ORG_ECLIPSE_OCL_XTEXT_ESSENTIALOCL_ESSENTIALOCL.equals(grammar)) {
 			return new org.eclipse.ocl.xtext.essentialocl.EssentialOCLRuntimeModule();
 		}
-		
+
 		throw new IllegalArgumentException(grammar);
 	}
-	
+
 	protected Module getUiModule(String grammar) {
 		if (ORG_ECLIPSE_OCL_XTEXT_ESSENTIALOCL_ESSENTIALOCL.equals(grammar)) {
 			return new org.eclipse.ocl.xtext.essentialocl.ui.EssentialOCLUiModule(this);
 		}
-		
+
 		throw new IllegalArgumentException(grammar);
 	}
-	
+
 	protected Module getSharedStateModule() {
 		return new SharedStateModule();
 	}
-	
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractDelegatingEssentialOCLCSVisitor.java b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractDelegatingEssentialOCLCSVisitor.java
index 347f529..36075ea 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractDelegatingEssentialOCLCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractDelegatingEssentialOCLCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSContainmentVisitor.java b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSContainmentVisitor.java
index 3786963..770a5fb 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSContainmentVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSContainmentVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSLeft2RightVisitor.java b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSLeft2RightVisitor.java
index 627da94..43d3ec6 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSLeft2RightVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSLeft2RightVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSPostOrderVisitor.java b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSPostOrderVisitor.java
index 7082719..05228db 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSPostOrderVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSPostOrderVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSPreOrderVisitor.java b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSPreOrderVisitor.java
index 6b32e42..ae38688 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSPreOrderVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSPreOrderVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSVisitor.java b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSVisitor.java
index deda6c3..d7e96c4 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractEssentialOCLCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -26,7 +26,7 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractEssentialOCLCSVisitor(C context) {
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractExtendingEssentialOCLCSVisitor.java b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractExtendingEssentialOCLCSVisitor.java
index 793420f..a467137 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractExtendingEssentialOCLCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractExtendingEssentialOCLCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -30,12 +30,12 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractExtendingEssentialOCLCSVisitor(C context) {
 		super(context);
-	}	
+	}
 
 	@Override
 	public R visitAbstractNameExpCS(org.eclipse.ocl.xtext.essentialoclcs.@NonNull AbstractNameExpCS object) {
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractNullEssentialOCLCSVisitor.java b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractNullEssentialOCLCSVisitor.java
index 3f1e704..0ed52fb 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractNullEssentialOCLCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/AbstractNullEssentialOCLCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -22,7 +22,7 @@
  * An AbstractNullEssentialOCLCSVisitor provides a default implementation for each
  * visitXxx method that returns null.
  *
- * @deprecated Explicit 'Null' functionality is obsolete with Java 8 @Nullable annotations.  
+ * @deprecated Explicit 'Null' functionality is obsolete with Java 8 @Nullable annotations.
  */
  @Deprecated
 public abstract class AbstractNullEssentialOCLCSVisitor<@Nullable R, C>
@@ -30,12 +30,12 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractNullEssentialOCLCSVisitor(C context) {
 		super(context);
-	}	
+	}
 
 	@Override
 	public R visitAbstractNameExpCS(org.eclipse.ocl.xtext.essentialoclcs.@NonNull AbstractNameExpCS object) {
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/DecorableEssentialOCLCSVisitor.java b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/DecorableEssentialOCLCSVisitor.java
index 4b8210c..752c112 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/DecorableEssentialOCLCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/DecorableEssentialOCLCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/EssentialOCLCSVisitor.java b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/EssentialOCLCSVisitor.java
index afaa09a..9a8a8b2 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/EssentialOCLCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/emf-gen/org/eclipse/ocl/xtext/essentialoclcs/util/EssentialOCLCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -18,6 +18,7 @@
 import org.eclipse.jdt.annotation.NonNull;
 
 /**
+ * @noimplement This interface is not intended to be implemented by clients.
  */
 public interface EssentialOCLCSVisitor<R> extends org.eclipse.ocl.xtext.basecs.util.BaseCSVisitor<R>
 {
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/AbstractEssentialOCLRuntimeModule.java b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/AbstractEssentialOCLRuntimeModule.java
index 84515a2..e5d9ea3 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/AbstractEssentialOCLRuntimeModule.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/AbstractEssentialOCLRuntimeModule.java
@@ -30,16 +30,16 @@
 		properties = tryBindProperties(binder, "org/eclipse/ocl/xtext/essentialocl/EssentialOCL.properties");
 		super.configure(binder);
 	}
-	
+
 	public void configureLanguageName(Binder binder) {
 		binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.eclipse.ocl.xtext.essentialocl.EssentialOCL");
 	}
-	
+
 	public void configureFileExtensions(Binder binder) {
 		if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
 			binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("essentialocl");
 	}
-	
+
 	// contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
 	public java.lang.ClassLoader bindClassLoaderToInstance() {
 		return getClass().getClassLoader();
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 f44289d..415ccec 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
@@ -9,7 +9,7 @@
  *     E.D.Willink - initial API and implementation
  *******************************************************************************
  * This code is 100% auto-generated
- * from: E:\GIT\org.eclipse.ocl\examples..\..\plugins\org.eclipse.ocl.xtext.essentialocl\src-gen\org\eclipse\ocl\xtext\essentialocl\EssentialOCL.xtextbin
+ * from: E:\GIT\org.eclipse.ocl\plugins..\..\plugins\org.eclipse.ocl.xtext.essentialocl\src-gen\org\eclipse\ocl\xtext\essentialocl\EssentialOCL.xtextbin
  * by: org.eclipse.ocl.examples.build.xtend.generateGrammar.xtend
  *
  * Do not edit it.
@@ -71,7 +71,7 @@
 
 	/*
 	 * This class should be bound to org.eclipse.xtext.service.GrammarProvider.
-	 */ 
+	 */
 	@Singleton
 	public static class GrammarProvider extends org.eclipse.xtext.service.GrammarProvider
 	{
@@ -85,14 +85,14 @@
 			return EssentialOCLGrammarResource.GRAMMAR;
 		}
 	}
-	
+
 	private static class _EssentialOCL
 	{
 		private static final @NonNull ReferencedMetamodel MM = createReferencedMetamodel(org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.eINSTANCE, null); // http://www.eclipse.org/ocl/2015/EssentialOCLCS
 		private static final @NonNull ReferencedMetamodel MM_base = createReferencedMetamodel(org.eclipse.ocl.xtext.basecs.BaseCSPackage.eINSTANCE, "base"); // http://www.eclipse.org/ocl/2015/BaseCS
 		private static final @NonNull ReferencedMetamodel MM_ecore = createReferencedMetamodel(org.eclipse.emf.ecore.EcorePackage.eINSTANCE, "ecore"); // http://www.eclipse.org/emf/2002/Ecore
 		private static final @NonNull ReferencedMetamodel MM_pivot = createReferencedMetamodel(org.eclipse.ocl.pivot.PivotPackage.eINSTANCE, "pivot"); // http://www.eclipse.org/ocl/2015/Pivot
-		
+
 		private static final @NonNull ParserRule PR_BinaryOperatorName = createParserRule("BinaryOperatorName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_BooleanLiteralExpCS = createParserRule("BooleanLiteralExpCS", createTypeRef(MM, org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.Literals.BOOLEAN_LITERAL_EXP_CS));
 		private static final @NonNull ParserRule PR_CollectionLiteralExpCS = createParserRule("CollectionLiteralExpCS", createTypeRef(MM, org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.Literals.COLLECTION_LITERAL_EXP_CS));
@@ -156,7 +156,7 @@
 		private static final @NonNull ParserRule PR_UnlimitedNaturalLiteralExpCS = createParserRule("UnlimitedNaturalLiteralExpCS", createTypeRef(MM, org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.Literals.UNLIMITED_NATURAL_LITERAL_EXP_CS));
 		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_UnrestrictedName = createParserRule("UnrestrictedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initParserRules() {
 			PR_BinaryOperatorName.setAlternatives(createAlternatives(createRuleCall(PR_InfixOperatorName), createRuleCall(PR_NavigationOperatorName)));
 			PR_BooleanLiteralExpCS.setAlternatives(createAlternatives(createAssignment("symbol", "=", createKeyword("true")), createAssignment("symbol", "=", createKeyword("false"))));
@@ -222,7 +222,7 @@
 			PR_UnreservedName.setAlternatives(createRuleCall(PR_EssentialOCLUnreservedName));
 			PR_UnrestrictedName.setAlternatives(createRuleCall(PR_EssentialOCLUnrestrictedName));
 		}
-		
+
 		private static @NonNull Grammar initGrammar() {
 			initParserRules();
 			Grammar grammar = G_EssentialOCL;
@@ -306,13 +306,13 @@
 			return grammar;
 		}
 	}
-	
+
 	private static class _Base
 	{
 		private static final @NonNull ReferencedMetamodel MM = createReferencedMetamodel(org.eclipse.ocl.xtext.basecs.BaseCSPackage.eINSTANCE, null); // http://www.eclipse.org/ocl/2015/BaseCS
 		private static final @NonNull ReferencedMetamodel MM_ecore = createReferencedMetamodel(org.eclipse.emf.ecore.EcorePackage.eINSTANCE, "ecore"); // http://www.eclipse.org/emf/2002/Ecore
 		private static final @NonNull ReferencedMetamodel MM_pivot = createReferencedMetamodel(org.eclipse.ocl.pivot.PivotPackage.eINSTANCE, "pivot"); // http://www.eclipse.org/ocl/2015/Pivot
-		
+
 		private static final @NonNull TerminalRule TR_ANY_OTHER = createTerminalRule("ANY_OTHER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_DOUBLE_QUOTED_STRING = createTerminalRule("DOUBLE_QUOTED_STRING", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_ESCAPED_CHARACTER = createTerminalRule("ESCAPED_CHARACTER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
@@ -325,7 +325,7 @@
 		private static final @NonNull TerminalRule TR_SINGLE_QUOTED_STRING = createTerminalRule("SINGLE_QUOTED_STRING", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_SL_COMMENT = createTerminalRule("SL_COMMENT", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_WS = createTerminalRule("WS", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initTerminalRules() {
 			TR_ANY_OTHER.setAlternatives(createWildcard());
 			TR_DOUBLE_QUOTED_STRING.setAlternatives(createGroup(createKeyword("\""), setCardinality("*", createAlternatives(createRuleCall(TR_ESCAPED_CHARACTER), createNegatedToken(createAlternatives(createKeyword("\\"), createKeyword("\""))))), createKeyword("\"")));
@@ -342,7 +342,7 @@
 			TR_SL_COMMENT.setAlternatives(createGroup(createKeyword("--"), setCardinality("*", createNegatedToken(createAlternatives(createKeyword("\n"), createKeyword("\r")))), setCardinality("?", createGroup(setCardinality("?", createKeyword("\r")), createKeyword("\n")))));
 			TR_WS.setAlternatives(setCardinality("+", createAlternatives(createKeyword(" "), createKeyword("\t"), createKeyword("\r"), createKeyword("\n"))));
 		}
-		
+
 		private static final @NonNull ParserRule PR_FirstPathElementCS = createParserRule("FirstPathElementCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.PATH_ELEMENT_CS));
 		private static final @NonNull ParserRule PR_ID = createParserRule("ID", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_Identifier = createParserRule("Identifier", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
@@ -366,7 +366,7 @@
 		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_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));
-		
+
 		private static void initParserRules() {
 			PR_FirstPathElementCS.setAlternatives(createAssignment("referredElement", "=", createCrossReference(createTypeRef(MM_pivot, org.eclipse.ocl.pivot.PivotPackage.Literals.NAMED_ELEMENT), createRuleCall(_EssentialOCL.PR_UnrestrictedName))));
 			PR_ID.setAlternatives(createAlternatives(createRuleCall(TR_SIMPLE_ID), createRuleCall(TR_ESCAPED_ID)));
@@ -392,7 +392,7 @@
 			PR_UnrestrictedName.setAlternatives(createRuleCall(PR_Identifier));
 			PR_WildcardTypeRefCS.setAlternatives(createGroup(createAction(null, null, createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.WILDCARD_TYPE_REF_CS)), createKeyword("?"), setCardinality("?", createGroup(createKeyword("extends"), createAssignment("ownedExtends", "=", createRuleCall(PR_TypedRefCS))))));
 		}
-		
+
 		private static @NonNull Grammar initGrammar() {
 			initTerminalRules();
 			initParserRules();
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/EssentialOCLStandaloneSetupGenerated.java b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/EssentialOCLStandaloneSetupGenerated.java
index 6921761..67b13c3 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/EssentialOCLStandaloneSetupGenerated.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/EssentialOCLStandaloneSetupGenerated.java
@@ -31,18 +31,18 @@
 		register(injector);
 		return injector;
 	}
-	
+
 	public Injector createInjector() {
 		return Guice.createInjector(new org.eclipse.ocl.xtext.essentialocl.EssentialOCLRuntimeModule());
 	}
-	
+
 	public void register(Injector injector) {
 
 		org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class);
 		org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class);
 		Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("essentialocl", resourceFactory);
 		org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("essentialocl", serviceProvider);
-		
+
 
 
 
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/EssentialOCLAntlrTokenFileProvider.java b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/EssentialOCLAntlrTokenFileProvider.java
index 768ecab..90ba088 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/EssentialOCLAntlrTokenFileProvider.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/EssentialOCLAntlrTokenFileProvider.java
@@ -14,7 +14,7 @@
 import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider;
 
 public class EssentialOCLAntlrTokenFileProvider implements IAntlrTokenFileProvider {
-	
+
 	@Override
 	public InputStream getAntlrTokenFile() {
 		ClassLoader classLoader = getClass().getClassLoader();
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/EssentialOCLParser.java b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/EssentialOCLParser.java
index d4c5406..996edb7 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/EssentialOCLParser.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/parser/antlr/EssentialOCLParser.java
@@ -16,31 +16,31 @@
 import org.eclipse.ocl.xtext.essentialocl.services.EssentialOCLGrammarAccess;
 
 public class EssentialOCLParser extends org.eclipse.xtext.parser.antlr.AbstractAntlrParser {
-	
+
 	@Inject
 	private EssentialOCLGrammarAccess grammarAccess;
-	
+
 	@Override
 	protected void setInitialHiddenTokens(XtextTokenStream tokenStream) {
 		tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT");
 	}
-	
+
 	@Override
 	protected org.eclipse.ocl.xtext.essentialocl.parser.antlr.internal.InternalEssentialOCLParser createParser(XtextTokenStream stream) {
 		return new org.eclipse.ocl.xtext.essentialocl.parser.antlr.internal.InternalEssentialOCLParser(stream, getGrammarAccess());
 	}
-	
-	@Override 
+
+	@Override
 	protected String getDefaultRuleName() {
 		return "Model";
 	}
-	
+
 	public EssentialOCLGrammarAccess getGrammarAccess() {
 		return this.grammarAccess;
 	}
-	
+
 	public void setGrammarAccess(EssentialOCLGrammarAccess grammarAccess) {
 		this.grammarAccess = grammarAccess;
 	}
-	
+
 }
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 ad1e1e8..cb86719 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
@@ -13,19 +13,19 @@
 options {
 	superClass=AbstractInternalAntlrParser;
 	backtrack=true;
-	
+
 }
 
 @lexer::header {
 package org.eclipse.ocl.xtext.essentialocl.parser.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.parser.antlr.Lexer;
 }
 
 @parser::header {
-package org.eclipse.ocl.xtext.essentialocl.parser.antlr.internal; 
+package org.eclipse.ocl.xtext.essentialocl.parser.antlr.internal;
 
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
@@ -46,63 +46,63 @@
   This grammar contains a lot of empty actions to work around a bug in ANTLR.
   Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases.
 */
- 
+
  	private EssentialOCLGrammarAccess grammarAccess;
- 	
+
     public InternalEssentialOCLParser(TokenStream input, EssentialOCLGrammarAccess grammarAccess) {
         this(input);
         this.grammarAccess = grammarAccess;
         registerRules(grammarAccess.getGrammar());
     }
-    
+
     @Override
     protected String getFirstRuleName() {
-    	return "Model";	
+    	return "Model";
    	}
-   	
+
    	@Override
    	protected EssentialOCLGrammarAccess getGrammarAccess() {
    		return grammarAccess;
    	}
 }
 
-@rulecatch { 
-    catch (RecognitionException re) { 
-        recover(input,re); 
+@rulecatch {
+    catch (RecognitionException re) {
+        recover(input,re);
         appendSkippedTokens();
-    } 
+    }
 }
 
 
 
 
 // Entry rule entryRuleModel
-entryRuleModel returns [EObject current=null] 
+entryRuleModel returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getModelRule()); }
-	 iv_ruleModel=ruleModel 
-	 { $current=$iv_ruleModel.current; } 
-	 EOF 
+	 iv_ruleModel=ruleModel
+	 { $current=$iv_ruleModel.current; }
+	 EOF
 ;
 
 // Rule Model
-ruleModel returns [EObject current=null] 
-    @init { enterRule(); 
+ruleModel returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getModelAccess().getOwnedExpressionExpCSParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getModelAccess().getOwnedExpressionExpCSParserRuleCall_0());
 	    }
 		lv_ownedExpression_0_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getModelRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_0_0, 
+        		lv_ownedExpression_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -118,31 +118,31 @@
 
 
 // Entry rule entryRuleEssentialOCLUnaryOperatorName
-entryRuleEssentialOCLUnaryOperatorName returns [String current=null] 
+entryRuleEssentialOCLUnaryOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); } 
-	 iv_ruleEssentialOCLUnaryOperatorName=ruleEssentialOCLUnaryOperatorName 
-	 { $current=$iv_ruleEssentialOCLUnaryOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); }
+	 iv_ruleEssentialOCLUnaryOperatorName=ruleEssentialOCLUnaryOperatorName
+	 { $current=$iv_ruleEssentialOCLUnaryOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnaryOperatorName
-ruleEssentialOCLUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='-' 
+	kw='-'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
     }
 
     |
-	kw='not' 
+	kw='not'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
     }
 )
     ;
@@ -152,115 +152,115 @@
 
 
 // Entry rule entryRuleEssentialOCLInfixOperatorName
-entryRuleEssentialOCLInfixOperatorName returns [String current=null] 
+entryRuleEssentialOCLInfixOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule()); } 
-	 iv_ruleEssentialOCLInfixOperatorName=ruleEssentialOCLInfixOperatorName 
-	 { $current=$iv_ruleEssentialOCLInfixOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule()); }
+	 iv_ruleEssentialOCLInfixOperatorName=ruleEssentialOCLInfixOperatorName
+	 { $current=$iv_ruleEssentialOCLInfixOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLInfixOperatorName
-ruleEssentialOCLInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='*' 
+	kw='*'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
     }
 
     |
-	kw='/' 
+	kw='/'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
     }
 
     |
-	kw='+' 
+	kw='+'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
     }
 
     |
-	kw='-' 
+	kw='-'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
     }
 
     |
-	kw='>' 
+	kw='>'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
     }
 
     |
-	kw='<' 
+	kw='<'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
     }
 
     |
-	kw='>=' 
+	kw='>='
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
     }
 
     |
-	kw='<=' 
+	kw='<='
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
     }
 
     |
-	kw='=' 
+	kw='='
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
     }
 
     |
-	kw='<>' 
+	kw='<>'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
     }
 
     |
-	kw='and' 
+	kw='and'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
     }
 
     |
-	kw='or' 
+	kw='or'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
     }
 
     |
-	kw='xor' 
+	kw='xor'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
     }
 
     |
-	kw='implies' 
+	kw='implies'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
     }
 )
     ;
@@ -270,45 +270,45 @@
 
 
 // Entry rule entryRuleEssentialOCLNavigationOperatorName
-entryRuleEssentialOCLNavigationOperatorName returns [String current=null] 
+entryRuleEssentialOCLNavigationOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); } 
-	 iv_ruleEssentialOCLNavigationOperatorName=ruleEssentialOCLNavigationOperatorName 
-	 { $current=$iv_ruleEssentialOCLNavigationOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); }
+	 iv_ruleEssentialOCLNavigationOperatorName=ruleEssentialOCLNavigationOperatorName
+	 { $current=$iv_ruleEssentialOCLNavigationOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLNavigationOperatorName
-ruleEssentialOCLNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='.' 
+	kw='.'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
     }
 
     |
-	kw='->' 
+	kw='->'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
     }
 
     |
-	kw='?.' 
+	kw='?.'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
     }
 
     |
-	kw='?->' 
+	kw='?->'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
     }
 )
     ;
@@ -318,40 +318,40 @@
 
 
 // Entry rule entryRuleBinaryOperatorName
-entryRuleBinaryOperatorName returns [String current=null] 
+entryRuleBinaryOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getBinaryOperatorNameRule()); } 
-	 iv_ruleBinaryOperatorName=ruleBinaryOperatorName 
-	 { $current=$iv_ruleBinaryOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getBinaryOperatorNameRule()); }
+	 iv_ruleBinaryOperatorName=ruleBinaryOperatorName
+	 { $current=$iv_ruleBinaryOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule BinaryOperatorName
-ruleBinaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleBinaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
     }
     this_InfixOperatorName_0=ruleInfixOperatorName    {
 		$current.merge(this_InfixOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
     }
     this_NavigationOperatorName_1=ruleNavigationOperatorName    {
 		$current.merge(this_NavigationOperatorName_1);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 )
@@ -362,28 +362,28 @@
 
 
 // Entry rule entryRuleInfixOperatorName
-entryRuleInfixOperatorName returns [String current=null] 
+entryRuleInfixOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getInfixOperatorNameRule()); } 
-	 iv_ruleInfixOperatorName=ruleInfixOperatorName 
-	 { $current=$iv_ruleInfixOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getInfixOperatorNameRule()); }
+	 iv_ruleInfixOperatorName=ruleInfixOperatorName
+	 { $current=$iv_ruleInfixOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule InfixOperatorName
-ruleInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
     }
     this_EssentialOCLInfixOperatorName_0=ruleEssentialOCLInfixOperatorName    {
 		$current.merge(this_EssentialOCLInfixOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -394,28 +394,28 @@
 
 
 // Entry rule entryRuleNavigationOperatorName
-entryRuleNavigationOperatorName returns [String current=null] 
+entryRuleNavigationOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getNavigationOperatorNameRule()); } 
-	 iv_ruleNavigationOperatorName=ruleNavigationOperatorName 
-	 { $current=$iv_ruleNavigationOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getNavigationOperatorNameRule()); }
+	 iv_ruleNavigationOperatorName=ruleNavigationOperatorName
+	 { $current=$iv_ruleNavigationOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule NavigationOperatorName
-ruleNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall());
     }
     this_EssentialOCLNavigationOperatorName_0=ruleEssentialOCLNavigationOperatorName    {
 		$current.merge(this_EssentialOCLNavigationOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -426,28 +426,28 @@
 
 
 // Entry rule entryRuleUnaryOperatorName
-entryRuleUnaryOperatorName returns [String current=null] 
+entryRuleUnaryOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnaryOperatorNameRule()); } 
-	 iv_ruleUnaryOperatorName=ruleUnaryOperatorName 
-	 { $current=$iv_ruleUnaryOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnaryOperatorNameRule()); }
+	 iv_ruleUnaryOperatorName=ruleUnaryOperatorName
+	 { $current=$iv_ruleUnaryOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnaryOperatorName
-ruleUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
     }
     this_EssentialOCLUnaryOperatorName_0=ruleEssentialOCLUnaryOperatorName    {
 		$current.merge(this_EssentialOCLUnaryOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -458,28 +458,28 @@
 
 
 // Entry rule entryRuleEssentialOCLUnrestrictedName
-entryRuleEssentialOCLUnrestrictedName returns [String current=null] 
+entryRuleEssentialOCLUnrestrictedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule()); } 
-	 iv_ruleEssentialOCLUnrestrictedName=ruleEssentialOCLUnrestrictedName 
-	 { $current=$iv_ruleEssentialOCLUnrestrictedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule()); }
+	 iv_ruleEssentialOCLUnrestrictedName=ruleEssentialOCLUnrestrictedName
+	 { $current=$iv_ruleEssentialOCLUnrestrictedName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnrestrictedName
-ruleEssentialOCLUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
     }
     this_Identifier_0=ruleIdentifier    {
 		$current.merge(this_Identifier_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -490,28 +490,28 @@
 
 
 // Entry rule entryRuleUnrestrictedName
-entryRuleUnrestrictedName returns [String current=null] 
+entryRuleUnrestrictedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnrestrictedNameRule()); } 
-	 iv_ruleUnrestrictedName=ruleUnrestrictedName 
-	 { $current=$iv_ruleUnrestrictedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnrestrictedNameRule()); }
+	 iv_ruleUnrestrictedName=ruleUnrestrictedName
+	 { $current=$iv_ruleUnrestrictedName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnrestrictedName
-ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall());
     }
     this_EssentialOCLUnrestrictedName_0=ruleEssentialOCLUnrestrictedName    {
 		$current.merge(this_EssentialOCLUnrestrictedName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -522,67 +522,67 @@
 
 
 // Entry rule entryRuleEssentialOCLUnreservedName
-entryRuleEssentialOCLUnreservedName returns [String current=null] 
+entryRuleEssentialOCLUnreservedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule()); } 
-	 iv_ruleEssentialOCLUnreservedName=ruleEssentialOCLUnreservedName 
-	 { $current=$iv_ruleEssentialOCLUnreservedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule()); }
+	 iv_ruleEssentialOCLUnreservedName=ruleEssentialOCLUnreservedName
+	 { $current=$iv_ruleEssentialOCLUnreservedName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnreservedName
-ruleEssentialOCLUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
     }
     this_UnrestrictedName_0=ruleUnrestrictedName    {
 		$current.merge(this_UnrestrictedName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
     }
     this_CollectionTypeIdentifier_1=ruleCollectionTypeIdentifier    {
 		$current.merge(this_CollectionTypeIdentifier_1);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
     }
     this_PrimitiveTypeIdentifier_2=rulePrimitiveTypeIdentifier    {
 		$current.merge(this_PrimitiveTypeIdentifier_2);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-	kw='Map' 
+	kw='Map'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
     }
 
     |
-	kw='Tuple' 
+	kw='Tuple'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
     }
 )
     ;
@@ -592,28 +592,28 @@
 
 
 // Entry rule entryRuleUnreservedName
-entryRuleUnreservedName returns [String current=null] 
+entryRuleUnreservedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnreservedNameRule()); } 
-	 iv_ruleUnreservedName=ruleUnreservedName 
-	 { $current=$iv_ruleUnreservedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnreservedNameRule()); }
+	 iv_ruleUnreservedName=ruleUnreservedName
+	 { $current=$iv_ruleUnreservedName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnreservedName
-ruleUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
     }
     this_EssentialOCLUnreservedName_0=ruleEssentialOCLUnreservedName    {
 		$current.merge(this_EssentialOCLUnreservedName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -626,41 +626,41 @@
 
 
 // Entry rule entryRuleURIFirstPathElementCS
-entryRuleURIFirstPathElementCS returns [EObject current=null] 
+entryRuleURIFirstPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getURIFirstPathElementCSRule()); }
-	 iv_ruleURIFirstPathElementCS=ruleURIFirstPathElementCS 
-	 { $current=$iv_ruleURIFirstPathElementCS.current; } 
-	 EOF 
+	 iv_ruleURIFirstPathElementCS=ruleURIFirstPathElementCS
+	 { $current=$iv_ruleURIFirstPathElementCS.current; }
+	 EOF
 ;
 
 // Rule URIFirstPathElementCS
-ruleURIFirstPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleURIFirstPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 )
     |((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
@@ -669,18 +669,18 @@
     }
 )(
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
 	    }
-		ruleURI		{ 
+		ruleURI		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -693,73 +693,73 @@
 
 
 // Entry rule entryRulePrimitiveTypeIdentifier
-entryRulePrimitiveTypeIdentifier returns [String current=null] 
+entryRulePrimitiveTypeIdentifier returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule()); } 
-	 iv_rulePrimitiveTypeIdentifier=rulePrimitiveTypeIdentifier 
-	 { $current=$iv_rulePrimitiveTypeIdentifier.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule()); }
+	 iv_rulePrimitiveTypeIdentifier=rulePrimitiveTypeIdentifier
+	 { $current=$iv_rulePrimitiveTypeIdentifier.current.getText(); }
+	 EOF
 ;
 
 // Rule PrimitiveTypeIdentifier
-rulePrimitiveTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+rulePrimitiveTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='Boolean' 
+	kw='Boolean'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
     }
 
     |
-	kw='Integer' 
+	kw='Integer'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
     }
 
     |
-	kw='Real' 
+	kw='Real'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
     }
 
     |
-	kw='String' 
+	kw='String'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
     }
 
     |
-	kw='UnlimitedNatural' 
+	kw='UnlimitedNatural'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
     }
 
     |
-	kw='OclAny' 
+	kw='OclAny'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
     }
 
     |
-	kw='OclInvalid' 
+	kw='OclInvalid'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
     }
 
     |
-	kw='OclVoid' 
+	kw='OclVoid'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
     }
 )
     ;
@@ -769,32 +769,32 @@
 
 
 // Entry rule entryRulePrimitiveTypeCS
-entryRulePrimitiveTypeCS returns [EObject current=null] 
+entryRulePrimitiveTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrimitiveTypeCSRule()); }
-	 iv_rulePrimitiveTypeCS=rulePrimitiveTypeCS 
-	 { $current=$iv_rulePrimitiveTypeCS.current; } 
-	 EOF 
+	 iv_rulePrimitiveTypeCS=rulePrimitiveTypeCS
+	 { $current=$iv_rulePrimitiveTypeCS.current; }
+	 EOF
 ;
 
 // Rule PrimitiveTypeCS
-rulePrimitiveTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrimitiveTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
 	    }
 		lv_name_0_0=rulePrimitiveTypeIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrimitiveTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrimitiveTypeIdentifier");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -808,52 +808,52 @@
 
 
 // Entry rule entryRuleCollectionTypeIdentifier
-entryRuleCollectionTypeIdentifier returns [String current=null] 
+entryRuleCollectionTypeIdentifier returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule()); } 
-	 iv_ruleCollectionTypeIdentifier=ruleCollectionTypeIdentifier 
-	 { $current=$iv_ruleCollectionTypeIdentifier.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule()); }
+	 iv_ruleCollectionTypeIdentifier=ruleCollectionTypeIdentifier
+	 { $current=$iv_ruleCollectionTypeIdentifier.current.getText(); }
+	 EOF
 ;
 
 // Rule CollectionTypeIdentifier
-ruleCollectionTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleCollectionTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='Set' 
+	kw='Set'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
     }
 
     |
-	kw='Bag' 
+	kw='Bag'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
     }
 
     |
-	kw='Sequence' 
+	kw='Sequence'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
     }
 
     |
-	kw='Collection' 
+	kw='Collection'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
     }
 
     |
-	kw='OrderedSet' 
+	kw='OrderedSet'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
     }
 )
     ;
@@ -863,60 +863,60 @@
 
 
 // Entry rule entryRuleCollectionTypeCS
-entryRuleCollectionTypeCS returns [EObject current=null] 
+entryRuleCollectionTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionTypeCSRule()); }
-	 iv_ruleCollectionTypeCS=ruleCollectionTypeCS 
-	 { $current=$iv_ruleCollectionTypeCS.current; } 
-	 EOF 
+	 iv_ruleCollectionTypeCS=ruleCollectionTypeCS
+	 { $current=$iv_ruleCollectionTypeCS.current; }
+	 EOF
 ;
 
 // Rule CollectionTypeCS
-ruleCollectionTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleCollectionTypeIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeIdentifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=')' 
+)	otherlv_3=')'
     {
     	newLeafNode(otherlv_3, grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
     }
@@ -928,26 +928,26 @@
 
 
 // Entry rule entryRuleMapTypeCS
-entryRuleMapTypeCS returns [EObject current=null] 
+entryRuleMapTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMapTypeCSRule()); }
-	 iv_ruleMapTypeCS=ruleMapTypeCS 
-	 { $current=$iv_ruleMapTypeCS.current; } 
-	 EOF 
+	 iv_ruleMapTypeCS=ruleMapTypeCS
+	 { $current=$iv_ruleMapTypeCS.current; }
+	 EOF
 ;
 
 // Rule MapTypeCS
-ruleMapTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMapTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_name_0_0=	'Map' 
+		lv_name_0_0=	'Map'
     {
         newLeafNode(lv_name_0_0, grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMapTypeCSRule());
@@ -956,51 +956,51 @@
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedKeyType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedKeyType",
-        		lv_ownedKeyType_2_0, 
+        		lv_ownedKeyType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=',' 
+)	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
 	    }
 		lv_ownedValueType_4_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedValueType",
-        		lv_ownedValueType_4_0, 
+        		lv_ownedValueType_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_5=')' 
+)	otherlv_5=')'
     {
     	newLeafNode(otherlv_5, grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
     }
@@ -1012,26 +1012,26 @@
 
 
 // Entry rule entryRuleTupleTypeCS
-entryRuleTupleTypeCS returns [EObject current=null] 
+entryRuleTupleTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTupleTypeCSRule()); }
-	 iv_ruleTupleTypeCS=ruleTupleTypeCS 
-	 { $current=$iv_ruleTupleTypeCS.current; } 
-	 EOF 
+	 iv_ruleTupleTypeCS=ruleTupleTypeCS
+	 { $current=$iv_ruleTupleTypeCS.current; }
+	 EOF
 ;
 
 // Rule TupleTypeCS
-ruleTupleTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTupleTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_name_0_0=	'Tuple' 
+		lv_name_0_0=	'Tuple'
     {
         newLeafNode(lv_name_0_0, grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getTupleTypeCSRule());
@@ -1040,51 +1040,51 @@
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
 	    }
 		lv_ownedParts_2_0=ruleTuplePartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleTuplePartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_5=')' 
+))*)?	otherlv_5=')'
     {
     	newLeafNode(otherlv_5, grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
     }
@@ -1096,54 +1096,54 @@
 
 
 // Entry rule entryRuleTuplePartCS
-entryRuleTuplePartCS returns [EObject current=null] 
+entryRuleTuplePartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTuplePartCSRule()); }
-	 iv_ruleTuplePartCS=ruleTuplePartCS 
-	 { $current=$iv_ruleTuplePartCS.current; } 
-	 EOF 
+	 iv_ruleTuplePartCS=ruleTuplePartCS
+	 { $current=$iv_ruleTuplePartCS.current; }
+	 EOF
 ;
 
 // Rule TuplePartCS
-ruleTuplePartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTuplePartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1=':' 
+)	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1157,82 +1157,82 @@
 
 
 // Entry rule entryRuleCollectionLiteralExpCS
-entryRuleCollectionLiteralExpCS returns [EObject current=null] 
+entryRuleCollectionLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionLiteralExpCSRule()); }
-	 iv_ruleCollectionLiteralExpCS=ruleCollectionLiteralExpCS 
-	 { $current=$iv_ruleCollectionLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleCollectionLiteralExpCS=ruleCollectionLiteralExpCS
+	 { $current=$iv_ruleCollectionLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule CollectionLiteralExpCS
-ruleCollectionLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
 	    }
 		lv_ownedType_0_0=ruleCollectionTypeCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedParts_2_0=ruleCollectionLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleCollectionLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_5='}' 
+))*)?	otherlv_5='}'
     {
     	newLeafNode(otherlv_5, grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -1244,54 +1244,54 @@
 
 
 // Entry rule entryRuleCollectionLiteralPartCS
-entryRuleCollectionLiteralPartCS returns [EObject current=null] 
+entryRuleCollectionLiteralPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionLiteralPartCSRule()); }
-	 iv_ruleCollectionLiteralPartCS=ruleCollectionLiteralPartCS 
-	 { $current=$iv_ruleCollectionLiteralPartCS.current; } 
-	 EOF 
+	 iv_ruleCollectionLiteralPartCS=ruleCollectionLiteralPartCS
+	 { $current=$iv_ruleCollectionLiteralPartCS.current; }
+	 EOF
 ;
 
 // Rule CollectionLiteralPartCS
-ruleCollectionLiteralPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionLiteralPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
 	    }
 		lv_ownedExpression_0_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_0_0, 
+        		lv_ownedExpression_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='..' 
+)(	otherlv_1='..'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
 	    }
 		lv_ownedLastExpression_2_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedLastExpression",
-        		lv_ownedLastExpression_2_0, 
+        		lv_ownedLastExpression_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1300,17 +1300,17 @@
 ))?)
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedExpression_3_0=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_3_0, 
+        		lv_ownedExpression_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1324,104 +1324,104 @@
 
 
 // Entry rule entryRuleCollectionPatternCS
-entryRuleCollectionPatternCS returns [EObject current=null] 
+entryRuleCollectionPatternCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionPatternCSRule()); }
-	 iv_ruleCollectionPatternCS=ruleCollectionPatternCS 
-	 { $current=$iv_ruleCollectionPatternCS.current; } 
-	 EOF 
+	 iv_ruleCollectionPatternCS=ruleCollectionPatternCS
+	 { $current=$iv_ruleCollectionPatternCS.current; }
+	 EOF
 ;
 
 // Rule CollectionPatternCS
-ruleCollectionPatternCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionPatternCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
 	    }
 		lv_ownedType_0_0=ruleCollectionTypeCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedParts_2_0=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedParts_4_0=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*(	otherlv_5='++' 
+))*(	otherlv_5='++'
     {
     	newLeafNode(otherlv_5, grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
 	    }
 		lv_restVariableName_6_0=ruleIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"restVariableName",
-        		lv_restVariableName_6_0, 
+        		lv_restVariableName_6_0,
         		"org.eclipse.ocl.xtext.base.Base.Identifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)))?	otherlv_7='}' 
+)))?	otherlv_7='}'
     {
     	newLeafNode(otherlv_7, grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -1433,70 +1433,70 @@
 
 
 // Entry rule entryRuleShadowPartCS
-entryRuleShadowPartCS returns [EObject current=null] 
+entryRuleShadowPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getShadowPartCSRule()); }
-	 iv_ruleShadowPartCS=ruleShadowPartCS 
-	 { $current=$iv_ruleShadowPartCS.current; } 
-	 EOF 
+	 iv_ruleShadowPartCS=ruleShadowPartCS
+	 { $current=$iv_ruleShadowPartCS.current; }
+	 EOF
 ;
 
 // Rule ShadowPartCS
-ruleShadowPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleShadowPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getShadowPartCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='=' 
+)	otherlv_1='='
     {
     	newLeafNode(otherlv_1, grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
     }
 (
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedInitExpression_2_1=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_2_1, 
+        		lv_ownedInitExpression_2_1,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
-    |		{ 
-	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
+    |		{
+	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
 	    }
 		lv_ownedInitExpression_2_2=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_2_2, 
+        		lv_ownedInitExpression_2_2,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1512,54 +1512,54 @@
 
 
 // Entry rule entryRulePatternExpCS
-entryRulePatternExpCS returns [EObject current=null] 
+entryRulePatternExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPatternExpCSRule()); }
-	 iv_rulePatternExpCS=rulePatternExpCS 
-	 { $current=$iv_rulePatternExpCS.current; } 
-	 EOF 
+	 iv_rulePatternExpCS=rulePatternExpCS
+	 { $current=$iv_rulePatternExpCS.current; }
+	 EOF
 ;
 
 // Rule PatternExpCS
-rulePatternExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePatternExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_patternVariableName_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"patternVariableName",
-        		lv_patternVariableName_0_0, 
+        		lv_patternVariableName_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_1=':' 
+)?	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedPatternType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPatternType",
-        		lv_ownedPatternType_2_0, 
+        		lv_ownedPatternType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1573,46 +1573,46 @@
 
 
 // Entry rule entryRuleLambdaLiteralExpCS
-entryRuleLambdaLiteralExpCS returns [EObject current=null] 
+entryRuleLambdaLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLambdaLiteralExpCSRule()); }
-	 iv_ruleLambdaLiteralExpCS=ruleLambdaLiteralExpCS 
-	 { $current=$iv_ruleLambdaLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleLambdaLiteralExpCS=ruleLambdaLiteralExpCS
+	 { $current=$iv_ruleLambdaLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule LambdaLiteralExpCS
-ruleLambdaLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLambdaLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='Lambda' 
+(	otherlv_0='Lambda'
     {
     	newLeafNode(otherlv_0, grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
     }
-	otherlv_1='{' 
+	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedExpressionCS_2_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLambdaLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpressionCS",
-        		lv_ownedExpressionCS_2_0, 
+        		lv_ownedExpressionCS_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3='}' 
+)	otherlv_3='}'
     {
     	newLeafNode(otherlv_3, grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -1624,82 +1624,82 @@
 
 
 // Entry rule entryRuleMapLiteralExpCS
-entryRuleMapLiteralExpCS returns [EObject current=null] 
+entryRuleMapLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMapLiteralExpCSRule()); }
-	 iv_ruleMapLiteralExpCS=ruleMapLiteralExpCS 
-	 { $current=$iv_ruleMapLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleMapLiteralExpCS=ruleMapLiteralExpCS
+	 { $current=$iv_ruleMapLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule MapLiteralExpCS
-ruleMapLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMapLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
 	    }
 		lv_ownedType_0_0=ruleMapTypeCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapTypeCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedParts_2_0=ruleMapLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleMapLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_5='}' 
+))*)?	otherlv_5='}'
     {
     	newLeafNode(otherlv_5, grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -1711,54 +1711,54 @@
 
 
 // Entry rule entryRuleMapLiteralPartCS
-entryRuleMapLiteralPartCS returns [EObject current=null] 
+entryRuleMapLiteralPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMapLiteralPartCSRule()); }
-	 iv_ruleMapLiteralPartCS=ruleMapLiteralPartCS 
-	 { $current=$iv_ruleMapLiteralPartCS.current; } 
-	 EOF 
+	 iv_ruleMapLiteralPartCS=ruleMapLiteralPartCS
+	 { $current=$iv_ruleMapLiteralPartCS.current; }
+	 EOF
 ;
 
 // Rule MapLiteralPartCS
-ruleMapLiteralPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMapLiteralPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
 	    }
 		lv_ownedKey_0_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedKey",
-        		lv_ownedKey_0_0, 
+        		lv_ownedKey_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='<-' 
+)	otherlv_1='<-'
     {
     	newLeafNode(otherlv_1, grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedValue_2_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedValue",
-        		lv_ownedValue_2_0, 
+        		lv_ownedValue_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1772,94 +1772,94 @@
 
 
 // Entry rule entryRulePrimitiveLiteralExpCS
-entryRulePrimitiveLiteralExpCS returns [EObject current=null] 
+entryRulePrimitiveLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSRule()); }
-	 iv_rulePrimitiveLiteralExpCS=rulePrimitiveLiteralExpCS 
-	 { $current=$iv_rulePrimitiveLiteralExpCS.current; } 
-	 EOF 
+	 iv_rulePrimitiveLiteralExpCS=rulePrimitiveLiteralExpCS
+	 { $current=$iv_rulePrimitiveLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule PrimitiveLiteralExpCS
-rulePrimitiveLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrimitiveLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
     }
     this_NumberLiteralExpCS_0=ruleNumberLiteralExpCS
-    { 
-        $current = $this_NumberLiteralExpCS_0.current; 
+    {
+        $current = $this_NumberLiteralExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
     }
     this_StringLiteralExpCS_1=ruleStringLiteralExpCS
-    { 
-        $current = $this_StringLiteralExpCS_1.current; 
+    {
+        $current = $this_StringLiteralExpCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
     }
     this_BooleanLiteralExpCS_2=ruleBooleanLiteralExpCS
-    { 
-        $current = $this_BooleanLiteralExpCS_2.current; 
+    {
+        $current = $this_BooleanLiteralExpCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
     }
     this_UnlimitedNaturalLiteralExpCS_3=ruleUnlimitedNaturalLiteralExpCS
-    { 
-        $current = $this_UnlimitedNaturalLiteralExpCS_3.current; 
+    {
+        $current = $this_UnlimitedNaturalLiteralExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
     }
     this_InvalidLiteralExpCS_4=ruleInvalidLiteralExpCS
-    { 
-        $current = $this_InvalidLiteralExpCS_4.current; 
+    {
+        $current = $this_InvalidLiteralExpCS_4.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
     }
     this_NullLiteralExpCS_5=ruleNullLiteralExpCS
-    { 
-        $current = $this_NullLiteralExpCS_5.current; 
+    {
+        $current = $this_NullLiteralExpCS_5.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -1870,68 +1870,68 @@
 
 
 // Entry rule entryRuleTupleLiteralExpCS
-entryRuleTupleLiteralExpCS returns [EObject current=null] 
+entryRuleTupleLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTupleLiteralExpCSRule()); }
-	 iv_ruleTupleLiteralExpCS=ruleTupleLiteralExpCS 
-	 { $current=$iv_ruleTupleLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleTupleLiteralExpCS=ruleTupleLiteralExpCS
+	 { $current=$iv_ruleTupleLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule TupleLiteralExpCS
-ruleTupleLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTupleLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='Tuple' 
+(	otherlv_0='Tuple'
     {
     	newLeafNode(otherlv_0, grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
     }
-	otherlv_1='{' 
+	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
 	    }
 		lv_ownedParts_2_0=ruleTupleLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
 	    }
 		lv_ownedParts_4_0=ruleTupleLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_5='}' 
+))*	otherlv_5='}'
     {
     	newLeafNode(otherlv_5, grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
     }
@@ -1943,76 +1943,76 @@
 
 
 // Entry rule entryRuleTupleLiteralPartCS
-entryRuleTupleLiteralPartCS returns [EObject current=null] 
+entryRuleTupleLiteralPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTupleLiteralPartCSRule()); }
-	 iv_ruleTupleLiteralPartCS=ruleTupleLiteralPartCS 
-	 { $current=$iv_ruleTupleLiteralPartCS.current; } 
-	 EOF 
+	 iv_ruleTupleLiteralPartCS=ruleTupleLiteralPartCS
+	 { $current=$iv_ruleTupleLiteralPartCS.current; }
+	 EOF
 ;
 
 // Rule TupleLiteralPartCS
-ruleTupleLiteralPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTupleLiteralPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1=':' 
+)(	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?	otherlv_3='=' 
+))?	otherlv_3='='
     {
     	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
 	    }
 		lv_ownedInitExpression_4_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_4_0, 
+        		lv_ownedInitExpression_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2026,32 +2026,32 @@
 
 
 // Entry rule entryRuleNumberLiteralExpCS
-entryRuleNumberLiteralExpCS returns [EObject current=null] 
+entryRuleNumberLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNumberLiteralExpCSRule()); }
-	 iv_ruleNumberLiteralExpCS=ruleNumberLiteralExpCS 
-	 { $current=$iv_ruleNumberLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleNumberLiteralExpCS=ruleNumberLiteralExpCS
+	 { $current=$iv_ruleNumberLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule NumberLiteralExpCS
-ruleNumberLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNumberLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
 	    }
 		lv_symbol_0_0=ruleNUMBER_LITERAL		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNumberLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"symbol",
-        		lv_symbol_0_0, 
+        		lv_symbol_0_0,
         		"org.eclipse.ocl.xtext.base.Base.NUMBER_LITERAL");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2065,32 +2065,32 @@
 
 
 // Entry rule entryRuleStringLiteralExpCS
-entryRuleStringLiteralExpCS returns [EObject current=null] 
+entryRuleStringLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getStringLiteralExpCSRule()); }
-	 iv_ruleStringLiteralExpCS=ruleStringLiteralExpCS 
-	 { $current=$iv_ruleStringLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleStringLiteralExpCS=ruleStringLiteralExpCS
+	 { $current=$iv_ruleStringLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule StringLiteralExpCS
-ruleStringLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleStringLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
 	    }
 		lv_segments_0_0=ruleStringLiteral		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getStringLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"segments",
-        		lv_segments_0_0, 
+        		lv_segments_0_0,
         		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2104,26 +2104,26 @@
 
 
 // Entry rule entryRuleBooleanLiteralExpCS
-entryRuleBooleanLiteralExpCS returns [EObject current=null] 
+entryRuleBooleanLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getBooleanLiteralExpCSRule()); }
-	 iv_ruleBooleanLiteralExpCS=ruleBooleanLiteralExpCS 
-	 { $current=$iv_ruleBooleanLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleBooleanLiteralExpCS=ruleBooleanLiteralExpCS
+	 { $current=$iv_ruleBooleanLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule BooleanLiteralExpCS
-ruleBooleanLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleBooleanLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_symbol_0_0=	'true' 
+		lv_symbol_0_0=	'true'
     {
         newLeafNode(lv_symbol_0_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
@@ -2135,11 +2135,11 @@
 )
     |(
 (
-		lv_symbol_1_0=	'false' 
+		lv_symbol_1_0=	'false'
     {
         newLeafNode(lv_symbol_1_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
@@ -2156,29 +2156,29 @@
 
 
 // Entry rule entryRuleUnlimitedNaturalLiteralExpCS
-entryRuleUnlimitedNaturalLiteralExpCS returns [EObject current=null] 
+entryRuleUnlimitedNaturalLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); }
-	 iv_ruleUnlimitedNaturalLiteralExpCS=ruleUnlimitedNaturalLiteralExpCS 
-	 { $current=$iv_ruleUnlimitedNaturalLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleUnlimitedNaturalLiteralExpCS=ruleUnlimitedNaturalLiteralExpCS
+	 { $current=$iv_ruleUnlimitedNaturalLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule UnlimitedNaturalLiteralExpCS
-ruleUnlimitedNaturalLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleUnlimitedNaturalLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0(),
             $current);
     }
-)	otherlv_1='*' 
+)	otherlv_1='*'
     {
     	newLeafNode(otherlv_1, grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
     }
@@ -2190,29 +2190,29 @@
 
 
 // Entry rule entryRuleInvalidLiteralExpCS
-entryRuleInvalidLiteralExpCS returns [EObject current=null] 
+entryRuleInvalidLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getInvalidLiteralExpCSRule()); }
-	 iv_ruleInvalidLiteralExpCS=ruleInvalidLiteralExpCS 
-	 { $current=$iv_ruleInvalidLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleInvalidLiteralExpCS=ruleInvalidLiteralExpCS
+	 { $current=$iv_ruleInvalidLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule InvalidLiteralExpCS
-ruleInvalidLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleInvalidLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0(),
             $current);
     }
-)	otherlv_1='invalid' 
+)	otherlv_1='invalid'
     {
     	newLeafNode(otherlv_1, grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
     }
@@ -2224,29 +2224,29 @@
 
 
 // Entry rule entryRuleNullLiteralExpCS
-entryRuleNullLiteralExpCS returns [EObject current=null] 
+entryRuleNullLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNullLiteralExpCSRule()); }
-	 iv_ruleNullLiteralExpCS=ruleNullLiteralExpCS 
-	 { $current=$iv_ruleNullLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleNullLiteralExpCS=ruleNullLiteralExpCS
+	 { $current=$iv_ruleNullLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule NullLiteralExpCS
-ruleNullLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNullLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0(),
             $current);
     }
-)	otherlv_1='null' 
+)	otherlv_1='null'
     {
     	newLeafNode(otherlv_1, grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
     }
@@ -2258,68 +2258,68 @@
 
 
 // Entry rule entryRuleTypeLiteralCS
-entryRuleTypeLiteralCS returns [EObject current=null] 
+entryRuleTypeLiteralCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeLiteralCSRule()); }
-	 iv_ruleTypeLiteralCS=ruleTypeLiteralCS 
-	 { $current=$iv_ruleTypeLiteralCS.current; } 
-	 EOF 
+	 iv_ruleTypeLiteralCS=ruleTypeLiteralCS
+	 { $current=$iv_ruleTypeLiteralCS.current; }
+	 EOF
 ;
 
 // Rule TypeLiteralCS
-ruleTypeLiteralCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeLiteralCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
     }
     this_PrimitiveTypeCS_0=rulePrimitiveTypeCS
-    { 
-        $current = $this_PrimitiveTypeCS_0.current; 
+    {
+        $current = $this_PrimitiveTypeCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
     }
     this_CollectionTypeCS_1=ruleCollectionTypeCS
-    { 
-        $current = $this_CollectionTypeCS_1.current; 
+    {
+        $current = $this_CollectionTypeCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
     }
     this_MapTypeCS_2=ruleMapTypeCS
-    { 
-        $current = $this_MapTypeCS_2.current; 
+    {
+        $current = $this_MapTypeCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
     }
     this_TupleTypeCS_3=ruleTupleTypeCS
-    { 
-        $current = $this_TupleTypeCS_3.current; 
+    {
+        $current = $this_TupleTypeCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -2330,44 +2330,44 @@
 
 
 // Entry rule entryRuleTypeLiteralWithMultiplicityCS
-entryRuleTypeLiteralWithMultiplicityCS returns [EObject current=null] 
+entryRuleTypeLiteralWithMultiplicityCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); }
-	 iv_ruleTypeLiteralWithMultiplicityCS=ruleTypeLiteralWithMultiplicityCS 
-	 { $current=$iv_ruleTypeLiteralWithMultiplicityCS.current; } 
-	 EOF 
+	 iv_ruleTypeLiteralWithMultiplicityCS=ruleTypeLiteralWithMultiplicityCS
+	 { $current=$iv_ruleTypeLiteralWithMultiplicityCS.current; }
+	 EOF
 ;
 
 // Rule TypeLiteralWithMultiplicityCS
-ruleTypeLiteralWithMultiplicityCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeLiteralWithMultiplicityCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
     }
     this_TypeLiteralCS_0=ruleTypeLiteralCS
-    { 
-        $current = $this_TypeLiteralCS_0.current; 
+    {
+        $current = $this_TypeLiteralCS_0.current;
         afterParserOrEnumRuleCall();
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
 	    }
 		lv_ownedMultiplicity_1_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_1_0, 
+        		lv_ownedMultiplicity_1_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2381,32 +2381,32 @@
 
 
 // Entry rule entryRuleTypeLiteralExpCS
-entryRuleTypeLiteralExpCS returns [EObject current=null] 
+entryRuleTypeLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeLiteralExpCSRule()); }
-	 iv_ruleTypeLiteralExpCS=ruleTypeLiteralExpCS 
-	 { $current=$iv_ruleTypeLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleTypeLiteralExpCS=ruleTypeLiteralExpCS
+	 { $current=$iv_ruleTypeLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule TypeLiteralExpCS
-ruleTypeLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
 	    }
 		lv_ownedType_0_0=ruleTypeLiteralWithMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeLiteralWithMultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2420,32 +2420,32 @@
 
 
 // Entry rule entryRuleTypeNameExpCS
-entryRuleTypeNameExpCS returns [EObject current=null] 
+entryRuleTypeNameExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeNameExpCSRule()); }
-	 iv_ruleTypeNameExpCS=ruleTypeNameExpCS 
-	 { $current=$iv_ruleTypeNameExpCS.current; } 
-	 EOF 
+	 iv_ruleTypeNameExpCS=ruleTypeNameExpCS
+	 { $current=$iv_ruleTypeNameExpCS.current; }
+	 EOF
 ;
 
 // Rule TypeNameExpCS
-ruleTypeNameExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeNameExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathName_0_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_0_0, 
+        		lv_ownedPathName_0_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2453,45 +2453,45 @@
 )
 )((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
 	    }
 		lv_ownedCurlyBracketedClause_1_0=ruleCurlyBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCurlyBracketedClause",
-        		lv_ownedCurlyBracketedClause_1_0, 
+        		lv_ownedCurlyBracketedClause_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2='{' 
+)(	otherlv_2='{'
     {
     	newLeafNode(otherlv_2, grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
 	    }
 		lv_ownedPatternGuard_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPatternGuard",
-        		lv_ownedPatternGuard_3_0, 
+        		lv_ownedPatternGuard_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_4='}' 
+)	otherlv_4='}'
     {
     	newLeafNode(otherlv_4, grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
     }
@@ -2503,70 +2503,70 @@
 
 
 // Entry rule entryRuleTypeExpCS
-entryRuleTypeExpCS returns [EObject current=null] 
+entryRuleTypeExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeExpCSRule()); }
-	 iv_ruleTypeExpCS=ruleTypeExpCS 
-	 { $current=$iv_ruleTypeExpCS.current; } 
-	 EOF 
+	 iv_ruleTypeExpCS=ruleTypeExpCS
+	 { $current=$iv_ruleTypeExpCS.current; }
+	 EOF
 ;
 
 // Rule TypeExpCS
-ruleTypeExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
     }
     this_TypeNameExpCS_0=ruleTypeNameExpCS
-    { 
-        $current = $this_TypeNameExpCS_0.current; 
+    {
+        $current = $this_TypeNameExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
     }
     this_TypeLiteralCS_1=ruleTypeLiteralCS
-    { 
-        $current = $this_TypeLiteralCS_1.current; 
+    {
+        $current = $this_TypeLiteralCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
+    {
+        newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
     }
     this_CollectionPatternCS_2=ruleCollectionPatternCS
-    { 
-        $current = $this_CollectionPatternCS_2.current; 
+    {
+        $current = $this_CollectionPatternCS_2.current;
         afterParserOrEnumRuleCall();
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
 	    }
 		lv_ownedMultiplicity_3_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_3_0, 
+        		lv_ownedMultiplicity_3_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2580,34 +2580,34 @@
 
 
 // Entry rule entryRuleExpCS
-entryRuleExpCS returns [EObject current=null] 
+entryRuleExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getExpCSRule()); }
-	 iv_ruleExpCS=ruleExpCS 
-	 { $current=$iv_ruleExpCS.current; } 
-	 EOF 
+	 iv_ruleExpCS=ruleExpCS
+	 { $current=$iv_ruleExpCS.current; }
+	 EOF
 ;
 
 // Rule ExpCS
-ruleExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
+    {
+        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
     }
     this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS
-    { 
-        $current = $this_PrefixedPrimaryExpCS_0.current; 
+    {
+        $current = $this_PrefixedPrimaryExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElementAndSet(
@@ -2616,17 +2616,17 @@
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
 	    }
 		lv_name_2_0=ruleBinaryOperatorName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_0, 
+        		lv_name_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.BinaryOperatorName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2634,17 +2634,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
 	    }
 		lv_ownedRight_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRight",
-        		lv_ownedRight_3_0, 
+        		lv_ownedRight_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2652,15 +2652,15 @@
 )
 ))?)
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
     }
     this_PrefixedLetExpCS_4=rulePrefixedLetExpCS
-    { 
-        $current = $this_PrefixedLetExpCS_4.current; 
+    {
+        $current = $this_PrefixedLetExpCS_4.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -2671,22 +2671,22 @@
 
 
 // Entry rule entryRulePrefixedLetExpCS
-entryRulePrefixedLetExpCS returns [EObject current=null] 
+entryRulePrefixedLetExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrefixedLetExpCSRule()); }
-	 iv_rulePrefixedLetExpCS=rulePrefixedLetExpCS 
-	 { $current=$iv_rulePrefixedLetExpCS.current; } 
-	 EOF 
+	 iv_rulePrefixedLetExpCS=rulePrefixedLetExpCS
+	 { $current=$iv_rulePrefixedLetExpCS.current; }
+	 EOF
 ;
 
 // Rule PrefixedLetExpCS
-rulePrefixedLetExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrefixedLetExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
@@ -2695,17 +2695,17 @@
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
 	    }
 		lv_name_1_0=ruleUnaryOperatorName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2713,17 +2713,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
 	    }
 		lv_ownedRight_2_0=rulePrefixedLetExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRight",
-        		lv_ownedRight_2_0, 
+        		lv_ownedRight_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedLetExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2731,15 +2731,15 @@
 )
 ))
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
     }
     this_LetExpCS_3=ruleLetExpCS
-    { 
-        $current = $this_LetExpCS_3.current; 
+    {
+        $current = $this_LetExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -2750,22 +2750,22 @@
 
 
 // Entry rule entryRulePrefixedPrimaryExpCS
-entryRulePrefixedPrimaryExpCS returns [EObject current=null] 
+entryRulePrefixedPrimaryExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSRule()); }
-	 iv_rulePrefixedPrimaryExpCS=rulePrefixedPrimaryExpCS 
-	 { $current=$iv_rulePrefixedPrimaryExpCS.current; } 
-	 EOF 
+	 iv_rulePrefixedPrimaryExpCS=rulePrefixedPrimaryExpCS
+	 { $current=$iv_rulePrefixedPrimaryExpCS.current; }
+	 EOF
 ;
 
 // Rule PrefixedPrimaryExpCS
-rulePrefixedPrimaryExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrefixedPrimaryExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
@@ -2774,17 +2774,17 @@
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
 	    }
 		lv_name_1_0=ruleUnaryOperatorName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2792,17 +2792,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
 	    }
 		lv_ownedRight_2_0=rulePrefixedPrimaryExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRight",
-        		lv_ownedRight_2_0, 
+        		lv_ownedRight_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedPrimaryExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2810,15 +2810,15 @@
 )
 ))
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
     }
     this_PrimaryExpCS_3=rulePrimaryExpCS
-    { 
-        $current = $this_PrimaryExpCS_3.current; 
+    {
+        $current = $this_PrimaryExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -2829,146 +2829,146 @@
 
 
 // Entry rule entryRulePrimaryExpCS
-entryRulePrimaryExpCS returns [EObject current=null] 
+entryRulePrimaryExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrimaryExpCSRule()); }
-	 iv_rulePrimaryExpCS=rulePrimaryExpCS 
-	 { $current=$iv_rulePrimaryExpCS.current; } 
-	 EOF 
+	 iv_rulePrimaryExpCS=rulePrimaryExpCS
+	 { $current=$iv_rulePrimaryExpCS.current; }
+	 EOF
 ;
 
 // Rule PrimaryExpCS
-rulePrimaryExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrimaryExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
     }
     this_NestedExpCS_0=ruleNestedExpCS
-    { 
-        $current = $this_NestedExpCS_0.current; 
+    {
+        $current = $this_NestedExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
     }
     this_IfExpCS_1=ruleIfExpCS
-    { 
-        $current = $this_IfExpCS_1.current; 
+    {
+        $current = $this_IfExpCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
     }
     this_SelfExpCS_2=ruleSelfExpCS
-    { 
-        $current = $this_SelfExpCS_2.current; 
+    {
+        $current = $this_SelfExpCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
     }
     this_PrimitiveLiteralExpCS_3=rulePrimitiveLiteralExpCS
-    { 
-        $current = $this_PrimitiveLiteralExpCS_3.current; 
+    {
+        $current = $this_PrimitiveLiteralExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
     }
     this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS
-    { 
-        $current = $this_TupleLiteralExpCS_4.current; 
+    {
+        $current = $this_TupleLiteralExpCS_4.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
     }
     this_MapLiteralExpCS_5=ruleMapLiteralExpCS
-    { 
-        $current = $this_MapLiteralExpCS_5.current; 
+    {
+        $current = $this_MapLiteralExpCS_5.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
     }
     this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS
-    { 
-        $current = $this_CollectionLiteralExpCS_6.current; 
+    {
+        $current = $this_CollectionLiteralExpCS_6.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
     }
     this_LambdaLiteralExpCS_7=ruleLambdaLiteralExpCS
-    { 
-        $current = $this_LambdaLiteralExpCS_7.current; 
+    {
+        $current = $this_LambdaLiteralExpCS_7.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
     }
     this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS
-    { 
-        $current = $this_TypeLiteralExpCS_8.current; 
+    {
+        $current = $this_TypeLiteralExpCS_8.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
     }
     this_NameExpCS_9=ruleNameExpCS
-    { 
-        $current = $this_NameExpCS_9.current; 
+    {
+        $current = $this_NameExpCS_9.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -2979,32 +2979,32 @@
 
 
 // Entry rule entryRuleNameExpCS
-entryRuleNameExpCS returns [EObject current=null] 
+entryRuleNameExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNameExpCSRule()); }
-	 iv_ruleNameExpCS=ruleNameExpCS 
-	 { $current=$iv_ruleNameExpCS.current; } 
-	 EOF 
+	 iv_ruleNameExpCS=ruleNameExpCS
+	 { $current=$iv_ruleNameExpCS.current; }
+	 EOF
 ;
 
 // Rule NameExpCS
-ruleNameExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNameExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathName_0_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_0_0, 
+        		lv_ownedPathName_0_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3012,17 +3012,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
 	    }
 		lv_ownedSquareBracketedClauses_1_0=ruleSquareBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSquareBracketedClauses",
-        		lv_ownedSquareBracketedClauses_1_0, 
+        		lv_ownedSquareBracketedClauses_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.SquareBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3030,17 +3030,17 @@
 )
 )*(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
 	    }
 		lv_ownedRoundBracketedClause_2_0=ruleRoundBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRoundBracketedClause",
-        		lv_ownedRoundBracketedClause_2_0, 
+        		lv_ownedRoundBracketedClause_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3048,17 +3048,17 @@
 )
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
 	    }
 		lv_ownedCurlyBracketedClause_3_0=ruleCurlyBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCurlyBracketedClause",
-        		lv_ownedCurlyBracketedClause_3_0, 
+        		lv_ownedCurlyBracketedClause_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3066,11 +3066,11 @@
 )
 )?((
 (
-		lv_isPre_4_0=	'@' 
+		lv_isPre_4_0=	'@'
     {
         newLeafNode(lv_isPre_4_0, grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNameExpCSRule());
@@ -3079,7 +3079,7 @@
 	    }
 
 )
-)	otherlv_5='pre' 
+)	otherlv_5='pre'
     {
     	newLeafNode(otherlv_5, grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
     }
@@ -3091,67 +3091,67 @@
 
 
 // Entry rule entryRuleCurlyBracketedClauseCS
-entryRuleCurlyBracketedClauseCS returns [EObject current=null] 
+entryRuleCurlyBracketedClauseCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCurlyBracketedClauseCSRule()); }
-	 iv_ruleCurlyBracketedClauseCS=ruleCurlyBracketedClauseCS 
-	 { $current=$iv_ruleCurlyBracketedClauseCS.current; } 
-	 EOF 
+	 iv_ruleCurlyBracketedClauseCS=ruleCurlyBracketedClauseCS
+	 { $current=$iv_ruleCurlyBracketedClauseCS.current; }
+	 EOF
 ;
 
 // Rule CurlyBracketedClauseCS
-ruleCurlyBracketedClauseCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCurlyBracketedClauseCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0(),
             $current);
     }
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
     }
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
 	    }
 		lv_ownedParts_2_0=ruleShadowPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleShadowPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3160,23 +3160,23 @@
 ))*)?
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
 	    }
 		lv_value_5_0=ruleStringLiteral		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"value",
-        		lv_value_5_0, 
+        		lv_value_5_0,
         		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))	otherlv_6='}' 
+))	otherlv_6='}'
     {
     	newLeafNode(otherlv_6, grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -3188,45 +3188,45 @@
 
 
 // Entry rule entryRuleRoundBracketedClauseCS
-entryRuleRoundBracketedClauseCS returns [EObject current=null] 
+entryRuleRoundBracketedClauseCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getRoundBracketedClauseCSRule()); }
-	 iv_ruleRoundBracketedClauseCS=ruleRoundBracketedClauseCS 
-	 { $current=$iv_ruleRoundBracketedClauseCS.current; } 
-	 EOF 
+	 iv_ruleRoundBracketedClauseCS=ruleRoundBracketedClauseCS
+	 { $current=$iv_ruleRoundBracketedClauseCS.current; }
+	 EOF
 ;
 
 // Rule RoundBracketedClauseCS
-ruleRoundBracketedClauseCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleRoundBracketedClauseCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0(),
             $current);
     }
-)	otherlv_1='(' 
+)	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedArguments_2_0=ruleNavigatingArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_2_0, 
+        		lv_ownedArguments_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3234,17 +3234,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedArguments_3_0=ruleNavigatingCommaArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_3_0, 
+        		lv_ownedArguments_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3252,17 +3252,17 @@
 )
 )*((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
 	    }
 		lv_ownedArguments_4_0=ruleNavigatingSemiArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_4_0, 
+        		lv_ownedArguments_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingSemiArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3270,17 +3270,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
 	    }
 		lv_ownedArguments_5_0=ruleNavigatingCommaArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_5_0, 
+        		lv_ownedArguments_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3288,17 +3288,17 @@
 )
 )*)?((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
 	    }
 		lv_ownedArguments_6_0=ruleNavigatingBarArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_6_0, 
+        		lv_ownedArguments_6_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingBarArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3306,23 +3306,23 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
 	    }
 		lv_ownedArguments_7_0=ruleNavigatingCommaArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_7_0, 
+        		lv_ownedArguments_7_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*)*)?	otherlv_8=')' 
+)*)*)?	otherlv_8=')'
     {
     	newLeafNode(otherlv_8, grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
     }
@@ -3334,64 +3334,64 @@
 
 
 // Entry rule entryRuleSquareBracketedClauseCS
-entryRuleSquareBracketedClauseCS returns [EObject current=null] 
+entryRuleSquareBracketedClauseCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getSquareBracketedClauseCSRule()); }
-	 iv_ruleSquareBracketedClauseCS=ruleSquareBracketedClauseCS 
-	 { $current=$iv_ruleSquareBracketedClauseCS.current; } 
-	 EOF 
+	 iv_ruleSquareBracketedClauseCS=ruleSquareBracketedClauseCS
+	 { $current=$iv_ruleSquareBracketedClauseCS.current; }
+	 EOF
 ;
 
 // Rule SquareBracketedClauseCS
-ruleSquareBracketedClauseCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleSquareBracketedClauseCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='[' 
+(	otherlv_0='['
     {
     	newLeafNode(otherlv_0, grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedTerms_1_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedTerms",
-        		lv_ownedTerms_1_0, 
+        		lv_ownedTerms_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=',' 
+)(	otherlv_2=','
     {
     	newLeafNode(otherlv_2, grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedTerms_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedTerms",
-        		lv_ownedTerms_3_0, 
+        		lv_ownedTerms_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_4=']' 
+))*	otherlv_4=']'
     {
     	newLeafNode(otherlv_4, grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
     }
@@ -3403,122 +3403,122 @@
 
 
 // Entry rule entryRuleNavigatingArgCS
-entryRuleNavigatingArgCS returns [EObject current=null] 
+entryRuleNavigatingArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingArgCSRule()); }
-	 iv_ruleNavigatingArgCS=ruleNavigatingArgCS 
-	 { $current=$iv_ruleNavigatingArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingArgCS=ruleNavigatingArgCS
+	 { $current=$iv_ruleNavigatingArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingArgCS
-ruleNavigatingArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
 	    }
 		lv_ownedNameExpression_0_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_0_0, 
+        		lv_ownedNameExpression_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)((	otherlv_1=':' 
+)((	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3='=' 
+)(	otherlv_3='='
     {
     	newLeafNode(otherlv_3, grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
 	    }
 		lv_ownedInitExpression_4_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_4_0, 
+        		lv_ownedInitExpression_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 ))?)
-    |(	otherlv_5='in' 
+    |(	otherlv_5='in'
     {
     	newLeafNode(otherlv_5, grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
 	    }
 		lv_ownedInitExpression_6_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_6_0, 
+        		lv_ownedInitExpression_6_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 )))?)
-    |(	otherlv_7=':' 
+    |(	otherlv_7=':'
     {
     	newLeafNode(otherlv_7, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedType_8_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_8_0, 
+        		lv_ownedType_8_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3532,26 +3532,26 @@
 
 
 // Entry rule entryRuleNavigatingBarArgCS
-entryRuleNavigatingBarArgCS returns [EObject current=null] 
+entryRuleNavigatingBarArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingBarArgCSRule()); }
-	 iv_ruleNavigatingBarArgCS=ruleNavigatingBarArgCS 
-	 { $current=$iv_ruleNavigatingBarArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingBarArgCS=ruleNavigatingBarArgCS
+	 { $current=$iv_ruleNavigatingBarArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingBarArgCS
-ruleNavigatingBarArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingBarArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_prefix_0_0=	'|' 
+		lv_prefix_0_0=	'|'
     {
         newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNavigatingBarArgCSRule());
@@ -3562,61 +3562,61 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_1_0, 
+        		lv_ownedNameExpression_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=':' 
+)(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_4='=' 
+)(	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3630,26 +3630,26 @@
 
 
 // Entry rule entryRuleNavigatingCommaArgCS
-entryRuleNavigatingCommaArgCS returns [EObject current=null] 
+entryRuleNavigatingCommaArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingCommaArgCSRule()); }
-	 iv_ruleNavigatingCommaArgCS=ruleNavigatingCommaArgCS 
-	 { $current=$iv_ruleNavigatingCommaArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingCommaArgCS=ruleNavigatingCommaArgCS
+	 { $current=$iv_ruleNavigatingCommaArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingCommaArgCS
-ruleNavigatingCommaArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingCommaArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_prefix_0_0=	',' 
+		lv_prefix_0_0=	','
     {
         newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNavigatingCommaArgCSRule());
@@ -3660,84 +3660,84 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_1_0, 
+        		lv_ownedNameExpression_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)((	otherlv_2=':' 
+)((	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_4='=' 
+)(	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 ))?)
-    |(	otherlv_6='in' 
+    |(	otherlv_6='in'
     {
     	newLeafNode(otherlv_6, grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedInitExpression_7_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_7_0, 
+        		lv_ownedInitExpression_7_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3751,26 +3751,26 @@
 
 
 // Entry rule entryRuleNavigatingSemiArgCS
-entryRuleNavigatingSemiArgCS returns [EObject current=null] 
+entryRuleNavigatingSemiArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingSemiArgCSRule()); }
-	 iv_ruleNavigatingSemiArgCS=ruleNavigatingSemiArgCS 
-	 { $current=$iv_ruleNavigatingSemiArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingSemiArgCS=ruleNavigatingSemiArgCS
+	 { $current=$iv_ruleNavigatingSemiArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingSemiArgCS
-ruleNavigatingSemiArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingSemiArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_prefix_0_0=	';' 
+		lv_prefix_0_0=	';'
     {
         newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNavigatingSemiArgCSRule());
@@ -3781,61 +3781,61 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_1_0, 
+        		lv_ownedNameExpression_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=':' 
+)(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_4='=' 
+)(	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3849,29 +3849,29 @@
 
 
 // Entry rule entryRuleNavigatingArgExpCS
-entryRuleNavigatingArgExpCS returns [EObject current=null] 
+entryRuleNavigatingArgExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingArgExpCSRule()); }
-	 iv_ruleNavigatingArgExpCS=ruleNavigatingArgExpCS 
-	 { $current=$iv_ruleNavigatingArgExpCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingArgExpCS=ruleNavigatingArgExpCS
+	 { $current=$iv_ruleNavigatingArgExpCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingArgExpCS
-ruleNavigatingArgExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingArgExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall());
     }
     this_ExpCS_0=ruleExpCS
-    { 
-        $current = $this_ExpCS_0.current; 
+    {
+        $current = $this_ExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
@@ -3882,52 +3882,52 @@
 
 
 // Entry rule entryRuleIfExpCS
-entryRuleIfExpCS returns [EObject current=null] 
+entryRuleIfExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getIfExpCSRule()); }
-	 iv_ruleIfExpCS=ruleIfExpCS 
-	 { $current=$iv_ruleIfExpCS.current; } 
-	 EOF 
+	 iv_ruleIfExpCS=ruleIfExpCS
+	 { $current=$iv_ruleIfExpCS.current; }
+	 EOF
 ;
 
 // Rule IfExpCS
-ruleIfExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleIfExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='if' 
+(	otherlv_0='if'
     {
     	newLeafNode(otherlv_0, grammarAccess.getIfExpCSAccess().getIfKeyword_0());
     }
 (
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
 	    }
 		lv_ownedCondition_1_1=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCondition",
-        		lv_ownedCondition_1_1, 
+        		lv_ownedCondition_1_1,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
-    |		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
+    |		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
 	    }
 		lv_ownedCondition_1_2=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCondition",
-        		lv_ownedCondition_1_2, 
+        		lv_ownedCondition_1_2,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3935,23 +3935,23 @@
 )
 
 )
-)	otherlv_2='then' 
+)	otherlv_2='then'
     {
     	newLeafNode(otherlv_2, grammarAccess.getIfExpCSAccess().getThenKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
 	    }
 		lv_ownedThenExpression_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedThenExpression",
-        		lv_ownedThenExpression_3_0, 
+        		lv_ownedThenExpression_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3959,45 +3959,45 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
 	    }
 		lv_ownedIfThenExpressions_4_0=ruleElseIfThenExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedIfThenExpressions",
-        		lv_ownedIfThenExpressions_4_0, 
+        		lv_ownedIfThenExpressions_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ElseIfThenExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_5='else' 
+)*	otherlv_5='else'
     {
     	newLeafNode(otherlv_5, grammarAccess.getIfExpCSAccess().getElseKeyword_5());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
 	    }
 		lv_ownedElseExpression_6_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedElseExpression",
-        		lv_ownedElseExpression_6_0, 
+        		lv_ownedElseExpression_6_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_7='endif' 
+)	otherlv_7='endif'
     {
     	newLeafNode(otherlv_7, grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
     }
@@ -4009,58 +4009,58 @@
 
 
 // Entry rule entryRuleElseIfThenExpCS
-entryRuleElseIfThenExpCS returns [EObject current=null] 
+entryRuleElseIfThenExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getElseIfThenExpCSRule()); }
-	 iv_ruleElseIfThenExpCS=ruleElseIfThenExpCS 
-	 { $current=$iv_ruleElseIfThenExpCS.current; } 
-	 EOF 
+	 iv_ruleElseIfThenExpCS=ruleElseIfThenExpCS
+	 { $current=$iv_ruleElseIfThenExpCS.current; }
+	 EOF
 ;
 
 // Rule ElseIfThenExpCS
-ruleElseIfThenExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleElseIfThenExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='elseif' 
+(	otherlv_0='elseif'
     {
     	newLeafNode(otherlv_0, grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedCondition_1_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCondition",
-        		lv_ownedCondition_1_0, 
+        		lv_ownedCondition_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_2='then' 
+)	otherlv_2='then'
     {
     	newLeafNode(otherlv_2, grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
 	    }
 		lv_ownedThenExpression_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedThenExpression",
-        		lv_ownedThenExpression_3_0, 
+        		lv_ownedThenExpression_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4074,80 +4074,80 @@
 
 
 // Entry rule entryRuleLetExpCS
-entryRuleLetExpCS returns [EObject current=null] 
+entryRuleLetExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLetExpCSRule()); }
-	 iv_ruleLetExpCS=ruleLetExpCS 
-	 { $current=$iv_ruleLetExpCS.current; } 
-	 EOF 
+	 iv_ruleLetExpCS=ruleLetExpCS
+	 { $current=$iv_ruleLetExpCS.current; }
+	 EOF
 ;
 
 // Rule LetExpCS
-ruleLetExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLetExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='let' 
+(	otherlv_0='let'
     {
     	newLeafNode(otherlv_0, grammarAccess.getLetExpCSAccess().getLetKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
 	    }
 		lv_ownedVariables_1_0=ruleLetVariableCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedVariables",
-        		lv_ownedVariables_1_0, 
+        		lv_ownedVariables_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=',' 
+)(	otherlv_2=','
     {
     	newLeafNode(otherlv_2, grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedVariables_3_0=ruleLetVariableCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedVariables",
-        		lv_ownedVariables_3_0, 
+        		lv_ownedVariables_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_4='in' 
+))*	otherlv_4='in'
     {
     	newLeafNode(otherlv_4, grammarAccess.getLetExpCSAccess().getInKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
 	    }
 		lv_ownedInExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInExpression",
-        		lv_ownedInExpression_5_0, 
+        		lv_ownedInExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4161,32 +4161,32 @@
 
 
 // Entry rule entryRuleLetVariableCS
-entryRuleLetVariableCS returns [EObject current=null] 
+entryRuleLetVariableCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLetVariableCSRule()); }
-	 iv_ruleLetVariableCS=ruleLetVariableCS 
-	 { $current=$iv_ruleLetVariableCS.current; } 
-	 EOF 
+	 iv_ruleLetVariableCS=ruleLetVariableCS
+	 { $current=$iv_ruleLetVariableCS.current; }
+	 EOF
 ;
 
 // Rule LetVariableCS
-ruleLetVariableCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLetVariableCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4194,61 +4194,61 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
 	    }
 		lv_ownedRoundBracketedClause_1_0=ruleRoundBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRoundBracketedClause",
-        		lv_ownedRoundBracketedClause_1_0, 
+        		lv_ownedRoundBracketedClause_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?(	otherlv_2=':' 
+)?(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?	otherlv_4='=' 
+))?	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4262,42 +4262,42 @@
 
 
 // Entry rule entryRuleNestedExpCS
-entryRuleNestedExpCS returns [EObject current=null] 
+entryRuleNestedExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNestedExpCSRule()); }
-	 iv_ruleNestedExpCS=ruleNestedExpCS 
-	 { $current=$iv_ruleNestedExpCS.current; } 
-	 EOF 
+	 iv_ruleNestedExpCS=ruleNestedExpCS
+	 { $current=$iv_ruleNestedExpCS.current; }
+	 EOF
 ;
 
 // Rule NestedExpCS
-ruleNestedExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNestedExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='(' 
+(	otherlv_0='('
     {
     	newLeafNode(otherlv_0, grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedExpression_1_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNestedExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_1_0, 
+        		lv_ownedExpression_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_2=')' 
+)	otherlv_2=')'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
     }
@@ -4309,29 +4309,29 @@
 
 
 // Entry rule entryRuleSelfExpCS
-entryRuleSelfExpCS returns [EObject current=null] 
+entryRuleSelfExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getSelfExpCSRule()); }
-	 iv_ruleSelfExpCS=ruleSelfExpCS 
-	 { $current=$iv_ruleSelfExpCS.current; } 
-	 EOF 
+	 iv_ruleSelfExpCS=ruleSelfExpCS
+	 { $current=$iv_ruleSelfExpCS.current; }
+	 EOF
 ;
 
 // Rule SelfExpCS
-ruleSelfExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleSelfExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0(),
             $current);
     }
-)	otherlv_1='self' 
+)	otherlv_1='self'
     {
     	newLeafNode(otherlv_1, grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
     }
@@ -4343,54 +4343,54 @@
 
 
 // Entry rule entryRuleMultiplicityBoundsCS
-entryRuleMultiplicityBoundsCS returns [EObject current=null] 
+entryRuleMultiplicityBoundsCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule()); }
-	 iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS 
-	 { $current=$iv_ruleMultiplicityBoundsCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS
+	 { $current=$iv_ruleMultiplicityBoundsCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityBoundsCS
-ruleMultiplicityBoundsCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityBoundsCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
 	    }
 		lv_lowerBound_0_0=ruleLOWER		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"lowerBound",
-        		lv_lowerBound_0_0, 
+        		lv_lowerBound_0_0,
         		"org.eclipse.ocl.xtext.base.Base.LOWER");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='..' 
+)(	otherlv_1='..'
     {
     	newLeafNode(otherlv_1, grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
 	    }
 		lv_upperBound_2_0=ruleUPPER		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"upperBound",
-        		lv_upperBound_2_0, 
+        		lv_upperBound_2_0,
         		"org.eclipse.ocl.xtext.base.Base.UPPER");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4404,60 +4404,60 @@
 
 
 // Entry rule entryRuleMultiplicityCS
-entryRuleMultiplicityCS returns [EObject current=null] 
+entryRuleMultiplicityCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityCSRule()); }
-	 iv_ruleMultiplicityCS=ruleMultiplicityCS 
-	 { $current=$iv_ruleMultiplicityCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityCS=ruleMultiplicityCS
+	 { $current=$iv_ruleMultiplicityCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityCS
-ruleMultiplicityCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='[' 
+(	otherlv_0='['
     {
     	newLeafNode(otherlv_0, grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+    {
+        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
     }
     this_MultiplicityBoundsCS_1=ruleMultiplicityBoundsCS
-    { 
-        $current = $this_MultiplicityBoundsCS_1.current; 
+    {
+        $current = $this_MultiplicityBoundsCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+    {
+        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
     }
     this_MultiplicityStringCS_2=ruleMultiplicityStringCS
-    { 
-        $current = $this_MultiplicityStringCS_2.current; 
+    {
+        $current = $this_MultiplicityStringCS_2.current;
         afterParserOrEnumRuleCall();
     }
-)(	otherlv_3='|?' 
+)(	otherlv_3='|?'
     {
     	newLeafNode(otherlv_3, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
     }
 
     |(
 (
-		lv_isNullFree_4_0=	'|1' 
+		lv_isNullFree_4_0=	'|1'
     {
         newLeafNode(lv_isNullFree_4_0, grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityCSRule());
@@ -4466,7 +4466,7 @@
 	    }
 
 )
-))?	otherlv_5=']' 
+))?	otherlv_5=']'
     {
     	newLeafNode(otherlv_5, grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
     }
@@ -4478,27 +4478,27 @@
 
 
 // Entry rule entryRuleMultiplicityStringCS
-entryRuleMultiplicityStringCS returns [EObject current=null] 
+entryRuleMultiplicityStringCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityStringCSRule()); }
-	 iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS 
-	 { $current=$iv_ruleMultiplicityStringCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS
+	 { $current=$iv_ruleMultiplicityStringCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityStringCS
-ruleMultiplicityStringCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityStringCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
 (
-		lv_stringBounds_0_1=	'*' 
+		lv_stringBounds_0_1=	'*'
     {
         newLeafNode(lv_stringBounds_0_1, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -4506,11 +4506,11 @@
        		setWithLastConsumed($current, "stringBounds", lv_stringBounds_0_1, null);
 	    }
 
-    |		lv_stringBounds_0_2=	'+' 
+    |		lv_stringBounds_0_2=	'+'
     {
         newLeafNode(lv_stringBounds_0_2, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -4518,11 +4518,11 @@
        		setWithLastConsumed($current, "stringBounds", lv_stringBounds_0_2, null);
 	    }
 
-    |		lv_stringBounds_0_3=	'?' 
+    |		lv_stringBounds_0_3=	'?'
     {
         newLeafNode(lv_stringBounds_0_3, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -4541,54 +4541,54 @@
 
 
 // Entry rule entryRulePathNameCS
-entryRulePathNameCS returns [EObject current=null] 
+entryRulePathNameCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPathNameCSRule()); }
-	 iv_rulePathNameCS=rulePathNameCS 
-	 { $current=$iv_rulePathNameCS.current; } 
-	 EOF 
+	 iv_rulePathNameCS=rulePathNameCS
+	 { $current=$iv_rulePathNameCS.current; }
+	 EOF
 ;
 
 // Rule PathNameCS
-rulePathNameCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePathNameCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathElements_0_0=ruleFirstPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_0_0, 
+        		lv_ownedPathElements_0_0,
         		"org.eclipse.ocl.xtext.base.Base.FirstPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='::' 
+)(	otherlv_1='::'
     {
     	newLeafNode(otherlv_1, grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedPathElements_2_0=ruleNextPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_2_0, 
+        		lv_ownedPathElements_2_0,
         		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4602,33 +4602,33 @@
 
 
 // Entry rule entryRuleFirstPathElementCS
-entryRuleFirstPathElementCS returns [EObject current=null] 
+entryRuleFirstPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getFirstPathElementCSRule()); }
-	 iv_ruleFirstPathElementCS=ruleFirstPathElementCS 
-	 { $current=$iv_ruleFirstPathElementCS.current; } 
-	 EOF 
+	 iv_ruleFirstPathElementCS=ruleFirstPathElementCS
+	 { $current=$iv_ruleFirstPathElementCS.current; }
+	 EOF
 ;
 
 // Rule FirstPathElementCS
-ruleFirstPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleFirstPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getFirstPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+		{
+	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -4641,33 +4641,33 @@
 
 
 // Entry rule entryRuleNextPathElementCS
-entryRuleNextPathElementCS returns [EObject current=null] 
+entryRuleNextPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNextPathElementCSRule()); }
-	 iv_ruleNextPathElementCS=ruleNextPathElementCS 
-	 { $current=$iv_ruleNextPathElementCS.current; } 
-	 EOF 
+	 iv_ruleNextPathElementCS=ruleNextPathElementCS
+	 { $current=$iv_ruleNextPathElementCS.current; }
+	 EOF
 ;
 
 // Rule NextPathElementCS
-ruleNextPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNextPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNextPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
 	    }
-		ruleUnreservedName		{ 
+		ruleUnreservedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -4680,54 +4680,54 @@
 
 
 // Entry rule entryRuleTemplateBindingCS
-entryRuleTemplateBindingCS returns [EObject current=null] 
+entryRuleTemplateBindingCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTemplateBindingCSRule()); }
-	 iv_ruleTemplateBindingCS=ruleTemplateBindingCS 
-	 { $current=$iv_ruleTemplateBindingCS.current; } 
-	 EOF 
+	 iv_ruleTemplateBindingCS=ruleTemplateBindingCS
+	 { $current=$iv_ruleTemplateBindingCS.current; }
+	 EOF
 ;
 
 // Rule TemplateBindingCS
-ruleTemplateBindingCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTemplateBindingCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
 	    }
 		lv_ownedSubstitutions_0_0=ruleTemplateParameterSubstitutionCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSubstitutions",
-        		lv_ownedSubstitutions_0_0, 
+        		lv_ownedSubstitutions_0_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1=',' 
+)(	otherlv_1=','
     {
     	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedSubstitutions_2_0=ruleTemplateParameterSubstitutionCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSubstitutions",
-        		lv_ownedSubstitutions_2_0, 
+        		lv_ownedSubstitutions_2_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4735,17 +4735,17 @@
 )
 ))*(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
 	    }
 		lv_ownedMultiplicity_3_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_3_0, 
+        		lv_ownedMultiplicity_3_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4759,32 +4759,32 @@
 
 
 // Entry rule entryRuleTemplateParameterSubstitutionCS
-entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] 
+entryRuleTemplateParameterSubstitutionCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
-	 iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS 
-	 { $current=$iv_ruleTemplateParameterSubstitutionCS.current; } 
-	 EOF 
+	 iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS
+	 { $current=$iv_ruleTemplateParameterSubstitutionCS.current; }
+	 EOF
 ;
 
 // Rule TemplateParameterSubstitutionCS
-ruleTemplateParameterSubstitutionCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTemplateParameterSubstitutionCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
 	    }
 		lv_ownedActualParameter_0_0=ruleTypeRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateParameterSubstitutionCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedActualParameter",
-        		lv_ownedActualParameter_0_0, 
+        		lv_ownedActualParameter_0_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4800,76 +4800,76 @@
 
 
 // Entry rule entryRuleTypeParameterCS
-entryRuleTypeParameterCS returns [EObject current=null] 
+entryRuleTypeParameterCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeParameterCSRule()); }
-	 iv_ruleTypeParameterCS=ruleTypeParameterCS 
-	 { $current=$iv_ruleTypeParameterCS.current; } 
-	 EOF 
+	 iv_ruleTypeParameterCS=ruleTypeParameterCS
+	 { $current=$iv_ruleTypeParameterCS.current; }
+	 EOF
 ;
 
 // Rule TypeParameterCS
-ruleTypeParameterCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeParameterCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='extends' 
+)(	otherlv_1='extends'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedExtends_2_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_2_0, 
+        		lv_ownedExtends_2_0,
         		"org.eclipse.ocl.xtext.base.Base.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3='&&' 
+)(	otherlv_3='&&'
     {
     	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
 	    }
 		lv_ownedExtends_4_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_4_0, 
+        		lv_ownedExtends_4_0,
         		"org.eclipse.ocl.xtext.base.Base.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4883,42 +4883,42 @@
 
 
 // Entry rule entryRuleTypeRefCS
-entryRuleTypeRefCS returns [EObject current=null] 
+entryRuleTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeRefCSRule()); }
-	 iv_ruleTypeRefCS=ruleTypeRefCS 
-	 { $current=$iv_ruleTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleTypeRefCS=ruleTypeRefCS
+	 { $current=$iv_ruleTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule TypeRefCS
-ruleTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
     }
     this_TypedRefCS_0=ruleTypedRefCS
-    { 
-        $current = $this_TypedRefCS_0.current; 
+    {
+        $current = $this_TypedRefCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
     }
     this_WildcardTypeRefCS_1=ruleWildcardTypeRefCS
-    { 
-        $current = $this_WildcardTypeRefCS_1.current; 
+    {
+        $current = $this_WildcardTypeRefCS_1.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -4929,29 +4929,29 @@
 
 
 // Entry rule entryRuleTypedRefCS
-entryRuleTypedRefCS returns [EObject current=null] 
+entryRuleTypedRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypedRefCSRule()); }
-	 iv_ruleTypedRefCS=ruleTypedRefCS 
-	 { $current=$iv_ruleTypedRefCS.current; } 
-	 EOF 
+	 iv_ruleTypedRefCS=ruleTypedRefCS
+	 { $current=$iv_ruleTypedRefCS.current; }
+	 EOF
 ;
 
 // Rule TypedRefCS
-ruleTypedRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypedRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall());
     }
     this_TypedTypeRefCS_0=ruleTypedTypeRefCS
-    { 
-        $current = $this_TypedTypeRefCS_0.current; 
+    {
+        $current = $this_TypedTypeRefCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
@@ -4962,60 +4962,60 @@
 
 
 // Entry rule entryRuleTypedTypeRefCS
-entryRuleTypedTypeRefCS returns [EObject current=null] 
+entryRuleTypedTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypedTypeRefCSRule()); }
-	 iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS 
-	 { $current=$iv_ruleTypedTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS
+	 { $current=$iv_ruleTypedTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule TypedTypeRefCS
-ruleTypedTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypedTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathName_0_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_0_0, 
+        		lv_ownedPathName_0_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedBinding_2_0=ruleTemplateBindingCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedBinding",
-        		lv_ownedBinding_2_0, 
+        		lv_ownedBinding_2_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateBindingCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=')' 
+)	otherlv_3=')'
     {
     	newLeafNode(otherlv_3, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
     }
@@ -5027,49 +5027,49 @@
 
 
 // Entry rule entryRuleWildcardTypeRefCS
-entryRuleWildcardTypeRefCS returns [EObject current=null] 
+entryRuleWildcardTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getWildcardTypeRefCSRule()); }
-	 iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS 
-	 { $current=$iv_ruleWildcardTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS
+	 { $current=$iv_ruleWildcardTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule WildcardTypeRefCS
-ruleWildcardTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleWildcardTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0(),
             $current);
     }
-)	otherlv_1='?' 
+)	otherlv_1='?'
     {
     	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
     }
-(	otherlv_2='extends' 
+(	otherlv_2='extends'
     {
     	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedExtends_3_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getWildcardTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_3_0, 
+        		lv_ownedExtends_3_0,
         		"org.eclipse.ocl.xtext.base.Base.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5083,33 +5083,33 @@
 
 
 // Entry rule entryRuleID
-entryRuleID returns [String current=null] 
+entryRuleID returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getIDRule()); } 
-	 iv_ruleID=ruleID 
-	 { $current=$iv_ruleID.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getIDRule()); }
+	 iv_ruleID=ruleID
+	 { $current=$iv_ruleID.current.getText(); }
+	 EOF
 ;
 
 // Rule ID
-ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (    this_SIMPLE_ID_0=RULE_SIMPLE_ID    {
 		$current.merge(this_SIMPLE_ID_0);
     }
 
-    { 
-    newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+    {
+    newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
     }
 
     |    this_ESCAPED_ID_1=RULE_ESCAPED_ID    {
 		$current.merge(this_ESCAPED_ID_1);
     }
 
-    { 
-    newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+    {
+    newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
     }
 )
     ;
@@ -5119,28 +5119,28 @@
 
 
 // Entry rule entryRuleIdentifier
-entryRuleIdentifier returns [String current=null] 
+entryRuleIdentifier returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getIdentifierRule()); } 
-	 iv_ruleIdentifier=ruleIdentifier 
-	 { $current=$iv_ruleIdentifier.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getIdentifierRule()); }
+	 iv_ruleIdentifier=ruleIdentifier
+	 { $current=$iv_ruleIdentifier.current.getText(); }
+	 EOF
 ;
 
 // Rule Identifier
-ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
     }
     this_ID_0=ruleID    {
 		$current.merge(this_ID_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -5151,25 +5151,25 @@
 
 
 // Entry rule entryRuleLOWER
-entryRuleLOWER returns [String current=null] 
+entryRuleLOWER returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getLOWERRule()); } 
-	 iv_ruleLOWER=ruleLOWER 
-	 { $current=$iv_ruleLOWER.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getLOWERRule()); }
+	 iv_ruleLOWER=ruleLOWER
+	 { $current=$iv_ruleLOWER.current.getText(); }
+	 EOF
 ;
 
 // Rule LOWER
-ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
     }
 
     ;
@@ -5179,25 +5179,25 @@
 
 
 // Entry rule entryRuleNUMBER_LITERAL
-entryRuleNUMBER_LITERAL returns [String current=null] 
+entryRuleNUMBER_LITERAL returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getNUMBER_LITERALRule()); } 
-	 iv_ruleNUMBER_LITERAL=ruleNUMBER_LITERAL 
-	 { $current=$iv_ruleNUMBER_LITERAL.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getNUMBER_LITERALRule()); }
+	 iv_ruleNUMBER_LITERAL=ruleNUMBER_LITERAL
+	 { $current=$iv_ruleNUMBER_LITERAL.current.getText(); }
+	 EOF
 ;
 
 // Rule NUMBER_LITERAL
-ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
     }
 
     ;
@@ -5207,25 +5207,25 @@
 
 
 // Entry rule entryRuleStringLiteral
-entryRuleStringLiteral returns [String current=null] 
+entryRuleStringLiteral returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getStringLiteralRule()); } 
-	 iv_ruleStringLiteral=ruleStringLiteral 
-	 { $current=$iv_ruleStringLiteral.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getStringLiteralRule()); }
+	 iv_ruleStringLiteral=ruleStringLiteral
+	 { $current=$iv_ruleStringLiteral.current.getText(); }
+	 EOF
 ;
 
 // Rule StringLiteral
-ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_SINGLE_QUOTED_STRING_0=RULE_SINGLE_QUOTED_STRING    {
 		$current.merge(this_SINGLE_QUOTED_STRING_0);
     }
 
-    { 
-    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+    {
+    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
     }
 
     ;
@@ -5235,32 +5235,32 @@
 
 
 // Entry rule entryRuleUPPER
-entryRuleUPPER returns [String current=null] 
+entryRuleUPPER returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUPPERRule()); } 
-	 iv_ruleUPPER=ruleUPPER 
-	 { $current=$iv_ruleUPPER.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUPPERRule()); }
+	 iv_ruleUPPER=ruleUPPER
+	 { $current=$iv_ruleUPPER.current.getText(); }
+	 EOF
 ;
 
 // Rule UPPER
-ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (    this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
     }
 
     |
-	kw='*' 
+	kw='*'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
     }
 )
     ;
@@ -5270,25 +5270,25 @@
 
 
 // Entry rule entryRuleURI
-entryRuleURI returns [String current=null] 
+entryRuleURI returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getURIRule()); } 
-	 iv_ruleURI=ruleURI 
-	 { $current=$iv_ruleURI.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getURIRule()); }
+	 iv_ruleURI=ruleURI
+	 { $current=$iv_ruleURI.current.getText(); }
+	 EOF
 ;
 
 // Rule URI
-ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_SINGLE_QUOTED_STRING_0=RULE_SINGLE_QUOTED_STRING    {
 		$current.merge(this_SINGLE_QUOTED_STRING_0);
     }
 
-    { 
-    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+    {
+    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
     }
 
     ;
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 75dd70c..da829dc 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
@@ -1,6 +1,6 @@
 package org.eclipse.ocl.xtext.essentialocl.parser.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.parser.antlr.Lexer;
 
@@ -97,7 +97,7 @@
     // delegates
     // delegators
 
-    public InternalEssentialOCLLexer() {;} 
+    public InternalEssentialOCLLexer() {;}
     public InternalEssentialOCLLexer(CharStream input) {
         this(input, new RecognizerSharedState());
     }
@@ -115,7 +115,7 @@
             // InternalEssentialOCL.g:11:7: ( '-' )
             // InternalEssentialOCL.g:11:9: '-'
             {
-            match('-'); 
+            match('-');
 
             }
 
@@ -135,7 +135,7 @@
             // InternalEssentialOCL.g:12:7: ( 'not' )
             // InternalEssentialOCL.g:12:9: 'not'
             {
-            match("not"); 
+            match("not");
 
 
             }
@@ -156,7 +156,7 @@
             // InternalEssentialOCL.g:13:7: ( '*' )
             // InternalEssentialOCL.g:13:9: '*'
             {
-            match('*'); 
+            match('*');
 
             }
 
@@ -176,7 +176,7 @@
             // InternalEssentialOCL.g:14:7: ( '/' )
             // InternalEssentialOCL.g:14:9: '/'
             {
-            match('/'); 
+            match('/');
 
             }
 
@@ -196,7 +196,7 @@
             // InternalEssentialOCL.g:15:7: ( '+' )
             // InternalEssentialOCL.g:15:9: '+'
             {
-            match('+'); 
+            match('+');
 
             }
 
@@ -216,7 +216,7 @@
             // InternalEssentialOCL.g:16:7: ( '>' )
             // InternalEssentialOCL.g:16:9: '>'
             {
-            match('>'); 
+            match('>');
 
             }
 
@@ -236,7 +236,7 @@
             // InternalEssentialOCL.g:17:7: ( '<' )
             // InternalEssentialOCL.g:17:9: '<'
             {
-            match('<'); 
+            match('<');
 
             }
 
@@ -256,7 +256,7 @@
             // InternalEssentialOCL.g:18:7: ( '>=' )
             // InternalEssentialOCL.g:18:9: '>='
             {
-            match(">="); 
+            match(">=");
 
 
             }
@@ -277,7 +277,7 @@
             // InternalEssentialOCL.g:19:7: ( '<=' )
             // InternalEssentialOCL.g:19:9: '<='
             {
-            match("<="); 
+            match("<=");
 
 
             }
@@ -298,7 +298,7 @@
             // InternalEssentialOCL.g:20:7: ( '=' )
             // InternalEssentialOCL.g:20:9: '='
             {
-            match('='); 
+            match('=');
 
             }
 
@@ -318,7 +318,7 @@
             // InternalEssentialOCL.g:21:7: ( '<>' )
             // InternalEssentialOCL.g:21:9: '<>'
             {
-            match("<>"); 
+            match("<>");
 
 
             }
@@ -339,7 +339,7 @@
             // InternalEssentialOCL.g:22:7: ( 'and' )
             // InternalEssentialOCL.g:22:9: 'and'
             {
-            match("and"); 
+            match("and");
 
 
             }
@@ -360,7 +360,7 @@
             // InternalEssentialOCL.g:23:7: ( 'or' )
             // InternalEssentialOCL.g:23:9: 'or'
             {
-            match("or"); 
+            match("or");
 
 
             }
@@ -381,7 +381,7 @@
             // InternalEssentialOCL.g:24:7: ( 'xor' )
             // InternalEssentialOCL.g:24:9: 'xor'
             {
-            match("xor"); 
+            match("xor");
 
 
             }
@@ -402,7 +402,7 @@
             // InternalEssentialOCL.g:25:7: ( 'implies' )
             // InternalEssentialOCL.g:25:9: 'implies'
             {
-            match("implies"); 
+            match("implies");
 
 
             }
@@ -423,7 +423,7 @@
             // InternalEssentialOCL.g:26:7: ( '.' )
             // InternalEssentialOCL.g:26:9: '.'
             {
-            match('.'); 
+            match('.');
 
             }
 
@@ -443,7 +443,7 @@
             // InternalEssentialOCL.g:27:7: ( '->' )
             // InternalEssentialOCL.g:27:9: '->'
             {
-            match("->"); 
+            match("->");
 
 
             }
@@ -464,7 +464,7 @@
             // InternalEssentialOCL.g:28:7: ( '?.' )
             // InternalEssentialOCL.g:28:9: '?.'
             {
-            match("?."); 
+            match("?.");
 
 
             }
@@ -485,7 +485,7 @@
             // InternalEssentialOCL.g:29:7: ( '?->' )
             // InternalEssentialOCL.g:29:9: '?->'
             {
-            match("?->"); 
+            match("?->");
 
 
             }
@@ -506,7 +506,7 @@
             // InternalEssentialOCL.g:30:7: ( 'Map' )
             // InternalEssentialOCL.g:30:9: 'Map'
             {
-            match("Map"); 
+            match("Map");
 
 
             }
@@ -527,7 +527,7 @@
             // InternalEssentialOCL.g:31:7: ( 'Tuple' )
             // InternalEssentialOCL.g:31:9: 'Tuple'
             {
-            match("Tuple"); 
+            match("Tuple");
 
 
             }
@@ -548,7 +548,7 @@
             // InternalEssentialOCL.g:32:7: ( 'Boolean' )
             // InternalEssentialOCL.g:32:9: 'Boolean'
             {
-            match("Boolean"); 
+            match("Boolean");
 
 
             }
@@ -569,7 +569,7 @@
             // InternalEssentialOCL.g:33:7: ( 'Integer' )
             // InternalEssentialOCL.g:33:9: 'Integer'
             {
-            match("Integer"); 
+            match("Integer");
 
 
             }
@@ -590,7 +590,7 @@
             // InternalEssentialOCL.g:34:7: ( 'Real' )
             // InternalEssentialOCL.g:34:9: 'Real'
             {
-            match("Real"); 
+            match("Real");
 
 
             }
@@ -611,7 +611,7 @@
             // InternalEssentialOCL.g:35:7: ( 'String' )
             // InternalEssentialOCL.g:35:9: 'String'
             {
-            match("String"); 
+            match("String");
 
 
             }
@@ -632,7 +632,7 @@
             // InternalEssentialOCL.g:36:7: ( 'UnlimitedNatural' )
             // InternalEssentialOCL.g:36:9: 'UnlimitedNatural'
             {
-            match("UnlimitedNatural"); 
+            match("UnlimitedNatural");
 
 
             }
@@ -653,7 +653,7 @@
             // InternalEssentialOCL.g:37:7: ( 'OclAny' )
             // InternalEssentialOCL.g:37:9: 'OclAny'
             {
-            match("OclAny"); 
+            match("OclAny");
 
 
             }
@@ -674,7 +674,7 @@
             // InternalEssentialOCL.g:38:7: ( 'OclInvalid' )
             // InternalEssentialOCL.g:38:9: 'OclInvalid'
             {
-            match("OclInvalid"); 
+            match("OclInvalid");
 
 
             }
@@ -695,7 +695,7 @@
             // InternalEssentialOCL.g:39:7: ( 'OclVoid' )
             // InternalEssentialOCL.g:39:9: 'OclVoid'
             {
-            match("OclVoid"); 
+            match("OclVoid");
 
 
             }
@@ -716,7 +716,7 @@
             // InternalEssentialOCL.g:40:7: ( 'Set' )
             // InternalEssentialOCL.g:40:9: 'Set'
             {
-            match("Set"); 
+            match("Set");
 
 
             }
@@ -737,7 +737,7 @@
             // InternalEssentialOCL.g:41:7: ( 'Bag' )
             // InternalEssentialOCL.g:41:9: 'Bag'
             {
-            match("Bag"); 
+            match("Bag");
 
 
             }
@@ -758,7 +758,7 @@
             // InternalEssentialOCL.g:42:7: ( 'Sequence' )
             // InternalEssentialOCL.g:42:9: 'Sequence'
             {
-            match("Sequence"); 
+            match("Sequence");
 
 
             }
@@ -779,7 +779,7 @@
             // InternalEssentialOCL.g:43:7: ( 'Collection' )
             // InternalEssentialOCL.g:43:9: 'Collection'
             {
-            match("Collection"); 
+            match("Collection");
 
 
             }
@@ -800,7 +800,7 @@
             // InternalEssentialOCL.g:44:7: ( 'OrderedSet' )
             // InternalEssentialOCL.g:44:9: 'OrderedSet'
             {
-            match("OrderedSet"); 
+            match("OrderedSet");
 
 
             }
@@ -821,7 +821,7 @@
             // InternalEssentialOCL.g:45:7: ( '(' )
             // InternalEssentialOCL.g:45:9: '('
             {
-            match('('); 
+            match('(');
 
             }
 
@@ -841,7 +841,7 @@
             // InternalEssentialOCL.g:46:7: ( ')' )
             // InternalEssentialOCL.g:46:9: ')'
             {
-            match(')'); 
+            match(')');
 
             }
 
@@ -861,7 +861,7 @@
             // InternalEssentialOCL.g:47:7: ( ',' )
             // InternalEssentialOCL.g:47:9: ','
             {
-            match(','); 
+            match(',');
 
             }
 
@@ -881,7 +881,7 @@
             // InternalEssentialOCL.g:48:7: ( ':' )
             // InternalEssentialOCL.g:48:9: ':'
             {
-            match(':'); 
+            match(':');
 
             }
 
@@ -901,7 +901,7 @@
             // InternalEssentialOCL.g:49:7: ( '{' )
             // InternalEssentialOCL.g:49:9: '{'
             {
-            match('{'); 
+            match('{');
 
             }
 
@@ -921,7 +921,7 @@
             // InternalEssentialOCL.g:50:7: ( '}' )
             // InternalEssentialOCL.g:50:9: '}'
             {
-            match('}'); 
+            match('}');
 
             }
 
@@ -941,7 +941,7 @@
             // InternalEssentialOCL.g:51:7: ( '..' )
             // InternalEssentialOCL.g:51:9: '..'
             {
-            match(".."); 
+            match("..");
 
 
             }
@@ -962,7 +962,7 @@
             // InternalEssentialOCL.g:52:7: ( '++' )
             // InternalEssentialOCL.g:52:9: '++'
             {
-            match("++"); 
+            match("++");
 
 
             }
@@ -983,7 +983,7 @@
             // InternalEssentialOCL.g:53:7: ( 'Lambda' )
             // InternalEssentialOCL.g:53:9: 'Lambda'
             {
-            match("Lambda"); 
+            match("Lambda");
 
 
             }
@@ -1004,7 +1004,7 @@
             // InternalEssentialOCL.g:54:7: ( '<-' )
             // InternalEssentialOCL.g:54:9: '<-'
             {
-            match("<-"); 
+            match("<-");
 
 
             }
@@ -1025,7 +1025,7 @@
             // InternalEssentialOCL.g:55:7: ( 'true' )
             // InternalEssentialOCL.g:55:9: 'true'
             {
-            match("true"); 
+            match("true");
 
 
             }
@@ -1046,7 +1046,7 @@
             // InternalEssentialOCL.g:56:7: ( 'false' )
             // InternalEssentialOCL.g:56:9: 'false'
             {
-            match("false"); 
+            match("false");
 
 
             }
@@ -1067,7 +1067,7 @@
             // InternalEssentialOCL.g:57:7: ( 'invalid' )
             // InternalEssentialOCL.g:57:9: 'invalid'
             {
-            match("invalid"); 
+            match("invalid");
 
 
             }
@@ -1088,7 +1088,7 @@
             // InternalEssentialOCL.g:58:7: ( 'null' )
             // InternalEssentialOCL.g:58:9: 'null'
             {
-            match("null"); 
+            match("null");
 
 
             }
@@ -1109,7 +1109,7 @@
             // InternalEssentialOCL.g:59:7: ( '@' )
             // InternalEssentialOCL.g:59:9: '@'
             {
-            match('@'); 
+            match('@');
 
             }
 
@@ -1129,7 +1129,7 @@
             // InternalEssentialOCL.g:60:7: ( 'pre' )
             // InternalEssentialOCL.g:60:9: 'pre'
             {
-            match("pre"); 
+            match("pre");
 
 
             }
@@ -1150,7 +1150,7 @@
             // InternalEssentialOCL.g:61:7: ( '[' )
             // InternalEssentialOCL.g:61:9: '['
             {
-            match('['); 
+            match('[');
 
             }
 
@@ -1170,7 +1170,7 @@
             // InternalEssentialOCL.g:62:7: ( ']' )
             // InternalEssentialOCL.g:62:9: ']'
             {
-            match(']'); 
+            match(']');
 
             }
 
@@ -1190,7 +1190,7 @@
             // InternalEssentialOCL.g:63:7: ( 'in' )
             // InternalEssentialOCL.g:63:9: 'in'
             {
-            match("in"); 
+            match("in");
 
 
             }
@@ -1211,7 +1211,7 @@
             // InternalEssentialOCL.g:64:7: ( '|' )
             // InternalEssentialOCL.g:64:9: '|'
             {
-            match('|'); 
+            match('|');
 
             }
 
@@ -1231,7 +1231,7 @@
             // InternalEssentialOCL.g:65:7: ( ';' )
             // InternalEssentialOCL.g:65:9: ';'
             {
-            match(';'); 
+            match(';');
 
             }
 
@@ -1251,7 +1251,7 @@
             // InternalEssentialOCL.g:66:7: ( 'if' )
             // InternalEssentialOCL.g:66:9: 'if'
             {
-            match("if"); 
+            match("if");
 
 
             }
@@ -1272,7 +1272,7 @@
             // InternalEssentialOCL.g:67:7: ( 'then' )
             // InternalEssentialOCL.g:67:9: 'then'
             {
-            match("then"); 
+            match("then");
 
 
             }
@@ -1293,7 +1293,7 @@
             // InternalEssentialOCL.g:68:7: ( 'else' )
             // InternalEssentialOCL.g:68:9: 'else'
             {
-            match("else"); 
+            match("else");
 
 
             }
@@ -1314,7 +1314,7 @@
             // InternalEssentialOCL.g:69:7: ( 'endif' )
             // InternalEssentialOCL.g:69:9: 'endif'
             {
-            match("endif"); 
+            match("endif");
 
 
             }
@@ -1335,7 +1335,7 @@
             // InternalEssentialOCL.g:70:7: ( 'elseif' )
             // InternalEssentialOCL.g:70:9: 'elseif'
             {
-            match("elseif"); 
+            match("elseif");
 
 
             }
@@ -1356,7 +1356,7 @@
             // InternalEssentialOCL.g:71:7: ( 'let' )
             // InternalEssentialOCL.g:71:9: 'let'
             {
-            match("let"); 
+            match("let");
 
 
             }
@@ -1377,7 +1377,7 @@
             // InternalEssentialOCL.g:72:7: ( 'self' )
             // InternalEssentialOCL.g:72:9: 'self'
             {
-            match("self"); 
+            match("self");
 
 
             }
@@ -1398,7 +1398,7 @@
             // InternalEssentialOCL.g:73:7: ( '|?' )
             // InternalEssentialOCL.g:73:9: '|?'
             {
-            match("|?"); 
+            match("|?");
 
 
             }
@@ -1419,7 +1419,7 @@
             // InternalEssentialOCL.g:74:7: ( '|1' )
             // InternalEssentialOCL.g:74:9: '|1'
             {
-            match("|1"); 
+            match("|1");
 
 
             }
@@ -1440,7 +1440,7 @@
             // InternalEssentialOCL.g:75:7: ( '?' )
             // InternalEssentialOCL.g:75:9: '?'
             {
-            match('?'); 
+            match('?');
 
             }
 
@@ -1460,7 +1460,7 @@
             // InternalEssentialOCL.g:76:7: ( '::' )
             // InternalEssentialOCL.g:76:9: '::'
             {
-            match("::"); 
+            match("::");
 
 
             }
@@ -1481,7 +1481,7 @@
             // InternalEssentialOCL.g:77:7: ( 'extends' )
             // InternalEssentialOCL.g:77:9: 'extends'
             {
-            match("extends"); 
+            match("extends");
 
 
             }
@@ -1502,7 +1502,7 @@
             // InternalEssentialOCL.g:78:7: ( '&&' )
             // InternalEssentialOCL.g:78:9: '&&'
             {
-            match("&&"); 
+            match("&&");
 
 
             }
@@ -1521,7 +1521,7 @@
             // InternalEssentialOCL.g:5300:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
             // InternalEssentialOCL.g:5300:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
-            match('\\'); 
+            match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
                 input.consume();
 
@@ -1572,7 +1572,7 @@
             // InternalEssentialOCL.g:5304:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
             // InternalEssentialOCL.g:5304:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
-            match('\"'); 
+            match('\"');
             // InternalEssentialOCL.g:5304:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
@@ -1591,7 +1591,7 @@
             	case 1 :
             	    // InternalEssentialOCL.g:5304:34: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -1616,7 +1616,7 @@
                 }
             } while (true);
 
-            match('\"'); 
+            match('\"');
 
             }
 
@@ -1636,7 +1636,7 @@
             // InternalEssentialOCL.g:5306:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             // InternalEssentialOCL.g:5306:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
-            match('\''); 
+            match('\'');
             // InternalEssentialOCL.g:5306:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
@@ -1655,7 +1655,7 @@
             	case 1 :
             	    // InternalEssentialOCL.g:5306:35: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -1680,7 +1680,7 @@
                 }
             } while (true);
 
-            match('\''); 
+            match('\'');
 
             }
 
@@ -1700,7 +1700,7 @@
             // InternalEssentialOCL.g:5308:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
             // InternalEssentialOCL.g:5308:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
-            match("/'"); 
+            match("/'");
 
             // InternalEssentialOCL.g:5308:38: ( options {greedy=false; } : . )*
             loop3:
@@ -1729,7 +1729,7 @@
             	case 1 :
             	    // InternalEssentialOCL.g:5308:66: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -1739,7 +1739,7 @@
                 }
             } while (true);
 
-            match("'/"); 
+            match("'/");
 
 
             }
@@ -1760,7 +1760,7 @@
             // InternalEssentialOCL.g:5310:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
             // InternalEssentialOCL.g:5310:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
-            mRULE_LETTER_CHARACTER(); 
+            mRULE_LETTER_CHARACTER();
             // InternalEssentialOCL.g:5310:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
@@ -1813,8 +1813,8 @@
             // InternalEssentialOCL.g:5312:17: ( '_' RULE_SINGLE_QUOTED_STRING )
             // InternalEssentialOCL.g:5312:19: '_' RULE_SINGLE_QUOTED_STRING
             {
-            match('_'); 
-            mRULE_SINGLE_QUOTED_STRING(); 
+            match('_');
+            mRULE_SINGLE_QUOTED_STRING();
 
             }
 
@@ -1850,7 +1850,7 @@
             	case 1 :
             	    // InternalEssentialOCL.g:5314:13: '0' .. '9'
             	    {
-            	    matchRange('0','9'); 
+            	    matchRange('0','9');
 
             	    }
             	    break;
@@ -1883,7 +1883,7 @@
             // InternalEssentialOCL.g:5316:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
             // InternalEssentialOCL.g:5316:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
-            match("/*"); 
+            match("/*");
 
             // InternalEssentialOCL.g:5316:24: ( options {greedy=false; } : . )*
             loop6:
@@ -1912,7 +1912,7 @@
             	case 1 :
             	    // InternalEssentialOCL.g:5316:52: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -1922,7 +1922,7 @@
                 }
             } while (true);
 
-            match("*/"); 
+            match("*/");
 
 
             }
@@ -1943,7 +1943,7 @@
             // InternalEssentialOCL.g:5318:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
             // InternalEssentialOCL.g:5318:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
-            match("--"); 
+            match("--");
 
             // InternalEssentialOCL.g:5318:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
@@ -2000,14 +2000,14 @@
                         case 1 :
                             // InternalEssentialOCL.g:5318:41: '\\r'
                             {
-                            match('\r'); 
+                            match('\r');
 
                             }
                             break;
 
                     }
 
-                    match('\n'); 
+                    match('\n');
 
                     }
                     break;
@@ -2090,7 +2090,7 @@
             // InternalEssentialOCL.g:5322:16: ( . )
             // InternalEssentialOCL.g:5322:18: .
             {
-            matchAny(); 
+            matchAny();
 
             }
 
@@ -2110,546 +2110,546 @@
             case 1 :
                 // InternalEssentialOCL.g:1:10: T__16
                 {
-                mT__16(); 
+                mT__16();
 
                 }
                 break;
             case 2 :
                 // InternalEssentialOCL.g:1:16: T__17
                 {
-                mT__17(); 
+                mT__17();
 
                 }
                 break;
             case 3 :
                 // InternalEssentialOCL.g:1:22: T__18
                 {
-                mT__18(); 
+                mT__18();
 
                 }
                 break;
             case 4 :
                 // InternalEssentialOCL.g:1:28: T__19
                 {
-                mT__19(); 
+                mT__19();
 
                 }
                 break;
             case 5 :
                 // InternalEssentialOCL.g:1:34: T__20
                 {
-                mT__20(); 
+                mT__20();
 
                 }
                 break;
             case 6 :
                 // InternalEssentialOCL.g:1:40: T__21
                 {
-                mT__21(); 
+                mT__21();
 
                 }
                 break;
             case 7 :
                 // InternalEssentialOCL.g:1:46: T__22
                 {
-                mT__22(); 
+                mT__22();
 
                 }
                 break;
             case 8 :
                 // InternalEssentialOCL.g:1:52: T__23
                 {
-                mT__23(); 
+                mT__23();
 
                 }
                 break;
             case 9 :
                 // InternalEssentialOCL.g:1:58: T__24
                 {
-                mT__24(); 
+                mT__24();
 
                 }
                 break;
             case 10 :
                 // InternalEssentialOCL.g:1:64: T__25
                 {
-                mT__25(); 
+                mT__25();
 
                 }
                 break;
             case 11 :
                 // InternalEssentialOCL.g:1:70: T__26
                 {
-                mT__26(); 
+                mT__26();
 
                 }
                 break;
             case 12 :
                 // InternalEssentialOCL.g:1:76: T__27
                 {
-                mT__27(); 
+                mT__27();
 
                 }
                 break;
             case 13 :
                 // InternalEssentialOCL.g:1:82: T__28
                 {
-                mT__28(); 
+                mT__28();
 
                 }
                 break;
             case 14 :
                 // InternalEssentialOCL.g:1:88: T__29
                 {
-                mT__29(); 
+                mT__29();
 
                 }
                 break;
             case 15 :
                 // InternalEssentialOCL.g:1:94: T__30
                 {
-                mT__30(); 
+                mT__30();
 
                 }
                 break;
             case 16 :
                 // InternalEssentialOCL.g:1:100: T__31
                 {
-                mT__31(); 
+                mT__31();
 
                 }
                 break;
             case 17 :
                 // InternalEssentialOCL.g:1:106: T__32
                 {
-                mT__32(); 
+                mT__32();
 
                 }
                 break;
             case 18 :
                 // InternalEssentialOCL.g:1:112: T__33
                 {
-                mT__33(); 
+                mT__33();
 
                 }
                 break;
             case 19 :
                 // InternalEssentialOCL.g:1:118: T__34
                 {
-                mT__34(); 
+                mT__34();
 
                 }
                 break;
             case 20 :
                 // InternalEssentialOCL.g:1:124: T__35
                 {
-                mT__35(); 
+                mT__35();
 
                 }
                 break;
             case 21 :
                 // InternalEssentialOCL.g:1:130: T__36
                 {
-                mT__36(); 
+                mT__36();
 
                 }
                 break;
             case 22 :
                 // InternalEssentialOCL.g:1:136: T__37
                 {
-                mT__37(); 
+                mT__37();
 
                 }
                 break;
             case 23 :
                 // InternalEssentialOCL.g:1:142: T__38
                 {
-                mT__38(); 
+                mT__38();
 
                 }
                 break;
             case 24 :
                 // InternalEssentialOCL.g:1:148: T__39
                 {
-                mT__39(); 
+                mT__39();
 
                 }
                 break;
             case 25 :
                 // InternalEssentialOCL.g:1:154: T__40
                 {
-                mT__40(); 
+                mT__40();
 
                 }
                 break;
             case 26 :
                 // InternalEssentialOCL.g:1:160: T__41
                 {
-                mT__41(); 
+                mT__41();
 
                 }
                 break;
             case 27 :
                 // InternalEssentialOCL.g:1:166: T__42
                 {
-                mT__42(); 
+                mT__42();
 
                 }
                 break;
             case 28 :
                 // InternalEssentialOCL.g:1:172: T__43
                 {
-                mT__43(); 
+                mT__43();
 
                 }
                 break;
             case 29 :
                 // InternalEssentialOCL.g:1:178: T__44
                 {
-                mT__44(); 
+                mT__44();
 
                 }
                 break;
             case 30 :
                 // InternalEssentialOCL.g:1:184: T__45
                 {
-                mT__45(); 
+                mT__45();
 
                 }
                 break;
             case 31 :
                 // InternalEssentialOCL.g:1:190: T__46
                 {
-                mT__46(); 
+                mT__46();
 
                 }
                 break;
             case 32 :
                 // InternalEssentialOCL.g:1:196: T__47
                 {
-                mT__47(); 
+                mT__47();
 
                 }
                 break;
             case 33 :
                 // InternalEssentialOCL.g:1:202: T__48
                 {
-                mT__48(); 
+                mT__48();
 
                 }
                 break;
             case 34 :
                 // InternalEssentialOCL.g:1:208: T__49
                 {
-                mT__49(); 
+                mT__49();
 
                 }
                 break;
             case 35 :
                 // InternalEssentialOCL.g:1:214: T__50
                 {
-                mT__50(); 
+                mT__50();
 
                 }
                 break;
             case 36 :
                 // InternalEssentialOCL.g:1:220: T__51
                 {
-                mT__51(); 
+                mT__51();
 
                 }
                 break;
             case 37 :
                 // InternalEssentialOCL.g:1:226: T__52
                 {
-                mT__52(); 
+                mT__52();
 
                 }
                 break;
             case 38 :
                 // InternalEssentialOCL.g:1:232: T__53
                 {
-                mT__53(); 
+                mT__53();
 
                 }
                 break;
             case 39 :
                 // InternalEssentialOCL.g:1:238: T__54
                 {
-                mT__54(); 
+                mT__54();
 
                 }
                 break;
             case 40 :
                 // InternalEssentialOCL.g:1:244: T__55
                 {
-                mT__55(); 
+                mT__55();
 
                 }
                 break;
             case 41 :
                 // InternalEssentialOCL.g:1:250: T__56
                 {
-                mT__56(); 
+                mT__56();
 
                 }
                 break;
             case 42 :
                 // InternalEssentialOCL.g:1:256: T__57
                 {
-                mT__57(); 
+                mT__57();
 
                 }
                 break;
             case 43 :
                 // InternalEssentialOCL.g:1:262: T__58
                 {
-                mT__58(); 
+                mT__58();
 
                 }
                 break;
             case 44 :
                 // InternalEssentialOCL.g:1:268: T__59
                 {
-                mT__59(); 
+                mT__59();
 
                 }
                 break;
             case 45 :
                 // InternalEssentialOCL.g:1:274: T__60
                 {
-                mT__60(); 
+                mT__60();
 
                 }
                 break;
             case 46 :
                 // InternalEssentialOCL.g:1:280: T__61
                 {
-                mT__61(); 
+                mT__61();
 
                 }
                 break;
             case 47 :
                 // InternalEssentialOCL.g:1:286: T__62
                 {
-                mT__62(); 
+                mT__62();
 
                 }
                 break;
             case 48 :
                 // InternalEssentialOCL.g:1:292: T__63
                 {
-                mT__63(); 
+                mT__63();
 
                 }
                 break;
             case 49 :
                 // InternalEssentialOCL.g:1:298: T__64
                 {
-                mT__64(); 
+                mT__64();
 
                 }
                 break;
             case 50 :
                 // InternalEssentialOCL.g:1:304: T__65
                 {
-                mT__65(); 
+                mT__65();
 
                 }
                 break;
             case 51 :
                 // InternalEssentialOCL.g:1:310: T__66
                 {
-                mT__66(); 
+                mT__66();
 
                 }
                 break;
             case 52 :
                 // InternalEssentialOCL.g:1:316: T__67
                 {
-                mT__67(); 
+                mT__67();
 
                 }
                 break;
             case 53 :
                 // InternalEssentialOCL.g:1:322: T__68
                 {
-                mT__68(); 
+                mT__68();
 
                 }
                 break;
             case 54 :
                 // InternalEssentialOCL.g:1:328: T__69
                 {
-                mT__69(); 
+                mT__69();
 
                 }
                 break;
             case 55 :
                 // InternalEssentialOCL.g:1:334: T__70
                 {
-                mT__70(); 
+                mT__70();
 
                 }
                 break;
             case 56 :
                 // InternalEssentialOCL.g:1:340: T__71
                 {
-                mT__71(); 
+                mT__71();
 
                 }
                 break;
             case 57 :
                 // InternalEssentialOCL.g:1:346: T__72
                 {
-                mT__72(); 
+                mT__72();
 
                 }
                 break;
             case 58 :
                 // InternalEssentialOCL.g:1:352: T__73
                 {
-                mT__73(); 
+                mT__73();
 
                 }
                 break;
             case 59 :
                 // InternalEssentialOCL.g:1:358: T__74
                 {
-                mT__74(); 
+                mT__74();
 
                 }
                 break;
             case 60 :
                 // InternalEssentialOCL.g:1:364: T__75
                 {
-                mT__75(); 
+                mT__75();
 
                 }
                 break;
             case 61 :
                 // InternalEssentialOCL.g:1:370: T__76
                 {
-                mT__76(); 
+                mT__76();
 
                 }
                 break;
             case 62 :
                 // InternalEssentialOCL.g:1:376: T__77
                 {
-                mT__77(); 
+                mT__77();
 
                 }
                 break;
             case 63 :
                 // InternalEssentialOCL.g:1:382: T__78
                 {
-                mT__78(); 
+                mT__78();
 
                 }
                 break;
             case 64 :
                 // InternalEssentialOCL.g:1:388: T__79
                 {
-                mT__79(); 
+                mT__79();
 
                 }
                 break;
             case 65 :
                 // InternalEssentialOCL.g:1:394: T__80
                 {
-                mT__80(); 
+                mT__80();
 
                 }
                 break;
             case 66 :
                 // InternalEssentialOCL.g:1:400: T__81
                 {
-                mT__81(); 
+                mT__81();
 
                 }
                 break;
             case 67 :
                 // InternalEssentialOCL.g:1:406: T__82
                 {
-                mT__82(); 
+                mT__82();
 
                 }
                 break;
             case 68 :
                 // InternalEssentialOCL.g:1:412: T__83
                 {
-                mT__83(); 
+                mT__83();
 
                 }
                 break;
             case 69 :
                 // InternalEssentialOCL.g:1:418: RULE_DOUBLE_QUOTED_STRING
                 {
-                mRULE_DOUBLE_QUOTED_STRING(); 
+                mRULE_DOUBLE_QUOTED_STRING();
 
                 }
                 break;
             case 70 :
                 // InternalEssentialOCL.g:1:444: RULE_SINGLE_QUOTED_STRING
                 {
-                mRULE_SINGLE_QUOTED_STRING(); 
+                mRULE_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 71 :
                 // InternalEssentialOCL.g:1:470: RULE_ML_SINGLE_QUOTED_STRING
                 {
-                mRULE_ML_SINGLE_QUOTED_STRING(); 
+                mRULE_ML_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 72 :
                 // InternalEssentialOCL.g:1:499: RULE_SIMPLE_ID
                 {
-                mRULE_SIMPLE_ID(); 
+                mRULE_SIMPLE_ID();
 
                 }
                 break;
             case 73 :
                 // InternalEssentialOCL.g:1:514: RULE_ESCAPED_ID
                 {
-                mRULE_ESCAPED_ID(); 
+                mRULE_ESCAPED_ID();
 
                 }
                 break;
             case 74 :
                 // InternalEssentialOCL.g:1:530: RULE_INT
                 {
-                mRULE_INT(); 
+                mRULE_INT();
 
                 }
                 break;
             case 75 :
                 // InternalEssentialOCL.g:1:539: RULE_ML_COMMENT
                 {
-                mRULE_ML_COMMENT(); 
+                mRULE_ML_COMMENT();
 
                 }
                 break;
             case 76 :
                 // InternalEssentialOCL.g:1:555: RULE_SL_COMMENT
                 {
-                mRULE_SL_COMMENT(); 
+                mRULE_SL_COMMENT();
 
                 }
                 break;
             case 77 :
                 // InternalEssentialOCL.g:1:571: RULE_WS
                 {
-                mRULE_WS(); 
+                mRULE_WS();
 
                 }
                 break;
             case 78 :
                 // InternalEssentialOCL.g:1:579: RULE_ANY_OTHER
                 {
-                mRULE_ANY_OTHER(); 
+                mRULE_ANY_OTHER();
 
                 }
                 break;
@@ -2983,7 +2983,7 @@
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA11_43 = input.LA(1);
 
                         s = -1;
@@ -2993,7 +2993,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA11_0 = input.LA(1);
 
                         s = -1;
@@ -3097,7 +3097,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA11_44 = input.LA(1);
 
                         s = -1;
@@ -3114,6 +3114,6 @@
             throw nvae;
         }
     }
- 
+
 
 }
\ No newline at end of file
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 5b83db3..f96d397 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
@@ -1,4 +1,4 @@
-package org.eclipse.ocl.xtext.essentialocl.parser.antlr.internal; 
+package org.eclipse.ocl.xtext.essentialocl.parser.antlr.internal;
 
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
@@ -125,9 +125,9 @@
         }
         public InternalEssentialOCLParser(TokenStream input, RecognizerSharedState state) {
             super(input, state);
-             
+
         }
-        
+
 
     public String[] getTokenNames() { return InternalEssentialOCLParser.tokenNames; }
     public String getGrammarFileName() { return "InternalEssentialOCL.g"; }
@@ -138,20 +138,20 @@
       This grammar contains a lot of empty actions to work around a bug in ANTLR.
       Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases.
     */
-     
+
      	private EssentialOCLGrammarAccess grammarAccess;
-     	
+
         public InternalEssentialOCLParser(TokenStream input, EssentialOCLGrammarAccess grammarAccess) {
             this(input);
             this.grammarAccess = grammarAccess;
             registerRules(grammarAccess.getGrammar());
         }
-        
+
         @Override
         protected String getFirstRuleName() {
-        	return "Model";	
+        	return "Model";
        	}
-       	
+
        	@Override
        	protected EssentialOCLGrammarAccess getGrammarAccess() {
        		return grammarAccess;
@@ -172,7 +172,7 @@
             // InternalEssentialOCL.g:82:2: iv_ruleModel= ruleModel EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getModelRule()); 
+               newCompositeNode(grammarAccess.getModelRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleModel=ruleModel();
@@ -180,18 +180,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleModel; 
+               current =iv_ruleModel;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -207,8 +207,8 @@
         EObject lv_ownedExpression_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:92:28: ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) )
             // InternalEssentialOCL.g:93:1: ( (lv_ownedExpression_0_0= ruleExpCS ) )
@@ -220,9 +220,9 @@
             // InternalEssentialOCL.g:95:3: lv_ownedExpression_0_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getModelAccess().getOwnedExpressionExpCSParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getModelAccess().getOwnedExpressionExpCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedExpression_0_0=ruleExpCS();
@@ -235,12 +235,12 @@
               	            current = createModelElementForParent(grammarAccess.getModelRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedExpression",
-                      		lv_ownedExpression_0_0, 
+                      		lv_ownedExpression_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -252,14 +252,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -280,7 +280,7 @@
             // InternalEssentialOCL.g:123:2: iv_ruleEssentialOCLUnaryOperatorName= ruleEssentialOCLUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLUnaryOperatorName=ruleEssentialOCLUnaryOperatorName();
@@ -288,18 +288,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLUnaryOperatorName.getText(); 
+               current =iv_ruleEssentialOCLUnaryOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -314,8 +314,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:133:28: ( (kw= '-' | kw= 'not' ) )
             // InternalEssentialOCL.g:134:1: (kw= '-' | kw= 'not' )
@@ -345,8 +345,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
+
                     }
 
                     }
@@ -358,8 +358,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
+
                     }
 
                     }
@@ -371,14 +371,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -399,7 +399,7 @@
             // InternalEssentialOCL.g:157:2: iv_ruleEssentialOCLInfixOperatorName= ruleEssentialOCLInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLInfixOperatorName=ruleEssentialOCLInfixOperatorName();
@@ -407,18 +407,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLInfixOperatorName.getText(); 
+               current =iv_ruleEssentialOCLInfixOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -433,8 +433,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:167:28: ( (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'or' | kw= 'xor' | kw= 'implies' ) )
             // InternalEssentialOCL.g:168:1: (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'or' | kw= 'xor' | kw= 'implies' )
@@ -528,8 +528,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
+
                     }
 
                     }
@@ -541,8 +541,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
+
                     }
 
                     }
@@ -554,8 +554,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
+
                     }
 
                     }
@@ -567,8 +567,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
+
                     }
 
                     }
@@ -580,8 +580,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
+
                     }
 
                     }
@@ -593,8 +593,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
+
                     }
 
                     }
@@ -606,8 +606,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
+
                     }
 
                     }
@@ -619,8 +619,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
+
                     }
 
                     }
@@ -632,8 +632,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
+
                     }
 
                     }
@@ -645,8 +645,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
+
                     }
 
                     }
@@ -658,8 +658,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
+
                     }
 
                     }
@@ -671,8 +671,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
+
                     }
 
                     }
@@ -684,8 +684,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
+
                     }
 
                     }
@@ -697,8 +697,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
+
                     }
 
                     }
@@ -710,14 +710,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -738,7 +738,7 @@
             // InternalEssentialOCL.g:275:2: iv_ruleEssentialOCLNavigationOperatorName= ruleEssentialOCLNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLNavigationOperatorName=ruleEssentialOCLNavigationOperatorName();
@@ -746,18 +746,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLNavigationOperatorName.getText(); 
+               current =iv_ruleEssentialOCLNavigationOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -772,8 +772,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:285:28: ( (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' ) )
             // InternalEssentialOCL.g:286:1: (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' )
@@ -817,8 +817,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
+
                     }
 
                     }
@@ -830,8 +830,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
+
                     }
 
                     }
@@ -843,8 +843,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
+
                     }
 
                     }
@@ -856,8 +856,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
+
                     }
 
                     }
@@ -869,14 +869,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -897,7 +897,7 @@
             // InternalEssentialOCL.g:323:2: iv_ruleBinaryOperatorName= ruleBinaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getBinaryOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getBinaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleBinaryOperatorName=ruleBinaryOperatorName();
@@ -905,18 +905,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleBinaryOperatorName.getText(); 
+               current =iv_ruleBinaryOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -934,8 +934,8 @@
         AntlrDatatypeRuleToken this_NavigationOperatorName_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:333:28: ( (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName ) )
             // InternalEssentialOCL.g:334:1: (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName )
@@ -962,9 +962,9 @@
                     // InternalEssentialOCL.g:335:5: this_InfixOperatorName_0= ruleInfixOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_InfixOperatorName_0=ruleInfixOperatorName();
@@ -974,12 +974,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_InfixOperatorName_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -988,9 +988,9 @@
                     // InternalEssentialOCL.g:347:5: this_NavigationOperatorName_1= ruleNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NavigationOperatorName_1=ruleNavigationOperatorName();
@@ -1000,12 +1000,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_NavigationOperatorName_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1017,14 +1017,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1045,7 +1045,7 @@
             // InternalEssentialOCL.g:367:2: iv_ruleInfixOperatorName= ruleInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getInfixOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleInfixOperatorName=ruleInfixOperatorName();
@@ -1053,18 +1053,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleInfixOperatorName.getText(); 
+               current =iv_ruleInfixOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1080,16 +1080,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLInfixOperatorName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:377:28: (this_EssentialOCLInfixOperatorName_0= ruleEssentialOCLInfixOperatorName )
             // InternalEssentialOCL.g:379:5: this_EssentialOCLInfixOperatorName_0= ruleEssentialOCLInfixOperatorName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLInfixOperatorName_0=ruleEssentialOCLInfixOperatorName();
@@ -1099,25 +1099,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLInfixOperatorName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1138,7 +1138,7 @@
             // InternalEssentialOCL.g:399:2: iv_ruleNavigationOperatorName= ruleNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigationOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigationOperatorName=ruleNavigationOperatorName();
@@ -1146,18 +1146,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigationOperatorName.getText(); 
+               current =iv_ruleNavigationOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1173,16 +1173,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLNavigationOperatorName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:409:28: (this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName )
             // InternalEssentialOCL.g:411:5: this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLNavigationOperatorName_0=ruleEssentialOCLNavigationOperatorName();
@@ -1192,25 +1192,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLNavigationOperatorName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1231,7 +1231,7 @@
             // InternalEssentialOCL.g:431:2: iv_ruleUnaryOperatorName= ruleUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnaryOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnaryOperatorName=ruleUnaryOperatorName();
@@ -1239,18 +1239,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnaryOperatorName.getText(); 
+               current =iv_ruleUnaryOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1266,16 +1266,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLUnaryOperatorName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:441:28: (this_EssentialOCLUnaryOperatorName_0= ruleEssentialOCLUnaryOperatorName )
             // InternalEssentialOCL.g:443:5: this_EssentialOCLUnaryOperatorName_0= ruleEssentialOCLUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLUnaryOperatorName_0=ruleEssentialOCLUnaryOperatorName();
@@ -1285,25 +1285,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLUnaryOperatorName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1324,7 +1324,7 @@
             // InternalEssentialOCL.g:463:2: iv_ruleEssentialOCLUnrestrictedName= ruleEssentialOCLUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLUnrestrictedName=ruleEssentialOCLUnrestrictedName();
@@ -1332,18 +1332,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLUnrestrictedName.getText(); 
+               current =iv_ruleEssentialOCLUnrestrictedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1359,16 +1359,16 @@
         AntlrDatatypeRuleToken this_Identifier_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:473:28: (this_Identifier_0= ruleIdentifier )
             // InternalEssentialOCL.g:475:5: this_Identifier_0= ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_Identifier_0=ruleIdentifier();
@@ -1378,25 +1378,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_Identifier_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1417,7 +1417,7 @@
             // InternalEssentialOCL.g:495:2: iv_ruleUnrestrictedName= ruleUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnrestrictedNameRule()); 
+               newCompositeNode(grammarAccess.getUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnrestrictedName=ruleUnrestrictedName();
@@ -1425,18 +1425,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnrestrictedName.getText(); 
+               current =iv_ruleUnrestrictedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1452,16 +1452,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLUnrestrictedName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:505:28: (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName )
             // InternalEssentialOCL.g:507:5: this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLUnrestrictedName_0=ruleEssentialOCLUnrestrictedName();
@@ -1471,25 +1471,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLUnrestrictedName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1510,7 +1510,7 @@
             // InternalEssentialOCL.g:527:2: iv_ruleEssentialOCLUnreservedName= ruleEssentialOCLUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLUnreservedName=ruleEssentialOCLUnreservedName();
@@ -1518,18 +1518,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLUnreservedName.getText(); 
+               current =iv_ruleEssentialOCLUnreservedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1550,8 +1550,8 @@
         AntlrDatatypeRuleToken this_PrimitiveTypeIdentifier_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:537:28: ( (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' ) )
             // InternalEssentialOCL.g:538:1: (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' )
@@ -1609,9 +1609,9 @@
                     // InternalEssentialOCL.g:539:5: this_UnrestrictedName_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_UnrestrictedName_0=ruleUnrestrictedName();
@@ -1621,12 +1621,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_UnrestrictedName_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1635,9 +1635,9 @@
                     // InternalEssentialOCL.g:551:5: this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CollectionTypeIdentifier_1=ruleCollectionTypeIdentifier();
@@ -1647,12 +1647,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_CollectionTypeIdentifier_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1661,9 +1661,9 @@
                     // InternalEssentialOCL.g:563:5: this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimitiveTypeIdentifier_2=rulePrimitiveTypeIdentifier();
@@ -1673,12 +1673,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_PrimitiveTypeIdentifier_2);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1690,8 +1690,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
+
                     }
 
                     }
@@ -1703,8 +1703,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
+
                     }
 
                     }
@@ -1716,14 +1716,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1744,7 +1744,7 @@
             // InternalEssentialOCL.g:597:2: iv_ruleUnreservedName= ruleUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnreservedNameRule()); 
+               newCompositeNode(grammarAccess.getUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnreservedName=ruleUnreservedName();
@@ -1752,18 +1752,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnreservedName.getText(); 
+               current =iv_ruleUnreservedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1779,16 +1779,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLUnreservedName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:607:28: (this_EssentialOCLUnreservedName_0= ruleEssentialOCLUnreservedName )
             // InternalEssentialOCL.g:609:5: this_EssentialOCLUnreservedName_0= ruleEssentialOCLUnreservedName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLUnreservedName_0=ruleEssentialOCLUnreservedName();
@@ -1798,25 +1798,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLUnreservedName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1837,7 +1837,7 @@
             // InternalEssentialOCL.g:631:2: iv_ruleURIFirstPathElementCS= ruleURIFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getURIFirstPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getURIFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleURIFirstPathElementCS=ruleURIFirstPathElementCS();
@@ -1845,18 +1845,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleURIFirstPathElementCS; 
+               current =iv_ruleURIFirstPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1869,8 +1869,8 @@
     public final EObject ruleURIFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:641:28: ( ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) ) )
             // InternalEssentialOCL.g:642:1: ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) )
@@ -1903,21 +1903,21 @@
                     // InternalEssentialOCL.g:644:3: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
                       	        }
-                              
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -1925,9 +1925,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -1945,19 +1945,19 @@
                     // InternalEssentialOCL.g:661:7: () ( ( ruleURI ) )
                     {
                     // InternalEssentialOCL.g:661:7: ()
-                    // InternalEssentialOCL.g:662:2: 
+                    // InternalEssentialOCL.g:662:2:
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                               current = forceCreateModelElement(
                                   grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0(),
                                   current);
-                          
+
                     }
 
                     }
@@ -1969,21 +1969,21 @@
                     // InternalEssentialOCL.g:672:3: ruleURI
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
                       	        }
-                              
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleURI();
@@ -1991,9 +1991,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2014,14 +2014,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2042,7 +2042,7 @@
             // InternalEssentialOCL.g:698:2: iv_rulePrimitiveTypeIdentifier= rulePrimitiveTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule()); 
+               newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimitiveTypeIdentifier=rulePrimitiveTypeIdentifier();
@@ -2050,18 +2050,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimitiveTypeIdentifier.getText(); 
+               current =iv_rulePrimitiveTypeIdentifier.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2076,8 +2076,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:708:28: ( (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclVoid' ) )
             // InternalEssentialOCL.g:709:1: (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclVoid' )
@@ -2141,8 +2141,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
+
                     }
 
                     }
@@ -2154,8 +2154,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
+
                     }
 
                     }
@@ -2167,8 +2167,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
+
                     }
 
                     }
@@ -2180,8 +2180,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
+
                     }
 
                     }
@@ -2193,8 +2193,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
+
                     }
 
                     }
@@ -2206,8 +2206,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
+
                     }
 
                     }
@@ -2219,8 +2219,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
+
                     }
 
                     }
@@ -2232,8 +2232,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
+
                     }
 
                     }
@@ -2245,14 +2245,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2273,7 +2273,7 @@
             // InternalEssentialOCL.g:774:2: iv_rulePrimitiveTypeCS= rulePrimitiveTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimitiveTypeCSRule()); 
+               newCompositeNode(grammarAccess.getPrimitiveTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimitiveTypeCS=rulePrimitiveTypeCS();
@@ -2281,18 +2281,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimitiveTypeCS; 
+               current =iv_rulePrimitiveTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2308,8 +2308,8 @@
         AntlrDatatypeRuleToken lv_name_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:784:28: ( ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) ) )
             // InternalEssentialOCL.g:785:1: ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) )
@@ -2321,9 +2321,9 @@
             // InternalEssentialOCL.g:787:3: lv_name_0_0= rulePrimitiveTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_name_0_0=rulePrimitiveTypeIdentifier();
@@ -2336,12 +2336,12 @@
               	            current = createModelElementForParent(grammarAccess.getPrimitiveTypeCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrimitiveTypeIdentifier");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -2353,14 +2353,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2381,7 +2381,7 @@
             // InternalEssentialOCL.g:813:2: iv_ruleCollectionTypeIdentifier= ruleCollectionTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule()); 
+               newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionTypeIdentifier=ruleCollectionTypeIdentifier();
@@ -2389,18 +2389,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionTypeIdentifier.getText(); 
+               current =iv_ruleCollectionTypeIdentifier.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2415,8 +2415,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:823:28: ( (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' ) )
             // InternalEssentialOCL.g:824:1: (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' )
@@ -2465,8 +2465,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
+
                     }
 
                     }
@@ -2478,8 +2478,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
+
                     }
 
                     }
@@ -2491,8 +2491,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
+
                     }
 
                     }
@@ -2504,8 +2504,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
+
                     }
 
                     }
@@ -2517,8 +2517,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
+
                     }
 
                     }
@@ -2530,14 +2530,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2558,7 +2558,7 @@
             // InternalEssentialOCL.g:868:2: iv_ruleCollectionTypeCS= ruleCollectionTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionTypeCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionTypeCS=ruleCollectionTypeCS();
@@ -2566,18 +2566,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionTypeCS; 
+               current =iv_ruleCollectionTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2597,8 +2597,8 @@
         EObject lv_ownedType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:878:28: ( ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) otherlv_3= ')' )? ) )
             // InternalEssentialOCL.g:879:1: ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) otherlv_3= ')' )? )
@@ -2613,9 +2613,9 @@
             // InternalEssentialOCL.g:881:3: lv_name_0_0= ruleCollectionTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_3);
             lv_name_0_0=ruleCollectionTypeIdentifier();
@@ -2628,12 +2628,12 @@
               	            current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeIdentifier");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -2656,7 +2656,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:901:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                     // InternalEssentialOCL.g:902:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -2665,9 +2665,9 @@
                     // InternalEssentialOCL.g:903:3: lv_ownedType_2_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_5);
                     lv_ownedType_2_0=ruleTypeExpCS();
@@ -2680,12 +2680,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_2_0, 
+                              		lv_ownedType_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2697,7 +2697,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
-                          
+
                     }
 
                     }
@@ -2712,14 +2712,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2740,7 +2740,7 @@
             // InternalEssentialOCL.g:933:2: iv_ruleMapTypeCS= ruleMapTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMapTypeCSRule()); 
+               newCompositeNode(grammarAccess.getMapTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMapTypeCS=ruleMapTypeCS();
@@ -2748,18 +2748,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMapTypeCS; 
+               current =iv_ruleMapTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2781,8 +2781,8 @@
         EObject lv_ownedValueType_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:943:28: ( ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? ) )
             // InternalEssentialOCL.g:944:1: ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? )
@@ -2800,7 +2800,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_name_0_0, grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -2808,7 +2808,7 @@
               	            current = createModelElement(grammarAccess.getMapTypeCSRule());
               	        }
                      		setWithLastConsumed(current, "name", lv_name_0_0, "Map");
-              	    
+
             }
 
             }
@@ -2831,7 +2831,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:963:1: ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) )
                     // InternalEssentialOCL.g:964:1: (lv_ownedKeyType_2_0= ruleTypeExpCS )
@@ -2840,9 +2840,9 @@
                     // InternalEssentialOCL.g:965:3: lv_ownedKeyType_2_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_6);
                     lv_ownedKeyType_2_0=ruleTypeExpCS();
@@ -2855,12 +2855,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedKeyType",
-                              		lv_ownedKeyType_2_0, 
+                              		lv_ownedKeyType_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2872,7 +2872,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
-                          
+
                     }
                     // InternalEssentialOCL.g:985:1: ( (lv_ownedValueType_4_0= ruleTypeExpCS ) )
                     // InternalEssentialOCL.g:986:1: (lv_ownedValueType_4_0= ruleTypeExpCS )
@@ -2881,9 +2881,9 @@
                     // InternalEssentialOCL.g:987:3: lv_ownedValueType_4_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_5);
                     lv_ownedValueType_4_0=ruleTypeExpCS();
@@ -2896,12 +2896,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedValueType",
-                              		lv_ownedValueType_4_0, 
+                              		lv_ownedValueType_4_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2913,7 +2913,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
-                          
+
                     }
 
                     }
@@ -2928,14 +2928,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2956,7 +2956,7 @@
             // InternalEssentialOCL.g:1017:2: iv_ruleTupleTypeCS= ruleTupleTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTupleTypeCSRule()); 
+               newCompositeNode(grammarAccess.getTupleTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTupleTypeCS=ruleTupleTypeCS();
@@ -2964,18 +2964,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTupleTypeCS; 
+               current =iv_ruleTupleTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2997,8 +2997,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:1027:28: ( ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? ) )
             // InternalEssentialOCL.g:1028:1: ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? )
@@ -3016,7 +3016,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_name_0_0, grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -3024,7 +3024,7 @@
               	            current = createModelElement(grammarAccess.getTupleTypeCSRule());
               	        }
                      		setWithLastConsumed(current, "name", lv_name_0_0, "Tuple");
-              	    
+
             }
 
             }
@@ -3047,7 +3047,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:1047:1: ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )?
                     int alt12=2;
@@ -3067,9 +3067,9 @@
                             // InternalEssentialOCL.g:1049:3: lv_ownedParts_2_0= ruleTuplePartCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_8);
                             lv_ownedParts_2_0=ruleTuplePartCS();
@@ -3082,12 +3082,12 @@
                               	            current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
                               	        }
                                      		add(
-                                     			current, 
+                                     			current,
                                      			"ownedParts",
-                                      		lv_ownedParts_2_0, 
+                                      		lv_ownedParts_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -3114,7 +3114,7 @@
                             	    if ( state.backtracking==0 ) {
 
                             	          	newLeafNode(otherlv_3, grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
-                            	          
+
                             	    }
                             	    // InternalEssentialOCL.g:1069:1: ( (lv_ownedParts_4_0= ruleTuplePartCS ) )
                             	    // InternalEssentialOCL.g:1070:1: (lv_ownedParts_4_0= ruleTuplePartCS )
@@ -3123,9 +3123,9 @@
                             	    // InternalEssentialOCL.g:1071:3: lv_ownedParts_4_0= ruleTuplePartCS
                             	    {
                             	    if ( state.backtracking==0 ) {
-                            	       
-                            	      	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
-                            	      	    
+
+                            	      	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
+
                             	    }
                             	    pushFollow(FollowSets000.FOLLOW_8);
                             	    lv_ownedParts_4_0=ruleTuplePartCS();
@@ -3138,12 +3138,12 @@
                             	      	            current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
                             	      	        }
                             	             		add(
-                            	             			current, 
+                            	             			current,
                             	             			"ownedParts",
-                            	              		lv_ownedParts_4_0, 
+                            	              		lv_ownedParts_4_0,
                             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS");
                             	      	        afterParserOrEnumRuleCall();
-                            	      	    
+
                             	    }
 
                             	    }
@@ -3170,7 +3170,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
-                          
+
                     }
 
                     }
@@ -3185,14 +3185,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3213,7 +3213,7 @@
             // InternalEssentialOCL.g:1101:2: iv_ruleTuplePartCS= ruleTuplePartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTuplePartCSRule()); 
+               newCompositeNode(grammarAccess.getTuplePartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTuplePartCS=ruleTuplePartCS();
@@ -3221,18 +3221,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTuplePartCS; 
+               current =iv_ruleTuplePartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3251,8 +3251,8 @@
         EObject lv_ownedType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:1111:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) )
             // InternalEssentialOCL.g:1112:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )
@@ -3267,9 +3267,9 @@
             // InternalEssentialOCL.g:1114:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_10);
             lv_name_0_0=ruleUnrestrictedName();
@@ -3282,12 +3282,12 @@
               	            current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -3299,7 +3299,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalEssentialOCL.g:1134:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
             // InternalEssentialOCL.g:1135:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -3308,9 +3308,9 @@
             // InternalEssentialOCL.g:1136:3: lv_ownedType_2_0= ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedType_2_0=ruleTypeExpCS();
@@ -3323,12 +3323,12 @@
               	            current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_2_0, 
+                      		lv_ownedType_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -3343,14 +3343,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3371,7 +3371,7 @@
             // InternalEssentialOCL.g:1162:2: iv_ruleCollectionLiteralExpCS= ruleCollectionLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionLiteralExpCS=ruleCollectionLiteralExpCS();
@@ -3379,18 +3379,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionLiteralExpCS; 
+               current =iv_ruleCollectionLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3413,8 +3413,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:1172:28: ( ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' ) )
             // InternalEssentialOCL.g:1173:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' )
@@ -3429,9 +3429,9 @@
             // InternalEssentialOCL.g:1175:3: lv_ownedType_0_0= ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_11);
             lv_ownedType_0_0=ruleCollectionTypeCS();
@@ -3444,12 +3444,12 @@
               	            current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -3461,7 +3461,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalEssentialOCL.g:1195:1: ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )?
             int alt15=2;
@@ -3481,9 +3481,9 @@
                     // InternalEssentialOCL.g:1197:3: lv_ownedParts_2_0= ruleCollectionLiteralPartCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_13);
                     lv_ownedParts_2_0=ruleCollectionLiteralPartCS();
@@ -3496,12 +3496,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParts",
-                              		lv_ownedParts_2_0, 
+                              		lv_ownedParts_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -3528,7 +3528,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
-                    	          
+
                     	    }
                     	    // InternalEssentialOCL.g:1217:1: ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) )
                     	    // InternalEssentialOCL.g:1218:1: (lv_ownedParts_4_0= ruleCollectionLiteralPartCS )
@@ -3537,9 +3537,9 @@
                     	    // InternalEssentialOCL.g:1219:3: lv_ownedParts_4_0= ruleCollectionLiteralPartCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_13);
                     	    lv_ownedParts_4_0=ruleCollectionLiteralPartCS();
@@ -3552,12 +3552,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParts",
-                    	              		lv_ownedParts_4_0, 
+                    	              		lv_ownedParts_4_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -3584,7 +3584,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -3593,14 +3593,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3621,7 +3621,7 @@
             // InternalEssentialOCL.g:1249:2: iv_ruleCollectionLiteralPartCS= ruleCollectionLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionLiteralPartCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionLiteralPartCS=ruleCollectionLiteralPartCS();
@@ -3629,18 +3629,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionLiteralPartCS; 
+               current =iv_ruleCollectionLiteralPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3661,8 +3661,8 @@
         EObject lv_ownedExpression_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:1259:28: ( ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) ) )
             // InternalEssentialOCL.g:1260:1: ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) )
@@ -3768,9 +3768,9 @@
                     // InternalEssentialOCL.g:1262:3: lv_ownedExpression_0_0= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_15);
                     lv_ownedExpression_0_0=ruleExpCS();
@@ -3783,12 +3783,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExpression",
-                              		lv_ownedExpression_0_0, 
+                              		lv_ownedExpression_0_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -3811,7 +3811,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
-                                  
+
                             }
                             // InternalEssentialOCL.g:1282:1: ( (lv_ownedLastExpression_2_0= ruleExpCS ) )
                             // InternalEssentialOCL.g:1283:1: (lv_ownedLastExpression_2_0= ruleExpCS )
@@ -3820,9 +3820,9 @@
                             // InternalEssentialOCL.g:1284:3: lv_ownedLastExpression_2_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedLastExpression_2_0=ruleExpCS();
@@ -3835,12 +3835,12 @@
                               	            current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedLastExpression",
-                                      		lv_ownedLastExpression_2_0, 
+                                      		lv_ownedLastExpression_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -3870,9 +3870,9 @@
                     // InternalEssentialOCL.g:1303:3: lv_ownedExpression_3_0= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedExpression_3_0=rulePatternExpCS();
@@ -3885,12 +3885,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExpression",
-                              		lv_ownedExpression_3_0, 
+                              		lv_ownedExpression_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -3908,14 +3908,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3936,7 +3936,7 @@
             // InternalEssentialOCL.g:1329:2: iv_ruleCollectionPatternCS= ruleCollectionPatternCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionPatternCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionPatternCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionPatternCS=ruleCollectionPatternCS();
@@ -3944,18 +3944,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionPatternCS; 
+               current =iv_ruleCollectionPatternCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3981,8 +3981,8 @@
         AntlrDatatypeRuleToken lv_restVariableName_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:1339:28: ( ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? otherlv_7= '}' ) )
             // InternalEssentialOCL.g:1340:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? otherlv_7= '}' )
@@ -3997,9 +3997,9 @@
             // InternalEssentialOCL.g:1342:3: lv_ownedType_0_0= ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_11);
             lv_ownedType_0_0=ruleCollectionTypeCS();
@@ -4012,12 +4012,12 @@
               	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -4029,7 +4029,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalEssentialOCL.g:1362:1: ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )?
             int alt19=2;
@@ -4049,9 +4049,9 @@
                     // InternalEssentialOCL.g:1364:3: lv_ownedParts_2_0= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_17);
                     lv_ownedParts_2_0=rulePatternExpCS();
@@ -4064,12 +4064,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParts",
-                              		lv_ownedParts_2_0, 
+                              		lv_ownedParts_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -4096,7 +4096,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
-                    	          
+
                     	    }
                     	    // InternalEssentialOCL.g:1384:1: ( (lv_ownedParts_4_0= rulePatternExpCS ) )
                     	    // InternalEssentialOCL.g:1385:1: (lv_ownedParts_4_0= rulePatternExpCS )
@@ -4105,9 +4105,9 @@
                     	    // InternalEssentialOCL.g:1386:3: lv_ownedParts_4_0= rulePatternExpCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_17);
                     	    lv_ownedParts_4_0=rulePatternExpCS();
@@ -4120,12 +4120,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParts",
-                    	              		lv_ownedParts_4_0, 
+                    	              		lv_ownedParts_4_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -4149,7 +4149,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:1406:1: ( (lv_restVariableName_6_0= ruleIdentifier ) )
                     // InternalEssentialOCL.g:1407:1: (lv_restVariableName_6_0= ruleIdentifier )
@@ -4158,9 +4158,9 @@
                     // InternalEssentialOCL.g:1408:3: lv_restVariableName_6_0= ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_18);
                     lv_restVariableName_6_0=ruleIdentifier();
@@ -4173,12 +4173,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"restVariableName",
-                              		lv_restVariableName_6_0, 
+                              		lv_restVariableName_6_0,
                               		"org.eclipse.ocl.xtext.base.Base.Identifier");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -4199,7 +4199,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -4208,14 +4208,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4236,7 +4236,7 @@
             // InternalEssentialOCL.g:1438:2: iv_ruleShadowPartCS= ruleShadowPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getShadowPartCSRule()); 
+               newCompositeNode(grammarAccess.getShadowPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleShadowPartCS=ruleShadowPartCS();
@@ -4244,18 +4244,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleShadowPartCS; 
+               current =iv_ruleShadowPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4274,8 +4274,8 @@
         EObject lv_ownedInitExpression_2_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:1448:28: ( ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) ) )
             // InternalEssentialOCL.g:1449:1: ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) )
@@ -4290,21 +4290,21 @@
             // InternalEssentialOCL.g:1451:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getShadowPartCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_19);
             ruleUnrestrictedName();
@@ -4312,9 +4312,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -4326,7 +4326,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
-                  
+
             }
             // InternalEssentialOCL.g:1471:1: ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) )
             // InternalEssentialOCL.g:1472:1: ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) )
@@ -4426,9 +4426,9 @@
                     // InternalEssentialOCL.g:1474:3: lv_ownedInitExpression_2_1= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedInitExpression_2_1=ruleExpCS();
@@ -4441,12 +4441,12 @@
                       	            current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedInitExpression",
-                              		lv_ownedInitExpression_2_1, 
+                              		lv_ownedInitExpression_2_1,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -4455,9 +4455,9 @@
                     // InternalEssentialOCL.g:1489:8: lv_ownedInitExpression_2_2= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedInitExpression_2_2=rulePatternExpCS();
@@ -4470,12 +4470,12 @@
                       	            current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedInitExpression",
-                              		lv_ownedInitExpression_2_2, 
+                              		lv_ownedInitExpression_2_2,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -4496,14 +4496,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4524,7 +4524,7 @@
             // InternalEssentialOCL.g:1517:2: iv_rulePatternExpCS= rulePatternExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPatternExpCSRule()); 
+               newCompositeNode(grammarAccess.getPatternExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePatternExpCS=rulePatternExpCS();
@@ -4532,18 +4532,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePatternExpCS; 
+               current =iv_rulePatternExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4562,8 +4562,8 @@
         EObject lv_ownedPatternType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:1527:28: ( ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) ) )
             // InternalEssentialOCL.g:1528:1: ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) )
@@ -4586,9 +4586,9 @@
                     // InternalEssentialOCL.g:1530:3: lv_patternVariableName_0_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_10);
                     lv_patternVariableName_0_0=ruleUnrestrictedName();
@@ -4601,12 +4601,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"patternVariableName",
-                              		lv_patternVariableName_0_0, 
+                              		lv_patternVariableName_0_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -4621,7 +4621,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalEssentialOCL.g:1550:1: ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) )
             // InternalEssentialOCL.g:1551:1: (lv_ownedPatternType_2_0= ruleTypeExpCS )
@@ -4630,9 +4630,9 @@
             // InternalEssentialOCL.g:1552:3: lv_ownedPatternType_2_0= ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedPatternType_2_0=ruleTypeExpCS();
@@ -4645,12 +4645,12 @@
               	            current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPatternType",
-                      		lv_ownedPatternType_2_0, 
+                      		lv_ownedPatternType_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -4665,14 +4665,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4693,7 +4693,7 @@
             // InternalEssentialOCL.g:1578:2: iv_ruleLambdaLiteralExpCS= ruleLambdaLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLambdaLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getLambdaLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLambdaLiteralExpCS=ruleLambdaLiteralExpCS();
@@ -4701,18 +4701,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLambdaLiteralExpCS; 
+               current =iv_ruleLambdaLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4731,8 +4731,8 @@
         EObject lv_ownedExpressionCS_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:1588:28: ( (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' ) )
             // InternalEssentialOCL.g:1589:1: (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' )
@@ -4744,13 +4744,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
-                  
+
             }
             otherlv_1=(Token)match(input,54,FollowSets000.FOLLOW_16); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalEssentialOCL.g:1597:1: ( (lv_ownedExpressionCS_2_0= ruleExpCS ) )
             // InternalEssentialOCL.g:1598:1: (lv_ownedExpressionCS_2_0= ruleExpCS )
@@ -4759,9 +4759,9 @@
             // InternalEssentialOCL.g:1599:3: lv_ownedExpressionCS_2_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_18);
             lv_ownedExpressionCS_2_0=ruleExpCS();
@@ -4774,12 +4774,12 @@
               	            current = createModelElementForParent(grammarAccess.getLambdaLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedExpressionCS",
-                      		lv_ownedExpressionCS_2_0, 
+                      		lv_ownedExpressionCS_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -4791,7 +4791,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -4800,14 +4800,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4828,7 +4828,7 @@
             // InternalEssentialOCL.g:1629:2: iv_ruleMapLiteralExpCS= ruleMapLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMapLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getMapLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMapLiteralExpCS=ruleMapLiteralExpCS();
@@ -4836,18 +4836,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMapLiteralExpCS; 
+               current =iv_ruleMapLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4870,8 +4870,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:1639:28: ( ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' ) )
             // InternalEssentialOCL.g:1640:1: ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' )
@@ -4886,9 +4886,9 @@
             // InternalEssentialOCL.g:1642:3: lv_ownedType_0_0= ruleMapTypeCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_11);
             lv_ownedType_0_0=ruleMapTypeCS();
@@ -4901,12 +4901,12 @@
               	            current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapTypeCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -4918,7 +4918,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalEssentialOCL.g:1662:1: ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )?
             int alt23=2;
@@ -4938,9 +4938,9 @@
                     // InternalEssentialOCL.g:1664:3: lv_ownedParts_2_0= ruleMapLiteralPartCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_13);
                     lv_ownedParts_2_0=ruleMapLiteralPartCS();
@@ -4953,12 +4953,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParts",
-                              		lv_ownedParts_2_0, 
+                              		lv_ownedParts_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -4985,7 +4985,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
-                    	          
+
                     	    }
                     	    // InternalEssentialOCL.g:1684:1: ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) )
                     	    // InternalEssentialOCL.g:1685:1: (lv_ownedParts_4_0= ruleMapLiteralPartCS )
@@ -4994,9 +4994,9 @@
                     	    // InternalEssentialOCL.g:1686:3: lv_ownedParts_4_0= ruleMapLiteralPartCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_13);
                     	    lv_ownedParts_4_0=ruleMapLiteralPartCS();
@@ -5009,12 +5009,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParts",
-                    	              		lv_ownedParts_4_0, 
+                    	              		lv_ownedParts_4_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -5041,7 +5041,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -5050,14 +5050,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5078,7 +5078,7 @@
             // InternalEssentialOCL.g:1716:2: iv_ruleMapLiteralPartCS= ruleMapLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMapLiteralPartCSRule()); 
+               newCompositeNode(grammarAccess.getMapLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMapLiteralPartCS=ruleMapLiteralPartCS();
@@ -5086,18 +5086,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMapLiteralPartCS; 
+               current =iv_ruleMapLiteralPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5116,8 +5116,8 @@
         EObject lv_ownedValue_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:1726:28: ( ( ( (lv_ownedKey_0_0= ruleExpCS ) ) otherlv_1= '<-' ( (lv_ownedValue_2_0= ruleExpCS ) ) ) )
             // InternalEssentialOCL.g:1727:1: ( ( (lv_ownedKey_0_0= ruleExpCS ) ) otherlv_1= '<-' ( (lv_ownedValue_2_0= ruleExpCS ) ) )
@@ -5132,9 +5132,9 @@
             // InternalEssentialOCL.g:1729:3: lv_ownedKey_0_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_21);
             lv_ownedKey_0_0=ruleExpCS();
@@ -5147,12 +5147,12 @@
               	            current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedKey",
-                      		lv_ownedKey_0_0, 
+                      		lv_ownedKey_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -5164,7 +5164,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
-                  
+
             }
             // InternalEssentialOCL.g:1749:1: ( (lv_ownedValue_2_0= ruleExpCS ) )
             // InternalEssentialOCL.g:1750:1: (lv_ownedValue_2_0= ruleExpCS )
@@ -5173,9 +5173,9 @@
             // InternalEssentialOCL.g:1751:3: lv_ownedValue_2_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedValue_2_0=ruleExpCS();
@@ -5188,12 +5188,12 @@
               	            current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedValue",
-                      		lv_ownedValue_2_0, 
+                      		lv_ownedValue_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -5208,14 +5208,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5236,7 +5236,7 @@
             // InternalEssentialOCL.g:1777:2: iv_rulePrimitiveLiteralExpCS= rulePrimitiveLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimitiveLiteralExpCS=rulePrimitiveLiteralExpCS();
@@ -5244,18 +5244,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimitiveLiteralExpCS; 
+               current =iv_rulePrimitiveLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5281,8 +5281,8 @@
         EObject this_NullLiteralExpCS_5 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:1787:28: ( (this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS | this_StringLiteralExpCS_1= ruleStringLiteralExpCS | this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS | this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS | this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS | this_NullLiteralExpCS_5= ruleNullLiteralExpCS ) )
             // InternalEssentialOCL.g:1788:1: (this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS | this_StringLiteralExpCS_1= ruleStringLiteralExpCS | this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS | this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS | this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS | this_NullLiteralExpCS_5= ruleNullLiteralExpCS )
@@ -5334,14 +5334,14 @@
                     // InternalEssentialOCL.g:1789:2: this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NumberLiteralExpCS_0=ruleNumberLiteralExpCS();
@@ -5349,10 +5349,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NumberLiteralExpCS_0; 
+
+                              current = this_NumberLiteralExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -5361,14 +5361,14 @@
                     // InternalEssentialOCL.g:1802:2: this_StringLiteralExpCS_1= ruleStringLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_StringLiteralExpCS_1=ruleStringLiteralExpCS();
@@ -5376,10 +5376,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_StringLiteralExpCS_1; 
+
+                              current = this_StringLiteralExpCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -5388,14 +5388,14 @@
                     // InternalEssentialOCL.g:1815:2: this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_BooleanLiteralExpCS_2=ruleBooleanLiteralExpCS();
@@ -5403,10 +5403,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_BooleanLiteralExpCS_2; 
+
+                              current = this_BooleanLiteralExpCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -5415,14 +5415,14 @@
                     // InternalEssentialOCL.g:1828:2: this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_UnlimitedNaturalLiteralExpCS_3=ruleUnlimitedNaturalLiteralExpCS();
@@ -5430,10 +5430,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_UnlimitedNaturalLiteralExpCS_3; 
+
+                              current = this_UnlimitedNaturalLiteralExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -5442,14 +5442,14 @@
                     // InternalEssentialOCL.g:1841:2: this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_InvalidLiteralExpCS_4=ruleInvalidLiteralExpCS();
@@ -5457,10 +5457,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_InvalidLiteralExpCS_4; 
+
+                              current = this_InvalidLiteralExpCS_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -5469,14 +5469,14 @@
                     // InternalEssentialOCL.g:1854:2: this_NullLiteralExpCS_5= ruleNullLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NullLiteralExpCS_5=ruleNullLiteralExpCS();
@@ -5484,10 +5484,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NullLiteralExpCS_5; 
+
+                              current = this_NullLiteralExpCS_5;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -5499,14 +5499,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5527,7 +5527,7 @@
             // InternalEssentialOCL.g:1875:2: iv_ruleTupleLiteralExpCS= ruleTupleLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTupleLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getTupleLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTupleLiteralExpCS=ruleTupleLiteralExpCS();
@@ -5535,18 +5535,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTupleLiteralExpCS; 
+               current =iv_ruleTupleLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5568,8 +5568,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:1885:28: ( (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' ) )
             // InternalEssentialOCL.g:1886:1: (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' )
@@ -5581,13 +5581,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
-                  
+
             }
             otherlv_1=(Token)match(input,54,FollowSets000.FOLLOW_9); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalEssentialOCL.g:1894:1: ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) )
             // InternalEssentialOCL.g:1895:1: (lv_ownedParts_2_0= ruleTupleLiteralPartCS )
@@ -5596,9 +5596,9 @@
             // InternalEssentialOCL.g:1896:3: lv_ownedParts_2_0= ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_13);
             lv_ownedParts_2_0=ruleTupleLiteralPartCS();
@@ -5611,12 +5611,12 @@
               	            current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedParts",
-                      		lv_ownedParts_2_0, 
+                      		lv_ownedParts_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -5643,7 +5643,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
-            	          
+
             	    }
             	    // InternalEssentialOCL.g:1916:1: ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) )
             	    // InternalEssentialOCL.g:1917:1: (lv_ownedParts_4_0= ruleTupleLiteralPartCS )
@@ -5652,9 +5652,9 @@
             	    // InternalEssentialOCL.g:1918:3: lv_ownedParts_4_0= ruleTupleLiteralPartCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_13);
             	    lv_ownedParts_4_0=ruleTupleLiteralPartCS();
@@ -5667,12 +5667,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedParts",
-            	              		lv_ownedParts_4_0, 
+            	              		lv_ownedParts_4_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -5693,7 +5693,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
-                  
+
             }
 
             }
@@ -5702,14 +5702,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5730,7 +5730,7 @@
             // InternalEssentialOCL.g:1948:2: iv_ruleTupleLiteralPartCS= ruleTupleLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTupleLiteralPartCSRule()); 
+               newCompositeNode(grammarAccess.getTupleLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTupleLiteralPartCS=ruleTupleLiteralPartCS();
@@ -5738,18 +5738,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTupleLiteralPartCS; 
+               current =iv_ruleTupleLiteralPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5771,8 +5771,8 @@
         EObject lv_ownedInitExpression_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:1958:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) ) )
             // InternalEssentialOCL.g:1959:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )
@@ -5787,9 +5787,9 @@
             // InternalEssentialOCL.g:1961:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_22);
             lv_name_0_0=ruleUnrestrictedName();
@@ -5802,12 +5802,12 @@
               	            current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -5830,7 +5830,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:1981:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                     // InternalEssentialOCL.g:1982:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -5839,9 +5839,9 @@
                     // InternalEssentialOCL.g:1983:3: lv_ownedType_2_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_19);
                     lv_ownedType_2_0=ruleTypeExpCS();
@@ -5854,12 +5854,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_2_0, 
+                              		lv_ownedType_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -5877,7 +5877,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
-                  
+
             }
             // InternalEssentialOCL.g:2003:1: ( (lv_ownedInitExpression_4_0= ruleExpCS ) )
             // InternalEssentialOCL.g:2004:1: (lv_ownedInitExpression_4_0= ruleExpCS )
@@ -5886,9 +5886,9 @@
             // InternalEssentialOCL.g:2005:3: lv_ownedInitExpression_4_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedInitExpression_4_0=ruleExpCS();
@@ -5901,12 +5901,12 @@
               	            current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedInitExpression",
-                      		lv_ownedInitExpression_4_0, 
+                      		lv_ownedInitExpression_4_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -5921,14 +5921,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5949,7 +5949,7 @@
             // InternalEssentialOCL.g:2031:2: iv_ruleNumberLiteralExpCS= ruleNumberLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNumberLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getNumberLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNumberLiteralExpCS=ruleNumberLiteralExpCS();
@@ -5957,18 +5957,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNumberLiteralExpCS; 
+               current =iv_ruleNumberLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5984,8 +5984,8 @@
         AntlrDatatypeRuleToken lv_symbol_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2041:28: ( ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) ) )
             // InternalEssentialOCL.g:2042:1: ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) )
@@ -5997,9 +5997,9 @@
             // InternalEssentialOCL.g:2044:3: lv_symbol_0_0= ruleNUMBER_LITERAL
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_symbol_0_0=ruleNUMBER_LITERAL();
@@ -6012,12 +6012,12 @@
               	            current = createModelElementForParent(grammarAccess.getNumberLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"symbol",
-                      		lv_symbol_0_0, 
+                      		lv_symbol_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.NUMBER_LITERAL");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -6029,14 +6029,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6057,7 +6057,7 @@
             // InternalEssentialOCL.g:2070:2: iv_ruleStringLiteralExpCS= ruleStringLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getStringLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getStringLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleStringLiteralExpCS=ruleStringLiteralExpCS();
@@ -6065,18 +6065,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleStringLiteralExpCS; 
+               current =iv_ruleStringLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6092,8 +6092,8 @@
         AntlrDatatypeRuleToken lv_segments_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2080:28: ( ( (lv_segments_0_0= ruleStringLiteral ) )+ )
             // InternalEssentialOCL.g:2081:1: ( (lv_segments_0_0= ruleStringLiteral ) )+
@@ -6118,9 +6118,9 @@
             	    // InternalEssentialOCL.g:2083:3: lv_segments_0_0= ruleStringLiteral
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_23);
             	    lv_segments_0_0=ruleStringLiteral();
@@ -6133,12 +6133,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getStringLiteralExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"segments",
-            	              		lv_segments_0_0, 
+            	              		lv_segments_0_0,
             	              		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -6161,14 +6161,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6189,7 +6189,7 @@
             // InternalEssentialOCL.g:2109:2: iv_ruleBooleanLiteralExpCS= ruleBooleanLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getBooleanLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getBooleanLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleBooleanLiteralExpCS=ruleBooleanLiteralExpCS();
@@ -6197,18 +6197,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleBooleanLiteralExpCS; 
+               current =iv_ruleBooleanLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6224,8 +6224,8 @@
         Token lv_symbol_0_0=null;
         Token lv_symbol_1_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2119:28: ( ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) ) )
             // InternalEssentialOCL.g:2120:1: ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) )
@@ -6261,7 +6261,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_symbol_0_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -6269,7 +6269,7 @@
                       	            current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
                       	        }
                              		setWithLastConsumed(current, "symbol", lv_symbol_0_0, "true");
-                      	    
+
                     }
 
                     }
@@ -6293,7 +6293,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_symbol_1_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -6301,7 +6301,7 @@
                       	            current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
                       	        }
                              		setWithLastConsumed(current, "symbol", lv_symbol_1_0, "false");
-                      	    
+
                     }
 
                     }
@@ -6319,14 +6319,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6347,7 +6347,7 @@
             // InternalEssentialOCL.g:2161:2: iv_ruleUnlimitedNaturalLiteralExpCS= ruleUnlimitedNaturalLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getUnlimitedNaturalLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnlimitedNaturalLiteralExpCS=ruleUnlimitedNaturalLiteralExpCS();
@@ -6355,18 +6355,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnlimitedNaturalLiteralExpCS; 
+               current =iv_ruleUnlimitedNaturalLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6381,8 +6381,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2171:28: ( ( () otherlv_1= '*' ) )
             // InternalEssentialOCL.g:2172:1: ( () otherlv_1= '*' )
@@ -6391,19 +6391,19 @@
             // InternalEssentialOCL.g:2172:2: () otherlv_1= '*'
             {
             // InternalEssentialOCL.g:2172:2: ()
-            // InternalEssentialOCL.g:2173:2: 
+            // InternalEssentialOCL.g:2173:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -6412,7 +6412,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
-                  
+
             }
 
             }
@@ -6421,14 +6421,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6449,7 +6449,7 @@
             // InternalEssentialOCL.g:2195:2: iv_ruleInvalidLiteralExpCS= ruleInvalidLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getInvalidLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getInvalidLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleInvalidLiteralExpCS=ruleInvalidLiteralExpCS();
@@ -6457,18 +6457,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleInvalidLiteralExpCS; 
+               current =iv_ruleInvalidLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6483,8 +6483,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2205:28: ( ( () otherlv_1= 'invalid' ) )
             // InternalEssentialOCL.g:2206:1: ( () otherlv_1= 'invalid' )
@@ -6493,19 +6493,19 @@
             // InternalEssentialOCL.g:2206:2: () otherlv_1= 'invalid'
             {
             // InternalEssentialOCL.g:2206:2: ()
-            // InternalEssentialOCL.g:2207:2: 
+            // InternalEssentialOCL.g:2207:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -6514,7 +6514,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
-                  
+
             }
 
             }
@@ -6523,14 +6523,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6551,7 +6551,7 @@
             // InternalEssentialOCL.g:2229:2: iv_ruleNullLiteralExpCS= ruleNullLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNullLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getNullLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNullLiteralExpCS=ruleNullLiteralExpCS();
@@ -6559,18 +6559,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNullLiteralExpCS; 
+               current =iv_ruleNullLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6585,8 +6585,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2239:28: ( ( () otherlv_1= 'null' ) )
             // InternalEssentialOCL.g:2240:1: ( () otherlv_1= 'null' )
@@ -6595,19 +6595,19 @@
             // InternalEssentialOCL.g:2240:2: () otherlv_1= 'null'
             {
             // InternalEssentialOCL.g:2240:2: ()
-            // InternalEssentialOCL.g:2241:2: 
+            // InternalEssentialOCL.g:2241:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -6616,7 +6616,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
-                  
+
             }
 
             }
@@ -6625,14 +6625,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6653,7 +6653,7 @@
             // InternalEssentialOCL.g:2263:2: iv_ruleTypeLiteralCS= ruleTypeLiteralCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeLiteralCSRule()); 
+               newCompositeNode(grammarAccess.getTypeLiteralCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeLiteralCS=ruleTypeLiteralCS();
@@ -6661,18 +6661,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeLiteralCS; 
+               current =iv_ruleTypeLiteralCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6694,8 +6694,8 @@
         EObject this_TupleTypeCS_3 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2273:28: ( (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS ) )
             // InternalEssentialOCL.g:2274:1: (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS )
@@ -6747,14 +6747,14 @@
                     // InternalEssentialOCL.g:2275:2: this_PrimitiveTypeCS_0= rulePrimitiveTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimitiveTypeCS_0=rulePrimitiveTypeCS();
@@ -6762,10 +6762,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrimitiveTypeCS_0; 
+
+                              current = this_PrimitiveTypeCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -6774,14 +6774,14 @@
                     // InternalEssentialOCL.g:2288:2: this_CollectionTypeCS_1= ruleCollectionTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CollectionTypeCS_1=ruleCollectionTypeCS();
@@ -6789,10 +6789,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_CollectionTypeCS_1; 
+
+                              current = this_CollectionTypeCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -6801,14 +6801,14 @@
                     // InternalEssentialOCL.g:2301:2: this_MapTypeCS_2= ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_MapTypeCS_2=ruleMapTypeCS();
@@ -6816,10 +6816,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MapTypeCS_2; 
+
+                              current = this_MapTypeCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -6828,14 +6828,14 @@
                     // InternalEssentialOCL.g:2314:2: this_TupleTypeCS_3= ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TupleTypeCS_3=ruleTupleTypeCS();
@@ -6843,10 +6843,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TupleTypeCS_3; 
+
+                              current = this_TupleTypeCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -6858,14 +6858,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6886,7 +6886,7 @@
             // InternalEssentialOCL.g:2335:2: iv_ruleTypeLiteralWithMultiplicityCS= ruleTypeLiteralWithMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); 
+               newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeLiteralWithMultiplicityCS=ruleTypeLiteralWithMultiplicityCS();
@@ -6894,18 +6894,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeLiteralWithMultiplicityCS; 
+               current =iv_ruleTypeLiteralWithMultiplicityCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6923,8 +6923,8 @@
         EObject lv_ownedMultiplicity_1_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2345:28: ( (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) )
             // InternalEssentialOCL.g:2346:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? )
@@ -6933,14 +6933,14 @@
             // InternalEssentialOCL.g:2347:2: this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )?
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
-                  
+
+                      newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_24);
             this_TypeLiteralCS_0=ruleTypeLiteralCS();
@@ -6948,10 +6948,10 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
-                      current = this_TypeLiteralCS_0; 
+
+                      current = this_TypeLiteralCS_0;
                       afterParserOrEnumRuleCall();
-                  
+
             }
             // InternalEssentialOCL.g:2358:1: ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )?
             int alt30=2;
@@ -6968,9 +6968,9 @@
                     // InternalEssentialOCL.g:2360:3: lv_ownedMultiplicity_1_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_1_0=ruleMultiplicityCS();
@@ -6983,12 +6983,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_1_0, 
+                              		lv_ownedMultiplicity_1_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7006,14 +7006,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7034,7 +7034,7 @@
             // InternalEssentialOCL.g:2386:2: iv_ruleTypeLiteralExpCS= ruleTypeLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getTypeLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeLiteralExpCS=ruleTypeLiteralExpCS();
@@ -7042,18 +7042,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeLiteralExpCS; 
+               current =iv_ruleTypeLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7069,8 +7069,8 @@
         EObject lv_ownedType_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2396:28: ( ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) ) )
             // InternalEssentialOCL.g:2397:1: ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) )
@@ -7082,9 +7082,9 @@
             // InternalEssentialOCL.g:2399:3: lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedType_0_0=ruleTypeLiteralWithMultiplicityCS();
@@ -7097,12 +7097,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypeLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeLiteralWithMultiplicityCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -7114,14 +7114,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7142,7 +7142,7 @@
             // InternalEssentialOCL.g:2425:2: iv_ruleTypeNameExpCS= ruleTypeNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeNameExpCSRule()); 
+               newCompositeNode(grammarAccess.getTypeNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeNameExpCS=ruleTypeNameExpCS();
@@ -7150,18 +7150,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeNameExpCS; 
+               current =iv_ruleTypeNameExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7183,8 +7183,8 @@
         EObject lv_ownedPatternGuard_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2435:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? ) )
             // InternalEssentialOCL.g:2436:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? )
@@ -7199,9 +7199,9 @@
             // InternalEssentialOCL.g:2438:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_25);
             lv_ownedPathName_0_0=rulePathNameCS();
@@ -7214,12 +7214,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_0_0, 
+                      		lv_ownedPathName_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -7245,9 +7245,9 @@
                     // InternalEssentialOCL.g:2456:3: lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_25);
                     lv_ownedCurlyBracketedClause_1_0=ruleCurlyBracketedClauseCS();
@@ -7260,12 +7260,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCurlyBracketedClause",
-                              		lv_ownedCurlyBracketedClause_1_0, 
+                              		lv_ownedCurlyBracketedClause_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7288,7 +7288,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_2, grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
-                                  
+
                             }
                             // InternalEssentialOCL.g:2476:1: ( (lv_ownedPatternGuard_3_0= ruleExpCS ) )
                             // InternalEssentialOCL.g:2477:1: (lv_ownedPatternGuard_3_0= ruleExpCS )
@@ -7297,9 +7297,9 @@
                             // InternalEssentialOCL.g:2478:3: lv_ownedPatternGuard_3_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_18);
                             lv_ownedPatternGuard_3_0=ruleExpCS();
@@ -7312,12 +7312,12 @@
                               	            current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedPatternGuard",
-                                      		lv_ownedPatternGuard_3_0, 
+                                      		lv_ownedPatternGuard_3_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -7329,7 +7329,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
-                                  
+
                             }
 
                             }
@@ -7350,14 +7350,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7378,7 +7378,7 @@
             // InternalEssentialOCL.g:2508:2: iv_ruleTypeExpCS= ruleTypeExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeExpCSRule()); 
+               newCompositeNode(grammarAccess.getTypeExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeExpCS=ruleTypeExpCS();
@@ -7386,18 +7386,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeExpCS; 
+               current =iv_ruleTypeExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7419,8 +7419,8 @@
         EObject lv_ownedMultiplicity_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2518:28: ( ( (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS ) ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
             // InternalEssentialOCL.g:2519:1: ( (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS ) ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
@@ -7436,14 +7436,14 @@
                     // InternalEssentialOCL.g:2520:2: this_TypeNameExpCS_0= ruleTypeNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_24);
                     this_TypeNameExpCS_0=ruleTypeNameExpCS();
@@ -7451,10 +7451,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeNameExpCS_0; 
+
+                              current = this_TypeNameExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -7463,14 +7463,14 @@
                     // InternalEssentialOCL.g:2533:2: this_TypeLiteralCS_1= ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_24);
                     this_TypeLiteralCS_1=ruleTypeLiteralCS();
@@ -7478,10 +7478,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeLiteralCS_1; 
+
+                              current = this_TypeLiteralCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -7490,14 +7490,14 @@
                     // InternalEssentialOCL.g:2546:2: this_CollectionPatternCS_2= ruleCollectionPatternCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_24);
                     this_CollectionPatternCS_2=ruleCollectionPatternCS();
@@ -7505,10 +7505,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_CollectionPatternCS_2; 
+
+                              current = this_CollectionPatternCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -7531,9 +7531,9 @@
                     // InternalEssentialOCL.g:2559:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_3_0=ruleMultiplicityCS();
@@ -7546,12 +7546,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_3_0, 
+                              		lv_ownedMultiplicity_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7569,14 +7569,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7597,7 +7597,7 @@
             // InternalEssentialOCL.g:2585:2: iv_ruleExpCS= ruleExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getExpCSRule()); 
+               newCompositeNode(grammarAccess.getExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleExpCS=ruleExpCS();
@@ -7605,18 +7605,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleExpCS; 
+               current =iv_ruleExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7638,8 +7638,8 @@
         EObject this_PrefixedLetExpCS_4 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2595:28: ( ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS ) )
             // InternalEssentialOCL.g:2596:1: ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS )
@@ -7655,14 +7655,14 @@
                     // InternalEssentialOCL.g:2597:2: this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_26);
                     this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS();
@@ -7670,10 +7670,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrefixedPrimaryExpCS_0; 
+
+                              current = this_PrefixedPrimaryExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
                     // InternalEssentialOCL.g:2608:1: ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
                     int alt35=2;
@@ -7687,19 +7687,19 @@
                             // InternalEssentialOCL.g:2608:2: () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) )
                             {
                             // InternalEssentialOCL.g:2608:2: ()
-                            // InternalEssentialOCL.g:2609:2: 
+                            // InternalEssentialOCL.g:2609:2:
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	  /* */ 
-                              	
+
+                              	  /* */
+
                             }
                             if ( state.backtracking==0 ) {
 
                                       current = forceCreateModelElementAndSet(
                                           grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0(),
                                           current);
-                                  
+
                             }
 
                             }
@@ -7711,9 +7711,9 @@
                             // InternalEssentialOCL.g:2619:3: lv_name_2_0= ruleBinaryOperatorName
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_16);
                             lv_name_2_0=ruleBinaryOperatorName();
@@ -7726,12 +7726,12 @@
                               	            current = createModelElementForParent(grammarAccess.getExpCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"name",
-                                      		lv_name_2_0, 
+                                      		lv_name_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.BinaryOperatorName");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -7746,9 +7746,9 @@
                             // InternalEssentialOCL.g:2637:3: lv_ownedRight_3_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedRight_3_0=ruleExpCS();
@@ -7761,12 +7761,12 @@
                               	            current = createModelElementForParent(grammarAccess.getExpCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedRight",
-                                      		lv_ownedRight_3_0, 
+                                      		lv_ownedRight_3_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -7790,14 +7790,14 @@
                     // InternalEssentialOCL.g:2655:2: this_PrefixedLetExpCS_4= rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrefixedLetExpCS_4=rulePrefixedLetExpCS();
@@ -7805,10 +7805,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrefixedLetExpCS_4; 
+
+                              current = this_PrefixedLetExpCS_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -7820,14 +7820,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7848,7 +7848,7 @@
             // InternalEssentialOCL.g:2676:2: iv_rulePrefixedLetExpCS= rulePrefixedLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrefixedLetExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrefixedLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrefixedLetExpCS=rulePrefixedLetExpCS();
@@ -7856,18 +7856,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrefixedLetExpCS; 
+               current =iv_rulePrefixedLetExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7887,8 +7887,8 @@
         EObject this_LetExpCS_3 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2686:28: ( ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS ) )
             // InternalEssentialOCL.g:2687:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS )
@@ -7918,19 +7918,19 @@
                     // InternalEssentialOCL.g:2687:3: () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) )
                     {
                     // InternalEssentialOCL.g:2687:3: ()
-                    // InternalEssentialOCL.g:2688:2: 
+                    // InternalEssentialOCL.g:2688:2:
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                               current = forceCreateModelElement(
                                   grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0(),
                                   current);
-                          
+
                     }
 
                     }
@@ -7942,9 +7942,9 @@
                     // InternalEssentialOCL.g:2698:3: lv_name_1_0= ruleUnaryOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_16);
                     lv_name_1_0=ruleUnaryOperatorName();
@@ -7957,12 +7957,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7977,9 +7977,9 @@
                     // InternalEssentialOCL.g:2716:3: lv_ownedRight_2_0= rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedRight_2_0=rulePrefixedLetExpCS();
@@ -7992,12 +7992,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRight",
-                              		lv_ownedRight_2_0, 
+                              		lv_ownedRight_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedLetExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -8015,14 +8015,14 @@
                     // InternalEssentialOCL.g:2734:2: this_LetExpCS_3= ruleLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_LetExpCS_3=ruleLetExpCS();
@@ -8030,10 +8030,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_LetExpCS_3; 
+
+                              current = this_LetExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -8045,14 +8045,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8073,7 +8073,7 @@
             // InternalEssentialOCL.g:2755:2: iv_rulePrefixedPrimaryExpCS= rulePrefixedPrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrefixedPrimaryExpCS=rulePrefixedPrimaryExpCS();
@@ -8081,18 +8081,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrefixedPrimaryExpCS; 
+               current =iv_rulePrefixedPrimaryExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8112,8 +8112,8 @@
         EObject this_PrimaryExpCS_3 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2765:28: ( ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS ) )
             // InternalEssentialOCL.g:2766:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS )
@@ -8143,19 +8143,19 @@
                     // InternalEssentialOCL.g:2766:3: () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) )
                     {
                     // InternalEssentialOCL.g:2766:3: ()
-                    // InternalEssentialOCL.g:2767:2: 
+                    // InternalEssentialOCL.g:2767:2:
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                               current = forceCreateModelElement(
                                   grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0(),
                                   current);
-                          
+
                     }
 
                     }
@@ -8167,9 +8167,9 @@
                     // InternalEssentialOCL.g:2777:3: lv_name_1_0= ruleUnaryOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_27);
                     lv_name_1_0=ruleUnaryOperatorName();
@@ -8182,12 +8182,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -8202,9 +8202,9 @@
                     // InternalEssentialOCL.g:2795:3: lv_ownedRight_2_0= rulePrefixedPrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedRight_2_0=rulePrefixedPrimaryExpCS();
@@ -8217,12 +8217,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRight",
-                              		lv_ownedRight_2_0, 
+                              		lv_ownedRight_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedPrimaryExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -8240,14 +8240,14 @@
                     // InternalEssentialOCL.g:2813:2: this_PrimaryExpCS_3= rulePrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimaryExpCS_3=rulePrimaryExpCS();
@@ -8255,10 +8255,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrimaryExpCS_3; 
+
+                              current = this_PrimaryExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -8270,14 +8270,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8298,7 +8298,7 @@
             // InternalEssentialOCL.g:2834:2: iv_rulePrimaryExpCS= rulePrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimaryExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimaryExpCS=rulePrimaryExpCS();
@@ -8306,18 +8306,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimaryExpCS; 
+               current =iv_rulePrimaryExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8351,8 +8351,8 @@
         EObject this_NameExpCS_9 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2844:28: ( (this_NestedExpCS_0= ruleNestedExpCS | this_IfExpCS_1= ruleIfExpCS | this_SelfExpCS_2= ruleSelfExpCS | this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS | this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS | this_MapLiteralExpCS_5= ruleMapLiteralExpCS | this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS | this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS | this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS | this_NameExpCS_9= ruleNameExpCS ) )
             // InternalEssentialOCL.g:2845:1: (this_NestedExpCS_0= ruleNestedExpCS | this_IfExpCS_1= ruleIfExpCS | this_SelfExpCS_2= ruleSelfExpCS | this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS | this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS | this_MapLiteralExpCS_5= ruleMapLiteralExpCS | this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS | this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS | this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS | this_NameExpCS_9= ruleNameExpCS )
@@ -8365,14 +8365,14 @@
                     // InternalEssentialOCL.g:2846:2: this_NestedExpCS_0= ruleNestedExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NestedExpCS_0=ruleNestedExpCS();
@@ -8380,10 +8380,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NestedExpCS_0; 
+
+                              current = this_NestedExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -8392,14 +8392,14 @@
                     // InternalEssentialOCL.g:2859:2: this_IfExpCS_1= ruleIfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_IfExpCS_1=ruleIfExpCS();
@@ -8407,10 +8407,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_IfExpCS_1; 
+
+                              current = this_IfExpCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -8419,14 +8419,14 @@
                     // InternalEssentialOCL.g:2872:2: this_SelfExpCS_2= ruleSelfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_SelfExpCS_2=ruleSelfExpCS();
@@ -8434,10 +8434,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_SelfExpCS_2; 
+
+                              current = this_SelfExpCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -8446,14 +8446,14 @@
                     // InternalEssentialOCL.g:2885:2: this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimitiveLiteralExpCS_3=rulePrimitiveLiteralExpCS();
@@ -8461,10 +8461,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrimitiveLiteralExpCS_3; 
+
+                              current = this_PrimitiveLiteralExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -8473,14 +8473,14 @@
                     // InternalEssentialOCL.g:2898:2: this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS();
@@ -8488,10 +8488,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TupleLiteralExpCS_4; 
+
+                              current = this_TupleLiteralExpCS_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -8500,14 +8500,14 @@
                     // InternalEssentialOCL.g:2911:2: this_MapLiteralExpCS_5= ruleMapLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_MapLiteralExpCS_5=ruleMapLiteralExpCS();
@@ -8515,10 +8515,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MapLiteralExpCS_5; 
+
+                              current = this_MapLiteralExpCS_5;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -8527,14 +8527,14 @@
                     // InternalEssentialOCL.g:2924:2: this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS();
@@ -8542,10 +8542,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_CollectionLiteralExpCS_6; 
+
+                              current = this_CollectionLiteralExpCS_6;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -8554,14 +8554,14 @@
                     // InternalEssentialOCL.g:2937:2: this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_LambdaLiteralExpCS_7=ruleLambdaLiteralExpCS();
@@ -8569,10 +8569,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_LambdaLiteralExpCS_7; 
+
+                              current = this_LambdaLiteralExpCS_7;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -8581,14 +8581,14 @@
                     // InternalEssentialOCL.g:2950:2: this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS();
@@ -8596,10 +8596,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeLiteralExpCS_8; 
+
+                              current = this_TypeLiteralExpCS_8;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -8608,14 +8608,14 @@
                     // InternalEssentialOCL.g:2963:2: this_NameExpCS_9= ruleNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NameExpCS_9=ruleNameExpCS();
@@ -8623,10 +8623,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NameExpCS_9; 
+
+                              current = this_NameExpCS_9;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -8638,14 +8638,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8666,7 +8666,7 @@
             // InternalEssentialOCL.g:2984:2: iv_ruleNameExpCS= ruleNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNameExpCSRule()); 
+               newCompositeNode(grammarAccess.getNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNameExpCS=ruleNameExpCS();
@@ -8674,18 +8674,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNameExpCS; 
+               current =iv_ruleNameExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8709,8 +8709,8 @@
         EObject lv_ownedCurlyBracketedClause_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:2994:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? ) )
             // InternalEssentialOCL.g:2995:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? )
@@ -8725,9 +8725,9 @@
             // InternalEssentialOCL.g:2997:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_28);
             lv_ownedPathName_0_0=rulePathNameCS();
@@ -8740,12 +8740,12 @@
               	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_0_0, 
+                      		lv_ownedPathName_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -8772,9 +8772,9 @@
             	    // InternalEssentialOCL.g:3015:3: lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_28);
             	    lv_ownedSquareBracketedClauses_1_0=ruleSquareBracketedClauseCS();
@@ -8787,12 +8787,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedSquareBracketedClauses",
-            	              		lv_ownedSquareBracketedClauses_1_0, 
+            	              		lv_ownedSquareBracketedClauses_1_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.SquareBracketedClauseCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -8821,9 +8821,9 @@
                     // InternalEssentialOCL.g:3033:3: lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_29);
                     lv_ownedRoundBracketedClause_2_0=ruleRoundBracketedClauseCS();
@@ -8836,12 +8836,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRoundBracketedClause",
-                              		lv_ownedRoundBracketedClause_2_0, 
+                              		lv_ownedRoundBracketedClause_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -8867,9 +8867,9 @@
                     // InternalEssentialOCL.g:3051:3: lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_30);
                     lv_ownedCurlyBracketedClause_3_0=ruleCurlyBracketedClauseCS();
@@ -8882,12 +8882,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCurlyBracketedClause",
-                              		lv_ownedCurlyBracketedClause_3_0, 
+                              		lv_ownedCurlyBracketedClause_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -8919,7 +8919,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isPre_4_0, grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -8927,7 +8927,7 @@
                       	            current = createModelElement(grammarAccess.getNameExpCSRule());
                       	        }
                              		setWithLastConsumed(current, "isPre", true, "@");
-                      	    
+
                     }
 
                     }
@@ -8939,7 +8939,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
-                          
+
                     }
 
                     }
@@ -8954,14 +8954,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8982,7 +8982,7 @@
             // InternalEssentialOCL.g:3096:2: iv_ruleCurlyBracketedClauseCS= ruleCurlyBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCurlyBracketedClauseCSRule()); 
+               newCompositeNode(grammarAccess.getCurlyBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCurlyBracketedClauseCS=ruleCurlyBracketedClauseCS();
@@ -8990,18 +8990,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCurlyBracketedClauseCS; 
+               current =iv_ruleCurlyBracketedClauseCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9024,8 +9024,8 @@
         AntlrDatatypeRuleToken lv_value_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:3106:28: ( ( () otherlv_1= '{' ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) ) otherlv_6= '}' ) )
             // InternalEssentialOCL.g:3107:1: ( () otherlv_1= '{' ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) ) otherlv_6= '}' )
@@ -9034,19 +9034,19 @@
             // InternalEssentialOCL.g:3107:2: () otherlv_1= '{' ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) ) otherlv_6= '}'
             {
             // InternalEssentialOCL.g:3107:2: ()
-            // InternalEssentialOCL.g:3108:2: 
+            // InternalEssentialOCL.g:3108:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -9055,7 +9055,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalEssentialOCL.g:3120:1: ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) )
             int alt46=2;
@@ -9096,9 +9096,9 @@
                             // InternalEssentialOCL.g:3122:3: lv_ownedParts_2_0= ruleShadowPartCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_13);
                             lv_ownedParts_2_0=ruleShadowPartCS();
@@ -9111,12 +9111,12 @@
                               	            current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
                               	        }
                                      		add(
-                                     			current, 
+                                     			current,
                                      			"ownedParts",
-                                      		lv_ownedParts_2_0, 
+                                      		lv_ownedParts_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -9143,7 +9143,7 @@
                             	    if ( state.backtracking==0 ) {
 
                             	          	newLeafNode(otherlv_3, grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
-                            	          
+
                             	    }
                             	    // InternalEssentialOCL.g:3142:1: ( (lv_ownedParts_4_0= ruleShadowPartCS ) )
                             	    // InternalEssentialOCL.g:3143:1: (lv_ownedParts_4_0= ruleShadowPartCS )
@@ -9152,9 +9152,9 @@
                             	    // InternalEssentialOCL.g:3144:3: lv_ownedParts_4_0= ruleShadowPartCS
                             	    {
                             	    if ( state.backtracking==0 ) {
-                            	       
-                            	      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
-                            	      	    
+
+                            	      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
+
                             	    }
                             	    pushFollow(FollowSets000.FOLLOW_13);
                             	    lv_ownedParts_4_0=ruleShadowPartCS();
@@ -9167,12 +9167,12 @@
                             	      	            current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
                             	      	        }
                             	             		add(
-                            	             			current, 
+                            	             			current,
                             	             			"ownedParts",
-                            	              		lv_ownedParts_4_0, 
+                            	              		lv_ownedParts_4_0,
                             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
                             	      	        afterParserOrEnumRuleCall();
-                            	      	    
+
                             	    }
 
                             	    }
@@ -9208,9 +9208,9 @@
                     // InternalEssentialOCL.g:3163:3: lv_value_5_0= ruleStringLiteral
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_18);
                     lv_value_5_0=ruleStringLiteral();
@@ -9223,12 +9223,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"value",
-                              		lv_value_5_0, 
+                              		lv_value_5_0,
                               		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -9246,7 +9246,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_6, grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -9255,14 +9255,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9283,7 +9283,7 @@
             // InternalEssentialOCL.g:3193:2: iv_ruleRoundBracketedClauseCS= ruleRoundBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getRoundBracketedClauseCSRule()); 
+               newCompositeNode(grammarAccess.getRoundBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleRoundBracketedClauseCS=ruleRoundBracketedClauseCS();
@@ -9291,18 +9291,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleRoundBracketedClauseCS; 
+               current =iv_ruleRoundBracketedClauseCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9330,8 +9330,8 @@
         EObject lv_ownedArguments_7_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:3203:28: ( ( () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )? otherlv_8= ')' ) )
             // InternalEssentialOCL.g:3204:1: ( () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )? otherlv_8= ')' )
@@ -9340,19 +9340,19 @@
             // InternalEssentialOCL.g:3204:2: () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )? otherlv_8= ')'
             {
             // InternalEssentialOCL.g:3204:2: ()
-            // InternalEssentialOCL.g:3205:2: 
+            // InternalEssentialOCL.g:3205:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -9361,7 +9361,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
-                  
+
             }
             // InternalEssentialOCL.g:3217:1: ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )?
             int alt52=2;
@@ -9381,9 +9381,9 @@
                     // InternalEssentialOCL.g:3219:3: lv_ownedArguments_2_0= ruleNavigatingArgCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_34);
                     lv_ownedArguments_2_0=ruleNavigatingArgCS();
@@ -9396,12 +9396,12 @@
                       	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedArguments",
-                              		lv_ownedArguments_2_0, 
+                              		lv_ownedArguments_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -9428,9 +9428,9 @@
                     	    // InternalEssentialOCL.g:3237:3: lv_ownedArguments_3_0= ruleNavigatingCommaArgCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_34);
                     	    lv_ownedArguments_3_0=ruleNavigatingCommaArgCS();
@@ -9443,12 +9443,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedArguments",
-                    	              		lv_ownedArguments_3_0, 
+                    	              		lv_ownedArguments_3_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -9480,9 +9480,9 @@
                             // InternalEssentialOCL.g:3255:3: lv_ownedArguments_4_0= ruleNavigatingSemiArgCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_35);
                             lv_ownedArguments_4_0=ruleNavigatingSemiArgCS();
@@ -9495,12 +9495,12 @@
                               	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                               	        }
                                      		add(
-                                     			current, 
+                                     			current,
                                      			"ownedArguments",
-                                      		lv_ownedArguments_4_0, 
+                                      		lv_ownedArguments_4_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingSemiArgCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -9527,9 +9527,9 @@
                             	    // InternalEssentialOCL.g:3273:3: lv_ownedArguments_5_0= ruleNavigatingCommaArgCS
                             	    {
                             	    if ( state.backtracking==0 ) {
-                            	       
-                            	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
-                            	      	    
+
+                            	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
+
                             	    }
                             	    pushFollow(FollowSets000.FOLLOW_35);
                             	    lv_ownedArguments_5_0=ruleNavigatingCommaArgCS();
@@ -9542,12 +9542,12 @@
                             	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                             	      	        }
                             	             		add(
-                            	             			current, 
+                            	             			current,
                             	             			"ownedArguments",
-                            	              		lv_ownedArguments_5_0, 
+                            	              		lv_ownedArguments_5_0,
                             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
                             	      	        afterParserOrEnumRuleCall();
-                            	      	    
+
                             	    }
 
                             	    }
@@ -9589,9 +9589,9 @@
                     	    // InternalEssentialOCL.g:3291:3: lv_ownedArguments_6_0= ruleNavigatingBarArgCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_35);
                     	    lv_ownedArguments_6_0=ruleNavigatingBarArgCS();
@@ -9604,12 +9604,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedArguments",
-                    	              		lv_ownedArguments_6_0, 
+                    	              		lv_ownedArguments_6_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingBarArgCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -9636,9 +9636,9 @@
                     	    	    // InternalEssentialOCL.g:3309:3: lv_ownedArguments_7_0= ruleNavigatingCommaArgCS
                     	    	    {
                     	    	    if ( state.backtracking==0 ) {
-                    	    	       
-                    	    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
-                    	    	      	    
+
+                    	    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
+
                     	    	    }
                     	    	    pushFollow(FollowSets000.FOLLOW_35);
                     	    	    lv_ownedArguments_7_0=ruleNavigatingCommaArgCS();
@@ -9651,12 +9651,12 @@
                     	    	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                     	    	      	        }
                     	    	             		add(
-                    	    	             			current, 
+                    	    	             			current,
                     	    	             			"ownedArguments",
-                    	    	              		lv_ownedArguments_7_0, 
+                    	    	              		lv_ownedArguments_7_0,
                     	    	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
                     	    	      	        afterParserOrEnumRuleCall();
-                    	    	      	    
+
                     	    	    }
 
                     	    	    }
@@ -9689,7 +9689,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_8, grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
-                  
+
             }
 
             }
@@ -9698,14 +9698,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9726,7 +9726,7 @@
             // InternalEssentialOCL.g:3339:2: iv_ruleSquareBracketedClauseCS= ruleSquareBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getSquareBracketedClauseCSRule()); 
+               newCompositeNode(grammarAccess.getSquareBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleSquareBracketedClauseCS=ruleSquareBracketedClauseCS();
@@ -9734,18 +9734,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleSquareBracketedClauseCS; 
+               current =iv_ruleSquareBracketedClauseCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9766,8 +9766,8 @@
         EObject lv_ownedTerms_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:3349:28: ( (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' ) )
             // InternalEssentialOCL.g:3350:1: (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' )
@@ -9779,7 +9779,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
-                  
+
             }
             // InternalEssentialOCL.g:3354:1: ( (lv_ownedTerms_1_0= ruleExpCS ) )
             // InternalEssentialOCL.g:3355:1: (lv_ownedTerms_1_0= ruleExpCS )
@@ -9788,9 +9788,9 @@
             // InternalEssentialOCL.g:3356:3: lv_ownedTerms_1_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_36);
             lv_ownedTerms_1_0=ruleExpCS();
@@ -9803,12 +9803,12 @@
               	            current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedTerms",
-                      		lv_ownedTerms_1_0, 
+                      		lv_ownedTerms_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -9835,7 +9835,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_2, grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
-            	          
+
             	    }
             	    // InternalEssentialOCL.g:3376:1: ( (lv_ownedTerms_3_0= ruleExpCS ) )
             	    // InternalEssentialOCL.g:3377:1: (lv_ownedTerms_3_0= ruleExpCS )
@@ -9844,9 +9844,9 @@
             	    // InternalEssentialOCL.g:3378:3: lv_ownedTerms_3_0= ruleExpCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_36);
             	    lv_ownedTerms_3_0=ruleExpCS();
@@ -9859,12 +9859,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedTerms",
-            	              		lv_ownedTerms_3_0, 
+            	              		lv_ownedTerms_3_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -9885,7 +9885,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
-                  
+
             }
 
             }
@@ -9894,14 +9894,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9922,7 +9922,7 @@
             // InternalEssentialOCL.g:3408:2: iv_ruleNavigatingArgCS= ruleNavigatingArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingArgCS=ruleNavigatingArgCS();
@@ -9930,18 +9930,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingArgCS; 
+               current =iv_ruleNavigatingArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9969,8 +9969,8 @@
         EObject lv_ownedType_8_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:3418:28: ( ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= 'in' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ) ) )
             // InternalEssentialOCL.g:3419:1: ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= 'in' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ) )
@@ -10006,9 +10006,9 @@
                     // InternalEssentialOCL.g:3421:3: lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_37);
                     lv_ownedNameExpression_0_0=ruleNavigatingArgExpCS();
@@ -10021,12 +10021,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedNameExpression",
-                              		lv_ownedNameExpression_0_0, 
+                              		lv_ownedNameExpression_0_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -10055,7 +10055,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_1, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
-                                  
+
                             }
                             // InternalEssentialOCL.g:3441:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                             // InternalEssentialOCL.g:3442:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -10064,9 +10064,9 @@
                             // InternalEssentialOCL.g:3443:3: lv_ownedType_2_0= ruleTypeExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_38);
                             lv_ownedType_2_0=ruleTypeExpCS();
@@ -10079,12 +10079,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedType",
-                                      		lv_ownedType_2_0, 
+                                      		lv_ownedType_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -10107,7 +10107,7 @@
                                     if ( state.backtracking==0 ) {
 
                                           	newLeafNode(otherlv_3, grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
-                                          
+
                                     }
                                     // InternalEssentialOCL.g:3463:1: ( (lv_ownedInitExpression_4_0= ruleExpCS ) )
                                     // InternalEssentialOCL.g:3464:1: (lv_ownedInitExpression_4_0= ruleExpCS )
@@ -10116,9 +10116,9 @@
                                     // InternalEssentialOCL.g:3465:3: lv_ownedInitExpression_4_0= ruleExpCS
                                     {
                                     if ( state.backtracking==0 ) {
-                                       
-                                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
-                                      	    
+
+                                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
+
                                     }
                                     pushFollow(FollowSets000.FOLLOW_2);
                                     lv_ownedInitExpression_4_0=ruleExpCS();
@@ -10131,12 +10131,12 @@
                                       	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                                       	        }
                                              		set(
-                                             			current, 
+                                             			current,
                                              			"ownedInitExpression",
-                                              		lv_ownedInitExpression_4_0, 
+                                              		lv_ownedInitExpression_4_0,
                                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                                       	        afterParserOrEnumRuleCall();
-                                      	    
+
                                     }
 
                                     }
@@ -10166,7 +10166,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_5, grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
-                                  
+
                             }
                             // InternalEssentialOCL.g:3486:1: ( (lv_ownedInitExpression_6_0= ruleExpCS ) )
                             // InternalEssentialOCL.g:3487:1: (lv_ownedInitExpression_6_0= ruleExpCS )
@@ -10175,9 +10175,9 @@
                             // InternalEssentialOCL.g:3488:3: lv_ownedInitExpression_6_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_6_0=ruleExpCS();
@@ -10190,12 +10190,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_6_0, 
+                                      		lv_ownedInitExpression_6_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -10228,7 +10228,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_7, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:3509:1: ( (lv_ownedType_8_0= ruleTypeExpCS ) )
                     // InternalEssentialOCL.g:3510:1: (lv_ownedType_8_0= ruleTypeExpCS )
@@ -10237,9 +10237,9 @@
                     // InternalEssentialOCL.g:3511:3: lv_ownedType_8_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedType_8_0=ruleTypeExpCS();
@@ -10252,12 +10252,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_8_0, 
+                              		lv_ownedType_8_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -10278,14 +10278,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10306,7 +10306,7 @@
             // InternalEssentialOCL.g:3537:2: iv_ruleNavigatingBarArgCS= ruleNavigatingBarArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingBarArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingBarArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingBarArgCS=ruleNavigatingBarArgCS();
@@ -10314,18 +10314,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingBarArgCS; 
+               current =iv_ruleNavigatingBarArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10348,8 +10348,8 @@
         EObject lv_ownedInitExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:3547:28: ( ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) )
             // InternalEssentialOCL.g:3548:1: ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? )
@@ -10367,7 +10367,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -10375,7 +10375,7 @@
               	            current = createModelElement(grammarAccess.getNavigatingBarArgCSRule());
               	        }
                      		setWithLastConsumed(current, "prefix", lv_prefix_0_0, "|");
-              	    
+
             }
 
             }
@@ -10390,9 +10390,9 @@
             // InternalEssentialOCL.g:3565:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_39);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
@@ -10405,12 +10405,12 @@
               	            current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedNameExpression",
-                      		lv_ownedNameExpression_1_0, 
+                      		lv_ownedNameExpression_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -10433,7 +10433,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:3585:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalEssentialOCL.g:3586:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -10442,9 +10442,9 @@
                     // InternalEssentialOCL.g:3587:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_38);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -10457,12 +10457,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -10485,7 +10485,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
-                                  
+
                             }
                             // InternalEssentialOCL.g:3607:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
                             // InternalEssentialOCL.g:3608:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -10494,9 +10494,9 @@
                             // InternalEssentialOCL.g:3609:3: lv_ownedInitExpression_5_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -10509,12 +10509,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_5_0, 
+                                      		lv_ownedInitExpression_5_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -10541,14 +10541,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10569,7 +10569,7 @@
             // InternalEssentialOCL.g:3635:2: iv_ruleNavigatingCommaArgCS= ruleNavigatingCommaArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingCommaArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingCommaArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingCommaArgCS=ruleNavigatingCommaArgCS();
@@ -10577,18 +10577,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingCommaArgCS; 
+               current =iv_ruleNavigatingCommaArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10614,8 +10614,8 @@
         EObject lv_ownedInitExpression_7_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:3645:28: ( ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= 'in' ( (lv_ownedInitExpression_7_0= ruleExpCS ) ) ) )? ) )
             // InternalEssentialOCL.g:3646:1: ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= 'in' ( (lv_ownedInitExpression_7_0= ruleExpCS ) ) ) )? )
@@ -10633,7 +10633,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -10641,7 +10641,7 @@
               	            current = createModelElement(grammarAccess.getNavigatingCommaArgCSRule());
               	        }
                      		setWithLastConsumed(current, "prefix", lv_prefix_0_0, ",");
-              	    
+
             }
 
             }
@@ -10656,9 +10656,9 @@
             // InternalEssentialOCL.g:3663:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_37);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
@@ -10671,12 +10671,12 @@
               	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedNameExpression",
-                      		lv_ownedNameExpression_1_0, 
+                      		lv_ownedNameExpression_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -10705,7 +10705,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:3683:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalEssentialOCL.g:3684:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -10714,9 +10714,9 @@
                     // InternalEssentialOCL.g:3685:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_38);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -10729,12 +10729,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -10757,7 +10757,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
-                                  
+
                             }
                             // InternalEssentialOCL.g:3705:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
                             // InternalEssentialOCL.g:3706:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -10766,9 +10766,9 @@
                             // InternalEssentialOCL.g:3707:3: lv_ownedInitExpression_5_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -10781,12 +10781,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_5_0, 
+                                      		lv_ownedInitExpression_5_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -10816,7 +10816,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:3728:1: ( (lv_ownedInitExpression_7_0= ruleExpCS ) )
                     // InternalEssentialOCL.g:3729:1: (lv_ownedInitExpression_7_0= ruleExpCS )
@@ -10825,9 +10825,9 @@
                     // InternalEssentialOCL.g:3730:3: lv_ownedInitExpression_7_0= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedInitExpression_7_0=ruleExpCS();
@@ -10840,12 +10840,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedInitExpression",
-                              		lv_ownedInitExpression_7_0, 
+                              		lv_ownedInitExpression_7_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -10869,14 +10869,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10897,7 +10897,7 @@
             // InternalEssentialOCL.g:3756:2: iv_ruleNavigatingSemiArgCS= ruleNavigatingSemiArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingSemiArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingSemiArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingSemiArgCS=ruleNavigatingSemiArgCS();
@@ -10905,18 +10905,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingSemiArgCS; 
+               current =iv_ruleNavigatingSemiArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10939,8 +10939,8 @@
         EObject lv_ownedInitExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:3766:28: ( ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) )
             // InternalEssentialOCL.g:3767:1: ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? )
@@ -10958,7 +10958,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -10966,7 +10966,7 @@
               	            current = createModelElement(grammarAccess.getNavigatingSemiArgCSRule());
               	        }
                      		setWithLastConsumed(current, "prefix", lv_prefix_0_0, ";");
-              	    
+
             }
 
             }
@@ -10981,9 +10981,9 @@
             // InternalEssentialOCL.g:3784:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_39);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
@@ -10996,12 +10996,12 @@
               	            current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedNameExpression",
-                      		lv_ownedNameExpression_1_0, 
+                      		lv_ownedNameExpression_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -11024,7 +11024,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:3804:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalEssentialOCL.g:3805:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -11033,9 +11033,9 @@
                     // InternalEssentialOCL.g:3806:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_38);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -11048,12 +11048,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -11076,7 +11076,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
-                                  
+
                             }
                             // InternalEssentialOCL.g:3826:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
                             // InternalEssentialOCL.g:3827:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -11085,9 +11085,9 @@
                             // InternalEssentialOCL.g:3828:3: lv_ownedInitExpression_5_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -11100,12 +11100,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_5_0, 
+                                      		lv_ownedInitExpression_5_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -11132,14 +11132,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11160,7 +11160,7 @@
             // InternalEssentialOCL.g:3854:2: iv_ruleNavigatingArgExpCS= ruleNavigatingArgExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingArgExpCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingArgExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingArgExpCS=ruleNavigatingArgExpCS();
@@ -11168,18 +11168,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingArgExpCS; 
+               current =iv_ruleNavigatingArgExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11195,21 +11195,21 @@
         EObject this_ExpCS_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:3864:28: (this_ExpCS_0= ruleExpCS )
             // InternalEssentialOCL.g:3866:2: this_ExpCS_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_ExpCS_0=ruleExpCS();
@@ -11217,23 +11217,23 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
-                      current = this_ExpCS_0; 
+
+                      current = this_ExpCS_0;
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11254,7 +11254,7 @@
             // InternalEssentialOCL.g:3887:2: iv_ruleIfExpCS= ruleIfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIfExpCSRule()); 
+               newCompositeNode(grammarAccess.getIfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleIfExpCS=ruleIfExpCS();
@@ -11262,18 +11262,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleIfExpCS; 
+               current =iv_ruleIfExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11301,8 +11301,8 @@
         EObject lv_ownedElseExpression_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:3897:28: ( (otherlv_0= 'if' ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* otherlv_5= 'else' ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) otherlv_7= 'endif' ) )
             // InternalEssentialOCL.g:3898:1: (otherlv_0= 'if' ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* otherlv_5= 'else' ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) otherlv_7= 'endif' )
@@ -11314,7 +11314,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getIfExpCSAccess().getIfKeyword_0());
-                  
+
             }
             // InternalEssentialOCL.g:3902:1: ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) )
             // InternalEssentialOCL.g:3903:1: ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) )
@@ -11414,9 +11414,9 @@
                     // InternalEssentialOCL.g:3905:3: lv_ownedCondition_1_1= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_40);
                     lv_ownedCondition_1_1=ruleExpCS();
@@ -11429,12 +11429,12 @@
                       	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCondition",
-                              		lv_ownedCondition_1_1, 
+                              		lv_ownedCondition_1_1,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -11443,9 +11443,9 @@
                     // InternalEssentialOCL.g:3920:8: lv_ownedCondition_1_2= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_40);
                     lv_ownedCondition_1_2=rulePatternExpCS();
@@ -11458,12 +11458,12 @@
                       	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCondition",
-                              		lv_ownedCondition_1_2, 
+                              		lv_ownedCondition_1_2,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -11481,7 +11481,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getIfExpCSAccess().getThenKeyword_2());
-                  
+
             }
             // InternalEssentialOCL.g:3942:1: ( (lv_ownedThenExpression_3_0= ruleExpCS ) )
             // InternalEssentialOCL.g:3943:1: (lv_ownedThenExpression_3_0= ruleExpCS )
@@ -11490,9 +11490,9 @@
             // InternalEssentialOCL.g:3944:3: lv_ownedThenExpression_3_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_41);
             lv_ownedThenExpression_3_0=ruleExpCS();
@@ -11505,12 +11505,12 @@
               	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedThenExpression",
-                      		lv_ownedThenExpression_3_0, 
+                      		lv_ownedThenExpression_3_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -11537,9 +11537,9 @@
             	    // InternalEssentialOCL.g:3962:3: lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_41);
             	    lv_ownedIfThenExpressions_4_0=ruleElseIfThenExpCS();
@@ -11552,12 +11552,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedIfThenExpressions",
-            	              		lv_ownedIfThenExpressions_4_0, 
+            	              		lv_ownedIfThenExpressions_4_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ElseIfThenExpCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -11575,7 +11575,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getIfExpCSAccess().getElseKeyword_5());
-                  
+
             }
             // InternalEssentialOCL.g:3982:1: ( (lv_ownedElseExpression_6_0= ruleExpCS ) )
             // InternalEssentialOCL.g:3983:1: (lv_ownedElseExpression_6_0= ruleExpCS )
@@ -11584,9 +11584,9 @@
             // InternalEssentialOCL.g:3984:3: lv_ownedElseExpression_6_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_42);
             lv_ownedElseExpression_6_0=ruleExpCS();
@@ -11599,12 +11599,12 @@
               	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedElseExpression",
-                      		lv_ownedElseExpression_6_0, 
+                      		lv_ownedElseExpression_6_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -11616,7 +11616,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
-                  
+
             }
 
             }
@@ -11625,14 +11625,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11653,7 +11653,7 @@
             // InternalEssentialOCL.g:4014:2: iv_ruleElseIfThenExpCS= ruleElseIfThenExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getElseIfThenExpCSRule()); 
+               newCompositeNode(grammarAccess.getElseIfThenExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleElseIfThenExpCS=ruleElseIfThenExpCS();
@@ -11661,18 +11661,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleElseIfThenExpCS; 
+               current =iv_ruleElseIfThenExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11692,8 +11692,8 @@
         EObject lv_ownedThenExpression_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4024:28: ( (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ) )
             // InternalEssentialOCL.g:4025:1: (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) )
@@ -11705,7 +11705,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
-                  
+
             }
             // InternalEssentialOCL.g:4029:1: ( (lv_ownedCondition_1_0= ruleExpCS ) )
             // InternalEssentialOCL.g:4030:1: (lv_ownedCondition_1_0= ruleExpCS )
@@ -11714,9 +11714,9 @@
             // InternalEssentialOCL.g:4031:3: lv_ownedCondition_1_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_40);
             lv_ownedCondition_1_0=ruleExpCS();
@@ -11729,12 +11729,12 @@
               	            current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedCondition",
-                      		lv_ownedCondition_1_0, 
+                      		lv_ownedCondition_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -11746,7 +11746,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
-                  
+
             }
             // InternalEssentialOCL.g:4051:1: ( (lv_ownedThenExpression_3_0= ruleExpCS ) )
             // InternalEssentialOCL.g:4052:1: (lv_ownedThenExpression_3_0= ruleExpCS )
@@ -11755,9 +11755,9 @@
             // InternalEssentialOCL.g:4053:3: lv_ownedThenExpression_3_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedThenExpression_3_0=ruleExpCS();
@@ -11770,12 +11770,12 @@
               	            current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedThenExpression",
-                      		lv_ownedThenExpression_3_0, 
+                      		lv_ownedThenExpression_3_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -11790,14 +11790,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11818,7 +11818,7 @@
             // InternalEssentialOCL.g:4079:2: iv_ruleLetExpCS= ruleLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLetExpCSRule()); 
+               newCompositeNode(grammarAccess.getLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLetExpCS=ruleLetExpCS();
@@ -11826,18 +11826,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLetExpCS; 
+               current =iv_ruleLetExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11860,8 +11860,8 @@
         EObject lv_ownedInExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4089:28: ( (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) ) )
             // InternalEssentialOCL.g:4090:1: (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) )
@@ -11873,7 +11873,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getLetExpCSAccess().getLetKeyword_0());
-                  
+
             }
             // InternalEssentialOCL.g:4094:1: ( (lv_ownedVariables_1_0= ruleLetVariableCS ) )
             // InternalEssentialOCL.g:4095:1: (lv_ownedVariables_1_0= ruleLetVariableCS )
@@ -11882,9 +11882,9 @@
             // InternalEssentialOCL.g:4096:3: lv_ownedVariables_1_0= ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_43);
             lv_ownedVariables_1_0=ruleLetVariableCS();
@@ -11897,12 +11897,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetExpCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedVariables",
-                      		lv_ownedVariables_1_0, 
+                      		lv_ownedVariables_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -11929,7 +11929,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_2, grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
-            	          
+
             	    }
             	    // InternalEssentialOCL.g:4116:1: ( (lv_ownedVariables_3_0= ruleLetVariableCS ) )
             	    // InternalEssentialOCL.g:4117:1: (lv_ownedVariables_3_0= ruleLetVariableCS )
@@ -11938,9 +11938,9 @@
             	    // InternalEssentialOCL.g:4118:3: lv_ownedVariables_3_0= ruleLetVariableCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_43);
             	    lv_ownedVariables_3_0=ruleLetVariableCS();
@@ -11953,12 +11953,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLetExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedVariables",
-            	              		lv_ownedVariables_3_0, 
+            	              		lv_ownedVariables_3_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -11979,7 +11979,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getLetExpCSAccess().getInKeyword_3());
-                  
+
             }
             // InternalEssentialOCL.g:4138:1: ( (lv_ownedInExpression_5_0= ruleExpCS ) )
             // InternalEssentialOCL.g:4139:1: (lv_ownedInExpression_5_0= ruleExpCS )
@@ -11988,9 +11988,9 @@
             // InternalEssentialOCL.g:4140:3: lv_ownedInExpression_5_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedInExpression_5_0=ruleExpCS();
@@ -12003,12 +12003,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedInExpression",
-                      		lv_ownedInExpression_5_0, 
+                      		lv_ownedInExpression_5_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -12023,14 +12023,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12051,7 +12051,7 @@
             // InternalEssentialOCL.g:4166:2: iv_ruleLetVariableCS= ruleLetVariableCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLetVariableCSRule()); 
+               newCompositeNode(grammarAccess.getLetVariableCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLetVariableCS=ruleLetVariableCS();
@@ -12059,18 +12059,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLetVariableCS; 
+               current =iv_ruleLetVariableCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12094,8 +12094,8 @@
         EObject lv_ownedInitExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4176:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) ) )
             // InternalEssentialOCL.g:4177:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )
@@ -12110,9 +12110,9 @@
             // InternalEssentialOCL.g:4179:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_44);
             lv_name_0_0=ruleUnrestrictedName();
@@ -12125,12 +12125,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -12153,9 +12153,9 @@
                     // InternalEssentialOCL.g:4197:3: lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_22);
                     lv_ownedRoundBracketedClause_1_0=ruleRoundBracketedClauseCS();
@@ -12168,12 +12168,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRoundBracketedClause",
-                              		lv_ownedRoundBracketedClause_1_0, 
+                              		lv_ownedRoundBracketedClause_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -12199,7 +12199,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:4217:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalEssentialOCL.g:4218:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -12208,9 +12208,9 @@
                     // InternalEssentialOCL.g:4219:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_19);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -12223,12 +12223,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -12246,7 +12246,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
-                  
+
             }
             // InternalEssentialOCL.g:4239:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
             // InternalEssentialOCL.g:4240:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -12255,9 +12255,9 @@
             // InternalEssentialOCL.g:4241:3: lv_ownedInitExpression_5_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -12270,12 +12270,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedInitExpression",
-                      		lv_ownedInitExpression_5_0, 
+                      		lv_ownedInitExpression_5_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -12290,14 +12290,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12318,7 +12318,7 @@
             // InternalEssentialOCL.g:4267:2: iv_ruleNestedExpCS= ruleNestedExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNestedExpCSRule()); 
+               newCompositeNode(grammarAccess.getNestedExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNestedExpCS=ruleNestedExpCS();
@@ -12326,18 +12326,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNestedExpCS; 
+               current =iv_ruleNestedExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12355,8 +12355,8 @@
         EObject lv_ownedExpression_1_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4277:28: ( (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' ) )
             // InternalEssentialOCL.g:4278:1: (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' )
@@ -12368,7 +12368,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
-                  
+
             }
             // InternalEssentialOCL.g:4282:1: ( (lv_ownedExpression_1_0= ruleExpCS ) )
             // InternalEssentialOCL.g:4283:1: (lv_ownedExpression_1_0= ruleExpCS )
@@ -12377,9 +12377,9 @@
             // InternalEssentialOCL.g:4284:3: lv_ownedExpression_1_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_5);
             lv_ownedExpression_1_0=ruleExpCS();
@@ -12392,12 +12392,12 @@
               	            current = createModelElementForParent(grammarAccess.getNestedExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedExpression",
-                      		lv_ownedExpression_1_0, 
+                      		lv_ownedExpression_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -12409,7 +12409,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
-                  
+
             }
 
             }
@@ -12418,14 +12418,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12446,7 +12446,7 @@
             // InternalEssentialOCL.g:4314:2: iv_ruleSelfExpCS= ruleSelfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getSelfExpCSRule()); 
+               newCompositeNode(grammarAccess.getSelfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleSelfExpCS=ruleSelfExpCS();
@@ -12454,18 +12454,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleSelfExpCS; 
+               current =iv_ruleSelfExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12480,8 +12480,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4324:28: ( ( () otherlv_1= 'self' ) )
             // InternalEssentialOCL.g:4325:1: ( () otherlv_1= 'self' )
@@ -12490,19 +12490,19 @@
             // InternalEssentialOCL.g:4325:2: () otherlv_1= 'self'
             {
             // InternalEssentialOCL.g:4325:2: ()
-            // InternalEssentialOCL.g:4326:2: 
+            // InternalEssentialOCL.g:4326:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -12511,7 +12511,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
-                  
+
             }
 
             }
@@ -12520,14 +12520,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12548,7 +12548,7 @@
             // InternalEssentialOCL.g:4348:2: iv_ruleMultiplicityBoundsCS= ruleMultiplicityBoundsCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS();
@@ -12556,18 +12556,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityBoundsCS; 
+               current =iv_ruleMultiplicityBoundsCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12586,8 +12586,8 @@
         AntlrDatatypeRuleToken lv_upperBound_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4358:28: ( ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? ) )
             // InternalEssentialOCL.g:4359:1: ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? )
@@ -12602,9 +12602,9 @@
             // InternalEssentialOCL.g:4361:3: lv_lowerBound_0_0= ruleLOWER
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_15);
             lv_lowerBound_0_0=ruleLOWER();
@@ -12617,12 +12617,12 @@
               	            current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"lowerBound",
-                      		lv_lowerBound_0_0, 
+                      		lv_lowerBound_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.LOWER");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -12645,7 +12645,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:4381:1: ( (lv_upperBound_2_0= ruleUPPER ) )
                     // InternalEssentialOCL.g:4382:1: (lv_upperBound_2_0= ruleUPPER )
@@ -12654,9 +12654,9 @@
                     // InternalEssentialOCL.g:4383:3: lv_upperBound_2_0= ruleUPPER
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_upperBound_2_0=ruleUPPER();
@@ -12669,12 +12669,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"upperBound",
-                              		lv_upperBound_2_0, 
+                              		lv_upperBound_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.UPPER");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -12695,14 +12695,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12723,7 +12723,7 @@
             // InternalEssentialOCL.g:4409:2: iv_ruleMultiplicityCS= ruleMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityCS=ruleMultiplicityCS();
@@ -12731,18 +12731,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityCS; 
+               current =iv_ruleMultiplicityCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12764,8 +12764,8 @@
         EObject this_MultiplicityStringCS_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4419:28: ( (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' ) )
             // InternalEssentialOCL.g:4420:1: (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' )
@@ -12777,7 +12777,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
-                  
+
             }
             // InternalEssentialOCL.g:4424:1: (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS )
             int alt69=2;
@@ -12801,14 +12801,14 @@
                     // InternalEssentialOCL.g:4425:2: this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_47);
                     this_MultiplicityBoundsCS_1=ruleMultiplicityBoundsCS();
@@ -12816,10 +12816,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MultiplicityBoundsCS_1; 
+
+                              current = this_MultiplicityBoundsCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -12828,14 +12828,14 @@
                     // InternalEssentialOCL.g:4438:2: this_MultiplicityStringCS_2= ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_47);
                     this_MultiplicityStringCS_2=ruleMultiplicityStringCS();
@@ -12843,10 +12843,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MultiplicityStringCS_2; 
+
+                              current = this_MultiplicityStringCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -12872,7 +12872,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
-                          
+
                     }
 
                     }
@@ -12890,7 +12890,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isNullFree_4_0, grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -12898,7 +12898,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityCSRule());
                       	        }
                              		setWithLastConsumed(current, "isNullFree", true, "|1");
-                      	    
+
                     }
 
                     }
@@ -12916,7 +12916,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
-                  
+
             }
 
             }
@@ -12925,14 +12925,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12953,7 +12953,7 @@
             // InternalEssentialOCL.g:4483:2: iv_ruleMultiplicityStringCS= ruleMultiplicityStringCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityStringCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityStringCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS();
@@ -12961,18 +12961,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityStringCS; 
+               current =iv_ruleMultiplicityStringCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12989,8 +12989,8 @@
         Token lv_stringBounds_0_2=null;
         Token lv_stringBounds_0_3=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4493:28: ( ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) ) )
             // InternalEssentialOCL.g:4494:1: ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) )
@@ -13035,7 +13035,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_1, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -13043,7 +13043,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_1, null);
-                      	    
+
                     }
 
                     }
@@ -13055,7 +13055,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_2, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -13063,7 +13063,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_2, null);
-                      	    
+
                     }
 
                     }
@@ -13075,7 +13075,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_3, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -13083,7 +13083,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_3, null);
-                      	    
+
                     }
 
                     }
@@ -13101,14 +13101,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13129,7 +13129,7 @@
             // InternalEssentialOCL.g:4546:2: iv_rulePathNameCS= rulePathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPathNameCSRule()); 
+               newCompositeNode(grammarAccess.getPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePathNameCS=rulePathNameCS();
@@ -13137,18 +13137,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePathNameCS; 
+               current =iv_rulePathNameCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13167,8 +13167,8 @@
         EObject lv_ownedPathElements_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4556:28: ( ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) )
             // InternalEssentialOCL.g:4557:1: ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
@@ -13183,9 +13183,9 @@
             // InternalEssentialOCL.g:4559:3: lv_ownedPathElements_0_0= ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_49);
             lv_ownedPathElements_0_0=ruleFirstPathElementCS();
@@ -13198,12 +13198,12 @@
               	            current = createModelElementForParent(grammarAccess.getPathNameCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedPathElements",
-                      		lv_ownedPathElements_0_0, 
+                      		lv_ownedPathElements_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.FirstPathElementCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -13230,7 +13230,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
-            	          
+
             	    }
             	    // InternalEssentialOCL.g:4579:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
             	    // InternalEssentialOCL.g:4580:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
@@ -13239,9 +13239,9 @@
             	    // InternalEssentialOCL.g:4581:3: lv_ownedPathElements_2_0= ruleNextPathElementCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_49);
             	    lv_ownedPathElements_2_0=ruleNextPathElementCS();
@@ -13254,12 +13254,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getPathNameCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPathElements",
-            	              		lv_ownedPathElements_2_0, 
+            	              		lv_ownedPathElements_2_0,
             	              		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -13283,14 +13283,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13311,7 +13311,7 @@
             // InternalEssentialOCL.g:4607:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getFirstPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleFirstPathElementCS=ruleFirstPathElementCS();
@@ -13319,18 +13319,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleFirstPathElementCS; 
+               current =iv_ruleFirstPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13343,8 +13343,8 @@
     public final EObject ruleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4617:28: ( ( ( ruleUnrestrictedName ) ) )
             // InternalEssentialOCL.g:4618:1: ( ( ruleUnrestrictedName ) )
@@ -13356,21 +13356,21 @@
             // InternalEssentialOCL.g:4620:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getFirstPathElementCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -13378,9 +13378,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -13392,14 +13392,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13420,7 +13420,7 @@
             // InternalEssentialOCL.g:4646:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNextPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getNextPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNextPathElementCS=ruleNextPathElementCS();
@@ -13428,18 +13428,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNextPathElementCS; 
+               current =iv_ruleNextPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13452,8 +13452,8 @@
     public final EObject ruleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4656:28: ( ( ( ruleUnreservedName ) ) )
             // InternalEssentialOCL.g:4657:1: ( ( ruleUnreservedName ) )
@@ -13465,21 +13465,21 @@
             // InternalEssentialOCL.g:4659:3: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getNextPathElementCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnreservedName();
@@ -13487,9 +13487,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -13501,14 +13501,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13529,7 +13529,7 @@
             // InternalEssentialOCL.g:4685:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTemplateBindingCSRule()); 
+               newCompositeNode(grammarAccess.getTemplateBindingCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTemplateBindingCS=ruleTemplateBindingCS();
@@ -13537,18 +13537,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTemplateBindingCS; 
+               current =iv_ruleTemplateBindingCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13569,8 +13569,8 @@
         EObject lv_ownedMultiplicity_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4695:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
             // InternalEssentialOCL.g:4696:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
@@ -13585,9 +13585,9 @@
             // InternalEssentialOCL.g:4698:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_50);
             lv_ownedSubstitutions_0_0=ruleTemplateParameterSubstitutionCS();
@@ -13600,12 +13600,12 @@
               	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedSubstitutions",
-                      		lv_ownedSubstitutions_0_0, 
+                      		lv_ownedSubstitutions_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -13632,7 +13632,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
-            	          
+
             	    }
             	    // InternalEssentialOCL.g:4718:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
             	    // InternalEssentialOCL.g:4719:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
@@ -13641,9 +13641,9 @@
             	    // InternalEssentialOCL.g:4720:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_50);
             	    lv_ownedSubstitutions_2_0=ruleTemplateParameterSubstitutionCS();
@@ -13656,12 +13656,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedSubstitutions",
-            	              		lv_ownedSubstitutions_2_0, 
+            	              		lv_ownedSubstitutions_2_0,
             	              		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -13693,9 +13693,9 @@
                     // InternalEssentialOCL.g:4738:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_3_0=ruleMultiplicityCS();
@@ -13708,12 +13708,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_3_0, 
+                              		lv_ownedMultiplicity_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -13731,14 +13731,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13759,7 +13759,7 @@
             // InternalEssentialOCL.g:4764:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS();
@@ -13767,18 +13767,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTemplateParameterSubstitutionCS; 
+               current =iv_ruleTemplateParameterSubstitutionCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13794,8 +13794,8 @@
         EObject lv_ownedActualParameter_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4774:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
             // InternalEssentialOCL.g:4775:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
@@ -13807,9 +13807,9 @@
             // InternalEssentialOCL.g:4777:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedActualParameter_0_0=ruleTypeRefCS();
@@ -13822,12 +13822,12 @@
               	            current = createModelElementForParent(grammarAccess.getTemplateParameterSubstitutionCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedActualParameter",
-                      		lv_ownedActualParameter_0_0, 
+                      		lv_ownedActualParameter_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.TypeRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -13839,14 +13839,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13867,7 +13867,7 @@
             // InternalEssentialOCL.g:4805:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeParameterCSRule()); 
+               newCompositeNode(grammarAccess.getTypeParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeParameterCS=ruleTypeParameterCS();
@@ -13875,18 +13875,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeParameterCS; 
+               current =iv_ruleTypeParameterCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13908,8 +13908,8 @@
         EObject lv_ownedExtends_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4815:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
             // InternalEssentialOCL.g:4816:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
@@ -13924,9 +13924,9 @@
             // InternalEssentialOCL.g:4818:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_52);
             lv_name_0_0=ruleUnrestrictedName();
@@ -13939,12 +13939,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -13967,7 +13967,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:4838:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
                     // InternalEssentialOCL.g:4839:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
@@ -13976,9 +13976,9 @@
                     // InternalEssentialOCL.g:4840:3: lv_ownedExtends_2_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_53);
                     lv_ownedExtends_2_0=ruleTypedRefCS();
@@ -13991,12 +13991,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedExtends",
-                              		lv_ownedExtends_2_0, 
+                              		lv_ownedExtends_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.TypedRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -14023,7 +14023,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
-                    	          
+
                     	    }
                     	    // InternalEssentialOCL.g:4860:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
                     	    // InternalEssentialOCL.g:4861:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
@@ -14032,9 +14032,9 @@
                     	    // InternalEssentialOCL.g:4862:3: lv_ownedExtends_4_0= ruleTypedRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_53);
                     	    lv_ownedExtends_4_0=ruleTypedRefCS();
@@ -14047,12 +14047,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedExtends",
-                    	              		lv_ownedExtends_4_0, 
+                    	              		lv_ownedExtends_4_0,
                     	              		"org.eclipse.ocl.xtext.base.Base.TypedRefCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -14082,14 +14082,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14110,7 +14110,7 @@
             // InternalEssentialOCL.g:4888:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeRefCS=ruleTypeRefCS();
@@ -14118,18 +14118,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeRefCS; 
+               current =iv_ruleTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14147,8 +14147,8 @@
         EObject this_WildcardTypeRefCS_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4898:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
             // InternalEssentialOCL.g:4899:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
@@ -14175,14 +14175,14 @@
                     // InternalEssentialOCL.g:4900:2: this_TypedRefCS_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypedRefCS_0=ruleTypedRefCS();
@@ -14190,10 +14190,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypedRefCS_0; 
+
+                              current = this_TypedRefCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -14202,14 +14202,14 @@
                     // InternalEssentialOCL.g:4913:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_WildcardTypeRefCS_1=ruleWildcardTypeRefCS();
@@ -14217,10 +14217,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_WildcardTypeRefCS_1; 
+
+                              current = this_WildcardTypeRefCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -14232,14 +14232,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14260,7 +14260,7 @@
             // InternalEssentialOCL.g:4934:2: iv_ruleTypedRefCS= ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypedRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypedRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypedRefCS=ruleTypedRefCS();
@@ -14268,18 +14268,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypedRefCS; 
+               current =iv_ruleTypedRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14295,21 +14295,21 @@
         EObject this_TypedTypeRefCS_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4944:28: (this_TypedTypeRefCS_0= ruleTypedTypeRefCS )
             // InternalEssentialOCL.g:4946:2: this_TypedTypeRefCS_0= ruleTypedTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_TypedTypeRefCS_0=ruleTypedTypeRefCS();
@@ -14317,23 +14317,23 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
-                      current = this_TypedTypeRefCS_0; 
+
+                      current = this_TypedTypeRefCS_0;
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14354,7 +14354,7 @@
             // InternalEssentialOCL.g:4967:2: iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypedTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypedTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS();
@@ -14362,18 +14362,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypedTypeRefCS; 
+               current =iv_ruleTypedTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14393,8 +14393,8 @@
         EObject lv_ownedBinding_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:4977:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? ) )
             // InternalEssentialOCL.g:4978:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' )? )
@@ -14409,9 +14409,9 @@
             // InternalEssentialOCL.g:4980:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_3);
             lv_ownedPathName_0_0=rulePathNameCS();
@@ -14424,12 +14424,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_0_0, 
+                      		lv_ownedPathName_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -14452,7 +14452,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:5000:1: ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) )
                     // InternalEssentialOCL.g:5001:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
@@ -14461,9 +14461,9 @@
                     // InternalEssentialOCL.g:5002:3: lv_ownedBinding_2_0= ruleTemplateBindingCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_5);
                     lv_ownedBinding_2_0=ruleTemplateBindingCS();
@@ -14476,12 +14476,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedBinding",
-                              		lv_ownedBinding_2_0, 
+                              		lv_ownedBinding_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.TemplateBindingCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -14493,7 +14493,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_2());
-                          
+
                     }
 
                     }
@@ -14508,14 +14508,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14536,7 +14536,7 @@
             // InternalEssentialOCL.g:5032:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getWildcardTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getWildcardTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS();
@@ -14544,18 +14544,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleWildcardTypeRefCS; 
+               current =iv_ruleWildcardTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14573,8 +14573,8 @@
         EObject lv_ownedExtends_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:5042:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
             // InternalEssentialOCL.g:5043:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
@@ -14583,19 +14583,19 @@
             // InternalEssentialOCL.g:5043:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             {
             // InternalEssentialOCL.g:5043:2: ()
-            // InternalEssentialOCL.g:5044:2: 
+            // InternalEssentialOCL.g:5044:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -14604,7 +14604,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
-                  
+
             }
             // InternalEssentialOCL.g:5056:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             int alt79=2;
@@ -14621,7 +14621,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
-                          
+
                     }
                     // InternalEssentialOCL.g:5060:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
                     // InternalEssentialOCL.g:5061:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
@@ -14630,9 +14630,9 @@
                     // InternalEssentialOCL.g:5062:3: lv_ownedExtends_3_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedExtends_3_0=ruleTypedRefCS();
@@ -14645,12 +14645,12 @@
                       	            current = createModelElementForParent(grammarAccess.getWildcardTypeRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExtends",
-                              		lv_ownedExtends_3_0, 
+                              		lv_ownedExtends_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.TypedRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -14671,14 +14671,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14699,7 +14699,7 @@
             // InternalEssentialOCL.g:5088:2: iv_ruleID= ruleID EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIDRule()); 
+               newCompositeNode(grammarAccess.getIDRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleID=ruleID();
@@ -14707,18 +14707,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleID.getText(); 
+               current =iv_ruleID.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14734,8 +14734,8 @@
         Token this_SIMPLE_ID_0=null;
         Token this_ESCAPED_ID_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:5098:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
             // InternalEssentialOCL.g:5099:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
@@ -14765,12 +14765,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_SIMPLE_ID_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
-                          
+
+                          newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
+
                     }
 
                     }
@@ -14782,12 +14782,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_ESCAPED_ID_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
-                          
+
+                          newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
+
                     }
 
                     }
@@ -14799,14 +14799,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14827,7 +14827,7 @@
             // InternalEssentialOCL.g:5124:2: iv_ruleIdentifier= ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIdentifierRule()); 
+               newCompositeNode(grammarAccess.getIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleIdentifier=ruleIdentifier();
@@ -14835,18 +14835,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleIdentifier.getText(); 
+               current =iv_ruleIdentifier.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14862,16 +14862,16 @@
         AntlrDatatypeRuleToken this_ID_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:5134:28: (this_ID_0= ruleID )
             // InternalEssentialOCL.g:5136:5: this_ID_0= ruleID
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_ID_0=ruleID();
@@ -14881,25 +14881,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_ID_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14920,7 +14920,7 @@
             // InternalEssentialOCL.g:5156:2: iv_ruleLOWER= ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLOWERRule()); 
+               newCompositeNode(grammarAccess.getLOWERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLOWER=ruleLOWER();
@@ -14928,18 +14928,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLOWER.getText(); 
+               current =iv_ruleLOWER.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14954,8 +14954,8 @@
 
         Token this_INT_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:5166:28: (this_INT_0= RULE_INT )
             // InternalEssentialOCL.g:5167:5: this_INT_0= RULE_INT
@@ -14964,25 +14964,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_INT_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15003,7 +15003,7 @@
             // InternalEssentialOCL.g:5184:2: iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNUMBER_LITERALRule()); 
+               newCompositeNode(grammarAccess.getNUMBER_LITERALRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNUMBER_LITERAL=ruleNUMBER_LITERAL();
@@ -15011,18 +15011,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNUMBER_LITERAL.getText(); 
+               current =iv_ruleNUMBER_LITERAL.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15037,8 +15037,8 @@
 
         Token this_INT_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:5194:28: (this_INT_0= RULE_INT )
             // InternalEssentialOCL.g:5195:5: this_INT_0= RULE_INT
@@ -15047,25 +15047,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_INT_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15086,7 +15086,7 @@
             // InternalEssentialOCL.g:5212:2: iv_ruleStringLiteral= ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getStringLiteralRule()); 
+               newCompositeNode(grammarAccess.getStringLiteralRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleStringLiteral=ruleStringLiteral();
@@ -15094,18 +15094,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleStringLiteral.getText(); 
+               current =iv_ruleStringLiteral.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15120,8 +15120,8 @@
 
         Token this_SINGLE_QUOTED_STRING_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:5222:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
             // InternalEssentialOCL.g:5223:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
@@ -15130,25 +15130,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_SINGLE_QUOTED_STRING_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15169,7 +15169,7 @@
             // InternalEssentialOCL.g:5240:2: iv_ruleUPPER= ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUPPERRule()); 
+               newCompositeNode(grammarAccess.getUPPERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUPPER=ruleUPPER();
@@ -15177,18 +15177,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUPPER.getText(); 
+               current =iv_ruleUPPER.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15204,8 +15204,8 @@
         Token this_INT_0=null;
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:5250:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
             // InternalEssentialOCL.g:5251:1: (this_INT_0= RULE_INT | kw= '*' )
@@ -15235,12 +15235,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_INT_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
-                          
+
+                          newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
+
                     }
 
                     }
@@ -15252,8 +15252,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
+
                     }
 
                     }
@@ -15265,14 +15265,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15293,7 +15293,7 @@
             // InternalEssentialOCL.g:5275:2: iv_ruleURI= ruleURI EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getURIRule()); 
+               newCompositeNode(grammarAccess.getURIRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleURI=ruleURI();
@@ -15301,18 +15301,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleURI.getText(); 
+               current =iv_ruleURI.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15327,8 +15327,8 @@
 
         Token this_SINGLE_QUOTED_STRING_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalEssentialOCL.g:5285:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
             // InternalEssentialOCL.g:5286:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
@@ -15337,25 +15337,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_SINGLE_QUOTED_STRING_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15363,7 +15363,7 @@
     // $ANTLR end "ruleURI"
 
     // $ANTLR start synpred66_InternalEssentialOCL
-    public final void synpred66_InternalEssentialOCL_fragment() throws RecognitionException {   
+    public final void synpred66_InternalEssentialOCL_fragment() throws RecognitionException {
         EObject this_TypeLiteralCS_1 = null;
 
 
@@ -15371,9 +15371,9 @@
         // InternalEssentialOCL.g:2533:2: this_TypeLiteralCS_1= ruleTypeLiteralCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_TypeLiteralCS_1=ruleTypeLiteralCS();
@@ -15386,7 +15386,7 @@
     // $ANTLR end synpred66_InternalEssentialOCL
 
     // $ANTLR start synpred69_InternalEssentialOCL
-    public final void synpred69_InternalEssentialOCL_fragment() throws RecognitionException {   
+    public final void synpred69_InternalEssentialOCL_fragment() throws RecognitionException {
         EObject this_PrefixedPrimaryExpCS_0 = null;
 
         AntlrDatatypeRuleToken lv_name_2_0 = null;
@@ -15401,9 +15401,9 @@
         // InternalEssentialOCL.g:2597:2: this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_26);
         this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS();
@@ -15422,12 +15422,12 @@
                 // InternalEssentialOCL.g:2608:2: () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) )
                 {
                 // InternalEssentialOCL.g:2608:2: ()
-                // InternalEssentialOCL.g:2609:2: 
+                // InternalEssentialOCL.g:2609:2:
                 {
                 if ( state.backtracking==0 ) {
-                   
-                  	  /* */ 
-                  	
+
+                  	  /* */
+
                 }
 
                 }
@@ -15439,9 +15439,9 @@
                 // InternalEssentialOCL.g:2619:3: lv_name_2_0= ruleBinaryOperatorName
                 {
                 if ( state.backtracking==0 ) {
-                   
-                  	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
-                  	    
+
+                  	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
+
                 }
                 pushFollow(FollowSets000.FOLLOW_16);
                 lv_name_2_0=ruleBinaryOperatorName();
@@ -15461,9 +15461,9 @@
                 // InternalEssentialOCL.g:2637:3: lv_ownedRight_3_0= ruleExpCS
                 {
                 if ( state.backtracking==0 ) {
-                   
-                  	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
-                  	    
+
+                  	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
+
                 }
                 pushFollow(FollowSets000.FOLLOW_2);
                 lv_ownedRight_3_0=ruleExpCS();
@@ -15491,7 +15491,7 @@
     // $ANTLR end synpred69_InternalEssentialOCL
 
     // $ANTLR start synpred76_InternalEssentialOCL
-    public final void synpred76_InternalEssentialOCL_fragment() throws RecognitionException {   
+    public final void synpred76_InternalEssentialOCL_fragment() throws RecognitionException {
         EObject this_TupleLiteralExpCS_4 = null;
 
 
@@ -15499,9 +15499,9 @@
         // InternalEssentialOCL.g:2898:2: this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS();
@@ -15514,7 +15514,7 @@
     // $ANTLR end synpred76_InternalEssentialOCL
 
     // $ANTLR start synpred77_InternalEssentialOCL
-    public final void synpred77_InternalEssentialOCL_fragment() throws RecognitionException {   
+    public final void synpred77_InternalEssentialOCL_fragment() throws RecognitionException {
         EObject this_MapLiteralExpCS_5 = null;
 
 
@@ -15522,9 +15522,9 @@
         // InternalEssentialOCL.g:2911:2: this_MapLiteralExpCS_5= ruleMapLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_MapLiteralExpCS_5=ruleMapLiteralExpCS();
@@ -15537,7 +15537,7 @@
     // $ANTLR end synpred77_InternalEssentialOCL
 
     // $ANTLR start synpred78_InternalEssentialOCL
-    public final void synpred78_InternalEssentialOCL_fragment() throws RecognitionException {   
+    public final void synpred78_InternalEssentialOCL_fragment() throws RecognitionException {
         EObject this_CollectionLiteralExpCS_6 = null;
 
 
@@ -15545,9 +15545,9 @@
         // InternalEssentialOCL.g:2924:2: this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS();
@@ -15560,7 +15560,7 @@
     // $ANTLR end synpred78_InternalEssentialOCL
 
     // $ANTLR start synpred80_InternalEssentialOCL
-    public final void synpred80_InternalEssentialOCL_fragment() throws RecognitionException {   
+    public final void synpred80_InternalEssentialOCL_fragment() throws RecognitionException {
         EObject this_TypeLiteralExpCS_8 = null;
 
 
@@ -15568,9 +15568,9 @@
         // InternalEssentialOCL.g:2950:2: this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS();
@@ -15727,10 +15727,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA33_11 = input.LA(1);
 
-                         
+
                         int index33_11 = input.index();
                         input.rewind();
                         s = -1;
@@ -15738,14 +15738,14 @@
 
                         else if ( (true) ) {s = 18;}
 
-                         
+
                         input.seek(index33_11);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA33_12 = input.LA(1);
 
-                         
+
                         int index33_12 = input.index();
                         input.rewind();
                         s = -1;
@@ -15753,14 +15753,14 @@
 
                         else if ( (true) ) {s = 18;}
 
-                         
+
                         input.seek(index33_12);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA33_13 = input.LA(1);
 
-                         
+
                         int index33_13 = input.index();
                         input.rewind();
                         s = -1;
@@ -15768,14 +15768,14 @@
 
                         else if ( (true) ) {s = 18;}
 
-                         
+
                         input.seek(index33_13);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA33_14 = input.LA(1);
 
-                         
+
                         int index33_14 = input.index();
                         input.rewind();
                         s = -1;
@@ -15783,14 +15783,14 @@
 
                         else if ( (true) ) {s = 18;}
 
-                         
+
                         input.seek(index33_14);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA33_15 = input.LA(1);
 
-                         
+
                         int index33_15 = input.index();
                         input.rewind();
                         s = -1;
@@ -15798,7 +15798,7 @@
 
                         else if ( (true) ) {s = 18;}
 
-                         
+
                         input.seek(index33_15);
                         if ( s>=0 ) return s;
                         break;
@@ -15877,10 +15877,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA36_1 = input.LA(1);
 
-                         
+
                         int index36_1 = input.index();
                         input.rewind();
                         s = -1;
@@ -15888,14 +15888,14 @@
 
                         else if ( (true) ) {s = 31;}
 
-                         
+
                         input.seek(index36_1);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA36_2 = input.LA(1);
 
-                         
+
                         int index36_2 = input.index();
                         input.rewind();
                         s = -1;
@@ -15903,7 +15903,7 @@
 
                         else if ( (true) ) {s = 31;}
 
-                         
+
                         input.seek(index36_2);
                         if ( s>=0 ) return s;
                         break;
@@ -15979,10 +15979,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA39_11 = input.LA(1);
 
-                         
+
                         int index39_11 = input.index();
                         input.rewind();
                         s = -1;
@@ -15990,14 +15990,14 @@
 
                         else if ( (synpred80_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index39_11);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA39_12 = input.LA(1);
 
-                         
+
                         int index39_12 = input.index();
                         input.rewind();
                         s = -1;
@@ -16005,14 +16005,14 @@
 
                         else if ( (synpred80_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index39_12);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA39_13 = input.LA(1);
 
-                         
+
                         int index39_13 = input.index();
                         input.rewind();
                         s = -1;
@@ -16020,14 +16020,14 @@
 
                         else if ( (synpred80_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index39_13);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA39_14 = input.LA(1);
 
-                         
+
                         int index39_14 = input.index();
                         input.rewind();
                         s = -1;
@@ -16035,14 +16035,14 @@
 
                         else if ( (synpred80_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index39_14);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA39_15 = input.LA(1);
 
-                         
+
                         int index39_15 = input.index();
                         input.rewind();
                         s = -1;
@@ -16050,14 +16050,14 @@
 
                         else if ( (synpred80_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index39_15);
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA39_16 = input.LA(1);
 
-                         
+
                         int index39_16 = input.index();
                         input.rewind();
                         s = -1;
@@ -16065,14 +16065,14 @@
 
                         else if ( (synpred80_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index39_16);
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA39_17 = input.LA(1);
 
-                         
+
                         int index39_17 = input.index();
                         input.rewind();
                         s = -1;
@@ -16080,7 +16080,7 @@
 
                         else if ( (synpred80_InternalEssentialOCL()) ) {s = 19;}
 
-                         
+
                         input.seek(index39_17);
                         if ( s>=0 ) return s;
                         break;
@@ -16092,9 +16092,9 @@
             throw nvae;
         }
     }
- 
 
-    
+
+
     private static class FollowSets000 {
         public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
         public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
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 9ce308b..3cbf3bf 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
@@ -78,7 +78,7 @@
 
 	@Inject
 	private EssentialOCLGrammarAccess grammarAccess;
-	
+
 	@Override
 	public void sequence(ISerializationContext context, EObject semanticObject) {
 		EPackage epackage = semanticObject.eClass().getEPackage();
@@ -89,278 +89,278 @@
 			switch (semanticObject.eClass().getClassifierID()) {
 			case BaseCSPackage.MULTIPLICITY_BOUNDS_CS:
 				if (rule == grammarAccess.getMultiplicityBoundsCSRule()) {
-					sequence_MultiplicityBoundsCS(context, (MultiplicityBoundsCS) semanticObject); 
-					return; 
+					sequence_MultiplicityBoundsCS(context, (MultiplicityBoundsCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getMultiplicityCSRule()) {
-					sequence_MultiplicityBoundsCS_MultiplicityCS(context, (MultiplicityBoundsCS) semanticObject); 
-					return; 
+					sequence_MultiplicityBoundsCS_MultiplicityCS(context, (MultiplicityBoundsCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.MULTIPLICITY_STRING_CS:
 				if (rule == grammarAccess.getMultiplicityCSRule()) {
-					sequence_MultiplicityCS_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject); 
-					return; 
+					sequence_MultiplicityCS_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getMultiplicityStringCSRule()) {
-					sequence_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject); 
-					return; 
+					sequence_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PATH_ELEMENT_CS:
 				if (rule == grammarAccess.getFirstPathElementCSRule()) {
-					sequence_FirstPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_FirstPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNextPathElementCSRule()) {
-					sequence_NextPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_NextPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getURIFirstPathElementCSRule()) {
-					sequence_URIFirstPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_URIFirstPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PATH_ELEMENT_WITH_URICS:
-				sequence_URIFirstPathElementCS(context, (PathElementWithURICS) semanticObject); 
-				return; 
+				sequence_URIFirstPathElementCS(context, (PathElementWithURICS) semanticObject);
+				return;
 			case BaseCSPackage.PATH_NAME_CS:
 				if (rule == grammarAccess.getPathNameCSRule()) {
-					sequence_PathNameCS(context, (PathNameCS) semanticObject); 
-					return; 
+					sequence_PathNameCS(context, (PathNameCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getURIPathNameCSRule()) {
-					sequence_URIPathNameCS(context, (PathNameCS) semanticObject); 
-					return; 
+					sequence_URIPathNameCS(context, (PathNameCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PRIMITIVE_TYPE_REF_CS:
 				if (rule == grammarAccess.getPrimitiveTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()) {
-					sequence_PrimitiveTypeCS(context, (PrimitiveTypeRefCS) semanticObject); 
-					return; 
+					sequence_PrimitiveTypeCS(context, (PrimitiveTypeRefCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_PrimitiveTypeCS_TypeExpCS(context, (PrimitiveTypeRefCS) semanticObject); 
-					return; 
+					sequence_PrimitiveTypeCS_TypeExpCS(context, (PrimitiveTypeRefCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_PrimitiveTypeCS_TypeLiteralWithMultiplicityCS(context, (PrimitiveTypeRefCS) semanticObject); 
-					return; 
+					sequence_PrimitiveTypeCS_TypeLiteralWithMultiplicityCS(context, (PrimitiveTypeRefCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.TEMPLATE_BINDING_CS:
-				sequence_TemplateBindingCS(context, (TemplateBindingCS) semanticObject); 
-				return; 
+				sequence_TemplateBindingCS(context, (TemplateBindingCS) semanticObject);
+				return;
 			case BaseCSPackage.TEMPLATE_PARAMETER_SUBSTITUTION_CS:
-				sequence_TemplateParameterSubstitutionCS(context, (TemplateParameterSubstitutionCS) semanticObject); 
-				return; 
+				sequence_TemplateParameterSubstitutionCS(context, (TemplateParameterSubstitutionCS) semanticObject);
+				return;
 			case BaseCSPackage.TEMPLATE_SIGNATURE_CS:
-				sequence_TemplateSignatureCS(context, (TemplateSignatureCS) semanticObject); 
-				return; 
+				sequence_TemplateSignatureCS(context, (TemplateSignatureCS) semanticObject);
+				return;
 			case BaseCSPackage.TUPLE_PART_CS:
-				sequence_TuplePartCS(context, (TuplePartCS) semanticObject); 
-				return; 
+				sequence_TuplePartCS(context, (TuplePartCS) semanticObject);
+				return;
 			case BaseCSPackage.TUPLE_TYPE_CS:
 				if (rule == grammarAccess.getTupleTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()) {
-					sequence_TupleTypeCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_TupleTypeCS_TypeExpCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS_TypeExpCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_TupleTypeCS_TypeLiteralWithMultiplicityCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS_TypeLiteralWithMultiplicityCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.TYPE_PARAMETER_CS:
-				sequence_TypeParameterCS(context, (TypeParameterCS) semanticObject); 
-				return; 
+				sequence_TypeParameterCS(context, (TypeParameterCS) semanticObject);
+				return;
 			case BaseCSPackage.TYPED_TYPE_REF_CS:
-				sequence_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject); 
-				return; 
+				sequence_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject);
+				return;
 			case BaseCSPackage.WILDCARD_TYPE_REF_CS:
-				sequence_WildcardTypeRefCS(context, (WildcardTypeRefCS) semanticObject); 
-				return; 
+				sequence_WildcardTypeRefCS(context, (WildcardTypeRefCS) semanticObject);
+				return;
 			}
 		else if (epackage == EssentialOCLCSPackage.eINSTANCE)
 			switch (semanticObject.eClass().getClassifierID()) {
 			case EssentialOCLCSPackage.BOOLEAN_LITERAL_EXP_CS:
-				sequence_BooleanLiteralExpCS(context, (BooleanLiteralExpCS) semanticObject); 
-				return; 
+				sequence_BooleanLiteralExpCS(context, (BooleanLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.COLLECTION_LITERAL_EXP_CS:
-				sequence_CollectionLiteralExpCS(context, (CollectionLiteralExpCS) semanticObject); 
-				return; 
+				sequence_CollectionLiteralExpCS(context, (CollectionLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.COLLECTION_LITERAL_PART_CS:
-				sequence_CollectionLiteralPartCS(context, (CollectionLiteralPartCS) semanticObject); 
-				return; 
+				sequence_CollectionLiteralPartCS(context, (CollectionLiteralPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.COLLECTION_PATTERN_CS:
 				if (rule == grammarAccess.getCollectionPatternCSRule()) {
-					sequence_CollectionPatternCS(context, (CollectionPatternCS) semanticObject); 
-					return; 
+					sequence_CollectionPatternCS(context, (CollectionPatternCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_CollectionPatternCS_TypeExpCS(context, (CollectionPatternCS) semanticObject); 
-					return; 
+					sequence_CollectionPatternCS_TypeExpCS(context, (CollectionPatternCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.COLLECTION_TYPE_CS:
 				if (rule == grammarAccess.getCollectionTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()) {
-					sequence_CollectionTypeCS(context, (CollectionTypeCS) semanticObject); 
-					return; 
+					sequence_CollectionTypeCS(context, (CollectionTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_CollectionTypeCS_TypeExpCS(context, (CollectionTypeCS) semanticObject); 
-					return; 
+					sequence_CollectionTypeCS_TypeExpCS(context, (CollectionTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_CollectionTypeCS_TypeLiteralWithMultiplicityCS(context, (CollectionTypeCS) semanticObject); 
-					return; 
+					sequence_CollectionTypeCS_TypeLiteralWithMultiplicityCS(context, (CollectionTypeCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.CONTEXT_CS:
-				sequence_Model(context, (ContextCS) semanticObject); 
-				return; 
+				sequence_Model(context, (ContextCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.CURLY_BRACKETED_CLAUSE_CS:
-				sequence_CurlyBracketedClauseCS(context, (CurlyBracketedClauseCS) semanticObject); 
-				return; 
+				sequence_CurlyBracketedClauseCS(context, (CurlyBracketedClauseCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.IF_EXP_CS:
-				sequence_IfExpCS(context, (IfExpCS) semanticObject); 
-				return; 
+				sequence_IfExpCS(context, (IfExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.IF_THEN_EXP_CS:
-				sequence_ElseIfThenExpCS(context, (IfThenExpCS) semanticObject); 
-				return; 
+				sequence_ElseIfThenExpCS(context, (IfThenExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.INFIX_EXP_CS:
-				sequence_ExpCS(context, (InfixExpCS) semanticObject); 
-				return; 
+				sequence_ExpCS(context, (InfixExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.INVALID_LITERAL_EXP_CS:
-				sequence_InvalidLiteralExpCS(context, (InvalidLiteralExpCS) semanticObject); 
-				return; 
+				sequence_InvalidLiteralExpCS(context, (InvalidLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.LAMBDA_LITERAL_EXP_CS:
-				sequence_LambdaLiteralExpCS(context, (LambdaLiteralExpCS) semanticObject); 
-				return; 
+				sequence_LambdaLiteralExpCS(context, (LambdaLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.LET_EXP_CS:
-				sequence_LetExpCS(context, (LetExpCS) semanticObject); 
-				return; 
+				sequence_LetExpCS(context, (LetExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.LET_VARIABLE_CS:
-				sequence_LetVariableCS(context, (LetVariableCS) semanticObject); 
-				return; 
+				sequence_LetVariableCS(context, (LetVariableCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.MAP_LITERAL_EXP_CS:
-				sequence_MapLiteralExpCS(context, (MapLiteralExpCS) semanticObject); 
-				return; 
+				sequence_MapLiteralExpCS(context, (MapLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.MAP_LITERAL_PART_CS:
-				sequence_MapLiteralPartCS(context, (MapLiteralPartCS) semanticObject); 
-				return; 
+				sequence_MapLiteralPartCS(context, (MapLiteralPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.MAP_TYPE_CS:
 				if (rule == grammarAccess.getMapTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()) {
-					sequence_MapTypeCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_MapTypeCS_TypeExpCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS_TypeExpCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_MapTypeCS_TypeLiteralWithMultiplicityCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS_TypeLiteralWithMultiplicityCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.NAME_EXP_CS:
-				sequence_NameExpCS(context, (NameExpCS) semanticObject); 
-				return; 
+				sequence_NameExpCS(context, (NameExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.NAVIGATING_ARG_CS:
 				if (rule == grammarAccess.getNavigatingArgCSRule()) {
-					sequence_NavigatingArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNavigatingBarArgCSRule()) {
-					sequence_NavigatingBarArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingBarArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNavigatingCommaArgCSRule()) {
-					sequence_NavigatingCommaArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingCommaArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNavigatingSemiArgCSRule()) {
-					sequence_NavigatingSemiArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingSemiArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.NESTED_EXP_CS:
-				sequence_NestedExpCS(context, (NestedExpCS) semanticObject); 
-				return; 
+				sequence_NestedExpCS(context, (NestedExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.NULL_LITERAL_EXP_CS:
-				sequence_NullLiteralExpCS(context, (NullLiteralExpCS) semanticObject); 
-				return; 
+				sequence_NullLiteralExpCS(context, (NullLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.NUMBER_LITERAL_EXP_CS:
-				sequence_NumberLiteralExpCS(context, (NumberLiteralExpCS) semanticObject); 
-				return; 
+				sequence_NumberLiteralExpCS(context, (NumberLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.PATTERN_EXP_CS:
-				sequence_PatternExpCS(context, (PatternExpCS) semanticObject); 
-				return; 
+				sequence_PatternExpCS(context, (PatternExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.PREFIX_EXP_CS:
 				if (rule == grammarAccess.getPrefixedLetExpCSRule()) {
-					sequence_PrefixedLetExpCS(context, (PrefixExpCS) semanticObject); 
-					return; 
+					sequence_PrefixedLetExpCS(context, (PrefixExpCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getExpCSRule()
 						|| rule == grammarAccess.getNavigatingArgExpCSRule()) {
-					sequence_PrefixedLetExpCS_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject); 
-					return; 
+					sequence_PrefixedLetExpCS_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject);
+					return;
 				}
 				else if (action == grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0()
 						|| rule == grammarAccess.getPrefixedPrimaryExpCSRule()) {
-					sequence_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject); 
-					return; 
+					sequence_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.ROUND_BRACKETED_CLAUSE_CS:
-				sequence_RoundBracketedClauseCS(context, (RoundBracketedClauseCS) semanticObject); 
-				return; 
+				sequence_RoundBracketedClauseCS(context, (RoundBracketedClauseCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.SELF_EXP_CS:
-				sequence_SelfExpCS(context, (SelfExpCS) semanticObject); 
-				return; 
+				sequence_SelfExpCS(context, (SelfExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.SHADOW_PART_CS:
-				sequence_ShadowPartCS(context, (ShadowPartCS) semanticObject); 
-				return; 
+				sequence_ShadowPartCS(context, (ShadowPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.SQUARE_BRACKETED_CLAUSE_CS:
-				sequence_SquareBracketedClauseCS(context, (SquareBracketedClauseCS) semanticObject); 
-				return; 
+				sequence_SquareBracketedClauseCS(context, (SquareBracketedClauseCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.STRING_LITERAL_EXP_CS:
-				sequence_StringLiteralExpCS(context, (StringLiteralExpCS) semanticObject); 
-				return; 
+				sequence_StringLiteralExpCS(context, (StringLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TUPLE_LITERAL_EXP_CS:
-				sequence_TupleLiteralExpCS(context, (TupleLiteralExpCS) semanticObject); 
-				return; 
+				sequence_TupleLiteralExpCS(context, (TupleLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TUPLE_LITERAL_PART_CS:
-				sequence_TupleLiteralPartCS(context, (TupleLiteralPartCS) semanticObject); 
-				return; 
+				sequence_TupleLiteralPartCS(context, (TupleLiteralPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TYPE_LITERAL_EXP_CS:
-				sequence_TypeLiteralExpCS(context, (TypeLiteralExpCS) semanticObject); 
-				return; 
+				sequence_TypeLiteralExpCS(context, (TypeLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TYPE_NAME_EXP_CS:
 				if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_TypeExpCS_TypeNameExpCS(context, (TypeNameExpCS) semanticObject); 
-					return; 
+					sequence_TypeExpCS_TypeNameExpCS(context, (TypeNameExpCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeNameExpCSRule()) {
-					sequence_TypeNameExpCS(context, (TypeNameExpCS) semanticObject); 
-					return; 
+					sequence_TypeNameExpCS(context, (TypeNameExpCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.UNLIMITED_NATURAL_LITERAL_EXP_CS:
-				sequence_UnlimitedNaturalLiteralExpCS(context, (UnlimitedNaturalLiteralExpCS) semanticObject); 
-				return; 
+				sequence_UnlimitedNaturalLiteralExpCS(context, (UnlimitedNaturalLiteralExpCS) semanticObject);
+				return;
 			}
 		if (errorAcceptor != null)
 			errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
 	}
-	
+
 	/**
 	 * Contexts:
 	 *     PrimitiveLiteralExpCS returns BooleanLiteralExpCS
@@ -377,8 +377,8 @@
 	protected void sequence_BooleanLiteralExpCS(ISerializationContext context, BooleanLiteralExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     CollectionLiteralExpCS returns CollectionLiteralExpCS
@@ -394,8 +394,8 @@
 	protected void sequence_CollectionLiteralExpCS(ISerializationContext context, CollectionLiteralExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     CollectionLiteralPartCS returns CollectionLiteralPartCS
@@ -406,8 +406,8 @@
 	protected void sequence_CollectionLiteralPartCS(ISerializationContext context, CollectionLiteralPartCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     CollectionPatternCS returns CollectionPatternCS
@@ -418,8 +418,8 @@
 	protected void sequence_CollectionPatternCS(ISerializationContext context, CollectionPatternCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeExpCS returns CollectionPatternCS
@@ -430,8 +430,8 @@
 	protected void sequence_CollectionPatternCS_TypeExpCS(ISerializationContext context, CollectionPatternCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     CollectionTypeCS returns CollectionTypeCS
@@ -443,8 +443,8 @@
 	protected void sequence_CollectionTypeCS(ISerializationContext context, CollectionTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeExpCS returns CollectionTypeCS
@@ -455,8 +455,8 @@
 	protected void sequence_CollectionTypeCS_TypeExpCS(ISerializationContext context, CollectionTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeLiteralWithMultiplicityCS returns CollectionTypeCS
@@ -467,8 +467,8 @@
 	protected void sequence_CollectionTypeCS_TypeLiteralWithMultiplicityCS(ISerializationContext context, CollectionTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     CurlyBracketedClauseCS returns CurlyBracketedClauseCS
@@ -479,8 +479,8 @@
 	protected void sequence_CurlyBracketedClauseCS(ISerializationContext context, CurlyBracketedClauseCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ElseIfThenExpCS returns IfThenExpCS
@@ -500,8 +500,8 @@
 		feeder.accept(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0(), semanticObject.getOwnedThenExpression());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ExpCS returns InfixExpCS
@@ -525,8 +525,8 @@
 		feeder.accept(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0(), semanticObject.getOwnedRight());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ExpCS returns IfExpCS
@@ -538,17 +538,17 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         (ownedCondition=ExpCS | ownedCondition=PatternExpCS) 
-	 *         ownedThenExpression=ExpCS 
-	 *         ownedIfThenExpressions+=ElseIfThenExpCS* 
+	 *         (ownedCondition=ExpCS | ownedCondition=PatternExpCS)
+	 *         ownedThenExpression=ExpCS
+	 *         ownedIfThenExpressions+=ElseIfThenExpCS*
 	 *         ownedElseExpression=ExpCS
 	 *     )
 	 */
 	protected void sequence_IfExpCS(ISerializationContext context, IfExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PrimitiveLiteralExpCS returns InvalidLiteralExpCS
@@ -565,8 +565,8 @@
 	protected void sequence_InvalidLiteralExpCS(ISerializationContext context, InvalidLiteralExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     LambdaLiteralExpCS returns LambdaLiteralExpCS
@@ -588,8 +588,8 @@
 		feeder.accept(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0(), semanticObject.getOwnedExpressionCS());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ExpCS returns LetExpCS
@@ -603,8 +603,8 @@
 	protected void sequence_LetExpCS(ISerializationContext context, LetExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     LetVariableCS returns LetVariableCS
@@ -615,8 +615,8 @@
 	protected void sequence_LetVariableCS(ISerializationContext context, LetVariableCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MapLiteralExpCS returns MapLiteralExpCS
@@ -632,8 +632,8 @@
 	protected void sequence_MapLiteralExpCS(ISerializationContext context, MapLiteralExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MapLiteralPartCS returns MapLiteralPartCS
@@ -653,8 +653,8 @@
 		feeder.accept(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0(), semanticObject.getOwnedValue());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MapTypeCS returns MapTypeCS
@@ -666,8 +666,8 @@
 	protected void sequence_MapTypeCS(ISerializationContext context, MapTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeExpCS returns MapTypeCS
@@ -678,8 +678,8 @@
 	protected void sequence_MapTypeCS_TypeExpCS(ISerializationContext context, MapTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeLiteralWithMultiplicityCS returns MapTypeCS
@@ -690,8 +690,8 @@
 	protected void sequence_MapTypeCS_TypeLiteralWithMultiplicityCS(ISerializationContext context, MapTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     Model returns ContextCS
@@ -708,8 +708,8 @@
 		feeder.accept(grammarAccess.getModelAccess().getOwnedExpressionExpCSParserRuleCall_0(), semanticObject.getOwnedExpression());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ExpCS returns NameExpCS
@@ -721,18 +721,18 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         ownedPathName=PathNameCS 
-	 *         ownedSquareBracketedClauses+=SquareBracketedClauseCS* 
-	 *         ownedRoundBracketedClause=RoundBracketedClauseCS? 
-	 *         ownedCurlyBracketedClause=CurlyBracketedClauseCS? 
+	 *         ownedPathName=PathNameCS
+	 *         ownedSquareBracketedClauses+=SquareBracketedClauseCS*
+	 *         ownedRoundBracketedClause=RoundBracketedClauseCS?
+	 *         ownedCurlyBracketedClause=CurlyBracketedClauseCS?
 	 *         isPre?='@'?
 	 *     )
 	 */
 	protected void sequence_NameExpCS(ISerializationContext context, NameExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     NavigatingArgCS returns NavigatingArgCS
@@ -743,8 +743,8 @@
 	protected void sequence_NavigatingArgCS(ISerializationContext context, NavigatingArgCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     NavigatingBarArgCS returns NavigatingArgCS
@@ -755,8 +755,8 @@
 	protected void sequence_NavigatingBarArgCS(ISerializationContext context, NavigatingArgCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     NavigatingCommaArgCS returns NavigatingArgCS
@@ -767,8 +767,8 @@
 	protected void sequence_NavigatingCommaArgCS(ISerializationContext context, NavigatingArgCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     NavigatingSemiArgCS returns NavigatingArgCS
@@ -779,8 +779,8 @@
 	protected void sequence_NavigatingSemiArgCS(ISerializationContext context, NavigatingArgCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ExpCS returns NestedExpCS
@@ -802,8 +802,8 @@
 		feeder.accept(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0(), semanticObject.getOwnedExpression());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PrimitiveLiteralExpCS returns NullLiteralExpCS
@@ -820,8 +820,8 @@
 	protected void sequence_NullLiteralExpCS(ISerializationContext context, NullLiteralExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PrimitiveLiteralExpCS returns NumberLiteralExpCS
@@ -844,8 +844,8 @@
 		feeder.accept(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0(), semanticObject.getSymbol());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PatternExpCS returns PatternExpCS
@@ -856,8 +856,8 @@
 	protected void sequence_PatternExpCS(ISerializationContext context, PatternExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PrefixedLetExpCS returns PrefixExpCS
@@ -877,8 +877,8 @@
 		feeder.accept(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0(), semanticObject.getOwnedRight());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ExpCS returns PrefixExpCS
@@ -890,8 +890,8 @@
 	protected void sequence_PrefixedLetExpCS_PrefixedPrimaryExpCS(ISerializationContext context, PrefixExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ExpCS.InfixExpCS_0_1_0 returns PrefixExpCS
@@ -912,8 +912,8 @@
 		feeder.accept(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0(), semanticObject.getOwnedRight());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PrimitiveTypeCS returns PrimitiveTypeRefCS
@@ -931,8 +931,8 @@
 		feeder.accept(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0(), semanticObject.getName());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeExpCS returns PrimitiveTypeRefCS
@@ -943,8 +943,8 @@
 	protected void sequence_PrimitiveTypeCS_TypeExpCS(ISerializationContext context, PrimitiveTypeRefCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeLiteralWithMultiplicityCS returns PrimitiveTypeRefCS
@@ -955,25 +955,25 @@
 	protected void sequence_PrimitiveTypeCS_TypeLiteralWithMultiplicityCS(ISerializationContext context, PrimitiveTypeRefCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     RoundBracketedClauseCS returns RoundBracketedClauseCS
 	 *
 	 * Constraint:
 	 *     (
-	 *         ownedArguments+=NavigatingArgCS 
-	 *         ownedArguments+=NavigatingCommaArgCS* 
-	 *         (ownedArguments+=NavigatingSemiArgCS ownedArguments+=NavigatingCommaArgCS*)? 
+	 *         ownedArguments+=NavigatingArgCS
+	 *         ownedArguments+=NavigatingCommaArgCS*
+	 *         (ownedArguments+=NavigatingSemiArgCS ownedArguments+=NavigatingCommaArgCS*)?
 	 *         (ownedArguments+=NavigatingBarArgCS ownedArguments+=NavigatingCommaArgCS*)*
 	 *     )?
 	 */
 	protected void sequence_RoundBracketedClauseCS(ISerializationContext context, RoundBracketedClauseCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ExpCS returns SelfExpCS
@@ -989,8 +989,8 @@
 	protected void sequence_SelfExpCS(ISerializationContext context, SelfExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ShadowPartCS returns ShadowPartCS
@@ -1001,8 +1001,8 @@
 	protected void sequence_ShadowPartCS(ISerializationContext context, ShadowPartCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     SquareBracketedClauseCS returns SquareBracketedClauseCS
@@ -1013,8 +1013,8 @@
 	protected void sequence_SquareBracketedClauseCS(ISerializationContext context, SquareBracketedClauseCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PrimitiveLiteralExpCS returns StringLiteralExpCS
@@ -1031,8 +1031,8 @@
 	protected void sequence_StringLiteralExpCS(ISerializationContext context, StringLiteralExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TupleLiteralExpCS returns TupleLiteralExpCS
@@ -1048,8 +1048,8 @@
 	protected void sequence_TupleLiteralExpCS(ISerializationContext context, TupleLiteralExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TupleLiteralPartCS returns TupleLiteralPartCS
@@ -1060,8 +1060,8 @@
 	protected void sequence_TupleLiteralPartCS(ISerializationContext context, TupleLiteralPartCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TuplePartCS returns TuplePartCS
@@ -1081,8 +1081,8 @@
 		feeder.accept(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0(), semanticObject.getOwnedType());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TupleTypeCS returns TupleTypeCS
@@ -1094,8 +1094,8 @@
 	protected void sequence_TupleTypeCS(ISerializationContext context, TupleTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeExpCS returns TupleTypeCS
@@ -1106,8 +1106,8 @@
 	protected void sequence_TupleTypeCS_TypeExpCS(ISerializationContext context, TupleTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeLiteralWithMultiplicityCS returns TupleTypeCS
@@ -1118,8 +1118,8 @@
 	protected void sequence_TupleTypeCS_TypeLiteralWithMultiplicityCS(ISerializationContext context, TupleTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeExpCS returns TypeNameExpCS
@@ -1130,8 +1130,8 @@
 	protected void sequence_TypeExpCS_TypeNameExpCS(ISerializationContext context, TypeNameExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeLiteralExpCS returns TypeLiteralExpCS
@@ -1153,8 +1153,8 @@
 		feeder.accept(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0(), semanticObject.getOwnedType());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypeNameExpCS returns TypeNameExpCS
@@ -1165,8 +1165,8 @@
 	protected void sequence_TypeNameExpCS(ISerializationContext context, TypeNameExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     URIFirstPathElementCS returns PathElementCS
@@ -1183,8 +1183,8 @@
 		feeder.accept(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1(), semanticObject.getReferredElement());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     URIFirstPathElementCS returns PathElementWithURICS
@@ -1201,8 +1201,8 @@
 		feeder.accept(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1(), semanticObject.getReferredElement());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     URIPathNameCS returns PathNameCS
@@ -1213,8 +1213,8 @@
 	protected void sequence_URIPathNameCS(ISerializationContext context, PathNameCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PrimitiveLiteralExpCS returns UnlimitedNaturalLiteralExpCS
@@ -1231,6 +1231,6 @@
 	protected void sequence_UnlimitedNaturalLiteralExpCS(ISerializationContext context, UnlimitedNaturalLiteralExpCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/serializer/AbstractEssentialOCLSyntacticSequencer.java b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/serializer/AbstractEssentialOCLSyntacticSequencer.java
index 6be36d4..487235f 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/serializer/AbstractEssentialOCLSyntacticSequencer.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/serializer/AbstractEssentialOCLSyntacticSequencer.java
@@ -30,20 +30,20 @@
 	protected EssentialOCLGrammarAccess grammarAccess;
 	protected AbstractElementAlias match_MultiplicityCS_VerticalLineQuestionMarkKeyword_2_0_q;
 	protected AbstractElementAlias match_TupleTypeCS___LeftParenthesisKeyword_1_0_RightParenthesisKeyword_1_2__q;
-	
+
 	@Inject
 	protected void init(IGrammarAccess access) {
 		grammarAccess = (EssentialOCLGrammarAccess) access;
 		match_MultiplicityCS_VerticalLineQuestionMarkKeyword_2_0_q = new TokenAlias(false, true, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
 		match_TupleTypeCS___LeftParenthesisKeyword_1_0_RightParenthesisKeyword_1_2__q = new GroupAlias(false, true, new TokenAlias(false, false, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()), new TokenAlias(false, false, grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()));
 	}
-	
+
 	@Override
 	protected String getUnassignedRuleCallToken(EObject semanticObject, RuleCall ruleCall, INode node) {
 		return "";
 	}
-	
-	
+
+
 	@Override
 	protected void emitUnassignedTokens(EObject semanticObject, ISynTransition transition, INode fromNode, INode toNode) {
 		if (transition.getAmbiguousSyntaxes().isEmpty()) return;
@@ -72,7 +72,7 @@
 	protected void emit_MultiplicityCS_VerticalLineQuestionMarkKeyword_2_0_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('(' ')')?
@@ -84,5 +84,5 @@
 	protected void emit_TupleTypeCS___LeftParenthesisKeyword_1_0_RightParenthesisKeyword_1_2__q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 }
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 f3b7f90..017a324 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
@@ -23,15 +23,15 @@
 
 @Singleton
 public class EssentialOCLGrammarAccess extends AbstractGrammarElementFinder {
-	
-	
+
+
 	public class ModelElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.Model");
 		private final Assignment cOwnedExpressionAssignment = (Assignment)rule.eContents().get(1);
 		private final RuleCall cOwnedExpressionExpCSParserRuleCall_0 = (RuleCall)cOwnedExpressionAssignment.eContents().get(0);
-		
+
 		////generate essentialOCLCST "http://www.eclipse.org/ocl/3.0.0/EssentialOCLCST"
-		// Model ContextCS:
+		//Model ContextCS:
 		//	ownedExpression=ExpCS
 		@Override public ParserRule getRule() { return rule; }
 
@@ -56,10 +56,20 @@
 		private final Keyword cOrKeyword_8 = (Keyword)cAlternatives.eContents().get(8);
 		private final Keyword cThenKeyword_9 = (Keyword)cAlternatives.eContents().get(9);
 		private final Keyword cXorKeyword_10 = (Keyword)cAlternatives.eContents().get(10);
-		
+
 		/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 		//EssentialOCLReservedKeyword:
-		//	'and' | 'else' | 'endif' | 'if' | 'implies' | 'in' | 'let' | 'not' | 'or' | 'then' | 'xor';
+		//	'and'
+		//	| 'else'
+		//	| 'endif'
+		//	| 'if'
+		//	| 'implies'
+		//	| 'in'
+		//	| 'let'
+		//	| 'not'
+		//	| 'or'
+		//	| 'then'
+		//	| 'xor';
 		@Override public ParserRule getRule() { return rule; }
 
 		//'and' | 'else' | 'endif' | 'if' | 'implies' | 'in' | 'let' | 'not' | 'or' | 'then' | 'xor'
@@ -104,7 +114,7 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final Keyword cHyphenMinusKeyword_0 = (Keyword)cAlternatives.eContents().get(0);
 		private final Keyword cNotKeyword_1 = (Keyword)cAlternatives.eContents().get(1);
-		
+
 		/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 		//EssentialOCLUnaryOperatorName:
 		//	'-' | 'not';
@@ -137,7 +147,7 @@
 		private final Keyword cOrKeyword_11 = (Keyword)cAlternatives.eContents().get(11);
 		private final Keyword cXorKeyword_12 = (Keyword)cAlternatives.eContents().get(12);
 		private final Keyword cImpliesKeyword_13 = (Keyword)cAlternatives.eContents().get(13);
-		
+
 		/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 		//EssentialOCLInfixOperatorName:
 		//	'*' | '/' | '+' | '-' | '>' | '<' | '>=' | '<=' | '=' | '<>' | 'and' | 'or' | 'xor' | 'implies';
@@ -196,7 +206,7 @@
 		private final Keyword cHyphenMinusGreaterThanSignKeyword_1 = (Keyword)cAlternatives.eContents().get(1);
 		private final Keyword cQuestionMarkFullStopKeyword_2 = (Keyword)cAlternatives.eContents().get(2);
 		private final Keyword cQuestionMarkHyphenMinusGreaterThanSignKeyword_3 = (Keyword)cAlternatives.eContents().get(3);
-		
+
 		/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 		//EssentialOCLNavigationOperatorName:
 		//	'.' | '->' | '?.' | '?->';
@@ -223,7 +233,7 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final RuleCall cInfixOperatorNameParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cNavigationOperatorNameParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		//BinaryOperatorName:
 		//	InfixOperatorName | NavigationOperatorName;
 		@Override public ParserRule getRule() { return rule; }
@@ -241,51 +251,49 @@
 	public class InfixOperatorNameElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.InfixOperatorName");
 		private final RuleCall cEssentialOCLInfixOperatorNameParserRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//InfixOperatorName:
 		//	EssentialOCLInfixOperatorName;
 		@Override public ParserRule getRule() { return rule; }
 
 		//// Intended to be overrideable
-		// EssentialOCLInfixOperatorName
+		//EssentialOCLInfixOperatorName
 		public RuleCall getEssentialOCLInfixOperatorNameParserRuleCall() { return cEssentialOCLInfixOperatorNameParserRuleCall; }
 	}
 
 	public class NavigationOperatorNameElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigationOperatorName");
 		private final RuleCall cEssentialOCLNavigationOperatorNameParserRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//NavigationOperatorName:
 		//	EssentialOCLNavigationOperatorName;
 		@Override public ParserRule getRule() { return rule; }
 
 		//// Intended to be overrideable
-		// EssentialOCLNavigationOperatorName
+		//EssentialOCLNavigationOperatorName
 		public RuleCall getEssentialOCLNavigationOperatorNameParserRuleCall() { return cEssentialOCLNavigationOperatorNameParserRuleCall; }
 	}
 
 	public class UnaryOperatorNameElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
 		private final RuleCall cEssentialOCLUnaryOperatorNameParserRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//UnaryOperatorName:
 		//	EssentialOCLUnaryOperatorName;
 		@Override public ParserRule getRule() { return rule; }
 
 		//// Intended to be overrideable
-		// EssentialOCLUnaryOperatorName
+		//EssentialOCLUnaryOperatorName
 		public RuleCall getEssentialOCLUnaryOperatorNameParserRuleCall() { return cEssentialOCLUnaryOperatorNameParserRuleCall; }
 	}
 
 	public class EssentialOCLUnrestrictedNameElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.EssentialOCLUnrestrictedName");
 		private final RuleCall cIdentifierParserRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		////---------------------------------------------------------------------
-		// //  Names
-		//
+		////  Names
 		////---------------------------------------------------------------------
-		//
 		/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 		//EssentialOCLUnrestrictedName:
 		//	Identifier;
@@ -298,13 +306,13 @@
 	public class UnrestrictedNameElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
 		private final RuleCall cEssentialOCLUnrestrictedNameParserRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//UnrestrictedName:
 		//	EssentialOCLUnrestrictedName;
 		@Override public ParserRule getRule() { return rule; }
 
 		//// Intended to be overridden
-		// EssentialOCLUnrestrictedName
+		//EssentialOCLUnrestrictedName
 		public RuleCall getEssentialOCLUnrestrictedNameParserRuleCall() { return cEssentialOCLUnrestrictedNameParserRuleCall; }
 	}
 
@@ -316,10 +324,14 @@
 		private final RuleCall cPrimitiveTypeIdentifierParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
 		private final Keyword cMapKeyword_3 = (Keyword)cAlternatives.eContents().get(3);
 		private final Keyword cTupleKeyword_4 = (Keyword)cAlternatives.eContents().get(4);
-		
+
 		/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 		//EssentialOCLUnreservedName:
-		//	UnrestrictedName | CollectionTypeIdentifier | PrimitiveTypeIdentifier | 'Map' | 'Tuple';
+		//	UnrestrictedName
+		//	| CollectionTypeIdentifier
+		//	| PrimitiveTypeIdentifier
+		//	| 'Map'
+		//	| 'Tuple';
 		@Override public ParserRule getRule() { return rule; }
 
 		//UnrestrictedName | CollectionTypeIdentifier | PrimitiveTypeIdentifier | 'Map' | 'Tuple'
@@ -344,13 +356,13 @@
 	public class UnreservedNameElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnreservedName");
 		private final RuleCall cEssentialOCLUnreservedNameParserRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//UnreservedName:
 		//	EssentialOCLUnreservedName;
 		@Override public ParserRule getRule() { return rule; }
 
 		//// Intended to be overridden
-		// EssentialOCLUnreservedName
+		//EssentialOCLUnreservedName
 		public RuleCall getEssentialOCLUnreservedNameParserRuleCall() { return cEssentialOCLUnreservedNameParserRuleCall; }
 	}
 
@@ -363,7 +375,7 @@
 		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);
-		
+
 		//URIPathNameCS base::PathNameCS:
 		//	ownedPathElements+=URIFirstPathElementCS ('::' ownedPathElements+=NextPathElementCS)*
 		@Override public ParserRule getRule() { return rule; }
@@ -401,7 +413,7 @@
 		private final Assignment cReferredElementAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
 		private final CrossReference cReferredElementNamespaceCrossReference_1_1_0 = (CrossReference)cReferredElementAssignment_1_1.eContents().get(0);
 		private final RuleCall cReferredElementNamespaceURIParserRuleCall_1_1_0_1 = (RuleCall)cReferredElementNamespaceCrossReference_1_1_0.eContents().get(1);
-		
+
 		//URIFirstPathElementCS base::PathElementCS:
 		//	referredElement=[pivot::NamedElement|UnrestrictedName] | {base::PathElementWithURICS}
 		//	referredElement=[pivot::Namespace|URI]
@@ -447,13 +459,19 @@
 		private final Keyword cOclAnyKeyword_5 = (Keyword)cAlternatives.eContents().get(5);
 		private final Keyword cOclInvalidKeyword_6 = (Keyword)cAlternatives.eContents().get(6);
 		private final Keyword cOclVoidKeyword_7 = (Keyword)cAlternatives.eContents().get(7);
-		
+
 		////---------------------------------------------------------------------
-		// //  Types
-		//
+		////  Types
 		////---------------------------------------------------------------------
-		// PrimitiveTypeIdentifier:
-		//	'Boolean' | 'Integer' | 'Real' | 'String' | 'UnlimitedNatural' | 'OclAny' | 'OclInvalid' | 'OclVoid';
+		//PrimitiveTypeIdentifier:
+		//	'Boolean'
+		//	| 'Integer'
+		//	| 'Real'
+		//	| 'String'
+		//	| 'UnlimitedNatural'
+		//	| 'OclAny'
+		//	| 'OclInvalid'
+		//	| 'OclVoid';
 		@Override public ParserRule getRule() { return rule; }
 
 		//'Boolean' | 'Integer' | 'Real' | 'String' | 'UnlimitedNatural' | 'OclAny' | 'OclInvalid' | 'OclVoid'
@@ -488,7 +506,7 @@
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrimitiveTypeCS");
 		private final Assignment cNameAssignment = (Assignment)rule.eContents().get(1);
 		private final RuleCall cNamePrimitiveTypeIdentifierParserRuleCall_0 = (RuleCall)cNameAssignment.eContents().get(0);
-		
+
 		//PrimitiveTypeCS base::PrimitiveTypeRefCS:
 		//	name=PrimitiveTypeIdentifier
 		@Override public ParserRule getRule() { return rule; }
@@ -508,9 +526,13 @@
 		private final Keyword cSequenceKeyword_2 = (Keyword)cAlternatives.eContents().get(2);
 		private final Keyword cCollectionKeyword_3 = (Keyword)cAlternatives.eContents().get(3);
 		private final Keyword cOrderedSetKeyword_4 = (Keyword)cAlternatives.eContents().get(4);
-		
+
 		//CollectionTypeIdentifier:
-		//	'Set' | 'Bag' | 'Sequence' | 'Collection' | 'OrderedSet';
+		//	'Set'
+		//	| 'Bag'
+		//	| 'Sequence'
+		//	| 'Collection'
+		//	| 'OrderedSet';
 		@Override public ParserRule getRule() { return rule; }
 
 		//'Set' | 'Bag' | 'Sequence' | 'Collection' | 'OrderedSet'
@@ -542,7 +564,7 @@
 		private final Assignment cOwnedTypeAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
 		private final RuleCall cOwnedTypeTypeExpCSParserRuleCall_1_1_0 = (RuleCall)cOwnedTypeAssignment_1_1.eContents().get(0);
 		private final Keyword cRightParenthesisKeyword_1_2 = (Keyword)cGroup_1.eContents().get(2);
-		
+
 		//CollectionTypeCS:
 		//	name=CollectionTypeIdentifier ('(' ownedType=TypeExpCS ')')?;
 		@Override public ParserRule getRule() { return rule; }
@@ -585,7 +607,7 @@
 		private final Assignment cOwnedValueTypeAssignment_1_3 = (Assignment)cGroup_1.eContents().get(3);
 		private final RuleCall cOwnedValueTypeTypeExpCSParserRuleCall_1_3_0 = (RuleCall)cOwnedValueTypeAssignment_1_3.eContents().get(0);
 		private final Keyword cRightParenthesisKeyword_1_4 = (Keyword)cGroup_1.eContents().get(4);
-		
+
 		//MapTypeCS:
 		//	name='Map' ('(' ownedKeyType=TypeExpCS ',' ownedValueType=TypeExpCS ')')?;
 		@Override public ParserRule getRule() { return rule; }
@@ -639,7 +661,7 @@
 		private final Assignment cOwnedPartsAssignment_1_1_1_1 = (Assignment)cGroup_1_1_1.eContents().get(1);
 		private final RuleCall cOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0 = (RuleCall)cOwnedPartsAssignment_1_1_1_1.eContents().get(0);
 		private final Keyword cRightParenthesisKeyword_1_2 = (Keyword)cGroup_1.eContents().get(2);
-		
+
 		//TupleTypeCS base::TupleTypeCS:
 		//	name='Tuple' ('(' (ownedParts+=TuplePartCS (',' ownedParts+=TuplePartCS)*)? ')')?
 		@Override public ParserRule getRule() { return rule; }
@@ -692,7 +714,7 @@
 		private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		private final Assignment cOwnedTypeAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cOwnedTypeTypeExpCSParserRuleCall_2_0 = (RuleCall)cOwnedTypeAssignment_2.eContents().get(0);
-		
+
 		//TuplePartCS base::TuplePartCS:
 		//	name=UnrestrictedName ':' ownedType=TypeExpCS
 		@Override public ParserRule getRule() { return rule; }
@@ -730,13 +752,14 @@
 		private final Assignment cOwnedPartsAssignment_2_1_1 = (Assignment)cGroup_2_1.eContents().get(1);
 		private final RuleCall cOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0 = (RuleCall)cOwnedPartsAssignment_2_1_1.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		
+
 		////---------------------------------------------------------------------
-		// //  Literals
-		//
+		////  Literals
 		////---------------------------------------------------------------------
-		// CollectionLiteralExpCS:
-		//	ownedType=CollectionTypeCS '{' (ownedParts+=CollectionLiteralPartCS (',' ownedParts+=CollectionLiteralPartCS)*)? '}';
+		//CollectionLiteralExpCS:
+		//	ownedType=CollectionTypeCS
+		//	'{' (ownedParts+=CollectionLiteralPartCS (',' ownedParts+=CollectionLiteralPartCS)*)?
+		//	'}';
 		@Override public ParserRule getRule() { return rule; }
 
 		//ownedType=CollectionTypeCS '{' (ownedParts+=CollectionLiteralPartCS (',' ownedParts+=CollectionLiteralPartCS)*)? '}'
@@ -788,7 +811,7 @@
 		private final RuleCall cOwnedLastExpressionExpCSParserRuleCall_0_1_1_0 = (RuleCall)cOwnedLastExpressionAssignment_0_1_1.eContents().get(0);
 		private final Assignment cOwnedExpressionAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
 		private final RuleCall cOwnedExpressionPatternExpCSParserRuleCall_1_0 = (RuleCall)cOwnedExpressionAssignment_1.eContents().get(0);
-		
+
 		//CollectionLiteralPartCS:
 		//	ownedExpression=ExpCS ('..' ownedLastExpression=ExpCS)? | ownedExpression=PatternExpCS;
 		@Override public ParserRule getRule() { return rule; }
@@ -842,10 +865,11 @@
 		private final Assignment cRestVariableNameAssignment_2_2_1 = (Assignment)cGroup_2_2.eContents().get(1);
 		private final RuleCall cRestVariableNameIdentifierParserRuleCall_2_2_1_0 = (RuleCall)cRestVariableNameAssignment_2_2_1.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		
+
 		//CollectionPatternCS:
-		//	ownedType=CollectionTypeCS '{' (ownedParts+=PatternExpCS (',' ownedParts+=PatternExpCS)* ('++'
-		//	restVariableName=Identifier))? '}';
+		//	ownedType=CollectionTypeCS
+		//	'{' (ownedParts+=PatternExpCS (',' ownedParts+=PatternExpCS)* ('++' restVariableName=Identifier))?
+		//	'}';
 		@Override public ParserRule getRule() { return rule; }
 
 		//ownedType=CollectionTypeCS '{' (ownedParts+=PatternExpCS (',' ownedParts+=PatternExpCS)* ('++'
@@ -909,17 +933,17 @@
 		private final Alternatives cOwnedInitExpressionAlternatives_2_0 = (Alternatives)cOwnedInitExpressionAssignment_2.eContents().get(0);
 		private final RuleCall cOwnedInitExpressionExpCSParserRuleCall_2_0_0 = (RuleCall)cOwnedInitExpressionAlternatives_2_0.eContents().get(0);
 		private final RuleCall cOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1 = (RuleCall)cOwnedInitExpressionAlternatives_2_0.eContents().get(1);
-		
+
 		//ShadowPartCS:
 		//	referredProperty=[pivot::Property|UnrestrictedName] '=' ownedInitExpression=(ExpCS | PatternExpCS);
 		@Override public ParserRule getRule() { return rule; }
 
 		//// PatternPartCS
-		// referredProperty=[pivot::Property|UnrestrictedName] '=' ownedInitExpression=(ExpCS | PatternExpCS)
+		//referredProperty=[pivot::Property|UnrestrictedName] '=' ownedInitExpression=(ExpCS | PatternExpCS)
 		public Group getGroup() { return cGroup; }
 
 		//// PatternPartCS
-		// referredProperty=[pivot::Property|UnrestrictedName]
+		//referredProperty=[pivot::Property|UnrestrictedName]
 		public Assignment getReferredPropertyAssignment_0() { return cReferredPropertyAssignment_0; }
 
 		//[pivot::Property|UnrestrictedName]
@@ -952,7 +976,7 @@
 		private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		private final Assignment cOwnedPatternTypeAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cOwnedPatternTypeTypeExpCSParserRuleCall_2_0 = (RuleCall)cOwnedPatternTypeAssignment_2.eContents().get(0);
-		
+
 		//PatternExpCS:
 		//	patternVariableName=UnrestrictedName? ':' ownedPatternType=TypeExpCS;
 		@Override public ParserRule getRule() { return rule; }
@@ -984,7 +1008,7 @@
 		private final Assignment cOwnedExpressionCSAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cOwnedExpressionCSExpCSParserRuleCall_2_0 = (RuleCall)cOwnedExpressionCSAssignment_2.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		
+
 		//LambdaLiteralExpCS:
 		//	'Lambda' '{' ownedExpressionCS=ExpCS '}';
 		@Override public ParserRule getRule() { return rule; }
@@ -1022,7 +1046,7 @@
 		private final Assignment cOwnedPartsAssignment_2_1_1 = (Assignment)cGroup_2_1.eContents().get(1);
 		private final RuleCall cOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0 = (RuleCall)cOwnedPartsAssignment_2_1_1.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		
+
 		//MapLiteralExpCS:
 		//	ownedType=MapTypeCS '{' (ownedParts+=MapLiteralPartCS (',' ownedParts+=MapLiteralPartCS)*)? '}';
 		@Override public ParserRule getRule() { return rule; }
@@ -1072,7 +1096,7 @@
 		private final Keyword cLessThanSignHyphenMinusKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		private final Assignment cOwnedValueAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cOwnedValueExpCSParserRuleCall_2_0 = (RuleCall)cOwnedValueAssignment_2.eContents().get(0);
-		
+
 		//MapLiteralPartCS:
 		//	ownedKey=ExpCS '<-' ownedValue=ExpCS;
 		@Override public ParserRule getRule() { return rule; }
@@ -1105,10 +1129,14 @@
 		private final RuleCall cUnlimitedNaturalLiteralExpCSParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
 		private final RuleCall cInvalidLiteralExpCSParserRuleCall_4 = (RuleCall)cAlternatives.eContents().get(4);
 		private final RuleCall cNullLiteralExpCSParserRuleCall_5 = (RuleCall)cAlternatives.eContents().get(5);
-		
+
 		//PrimitiveLiteralExpCS:
-		//	NumberLiteralExpCS | StringLiteralExpCS | BooleanLiteralExpCS | UnlimitedNaturalLiteralExpCS | InvalidLiteralExpCS |
-		//	NullLiteralExpCS;
+		//	NumberLiteralExpCS
+		//	| StringLiteralExpCS
+		//	| BooleanLiteralExpCS
+		//	| UnlimitedNaturalLiteralExpCS
+		//	| InvalidLiteralExpCS
+		//	| NullLiteralExpCS;
 		@Override public ParserRule getRule() { return rule; }
 
 		//NumberLiteralExpCS | StringLiteralExpCS | BooleanLiteralExpCS | UnlimitedNaturalLiteralExpCS | InvalidLiteralExpCS |
@@ -1146,7 +1174,7 @@
 		private final Assignment cOwnedPartsAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
 		private final RuleCall cOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0 = (RuleCall)cOwnedPartsAssignment_3_1.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//TupleLiteralExpCS:
 		//	'Tuple' '{' ownedParts+=TupleLiteralPartCS (',' ownedParts+=TupleLiteralPartCS)* '}';
 		@Override public ParserRule getRule() { return rule; }
@@ -1194,7 +1222,7 @@
 		private final Keyword cEqualsSignKeyword_2 = (Keyword)cGroup.eContents().get(2);
 		private final Assignment cOwnedInitExpressionAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cOwnedInitExpressionExpCSParserRuleCall_3_0 = (RuleCall)cOwnedInitExpressionAssignment_3.eContents().get(0);
-		
+
 		//TupleLiteralPartCS:
 		//	name=UnrestrictedName (':' ownedType=TypeExpCS)? '=' ownedInitExpression=ExpCS;
 		@Override public ParserRule getRule() { return rule; }
@@ -1234,7 +1262,7 @@
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NumberLiteralExpCS");
 		private final Assignment cSymbolAssignment = (Assignment)rule.eContents().get(1);
 		private final RuleCall cSymbolNUMBER_LITERALParserRuleCall_0 = (RuleCall)cSymbolAssignment.eContents().get(0);
-		
+
 		//NumberLiteralExpCS:
 		//	symbol=NUMBER_LITERAL;
 		@Override public ParserRule getRule() { return rule; }
@@ -1250,7 +1278,7 @@
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.StringLiteralExpCS");
 		private final Assignment cSegmentsAssignment = (Assignment)rule.eContents().get(1);
 		private final RuleCall cSegmentsStringLiteralParserRuleCall_0 = (RuleCall)cSegmentsAssignment.eContents().get(0);
-		
+
 		//StringLiteralExpCS:
 		//	segments+=StringLiteral+;
 		@Override public ParserRule getRule() { return rule; }
@@ -1269,9 +1297,10 @@
 		private final Keyword cSymbolTrueKeyword_0_0 = (Keyword)cSymbolAssignment_0.eContents().get(0);
 		private final Assignment cSymbolAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
 		private final Keyword cSymbolFalseKeyword_1_0 = (Keyword)cSymbolAssignment_1.eContents().get(0);
-		
+
 		//BooleanLiteralExpCS:
-		//	symbol='true' | symbol='false';
+		//	symbol='true'
+		//	| symbol='false';
 		@Override public ParserRule getRule() { return rule; }
 
 		//symbol='true' | symbol='false'
@@ -1295,7 +1324,7 @@
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Action cUnlimitedNaturalLiteralExpCSAction_0 = (Action)cGroup.eContents().get(0);
 		private final Keyword cAsteriskKeyword_1 = (Keyword)cGroup.eContents().get(1);
-		
+
 		//UnlimitedNaturalLiteralExpCS:
 		//	{UnlimitedNaturalLiteralExpCS} '*';
 		@Override public ParserRule getRule() { return rule; }
@@ -1315,7 +1344,7 @@
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Action cInvalidLiteralExpCSAction_0 = (Action)cGroup.eContents().get(0);
 		private final Keyword cInvalidKeyword_1 = (Keyword)cGroup.eContents().get(1);
-		
+
 		//InvalidLiteralExpCS:
 		//	{InvalidLiteralExpCS} 'invalid';
 		@Override public ParserRule getRule() { return rule; }
@@ -1335,7 +1364,7 @@
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Action cNullLiteralExpCSAction_0 = (Action)cGroup.eContents().get(0);
 		private final Keyword cNullKeyword_1 = (Keyword)cGroup.eContents().get(1);
-		
+
 		//NullLiteralExpCS:
 		//	{NullLiteralExpCS} 'null';
 		@Override public ParserRule getRule() { return rule; }
@@ -1357,9 +1386,12 @@
 		private final RuleCall cCollectionTypeCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
 		private final RuleCall cMapTypeCSParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
 		private final RuleCall cTupleTypeCSParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
-		
+
 		//TypeLiteralCS base::TypedRefCS:
-		//	PrimitiveTypeCS | CollectionTypeCS | MapTypeCS | TupleTypeCS
+		//	PrimitiveTypeCS
+		//	| CollectionTypeCS
+		//	| MapTypeCS
+		//	| TupleTypeCS
 		@Override public ParserRule getRule() { return rule; }
 
 		//PrimitiveTypeCS | CollectionTypeCS | MapTypeCS | TupleTypeCS
@@ -1384,7 +1416,7 @@
 		private final RuleCall cTypeLiteralCSParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
 		private final Assignment cOwnedMultiplicityAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final RuleCall cOwnedMultiplicityMultiplicityCSParserRuleCall_1_0 = (RuleCall)cOwnedMultiplicityAssignment_1.eContents().get(0);
-		
+
 		//TypeLiteralWithMultiplicityCS base::TypedRefCS:
 		//	TypeLiteralCS ownedMultiplicity=MultiplicityCS?
 		@Override public ParserRule getRule() { return rule; }
@@ -1406,7 +1438,7 @@
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeLiteralExpCS");
 		private final Assignment cOwnedTypeAssignment = (Assignment)rule.eContents().get(1);
 		private final RuleCall cOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0 = (RuleCall)cOwnedTypeAssignment.eContents().get(0);
-		
+
 		//TypeLiteralExpCS:
 		//	ownedType=TypeLiteralWithMultiplicityCS;
 		@Override public ParserRule getRule() { return rule; }
@@ -1431,7 +1463,7 @@
 		private final Assignment cOwnedPatternGuardAssignment_1_1_1 = (Assignment)cGroup_1_1.eContents().get(1);
 		private final RuleCall cOwnedPatternGuardExpCSParserRuleCall_1_1_1_0 = (RuleCall)cOwnedPatternGuardAssignment_1_1_1.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_1_1_2 = (Keyword)cGroup_1_1.eContents().get(2);
-		
+
 		//TypeNameExpCS:
 		//	ownedPathName=PathNameCS (ownedCurlyBracketedClause=CurlyBracketedClauseCS ('{' ownedPatternGuard=ExpCS '}')?)?;
 		@Override public ParserRule getRule() { return rule; }
@@ -1479,7 +1511,7 @@
 		private final RuleCall cCollectionPatternCSParserRuleCall_0_2 = (RuleCall)cAlternatives_0.eContents().get(2);
 		private final Assignment cOwnedMultiplicityAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final RuleCall cOwnedMultiplicityMultiplicityCSParserRuleCall_1_0 = (RuleCall)cOwnedMultiplicityAssignment_1.eContents().get(0);
-		
+
 		//TypeExpCS base::TypedRefCS:
 		//	(TypeNameExpCS | TypeLiteralCS | CollectionPatternCS) ownedMultiplicity=MultiplicityCS?
 		@Override public ParserRule getRule() { return rule; }
@@ -1518,41 +1550,30 @@
 		private final Assignment cOwnedRightAssignment_0_1_2 = (Assignment)cGroup_0_1.eContents().get(2);
 		private final RuleCall cOwnedRightExpCSParserRuleCall_0_1_2_0 = (RuleCall)cOwnedRightAssignment_0_1_2.eContents().get(0);
 		private final RuleCall cPrefixedLetExpCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		////---------------------------------------------------------------------
-		// //  Expressions
-		//
+		////  Expressions
 		////---------------------------------------------------------------------
-		//
 		//// An ExpCS permits a LetExpCS only in the final term to ensure
-		//
 		////  that let is right associative, whereas infix operators are left associative.
-		//
-		////   a = 64 / 16 / let b : Integer in 8 / let c : Integer in 4 
-		// // is
-		//
+		////   a = 64 / 16 / let b : Integer in 8 / let c : Integer in 4
+		//// is
 		////   a = (64 / 16) / (let b : Integer in 8 / (let c : Integer in 4 ))
-		//
 		/// * An expression elaborates a prefixed expression with zero or more binary operator and expression suffixes.
-		// * An optionally prefixed let expression is permitted except when suffixed with further expressions.* /
-		//ExpCS:
+		// * An optionally prefixed let expression is permitted except when suffixed with further expressions.* / ExpCS:
 		//	PrefixedPrimaryExpCS ({InfixExpCS.ownedLeft=current} name=BinaryOperatorName ownedRight=ExpCS)? | PrefixedLetExpCS;
 		@Override public ParserRule getRule() { return rule; }
 
 		////	({InfixExpCS} ownedSource=PrefixedExpCS name=BinaryOperatorName ownedArgument=ExpCS)
-		// //| 	PrefixedExpCS
-		//
+		////| 	PrefixedExpCS
 		//// the above takes exponential or worse time for backtracking, below is fast
-		// PrefixedPrimaryExpCS
-		//({InfixExpCS.ownedLeft=current} name=BinaryOperatorName ownedRight=ExpCS)? | PrefixedLetExpCS
+		//PrefixedPrimaryExpCS ({InfixExpCS.ownedLeft=current} name=BinaryOperatorName ownedRight=ExpCS)? | PrefixedLetExpCS
 		public Alternatives getAlternatives() { return cAlternatives; }
 
 		////	({InfixExpCS} ownedSource=PrefixedExpCS name=BinaryOperatorName ownedArgument=ExpCS)
-		// //| 	PrefixedExpCS
-		//
+		////| 	PrefixedExpCS
 		//// the above takes exponential or worse time for backtracking, below is fast
-		// PrefixedPrimaryExpCS
-		//({InfixExpCS.ownedLeft=current} name=BinaryOperatorName ownedRight=ExpCS)?
+		//PrefixedPrimaryExpCS ({InfixExpCS.ownedLeft=current} name=BinaryOperatorName ownedRight=ExpCS)?
 		public Group getGroup_0() { return cGroup_0; }
 
 		//PrefixedPrimaryExpCS
@@ -1590,7 +1611,7 @@
 		private final Assignment cOwnedRightAssignment_0_2 = (Assignment)cGroup_0.eContents().get(2);
 		private final RuleCall cOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0 = (RuleCall)cOwnedRightAssignment_0_2.eContents().get(0);
 		private final RuleCall cLetExpCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		/// * A prefixed let expression elaborates a let expression with zero or more unary prefix operators. * / PrefixedLetExpCS
 		//ExpCS:
 		//	{PrefixExpCS} name=UnaryOperatorName ownedRight=PrefixedLetExpCS | LetExpCS
@@ -1631,7 +1652,7 @@
 		private final Assignment cOwnedRightAssignment_0_2 = (Assignment)cGroup_0.eContents().get(2);
 		private final RuleCall cOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0 = (RuleCall)cOwnedRightAssignment_0_2.eContents().get(0);
 		private final RuleCall cPrimaryExpCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		/// * A prefixed primary expression elaborates a primary expression with zero or more unary prefix operators. * /
 		//PrefixedPrimaryExpCS ExpCS:
 		//	{PrefixExpCS} name=UnaryOperatorName ownedRight=PrefixedPrimaryExpCS | PrimaryExpCS
@@ -1675,11 +1696,19 @@
 		private final RuleCall cLambdaLiteralExpCSParserRuleCall_7 = (RuleCall)cAlternatives.eContents().get(7);
 		private final RuleCall cTypeLiteralExpCSParserRuleCall_8 = (RuleCall)cAlternatives.eContents().get(8);
 		private final RuleCall cNameExpCSParserRuleCall_9 = (RuleCall)cAlternatives.eContents().get(9);
-		
+
 		/// * A primary expression identifies the basic expressions from which more complex expressions may be constructed. * /
 		//PrimaryExpCS ExpCS:
-		//	NestedExpCS | IfExpCS | SelfExpCS | PrimitiveLiteralExpCS | TupleLiteralExpCS | MapLiteralExpCS |
-		//	CollectionLiteralExpCS | LambdaLiteralExpCS | TypeLiteralExpCS | NameExpCS
+		//	NestedExpCS
+		//	| IfExpCS
+		//	| SelfExpCS
+		//	| PrimitiveLiteralExpCS
+		//	| TupleLiteralExpCS
+		//	| MapLiteralExpCS
+		//	| CollectionLiteralExpCS
+		//	| LambdaLiteralExpCS
+		//	| TypeLiteralExpCS
+		//	| NameExpCS
 		@Override public ParserRule getRule() { return rule; }
 
 		//NestedExpCS | IfExpCS | SelfExpCS | PrimitiveLiteralExpCS | TupleLiteralExpCS | MapLiteralExpCS | CollectionLiteralExpCS
@@ -1732,18 +1761,16 @@
 		private final Assignment cIsPreAssignment_4_0 = (Assignment)cGroup_4.eContents().get(0);
 		private final Keyword cIsPreCommercialAtKeyword_4_0_0 = (Keyword)cIsPreAssignment_4_0.eContents().get(0);
 		private final Keyword cPreKeyword_4_1 = (Keyword)cGroup_4.eContents().get(1);
-		
+
 		/// * A name expression is a generalised rule for expressions that start with a name and which may be followed by square, round or
-		// * curly bracket clauses and optionally an @pre as well.* /
-		//NameExpCS:
+		// * curly bracket clauses and optionally an @pre as well.* / NameExpCS:
 		//	ownedPathName=PathNameCS ownedSquareBracketedClauses+=SquareBracketedClauseCS*
 		//	ownedRoundBracketedClause=RoundBracketedClauseCS? ownedCurlyBracketedClause=CurlyBracketedClauseCS? (isPre?='@'
 		//	'pre')?;
 		@Override public ParserRule getRule() { return rule; }
 
 		//ownedPathName=PathNameCS ownedSquareBracketedClauses+=SquareBracketedClauseCS*
-		//ownedRoundBracketedClause=RoundBracketedClauseCS? ownedCurlyBracketedClause=CurlyBracketedClauseCS? (isPre?='@'
-		//'pre')?
+		//ownedRoundBracketedClause=RoundBracketedClauseCS? ownedCurlyBracketedClause=CurlyBracketedClauseCS? (isPre?='@' 'pre')?
 		public Group getGroup() { return cGroup; }
 
 		//ownedPathName=PathNameCS
@@ -1799,10 +1826,11 @@
 		private final Assignment cValueAssignment_2_1 = (Assignment)cAlternatives_2.eContents().get(1);
 		private final RuleCall cValueStringLiteralParserRuleCall_2_1_0 = (RuleCall)cValueAssignment_2_1.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		
+
 		/// * A curly bracket clause is a generalized rule for the literal arguments of collections, maps, tuples and shadows.* /
 		//CurlyBracketedClauseCS:
-		//	{CurlyBracketedClauseCS} '{' ((ownedParts+=ShadowPartCS (',' ownedParts+=ShadowPartCS)*)? | value=StringLiteral) '}';
+		//	{CurlyBracketedClauseCS} '{' ((ownedParts+=ShadowPartCS (',' ownedParts+=ShadowPartCS)*)?
+		//	| value=StringLiteral) '}';
 		@Override public ParserRule getRule() { return rule; }
 
 		//{CurlyBracketedClauseCS} '{' ((ownedParts+=ShadowPartCS (',' ownedParts+=ShadowPartCS)*)? | value=StringLiteral) '}'
@@ -1869,7 +1897,7 @@
 		private final Assignment cOwnedArgumentsAssignment_2_3_1 = (Assignment)cGroup_2_3.eContents().get(1);
 		private final RuleCall cOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0 = (RuleCall)cOwnedArgumentsAssignment_2_3_1.eContents().get(0);
 		private final Keyword cRightParenthesisKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		
+
 		/// * A curly bracket clause is a generalized rule for template specialisations and operations arguments.* /
 		//RoundBracketedClauseCS:
 		//	{RoundBracketedClauseCS} '(' (ownedArguments+=NavigatingArgCS ownedArguments+=NavigatingCommaArgCS*
@@ -1949,7 +1977,7 @@
 		private final Assignment cOwnedTermsAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1);
 		private final RuleCall cOwnedTermsExpCSParserRuleCall_2_1_0 = (RuleCall)cOwnedTermsAssignment_2_1.eContents().get(0);
 		private final Keyword cRightSquareBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		
+
 		/// * A square bracket clause is a generalized rule for association class qualifiers and roles.* / SquareBracketedClauseCS:
 		//	'[' ownedTerms+=ExpCS (',' ownedTerms+=ExpCS)* ']';
 		@Override public ParserRule getRule() { return rule; }
@@ -2005,10 +2033,9 @@
 		private final Keyword cColonKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
 		private final Assignment cOwnedTypeAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
 		private final RuleCall cOwnedTypeTypeExpCSParserRuleCall_1_1_0 = (RuleCall)cOwnedTypeAssignment_1_1.eContents().get(0);
-		
+
 		/// * A navigating argument is a generalized rule for the first argument in a round bracket clause. This is typically the first operation
-		// * parameter or an iterator. * /
-		//NavigatingArgCS:
+		// * parameter or an iterator. * / NavigatingArgCS:
 		//	ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)? | 'in'
 		//	ownedInitExpression=ExpCS)? | ':' ownedType=TypeExpCS;
 		@Override public ParserRule getRule() { return rule; }
@@ -2094,9 +2121,8 @@
 		private final Keyword cEqualsSignKeyword_2_2_0 = (Keyword)cGroup_2_2.eContents().get(0);
 		private final Assignment cOwnedInitExpressionAssignment_2_2_1 = (Assignment)cGroup_2_2.eContents().get(1);
 		private final RuleCall cOwnedInitExpressionExpCSParserRuleCall_2_2_1_0 = (RuleCall)cOwnedInitExpressionAssignment_2_2_1.eContents().get(0);
-		
+
 		//// Type-less init is an illegal infix expression
-		//
 		/// * A navigating bar argument is a generalized rule for a bar-prefixed argument in a round bracket clause. This is typically the body of an iteration. * /
 		//NavigatingBarArgCS NavigatingArgCS:
 		//	prefix='|' ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)?)?
@@ -2162,12 +2188,10 @@
 		private final Keyword cInKeyword_2_1_0 = (Keyword)cGroup_2_1.eContents().get(0);
 		private final Assignment cOwnedInitExpressionAssignment_2_1_1 = (Assignment)cGroup_2_1.eContents().get(1);
 		private final RuleCall cOwnedInitExpressionExpCSParserRuleCall_2_1_1_0 = (RuleCall)cOwnedInitExpressionAssignment_2_1_1.eContents().get(0);
-		
+
 		//// Type-less init is an illegal infix expression
-		//
 		/// * A navigating comma argument is a generalized rule for non-first argument in a round bracket clause. These are typically non-first operation
-		// * parameters or a second iterator. * /
-		//NavigatingCommaArgCS NavigatingArgCS:
+		// * parameters or a second iterator. * / NavigatingCommaArgCS NavigatingArgCS:
 		//	prefix=',' ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)? | 'in'
 		//	ownedInitExpression=ExpCS)?
 		@Override public ParserRule getRule() { return rule; }
@@ -2243,9 +2267,8 @@
 		private final Keyword cEqualsSignKeyword_2_2_0 = (Keyword)cGroup_2_2.eContents().get(0);
 		private final Assignment cOwnedInitExpressionAssignment_2_2_1 = (Assignment)cGroup_2_2.eContents().get(1);
 		private final RuleCall cOwnedInitExpressionExpCSParserRuleCall_2_2_1_0 = (RuleCall)cOwnedInitExpressionAssignment_2_2_1.eContents().get(0);
-		
+
 		//// Type-less init is an illegal infix expression
-		//
 		/// * A navigating semi argument is a generalized rule for a semicolon prefixed argument in a round bracket clause. This is typically an iterate accumulator. * /
 		//NavigatingSemiArgCS NavigatingArgCS:
 		//	prefix=';' ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)?)?
@@ -2294,14 +2317,14 @@
 	public class NavigatingArgExpCSElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
 		private final RuleCall cExpCSParserRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//// Type-less init is an illegal infix expression
-		// NavigatingArgExpCS ExpCS:
+		//NavigatingArgExpCS ExpCS:
 		//	ExpCS
 		@Override public ParserRule getRule() { return rule; }
 
 		//// Intended to be overridden
-		// ExpCS
+		//ExpCS
 		public RuleCall getExpCSParserRuleCall() { return cExpCSParserRuleCall; }
 	}
 
@@ -2322,15 +2345,17 @@
 		private final Assignment cOwnedElseExpressionAssignment_6 = (Assignment)cGroup.eContents().get(6);
 		private final RuleCall cOwnedElseExpressionExpCSParserRuleCall_6_0 = (RuleCall)cOwnedElseExpressionAssignment_6.eContents().get(0);
 		private final Keyword cEndifKeyword_7 = (Keyword)cGroup.eContents().get(7);
-		
+
 		//IfExpCS:
-		//	'if' ownedCondition=(ExpCS | PatternExpCS) 'then' ownedThenExpression=ExpCS //	ifThenExpressions+=IfThenExpCS
-		//
-		//	ownedIfThenExpressions+=ElseIfThenExpCS* 'else' ownedElseExpression=ExpCS 'endif';
+		//	'if' ownedCondition=(ExpCS | PatternExpCS)
+		//	'then' ownedThenExpression=ExpCS
+		//	//	ifThenExpressions+=IfThenExpCS
+		//	ownedIfThenExpressions+=ElseIfThenExpCS*
+		//	'else' ownedElseExpression=ExpCS
+		//	'endif';
 		@Override public ParserRule getRule() { return rule; }
 
 		//'if' ownedCondition=(ExpCS | PatternExpCS) 'then' ownedThenExpression=ExpCS //	ifThenExpressions+=IfThenExpCS
-		//
 		//ownedIfThenExpressions+=ElseIfThenExpCS* 'else' ownedElseExpression=ExpCS 'endif'
 		public Group getGroup() { return cGroup; }
 
@@ -2359,7 +2384,7 @@
 		public RuleCall getOwnedThenExpressionExpCSParserRuleCall_3_0() { return cOwnedThenExpressionExpCSParserRuleCall_3_0; }
 
 		////	ifThenExpressions+=IfThenExpCS
-		// ownedIfThenExpressions+=ElseIfThenExpCS*
+		//ownedIfThenExpressions+=ElseIfThenExpCS*
 		public Assignment getOwnedIfThenExpressionsAssignment_4() { return cOwnedIfThenExpressionsAssignment_4; }
 
 		//ElseIfThenExpCS
@@ -2387,14 +2412,14 @@
 		private final Keyword cThenKeyword_2 = (Keyword)cGroup.eContents().get(2);
 		private final Assignment cOwnedThenExpressionAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cOwnedThenExpressionExpCSParserRuleCall_3_0 = (RuleCall)cOwnedThenExpressionAssignment_3.eContents().get(0);
-		
+
 		////IfThenExpCS returns IfThenExpCS:
-		// //	'if' condition=ExpCS
-		// //	'then' thenExpression=ExpCS
-		// //;
-		// ElseIfThenExpCS
-		//IfThenExpCS:
-		//	'elseif' ownedCondition=ExpCS 'then' ownedThenExpression=ExpCS
+		////	'if' condition=ExpCS
+		////	'then' thenExpression=ExpCS
+		////;
+		//ElseIfThenExpCS IfThenExpCS:
+		//	'elseif' ownedCondition=ExpCS
+		//	'then' ownedThenExpression=ExpCS
 		@Override public ParserRule getRule() { return rule; }
 
 		//'elseif' ownedCondition=ExpCS 'then' ownedThenExpression=ExpCS
@@ -2432,9 +2457,10 @@
 		private final Keyword cInKeyword_3 = (Keyword)cGroup.eContents().get(3);
 		private final Assignment cOwnedInExpressionAssignment_4 = (Assignment)cGroup.eContents().get(4);
 		private final RuleCall cOwnedInExpressionExpCSParserRuleCall_4_0 = (RuleCall)cOwnedInExpressionAssignment_4.eContents().get(0);
-		
+
 		//LetExpCS:
-		//	'let' ownedVariables+=LetVariableCS (',' ownedVariables+=LetVariableCS)* 'in' ownedInExpression=ExpCS;
+		//	'let' ownedVariables+=LetVariableCS (',' ownedVariables+=LetVariableCS)*
+		//	'in' ownedInExpression=ExpCS;
 		@Override public ParserRule getRule() { return rule; }
 
 		//'let' ownedVariables+=LetVariableCS (',' ownedVariables+=LetVariableCS)* 'in' ownedInExpression=ExpCS
@@ -2485,7 +2511,7 @@
 		private final Keyword cEqualsSignKeyword_3 = (Keyword)cGroup.eContents().get(3);
 		private final Assignment cOwnedInitExpressionAssignment_4 = (Assignment)cGroup.eContents().get(4);
 		private final RuleCall cOwnedInitExpressionExpCSParserRuleCall_4_0 = (RuleCall)cOwnedInitExpressionAssignment_4.eContents().get(0);
-		
+
 		//LetVariableCS:
 		//	name=UnrestrictedName ownedRoundBracketedClause=RoundBracketedClauseCS? (':' ownedType=TypeExpCS)? '='
 		//	ownedInitExpression=ExpCS;
@@ -2536,7 +2562,7 @@
 		private final Assignment cOwnedExpressionAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final RuleCall cOwnedExpressionExpCSParserRuleCall_1_0 = (RuleCall)cOwnedExpressionAssignment_1.eContents().get(0);
 		private final Keyword cRightParenthesisKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		
+
 		//NestedExpCS:
 		//	'(' ownedExpression=ExpCS ')';
 		@Override public ParserRule getRule() { return rule; }
@@ -2562,7 +2588,7 @@
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Action cSelfExpCSAction_0 = (Action)cGroup.eContents().get(0);
 		private final Keyword cSelfKeyword_1 = (Keyword)cGroup.eContents().get(1);
-		
+
 		//SelfExpCS:
 		//	{SelfExpCS} 'self';
 		@Override public ParserRule getRule() { return rule; }
@@ -2576,8 +2602,8 @@
 		//'self'
 		public Keyword getSelfKeyword_1() { return cSelfKeyword_1; }
 	}
-	
-	
+
+
 	private final ModelElements pModel;
 	private final EssentialOCLReservedKeywordElements pEssentialOCLReservedKeyword;
 	private final EssentialOCLUnaryOperatorNameElements pEssentialOCLUnaryOperatorName;
@@ -2641,7 +2667,7 @@
 	private final LetVariableCSElements pLetVariableCS;
 	private final NestedExpCSElements pNestedExpCS;
 	private final SelfExpCSElements pSelfExpCS;
-	
+
 	private final Grammar grammar;
 
 	private final BaseGrammarAccess gaBase;
@@ -2715,7 +2741,7 @@
 		this.pNestedExpCS = new NestedExpCSElements();
 		this.pSelfExpCS = new SelfExpCSElements();
 	}
-	
+
 	protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
 		Grammar grammar = grammarProvider.getGrammar(this);
 		while (grammar != null) {
@@ -2731,36 +2757,46 @@
 		}
 		return grammar;
 	}
-	
+
 	@Override
 	public Grammar getGrammar() {
 		return grammar;
 	}
-	
+
 
 	public BaseGrammarAccess getBaseGrammarAccess() {
 		return gaBase;
 	}
 
-	
+
 	////generate essentialOCLCST "http://www.eclipse.org/ocl/3.0.0/EssentialOCLCST"
-	// Model ContextCS:
+	//Model ContextCS:
 	//	ownedExpression=ExpCS
 	public ModelElements getModelAccess() {
 		return pModel;
 	}
-	
+
 	public ParserRule getModelRule() {
 		return getModelAccess().getRule();
 	}
 
 	/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 	//EssentialOCLReservedKeyword:
-	//	'and' | 'else' | 'endif' | 'if' | 'implies' | 'in' | 'let' | 'not' | 'or' | 'then' | 'xor';
+	//	'and'
+	//	| 'else'
+	//	| 'endif'
+	//	| 'if'
+	//	| 'implies'
+	//	| 'in'
+	//	| 'let'
+	//	| 'not'
+	//	| 'or'
+	//	| 'then'
+	//	| 'xor';
 	public EssentialOCLReservedKeywordElements getEssentialOCLReservedKeywordAccess() {
 		return pEssentialOCLReservedKeyword;
 	}
-	
+
 	public ParserRule getEssentialOCLReservedKeywordRule() {
 		return getEssentialOCLReservedKeywordAccess().getRule();
 	}
@@ -2771,7 +2807,7 @@
 	public EssentialOCLUnaryOperatorNameElements getEssentialOCLUnaryOperatorNameAccess() {
 		return pEssentialOCLUnaryOperatorName;
 	}
-	
+
 	public ParserRule getEssentialOCLUnaryOperatorNameRule() {
 		return getEssentialOCLUnaryOperatorNameAccess().getRule();
 	}
@@ -2782,7 +2818,7 @@
 	public EssentialOCLInfixOperatorNameElements getEssentialOCLInfixOperatorNameAccess() {
 		return pEssentialOCLInfixOperatorName;
 	}
-	
+
 	public ParserRule getEssentialOCLInfixOperatorNameRule() {
 		return getEssentialOCLInfixOperatorNameAccess().getRule();
 	}
@@ -2793,7 +2829,7 @@
 	public EssentialOCLNavigationOperatorNameElements getEssentialOCLNavigationOperatorNameAccess() {
 		return pEssentialOCLNavigationOperatorName;
 	}
-	
+
 	public ParserRule getEssentialOCLNavigationOperatorNameRule() {
 		return getEssentialOCLNavigationOperatorNameAccess().getRule();
 	}
@@ -2803,7 +2839,7 @@
 	public BinaryOperatorNameElements getBinaryOperatorNameAccess() {
 		return pBinaryOperatorName;
 	}
-	
+
 	public ParserRule getBinaryOperatorNameRule() {
 		return getBinaryOperatorNameAccess().getRule();
 	}
@@ -2813,7 +2849,7 @@
 	public InfixOperatorNameElements getInfixOperatorNameAccess() {
 		return pInfixOperatorName;
 	}
-	
+
 	public ParserRule getInfixOperatorNameRule() {
 		return getInfixOperatorNameAccess().getRule();
 	}
@@ -2823,7 +2859,7 @@
 	public NavigationOperatorNameElements getNavigationOperatorNameAccess() {
 		return pNavigationOperatorName;
 	}
-	
+
 	public ParserRule getNavigationOperatorNameRule() {
 		return getNavigationOperatorNameAccess().getRule();
 	}
@@ -2833,23 +2869,21 @@
 	public UnaryOperatorNameElements getUnaryOperatorNameAccess() {
 		return pUnaryOperatorName;
 	}
-	
+
 	public ParserRule getUnaryOperatorNameRule() {
 		return getUnaryOperatorNameAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Names
-	//
+	////  Names
 	////---------------------------------------------------------------------
-	//
 	/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 	//EssentialOCLUnrestrictedName:
 	//	Identifier;
 	public EssentialOCLUnrestrictedNameElements getEssentialOCLUnrestrictedNameAccess() {
 		return pEssentialOCLUnrestrictedName;
 	}
-	
+
 	public ParserRule getEssentialOCLUnrestrictedNameRule() {
 		return getEssentialOCLUnrestrictedNameAccess().getRule();
 	}
@@ -2859,18 +2893,22 @@
 	public UnrestrictedNameElements getUnrestrictedNameAccess() {
 		return pUnrestrictedName;
 	}
-	
+
 	public ParserRule getUnrestrictedNameRule() {
 		return getUnrestrictedNameAccess().getRule();
 	}
 
 	/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 	//EssentialOCLUnreservedName:
-	//	UnrestrictedName | CollectionTypeIdentifier | PrimitiveTypeIdentifier | 'Map' | 'Tuple';
+	//	UnrestrictedName
+	//	| CollectionTypeIdentifier
+	//	| PrimitiveTypeIdentifier
+	//	| 'Map'
+	//	| 'Tuple';
 	public EssentialOCLUnreservedNameElements getEssentialOCLUnreservedNameAccess() {
 		return pEssentialOCLUnreservedName;
 	}
-	
+
 	public ParserRule getEssentialOCLUnreservedNameRule() {
 		return getEssentialOCLUnreservedNameAccess().getRule();
 	}
@@ -2880,7 +2918,7 @@
 	public UnreservedNameElements getUnreservedNameAccess() {
 		return pUnreservedName;
 	}
-	
+
 	public ParserRule getUnreservedNameRule() {
 		return getUnreservedNameAccess().getRule();
 	}
@@ -2890,7 +2928,7 @@
 	public URIPathNameCSElements getURIPathNameCSAccess() {
 		return pURIPathNameCS;
 	}
-	
+
 	public ParserRule getURIPathNameCSRule() {
 		return getURIPathNameCSAccess().getRule();
 	}
@@ -2901,21 +2939,27 @@
 	public URIFirstPathElementCSElements getURIFirstPathElementCSAccess() {
 		return pURIFirstPathElementCS;
 	}
-	
+
 	public ParserRule getURIFirstPathElementCSRule() {
 		return getURIFirstPathElementCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Types
-	//
+	////  Types
 	////---------------------------------------------------------------------
-	// PrimitiveTypeIdentifier:
-	//	'Boolean' | 'Integer' | 'Real' | 'String' | 'UnlimitedNatural' | 'OclAny' | 'OclInvalid' | 'OclVoid';
+	//PrimitiveTypeIdentifier:
+	//	'Boolean'
+	//	| 'Integer'
+	//	| 'Real'
+	//	| 'String'
+	//	| 'UnlimitedNatural'
+	//	| 'OclAny'
+	//	| 'OclInvalid'
+	//	| 'OclVoid';
 	public PrimitiveTypeIdentifierElements getPrimitiveTypeIdentifierAccess() {
 		return pPrimitiveTypeIdentifier;
 	}
-	
+
 	public ParserRule getPrimitiveTypeIdentifierRule() {
 		return getPrimitiveTypeIdentifierAccess().getRule();
 	}
@@ -2925,17 +2969,21 @@
 	public PrimitiveTypeCSElements getPrimitiveTypeCSAccess() {
 		return pPrimitiveTypeCS;
 	}
-	
+
 	public ParserRule getPrimitiveTypeCSRule() {
 		return getPrimitiveTypeCSAccess().getRule();
 	}
 
 	//CollectionTypeIdentifier:
-	//	'Set' | 'Bag' | 'Sequence' | 'Collection' | 'OrderedSet';
+	//	'Set'
+	//	| 'Bag'
+	//	| 'Sequence'
+	//	| 'Collection'
+	//	| 'OrderedSet';
 	public CollectionTypeIdentifierElements getCollectionTypeIdentifierAccess() {
 		return pCollectionTypeIdentifier;
 	}
-	
+
 	public ParserRule getCollectionTypeIdentifierRule() {
 		return getCollectionTypeIdentifierAccess().getRule();
 	}
@@ -2945,7 +2993,7 @@
 	public CollectionTypeCSElements getCollectionTypeCSAccess() {
 		return pCollectionTypeCS;
 	}
-	
+
 	public ParserRule getCollectionTypeCSRule() {
 		return getCollectionTypeCSAccess().getRule();
 	}
@@ -2955,7 +3003,7 @@
 	public MapTypeCSElements getMapTypeCSAccess() {
 		return pMapTypeCS;
 	}
-	
+
 	public ParserRule getMapTypeCSRule() {
 		return getMapTypeCSAccess().getRule();
 	}
@@ -2965,7 +3013,7 @@
 	public TupleTypeCSElements getTupleTypeCSAccess() {
 		return pTupleTypeCS;
 	}
-	
+
 	public ParserRule getTupleTypeCSRule() {
 		return getTupleTypeCSAccess().getRule();
 	}
@@ -2975,21 +3023,22 @@
 	public TuplePartCSElements getTuplePartCSAccess() {
 		return pTuplePartCS;
 	}
-	
+
 	public ParserRule getTuplePartCSRule() {
 		return getTuplePartCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Literals
-	//
+	////  Literals
 	////---------------------------------------------------------------------
-	// CollectionLiteralExpCS:
-	//	ownedType=CollectionTypeCS '{' (ownedParts+=CollectionLiteralPartCS (',' ownedParts+=CollectionLiteralPartCS)*)? '}';
+	//CollectionLiteralExpCS:
+	//	ownedType=CollectionTypeCS
+	//	'{' (ownedParts+=CollectionLiteralPartCS (',' ownedParts+=CollectionLiteralPartCS)*)?
+	//	'}';
 	public CollectionLiteralExpCSElements getCollectionLiteralExpCSAccess() {
 		return pCollectionLiteralExpCS;
 	}
-	
+
 	public ParserRule getCollectionLiteralExpCSRule() {
 		return getCollectionLiteralExpCSAccess().getRule();
 	}
@@ -2999,18 +3048,19 @@
 	public CollectionLiteralPartCSElements getCollectionLiteralPartCSAccess() {
 		return pCollectionLiteralPartCS;
 	}
-	
+
 	public ParserRule getCollectionLiteralPartCSRule() {
 		return getCollectionLiteralPartCSAccess().getRule();
 	}
 
 	//CollectionPatternCS:
-	//	ownedType=CollectionTypeCS '{' (ownedParts+=PatternExpCS (',' ownedParts+=PatternExpCS)* ('++'
-	//	restVariableName=Identifier))? '}';
+	//	ownedType=CollectionTypeCS
+	//	'{' (ownedParts+=PatternExpCS (',' ownedParts+=PatternExpCS)* ('++' restVariableName=Identifier))?
+	//	'}';
 	public CollectionPatternCSElements getCollectionPatternCSAccess() {
 		return pCollectionPatternCS;
 	}
-	
+
 	public ParserRule getCollectionPatternCSRule() {
 		return getCollectionPatternCSAccess().getRule();
 	}
@@ -3020,7 +3070,7 @@
 	public ShadowPartCSElements getShadowPartCSAccess() {
 		return pShadowPartCS;
 	}
-	
+
 	public ParserRule getShadowPartCSRule() {
 		return getShadowPartCSAccess().getRule();
 	}
@@ -3030,7 +3080,7 @@
 	public PatternExpCSElements getPatternExpCSAccess() {
 		return pPatternExpCS;
 	}
-	
+
 	public ParserRule getPatternExpCSRule() {
 		return getPatternExpCSAccess().getRule();
 	}
@@ -3040,7 +3090,7 @@
 	public LambdaLiteralExpCSElements getLambdaLiteralExpCSAccess() {
 		return pLambdaLiteralExpCS;
 	}
-	
+
 	public ParserRule getLambdaLiteralExpCSRule() {
 		return getLambdaLiteralExpCSAccess().getRule();
 	}
@@ -3050,7 +3100,7 @@
 	public MapLiteralExpCSElements getMapLiteralExpCSAccess() {
 		return pMapLiteralExpCS;
 	}
-	
+
 	public ParserRule getMapLiteralExpCSRule() {
 		return getMapLiteralExpCSAccess().getRule();
 	}
@@ -3060,18 +3110,22 @@
 	public MapLiteralPartCSElements getMapLiteralPartCSAccess() {
 		return pMapLiteralPartCS;
 	}
-	
+
 	public ParserRule getMapLiteralPartCSRule() {
 		return getMapLiteralPartCSAccess().getRule();
 	}
 
 	//PrimitiveLiteralExpCS:
-	//	NumberLiteralExpCS | StringLiteralExpCS | BooleanLiteralExpCS | UnlimitedNaturalLiteralExpCS | InvalidLiteralExpCS |
-	//	NullLiteralExpCS;
+	//	NumberLiteralExpCS
+	//	| StringLiteralExpCS
+	//	| BooleanLiteralExpCS
+	//	| UnlimitedNaturalLiteralExpCS
+	//	| InvalidLiteralExpCS
+	//	| NullLiteralExpCS;
 	public PrimitiveLiteralExpCSElements getPrimitiveLiteralExpCSAccess() {
 		return pPrimitiveLiteralExpCS;
 	}
-	
+
 	public ParserRule getPrimitiveLiteralExpCSRule() {
 		return getPrimitiveLiteralExpCSAccess().getRule();
 	}
@@ -3081,7 +3135,7 @@
 	public TupleLiteralExpCSElements getTupleLiteralExpCSAccess() {
 		return pTupleLiteralExpCS;
 	}
-	
+
 	public ParserRule getTupleLiteralExpCSRule() {
 		return getTupleLiteralExpCSAccess().getRule();
 	}
@@ -3091,7 +3145,7 @@
 	public TupleLiteralPartCSElements getTupleLiteralPartCSAccess() {
 		return pTupleLiteralPartCS;
 	}
-	
+
 	public ParserRule getTupleLiteralPartCSRule() {
 		return getTupleLiteralPartCSAccess().getRule();
 	}
@@ -3101,7 +3155,7 @@
 	public NumberLiteralExpCSElements getNumberLiteralExpCSAccess() {
 		return pNumberLiteralExpCS;
 	}
-	
+
 	public ParserRule getNumberLiteralExpCSRule() {
 		return getNumberLiteralExpCSAccess().getRule();
 	}
@@ -3111,17 +3165,18 @@
 	public StringLiteralExpCSElements getStringLiteralExpCSAccess() {
 		return pStringLiteralExpCS;
 	}
-	
+
 	public ParserRule getStringLiteralExpCSRule() {
 		return getStringLiteralExpCSAccess().getRule();
 	}
 
 	//BooleanLiteralExpCS:
-	//	symbol='true' | symbol='false';
+	//	symbol='true'
+	//	| symbol='false';
 	public BooleanLiteralExpCSElements getBooleanLiteralExpCSAccess() {
 		return pBooleanLiteralExpCS;
 	}
-	
+
 	public ParserRule getBooleanLiteralExpCSRule() {
 		return getBooleanLiteralExpCSAccess().getRule();
 	}
@@ -3131,7 +3186,7 @@
 	public UnlimitedNaturalLiteralExpCSElements getUnlimitedNaturalLiteralExpCSAccess() {
 		return pUnlimitedNaturalLiteralExpCS;
 	}
-	
+
 	public ParserRule getUnlimitedNaturalLiteralExpCSRule() {
 		return getUnlimitedNaturalLiteralExpCSAccess().getRule();
 	}
@@ -3141,7 +3196,7 @@
 	public InvalidLiteralExpCSElements getInvalidLiteralExpCSAccess() {
 		return pInvalidLiteralExpCS;
 	}
-	
+
 	public ParserRule getInvalidLiteralExpCSRule() {
 		return getInvalidLiteralExpCSAccess().getRule();
 	}
@@ -3151,17 +3206,20 @@
 	public NullLiteralExpCSElements getNullLiteralExpCSAccess() {
 		return pNullLiteralExpCS;
 	}
-	
+
 	public ParserRule getNullLiteralExpCSRule() {
 		return getNullLiteralExpCSAccess().getRule();
 	}
 
 	//TypeLiteralCS base::TypedRefCS:
-	//	PrimitiveTypeCS | CollectionTypeCS | MapTypeCS | TupleTypeCS
+	//	PrimitiveTypeCS
+	//	| CollectionTypeCS
+	//	| MapTypeCS
+	//	| TupleTypeCS
 	public TypeLiteralCSElements getTypeLiteralCSAccess() {
 		return pTypeLiteralCS;
 	}
-	
+
 	public ParserRule getTypeLiteralCSRule() {
 		return getTypeLiteralCSAccess().getRule();
 	}
@@ -3171,7 +3229,7 @@
 	public TypeLiteralWithMultiplicityCSElements getTypeLiteralWithMultiplicityCSAccess() {
 		return pTypeLiteralWithMultiplicityCS;
 	}
-	
+
 	public ParserRule getTypeLiteralWithMultiplicityCSRule() {
 		return getTypeLiteralWithMultiplicityCSAccess().getRule();
 	}
@@ -3181,7 +3239,7 @@
 	public TypeLiteralExpCSElements getTypeLiteralExpCSAccess() {
 		return pTypeLiteralExpCS;
 	}
-	
+
 	public ParserRule getTypeLiteralExpCSRule() {
 		return getTypeLiteralExpCSAccess().getRule();
 	}
@@ -3191,7 +3249,7 @@
 	public TypeNameExpCSElements getTypeNameExpCSAccess() {
 		return pTypeNameExpCS;
 	}
-	
+
 	public ParserRule getTypeNameExpCSRule() {
 		return getTypeNameExpCSAccess().getRule();
 	}
@@ -3201,33 +3259,26 @@
 	public TypeExpCSElements getTypeExpCSAccess() {
 		return pTypeExpCS;
 	}
-	
+
 	public ParserRule getTypeExpCSRule() {
 		return getTypeExpCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Expressions
-	//
+	////  Expressions
 	////---------------------------------------------------------------------
-	//
 	//// An ExpCS permits a LetExpCS only in the final term to ensure
-	//
 	////  that let is right associative, whereas infix operators are left associative.
-	//
-	////   a = 64 / 16 / let b : Integer in 8 / let c : Integer in 4 
-	// // is
-	//
+	////   a = 64 / 16 / let b : Integer in 8 / let c : Integer in 4
+	//// is
 	////   a = (64 / 16) / (let b : Integer in 8 / (let c : Integer in 4 ))
-	//
 	/// * An expression elaborates a prefixed expression with zero or more binary operator and expression suffixes.
-	// * An optionally prefixed let expression is permitted except when suffixed with further expressions.* /
-	//ExpCS:
+	// * An optionally prefixed let expression is permitted except when suffixed with further expressions.* / ExpCS:
 	//	PrefixedPrimaryExpCS ({InfixExpCS.ownedLeft=current} name=BinaryOperatorName ownedRight=ExpCS)? | PrefixedLetExpCS;
 	public ExpCSElements getExpCSAccess() {
 		return pExpCS;
 	}
-	
+
 	public ParserRule getExpCSRule() {
 		return getExpCSAccess().getRule();
 	}
@@ -3238,7 +3289,7 @@
 	public PrefixedLetExpCSElements getPrefixedLetExpCSAccess() {
 		return pPrefixedLetExpCS;
 	}
-	
+
 	public ParserRule getPrefixedLetExpCSRule() {
 		return getPrefixedLetExpCSAccess().getRule();
 	}
@@ -3249,44 +3300,52 @@
 	public PrefixedPrimaryExpCSElements getPrefixedPrimaryExpCSAccess() {
 		return pPrefixedPrimaryExpCS;
 	}
-	
+
 	public ParserRule getPrefixedPrimaryExpCSRule() {
 		return getPrefixedPrimaryExpCSAccess().getRule();
 	}
 
 	/// * A primary expression identifies the basic expressions from which more complex expressions may be constructed. * /
 	//PrimaryExpCS ExpCS:
-	//	NestedExpCS | IfExpCS | SelfExpCS | PrimitiveLiteralExpCS | TupleLiteralExpCS | MapLiteralExpCS |
-	//	CollectionLiteralExpCS | LambdaLiteralExpCS | TypeLiteralExpCS | NameExpCS
+	//	NestedExpCS
+	//	| IfExpCS
+	//	| SelfExpCS
+	//	| PrimitiveLiteralExpCS
+	//	| TupleLiteralExpCS
+	//	| MapLiteralExpCS
+	//	| CollectionLiteralExpCS
+	//	| LambdaLiteralExpCS
+	//	| TypeLiteralExpCS
+	//	| NameExpCS
 	public PrimaryExpCSElements getPrimaryExpCSAccess() {
 		return pPrimaryExpCS;
 	}
-	
+
 	public ParserRule getPrimaryExpCSRule() {
 		return getPrimaryExpCSAccess().getRule();
 	}
 
 	/// * A name expression is a generalised rule for expressions that start with a name and which may be followed by square, round or
-	// * curly bracket clauses and optionally an @pre as well.* /
-	//NameExpCS:
+	// * curly bracket clauses and optionally an @pre as well.* / NameExpCS:
 	//	ownedPathName=PathNameCS ownedSquareBracketedClauses+=SquareBracketedClauseCS*
 	//	ownedRoundBracketedClause=RoundBracketedClauseCS? ownedCurlyBracketedClause=CurlyBracketedClauseCS? (isPre?='@'
 	//	'pre')?;
 	public NameExpCSElements getNameExpCSAccess() {
 		return pNameExpCS;
 	}
-	
+
 	public ParserRule getNameExpCSRule() {
 		return getNameExpCSAccess().getRule();
 	}
 
 	/// * A curly bracket clause is a generalized rule for the literal arguments of collections, maps, tuples and shadows.* /
 	//CurlyBracketedClauseCS:
-	//	{CurlyBracketedClauseCS} '{' ((ownedParts+=ShadowPartCS (',' ownedParts+=ShadowPartCS)*)? | value=StringLiteral) '}';
+	//	{CurlyBracketedClauseCS} '{' ((ownedParts+=ShadowPartCS (',' ownedParts+=ShadowPartCS)*)?
+	//	| value=StringLiteral) '}';
 	public CurlyBracketedClauseCSElements getCurlyBracketedClauseCSAccess() {
 		return pCurlyBracketedClauseCS;
 	}
-	
+
 	public ParserRule getCurlyBracketedClauseCSRule() {
 		return getCurlyBracketedClauseCSAccess().getRule();
 	}
@@ -3299,7 +3358,7 @@
 	public RoundBracketedClauseCSElements getRoundBracketedClauseCSAccess() {
 		return pRoundBracketedClauseCS;
 	}
-	
+
 	public ParserRule getRoundBracketedClauseCSRule() {
 		return getRoundBracketedClauseCSAccess().getRule();
 	}
@@ -3309,109 +3368,108 @@
 	public SquareBracketedClauseCSElements getSquareBracketedClauseCSAccess() {
 		return pSquareBracketedClauseCS;
 	}
-	
+
 	public ParserRule getSquareBracketedClauseCSRule() {
 		return getSquareBracketedClauseCSAccess().getRule();
 	}
 
 	/// * A navigating argument is a generalized rule for the first argument in a round bracket clause. This is typically the first operation
-	// * parameter or an iterator. * /
-	//NavigatingArgCS:
+	// * parameter or an iterator. * / NavigatingArgCS:
 	//	ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)? | 'in'
 	//	ownedInitExpression=ExpCS)? | ':' ownedType=TypeExpCS;
 	public NavigatingArgCSElements getNavigatingArgCSAccess() {
 		return pNavigatingArgCS;
 	}
-	
+
 	public ParserRule getNavigatingArgCSRule() {
 		return getNavigatingArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	//
 	/// * A navigating bar argument is a generalized rule for a bar-prefixed argument in a round bracket clause. This is typically the body of an iteration. * /
 	//NavigatingBarArgCS NavigatingArgCS:
 	//	prefix='|' ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)?)?
 	public NavigatingBarArgCSElements getNavigatingBarArgCSAccess() {
 		return pNavigatingBarArgCS;
 	}
-	
+
 	public ParserRule getNavigatingBarArgCSRule() {
 		return getNavigatingBarArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	//
 	/// * A navigating comma argument is a generalized rule for non-first argument in a round bracket clause. These are typically non-first operation
-	// * parameters or a second iterator. * /
-	//NavigatingCommaArgCS NavigatingArgCS:
+	// * parameters or a second iterator. * / NavigatingCommaArgCS NavigatingArgCS:
 	//	prefix=',' ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)? | 'in'
 	//	ownedInitExpression=ExpCS)?
 	public NavigatingCommaArgCSElements getNavigatingCommaArgCSAccess() {
 		return pNavigatingCommaArgCS;
 	}
-	
+
 	public ParserRule getNavigatingCommaArgCSRule() {
 		return getNavigatingCommaArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	//
 	/// * A navigating semi argument is a generalized rule for a semicolon prefixed argument in a round bracket clause. This is typically an iterate accumulator. * /
 	//NavigatingSemiArgCS NavigatingArgCS:
 	//	prefix=';' ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)?)?
 	public NavigatingSemiArgCSElements getNavigatingSemiArgCSAccess() {
 		return pNavigatingSemiArgCS;
 	}
-	
+
 	public ParserRule getNavigatingSemiArgCSRule() {
 		return getNavigatingSemiArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	// NavigatingArgExpCS ExpCS:
+	//NavigatingArgExpCS ExpCS:
 	//	ExpCS
 	public NavigatingArgExpCSElements getNavigatingArgExpCSAccess() {
 		return pNavigatingArgExpCS;
 	}
-	
+
 	public ParserRule getNavigatingArgExpCSRule() {
 		return getNavigatingArgExpCSAccess().getRule();
 	}
 
 	//IfExpCS:
-	//	'if' ownedCondition=(ExpCS | PatternExpCS) 'then' ownedThenExpression=ExpCS //	ifThenExpressions+=IfThenExpCS
-	//
-	//	ownedIfThenExpressions+=ElseIfThenExpCS* 'else' ownedElseExpression=ExpCS 'endif';
+	//	'if' ownedCondition=(ExpCS | PatternExpCS)
+	//	'then' ownedThenExpression=ExpCS
+	//	//	ifThenExpressions+=IfThenExpCS
+	//	ownedIfThenExpressions+=ElseIfThenExpCS*
+	//	'else' ownedElseExpression=ExpCS
+	//	'endif';
 	public IfExpCSElements getIfExpCSAccess() {
 		return pIfExpCS;
 	}
-	
+
 	public ParserRule getIfExpCSRule() {
 		return getIfExpCSAccess().getRule();
 	}
 
 	////IfThenExpCS returns IfThenExpCS:
-	// //	'if' condition=ExpCS
-	// //	'then' thenExpression=ExpCS
-	// //;
-	// ElseIfThenExpCS
-	//IfThenExpCS:
-	//	'elseif' ownedCondition=ExpCS 'then' ownedThenExpression=ExpCS
+	////	'if' condition=ExpCS
+	////	'then' thenExpression=ExpCS
+	////;
+	//ElseIfThenExpCS IfThenExpCS:
+	//	'elseif' ownedCondition=ExpCS
+	//	'then' ownedThenExpression=ExpCS
 	public ElseIfThenExpCSElements getElseIfThenExpCSAccess() {
 		return pElseIfThenExpCS;
 	}
-	
+
 	public ParserRule getElseIfThenExpCSRule() {
 		return getElseIfThenExpCSAccess().getRule();
 	}
 
 	//LetExpCS:
-	//	'let' ownedVariables+=LetVariableCS (',' ownedVariables+=LetVariableCS)* 'in' ownedInExpression=ExpCS;
+	//	'let' ownedVariables+=LetVariableCS (',' ownedVariables+=LetVariableCS)*
+	//	'in' ownedInExpression=ExpCS;
 	public LetExpCSElements getLetExpCSAccess() {
 		return pLetExpCS;
 	}
-	
+
 	public ParserRule getLetExpCSRule() {
 		return getLetExpCSAccess().getRule();
 	}
@@ -3422,7 +3480,7 @@
 	public LetVariableCSElements getLetVariableCSAccess() {
 		return pLetVariableCS;
 	}
-	
+
 	public ParserRule getLetVariableCSRule() {
 		return getLetVariableCSAccess().getRule();
 	}
@@ -3432,7 +3490,7 @@
 	public NestedExpCSElements getNestedExpCSAccess() {
 		return pNestedExpCS;
 	}
-	
+
 	public ParserRule getNestedExpCSRule() {
 		return getNestedExpCSAccess().getRule();
 	}
@@ -3442,7 +3500,7 @@
 	public SelfExpCSElements getSelfExpCSAccess() {
 		return pSelfExpCS;
 	}
-	
+
 	public ParserRule getSelfExpCSRule() {
 		return getSelfExpCSAccess().getRule();
 	}
@@ -3452,7 +3510,7 @@
 	public BaseGrammarAccess.MultiplicityBoundsCSElements getMultiplicityBoundsCSAccess() {
 		return gaBase.getMultiplicityBoundsCSAccess();
 	}
-	
+
 	public ParserRule getMultiplicityBoundsCSRule() {
 		return getMultiplicityBoundsCSAccess().getRule();
 	}
@@ -3462,7 +3520,7 @@
 	public BaseGrammarAccess.MultiplicityCSElements getMultiplicityCSAccess() {
 		return gaBase.getMultiplicityCSAccess();
 	}
-	
+
 	public ParserRule getMultiplicityCSRule() {
 		return getMultiplicityCSAccess().getRule();
 	}
@@ -3472,7 +3530,7 @@
 	public BaseGrammarAccess.MultiplicityStringCSElements getMultiplicityStringCSAccess() {
 		return gaBase.getMultiplicityStringCSAccess();
 	}
-	
+
 	public ParserRule getMultiplicityStringCSRule() {
 		return getMultiplicityStringCSAccess().getRule();
 	}
@@ -3482,7 +3540,7 @@
 	public BaseGrammarAccess.PathNameCSElements getPathNameCSAccess() {
 		return gaBase.getPathNameCSAccess();
 	}
-	
+
 	public ParserRule getPathNameCSRule() {
 		return getPathNameCSAccess().getRule();
 	}
@@ -3492,7 +3550,7 @@
 	public BaseGrammarAccess.FirstPathElementCSElements getFirstPathElementCSAccess() {
 		return gaBase.getFirstPathElementCSAccess();
 	}
-	
+
 	public ParserRule getFirstPathElementCSRule() {
 		return getFirstPathElementCSAccess().getRule();
 	}
@@ -3502,7 +3560,7 @@
 	public BaseGrammarAccess.NextPathElementCSElements getNextPathElementCSAccess() {
 		return gaBase.getNextPathElementCSAccess();
 	}
-	
+
 	public ParserRule getNextPathElementCSRule() {
 		return getNextPathElementCSAccess().getRule();
 	}
@@ -3513,7 +3571,7 @@
 	public BaseGrammarAccess.TemplateBindingCSElements getTemplateBindingCSAccess() {
 		return gaBase.getTemplateBindingCSAccess();
 	}
-	
+
 	public ParserRule getTemplateBindingCSRule() {
 		return getTemplateBindingCSAccess().getRule();
 	}
@@ -3523,7 +3581,7 @@
 	public BaseGrammarAccess.TemplateParameterSubstitutionCSElements getTemplateParameterSubstitutionCSAccess() {
 		return gaBase.getTemplateParameterSubstitutionCSAccess();
 	}
-	
+
 	public ParserRule getTemplateParameterSubstitutionCSRule() {
 		return getTemplateParameterSubstitutionCSAccess().getRule();
 	}
@@ -3533,7 +3591,7 @@
 	public BaseGrammarAccess.TemplateSignatureCSElements getTemplateSignatureCSAccess() {
 		return gaBase.getTemplateSignatureCSAccess();
 	}
-	
+
 	public ParserRule getTemplateSignatureCSRule() {
 		return getTemplateSignatureCSAccess().getRule();
 	}
@@ -3543,7 +3601,7 @@
 	public BaseGrammarAccess.TypeParameterCSElements getTypeParameterCSAccess() {
 		return gaBase.getTypeParameterCSAccess();
 	}
-	
+
 	public ParserRule getTypeParameterCSRule() {
 		return getTypeParameterCSAccess().getRule();
 	}
@@ -3553,7 +3611,7 @@
 	public BaseGrammarAccess.TypeRefCSElements getTypeRefCSAccess() {
 		return gaBase.getTypeRefCSAccess();
 	}
-	
+
 	public ParserRule getTypeRefCSRule() {
 		return getTypeRefCSAccess().getRule();
 	}
@@ -3563,7 +3621,7 @@
 	public BaseGrammarAccess.TypedRefCSElements getTypedRefCSAccess() {
 		return gaBase.getTypedRefCSAccess();
 	}
-	
+
 	public ParserRule getTypedRefCSRule() {
 		return getTypedRefCSAccess().getRule();
 	}
@@ -3573,7 +3631,7 @@
 	public BaseGrammarAccess.TypedTypeRefCSElements getTypedTypeRefCSAccess() {
 		return gaBase.getTypedTypeRefCSAccess();
 	}
-	
+
 	public ParserRule getTypedTypeRefCSRule() {
 		return getTypedTypeRefCSAccess().getRule();
 	}
@@ -3583,7 +3641,7 @@
 	public BaseGrammarAccess.WildcardTypeRefCSElements getWildcardTypeRefCSAccess() {
 		return gaBase.getWildcardTypeRefCSAccess();
 	}
-	
+
 	public ParserRule getWildcardTypeRefCSRule() {
 		return getWildcardTypeRefCSAccess().getRule();
 	}
@@ -3593,7 +3651,7 @@
 	public BaseGrammarAccess.IDElements getIDAccess() {
 		return gaBase.getIDAccess();
 	}
-	
+
 	public ParserRule getIDRule() {
 		return getIDAccess().getRule();
 	}
@@ -3603,7 +3661,7 @@
 	public BaseGrammarAccess.IdentifierElements getIdentifierAccess() {
 		return gaBase.getIdentifierAccess();
 	}
-	
+
 	public ParserRule getIdentifierRule() {
 		return getIdentifierAccess().getRule();
 	}
@@ -3614,7 +3672,7 @@
 	public BaseGrammarAccess.LOWERElements getLOWERAccess() {
 		return gaBase.getLOWERAccess();
 	}
-	
+
 	public ParserRule getLOWERRule() {
 		return getLOWERAccess().getRule();
 	}
@@ -3623,24 +3681,23 @@
 	// * lookahead conflicts in simple lexers between a dot within a floating point number and the dot-dot in a CollectionLiteralPartCS. A
 	// * practical implementation should give high priority to a successful parse of INT ('.' INT)? (('e' | 'E') ('+' | '-')? INT)? than
 	// * to the unsuccessful partial parse of INT '..'. The type of the INT terminal is String to allow the floating point syntax to be used.
-	// * /
-	//NUMBER_LITERAL BigNumber:
+	// * / NUMBER_LITERAL BigNumber:
 	//	INT
 	public BaseGrammarAccess.NUMBER_LITERALElements getNUMBER_LITERALAccess() {
 		return gaBase.getNUMBER_LITERALAccess();
 	}
-	
+
 	public ParserRule getNUMBER_LITERALRule() {
 		return getNUMBER_LITERALAccess().getRule();
 	}
 
 	//// EssentialOCLTokenSource pieces this together ('.' INT)? (('e' | 'E') ('+' | '-')? INT)?;
-	// StringLiteral:
+	//StringLiteral:
 	//	SINGLE_QUOTED_STRING;
 	public BaseGrammarAccess.StringLiteralElements getStringLiteralAccess() {
 		return gaBase.getStringLiteralAccess();
 	}
-	
+
 	public ParserRule getStringLiteralRule() {
 		return getStringLiteralAccess().getRule();
 	}
@@ -3651,7 +3708,7 @@
 	public BaseGrammarAccess.UPPERElements getUPPERAccess() {
 		return gaBase.getUPPERAccess();
 	}
-	
+
 	public ParserRule getUPPERRule() {
 		return getUPPERAccess().getRule();
 	}
@@ -3661,7 +3718,7 @@
 	public BaseGrammarAccess.URIElements getURIAccess() {
 		return gaBase.getURIAccess();
 	}
-	
+
 	public ParserRule getURIRule() {
 		return getURIAccess().getRule();
 	}
@@ -3670,71 +3727,71 @@
 	//	'\\' ('b' | 't' | 'n' | 'f' | 'r' | 'u' | '"' | "'" | '\\');
 	public TerminalRule getESCAPED_CHARACTERRule() {
 		return gaBase.getESCAPED_CHARACTERRule();
-	} 
+	}
 
 	//terminal fragment LETTER_CHARACTER:
 	//	'a'..'z' | 'A'..'Z' | '_';
 	public TerminalRule getLETTER_CHARACTERRule() {
 		return gaBase.getLETTER_CHARACTERRule();
-	} 
+	}
 
 	//terminal DOUBLE_QUOTED_STRING:
 	//	'"' (ESCAPED_CHARACTER | !('\\' | '"'))* '"';
 	public TerminalRule getDOUBLE_QUOTED_STRINGRule() {
 		return gaBase.getDOUBLE_QUOTED_STRINGRule();
-	} 
+	}
 
 	//terminal SINGLE_QUOTED_STRING:
 	//	"'" (ESCAPED_CHARACTER | !('\\' | "'"))* "'";
 	public TerminalRule getSINGLE_QUOTED_STRINGRule() {
 		return gaBase.getSINGLE_QUOTED_STRINGRule();
-	} 
+	}
 
 	//terminal ML_SINGLE_QUOTED_STRING:
 	//	"/'"->"'/";
 	public TerminalRule getML_SINGLE_QUOTED_STRINGRule() {
 		return gaBase.getML_SINGLE_QUOTED_STRINGRule();
-	} 
+	}
 
 	//terminal SIMPLE_ID:
 	//	LETTER_CHARACTER (LETTER_CHARACTER | '0'..'9')*;
 	public TerminalRule getSIMPLE_IDRule() {
 		return gaBase.getSIMPLE_IDRule();
-	} 
+	}
 
 	//terminal ESCAPED_ID:
 	//	"_" SINGLE_QUOTED_STRING;
 	public TerminalRule getESCAPED_IDRule() {
 		return gaBase.getESCAPED_IDRule();
-	} 
+	}
 
 	//terminal INT:
 	//	'0'..'9'+;
 	public TerminalRule getINTRule() {
 		return gaBase.getINTRule();
-	} 
+	}
 
 	//terminal ML_COMMENT:
 	//	'/ *'->'* /';
 	public TerminalRule getML_COMMENTRule() {
 		return gaBase.getML_COMMENTRule();
-	} 
+	}
 
 	//terminal SL_COMMENT:
 	//	'--' !('\n' | '\r')* ('\r'? '\n')?;
 	public TerminalRule getSL_COMMENTRule() {
 		return gaBase.getSL_COMMENTRule();
-	} 
+	}
 
 	//terminal WS:
 	//	' ' | '\t' | '\r' | '\n'+;
 	public TerminalRule getWSRule() {
 		return gaBase.getWSRule();
-	} 
+	}
 
 	//terminal ANY_OTHER:
 	//	.;
 	public TerminalRule getANY_OTHERRule() {
 		return gaBase.getANY_OTHERRule();
-	} 
+	}
 }
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/validation/AbstractEssentialOCLJavaValidator.java b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/validation/AbstractEssentialOCLJavaValidator.java
index c8e4db3..8ea9ec9 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/validation/AbstractEssentialOCLJavaValidator.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src-gen/org/eclipse/ocl/xtext/essentialocl/validation/AbstractEssentialOCLJavaValidator.java
@@ -9,7 +9,7 @@
  *     E.D.Willink - initial API and implementation
  *******************************************************************************/
 package org.eclipse.ocl.xtext.essentialocl.validation;
- 
+
 import java.util.ArrayList;
 import java.util.List;
 
diff --git a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/AbstractMarkupUiModule.java b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/AbstractMarkupUiModule.java
index f310148..b8a1661 100644
--- a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/AbstractMarkupUiModule.java
+++ b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/AbstractMarkupUiModule.java
@@ -18,12 +18,12 @@
  */
 @SuppressWarnings("all")
 public abstract class AbstractMarkupUiModule extends org.eclipse.xtext.ui.DefaultUiModule {
-	
+
 	public AbstractMarkupUiModule(AbstractUIPlugin plugin) {
 		super(plugin);
 	}
-	
-	
+
+
 	// contributed by org.eclipse.xtext.ui.generator.ImplicitUiFragment
 	public com.google.inject.Provider<org.eclipse.xtext.resource.containers.IAllContainersState> provideIAllContainersState() {
 		return org.eclipse.xtext.ui.shared.Access.getJavaProjectsState();
diff --git a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/MarkupExecutableExtensionFactory.java b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/MarkupExecutableExtensionFactory.java
index d5f98c8..1a15c74 100644
--- a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/MarkupExecutableExtensionFactory.java
+++ b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/MarkupExecutableExtensionFactory.java
@@ -19,7 +19,7 @@
 
 /**
  * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
+ * introduced subclass.
  */
 public class MarkupExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory {
 
@@ -27,10 +27,10 @@
 	protected Bundle getBundle() {
 		return MarkupActivator.getInstance().getBundle();
 	}
-	
+
 	@Override
 	protected Injector getInjector() {
 		return MarkupActivator.getInstance().getInjector(MarkupActivator.ORG_ECLIPSE_OCL_XTEXT_MARKUP_MARKUP);
 	}
-	
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/AbstractMarkupProposalProvider.java b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/AbstractMarkupProposalProvider.java
index c9a805a..cf70601 100644
--- a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/AbstractMarkupProposalProvider.java
+++ b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/AbstractMarkupProposalProvider.java
@@ -17,12 +17,12 @@
 
 /**
  * Represents a generated, default implementation of superclass {@link org.eclipse.xtext.ui.editor.contentassist.AbstractJavaBasedContentProposalProvider}.
- * Methods are dynamically dispatched on the first parameter, i.e., you can override them 
- * with a more concrete subtype. 
+ * Methods are dynamically dispatched on the first parameter, i.e., you can override them
+ * with a more concrete subtype.
  */
 @SuppressWarnings("all")
 public class AbstractMarkupProposalProvider extends org.eclipse.xtext.ui.editor.contentassist.AbstractJavaBasedContentProposalProvider {
-		
+
 	public void completeMarkup_Elements(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
@@ -95,7 +95,7 @@
 			completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 		}
 	}
-    
+
 	public void complete_Markup(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		// subclasses may override
 	}
diff --git a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/MarkupParser.java b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/MarkupParser.java
index 3dec4f5..87a9078 100644
--- a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/MarkupParser.java
+++ b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/MarkupParser.java
@@ -25,19 +25,19 @@
 import org.eclipse.ocl.xtext.markup.services.MarkupGrammarAccess;
 
 public class MarkupParser extends AbstractContentAssistParser {
-	
+
 	@Inject
 	private MarkupGrammarAccess grammarAccess;
-	
+
 	private Map<AbstractElement, String> nameMappings;
-	
+
 	@Override
 	protected org.eclipse.ocl.xtext.markup.ui.contentassist.antlr.internal.InternalMarkupParser createParser() {
 		org.eclipse.ocl.xtext.markup.ui.contentassist.antlr.internal.InternalMarkupParser result = new org.eclipse.ocl.xtext.markup.ui.contentassist.antlr.internal.InternalMarkupParser(null);
 		result.setGrammarAccess(grammarAccess);
 		return result;
 	}
-	
+
 	@Override
 	protected String getRuleName(AbstractElement element) {
 		if (nameMappings == null) {
@@ -91,7 +91,7 @@
 		}
 		return nameMappings.get(element);
 	}
-	
+
 	@Override
 	protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
 		try {
@@ -100,18 +100,18 @@
 			return typedParser.getFollowElements();
 		} catch(RecognitionException ex) {
 			throw new RuntimeException(ex);
-		}		
+		}
 	}
-	
+
 	@Override
 	protected String[] getInitialHiddenTokens() {
 		return new String[] {  };
 	}
-	
+
 	public MarkupGrammarAccess getGrammarAccess() {
 		return this.grammarAccess;
 	}
-	
+
 	public void setGrammarAccess(MarkupGrammarAccess grammarAccess) {
 		this.grammarAccess = grammarAccess;
 	}
diff --git a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/internal/InternalMarkup.g b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/internal/InternalMarkup.g
index df7bb12..0488686 100644
--- a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/internal/InternalMarkup.g
+++ b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/internal/InternalMarkup.g
@@ -13,19 +13,19 @@
 options {
 	superClass=AbstractInternalContentAssistParser;
 	backtrack=true;
-	
+
 }
 
 @lexer::header {
 package org.eclipse.ocl.xtext.markup.ui.contentassist.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
 }
 
 @parser::header {
-package org.eclipse.ocl.xtext.markup.ui.contentassist.antlr.internal; 
+package org.eclipse.ocl.xtext.markup.ui.contentassist.antlr.internal;
 
 import java.io.InputStream;
 import org.eclipse.xtext.*;
@@ -42,18 +42,18 @@
 }
 
 @parser::members {
- 
+
  	private MarkupGrammarAccess grammarAccess;
- 	
+
     public void setGrammarAccess(MarkupGrammarAccess grammarAccess) {
     	this.grammarAccess = grammarAccess;
     }
-    
+
     @Override
     protected Grammar getGrammar() {
     	return grammarAccess.getGrammar();
     }
-    
+
     @Override
     protected String getValueForTokenName(String tokenName) {
     	return tokenName;
@@ -65,12 +65,12 @@
 
 
 // Entry rule entryRuleMarkup
-entryRuleMarkup 
+entryRuleMarkup
 :
 { before(grammarAccess.getMarkupRule()); }
 	 ruleMarkup
-{ after(grammarAccess.getMarkupRule()); } 
-	 EOF 
+{ after(grammarAccess.getMarkupRule()); }
+	 EOF
 ;
 
 // Rule Markup
@@ -93,12 +93,12 @@
 
 
 // Entry rule entryRuleMarkupKeyword
-entryRuleMarkupKeyword 
+entryRuleMarkupKeyword
 :
 { before(grammarAccess.getMarkupKeywordRule()); }
 	 ruleMarkupKeyword
-{ after(grammarAccess.getMarkupKeywordRule()); } 
-	 EOF 
+{ after(grammarAccess.getMarkupKeywordRule()); }
+	 EOF
 ;
 
 // Rule MarkupKeyword
@@ -121,12 +121,12 @@
 
 
 // Entry rule entryRuleMarkupElement
-entryRuleMarkupElement 
+entryRuleMarkupElement
 :
 { before(grammarAccess.getMarkupElementRule()); }
 	 ruleMarkupElement
-{ after(grammarAccess.getMarkupElementRule()); } 
-	 EOF 
+{ after(grammarAccess.getMarkupElementRule()); }
+	 EOF
 ;
 
 // Rule MarkupElement
@@ -149,12 +149,12 @@
 
 
 // Entry rule entryRuleBulletElement
-entryRuleBulletElement 
+entryRuleBulletElement
 :
 { before(grammarAccess.getBulletElementRule()); }
 	 ruleBulletElement
-{ after(grammarAccess.getBulletElementRule()); } 
-	 EOF 
+{ after(grammarAccess.getBulletElementRule()); }
+	 EOF
 ;
 
 // Rule BulletElement
@@ -177,12 +177,12 @@
 
 
 // Entry rule entryRuleFontElement
-entryRuleFontElement 
+entryRuleFontElement
 :
 { before(grammarAccess.getFontElementRule()); }
 	 ruleFontElement
-{ after(grammarAccess.getFontElementRule()); } 
-	 EOF 
+{ after(grammarAccess.getFontElementRule()); }
+	 EOF
 ;
 
 // Rule FontElement
@@ -205,12 +205,12 @@
 
 
 // Entry rule entryRuleFigureElement
-entryRuleFigureElement 
+entryRuleFigureElement
 :
 { before(grammarAccess.getFigureElementRule()); }
 	 ruleFigureElement
-{ after(grammarAccess.getFigureElementRule()); } 
-	 EOF 
+{ after(grammarAccess.getFigureElementRule()); }
+	 EOF
 ;
 
 // Rule FigureElement
@@ -233,12 +233,12 @@
 
 
 // Entry rule entryRuleFigureRefElement
-entryRuleFigureRefElement 
+entryRuleFigureRefElement
 :
 { before(grammarAccess.getFigureRefElementRule()); }
 	 ruleFigureRefElement
-{ after(grammarAccess.getFigureRefElementRule()); } 
-	 EOF 
+{ after(grammarAccess.getFigureRefElementRule()); }
+	 EOF
 ;
 
 // Rule FigureRefElement
@@ -261,12 +261,12 @@
 
 
 // Entry rule entryRuleFootnoteElement
-entryRuleFootnoteElement 
+entryRuleFootnoteElement
 :
 { before(grammarAccess.getFootnoteElementRule()); }
 	 ruleFootnoteElement
-{ after(grammarAccess.getFootnoteElementRule()); } 
-	 EOF 
+{ after(grammarAccess.getFootnoteElementRule()); }
+	 EOF
 ;
 
 // Rule FootnoteElement
@@ -289,12 +289,12 @@
 
 
 // Entry rule entryRuleHeadingElement
-entryRuleHeadingElement 
+entryRuleHeadingElement
 :
 { before(grammarAccess.getHeadingElementRule()); }
 	 ruleHeadingElement
-{ after(grammarAccess.getHeadingElementRule()); } 
-	 EOF 
+{ after(grammarAccess.getHeadingElementRule()); }
+	 EOF
 ;
 
 // Rule HeadingElement
@@ -317,12 +317,12 @@
 
 
 // Entry rule entryRuleNewLineElement
-entryRuleNewLineElement 
+entryRuleNewLineElement
 :
 { before(grammarAccess.getNewLineElementRule()); }
 	 ruleNewLineElement
-{ after(grammarAccess.getNewLineElementRule()); } 
-	 EOF 
+{ after(grammarAccess.getNewLineElementRule()); }
+	 EOF
 ;
 
 // Rule NewLineElement
@@ -345,12 +345,12 @@
 
 
 // Entry rule entryRuleNullElement
-entryRuleNullElement 
+entryRuleNullElement
 :
 { before(grammarAccess.getNullElementRule()); }
 	 ruleNullElement
-{ after(grammarAccess.getNullElementRule()); } 
-	 EOF 
+{ after(grammarAccess.getNullElementRule()); }
+	 EOF
 ;
 
 // Rule NullElement
@@ -373,12 +373,12 @@
 
 
 // Entry rule entryRuleOCLCodeElement
-entryRuleOCLCodeElement 
+entryRuleOCLCodeElement
 :
 { before(grammarAccess.getOCLCodeElementRule()); }
 	 ruleOCLCodeElement
-{ after(grammarAccess.getOCLCodeElementRule()); } 
-	 EOF 
+{ after(grammarAccess.getOCLCodeElementRule()); }
+	 EOF
 ;
 
 // Rule OCLCodeElement
@@ -401,12 +401,12 @@
 
 
 // Entry rule entryRuleOCLEvalElement
-entryRuleOCLEvalElement 
+entryRuleOCLEvalElement
 :
 { before(grammarAccess.getOCLEvalElementRule()); }
 	 ruleOCLEvalElement
-{ after(grammarAccess.getOCLEvalElementRule()); } 
-	 EOF 
+{ after(grammarAccess.getOCLEvalElementRule()); }
+	 EOF
 ;
 
 // Rule OCLEvalElement
@@ -429,12 +429,12 @@
 
 
 // Entry rule entryRuleOCLTextElement
-entryRuleOCLTextElement 
+entryRuleOCLTextElement
 :
 { before(grammarAccess.getOCLTextElementRule()); }
 	 ruleOCLTextElement
-{ after(grammarAccess.getOCLTextElementRule()); } 
-	 EOF 
+{ after(grammarAccess.getOCLTextElementRule()); }
+	 EOF
 ;
 
 // Rule OCLTextElement
@@ -457,12 +457,12 @@
 
 
 // Entry rule entryRuleTextElement
-entryRuleTextElement 
+entryRuleTextElement
 :
 { before(grammarAccess.getTextElementRule()); }
 	 ruleTextElement
-{ after(grammarAccess.getTextElementRule()); } 
-	 EOF 
+{ after(grammarAccess.getTextElementRule()); }
+	 EOF
 ;
 
 // Rule TextElement
@@ -493,7 +493,7 @@
 (
 { before(grammarAccess.getMarkupKeywordAccess().getBKeyword_0()); }
 
-	'b' 
+	'b'
 
 { after(grammarAccess.getMarkupKeywordAccess().getBKeyword_0()); }
 )
@@ -501,7 +501,7 @@
     |(
 { before(grammarAccess.getMarkupKeywordAccess().getEKeyword_1()); }
 
-	'e' 
+	'e'
 
 { after(grammarAccess.getMarkupKeywordAccess().getEKeyword_1()); }
 )
@@ -509,7 +509,7 @@
     |(
 { before(grammarAccess.getMarkupKeywordAccess().getBulletKeyword_2()); }
 
-	'bullet' 
+	'bullet'
 
 { after(grammarAccess.getMarkupKeywordAccess().getBulletKeyword_2()); }
 )
@@ -517,7 +517,7 @@
     |(
 { before(grammarAccess.getMarkupKeywordAccess().getFigureKeyword_3()); }
 
-	'figure' 
+	'figure'
 
 { after(grammarAccess.getMarkupKeywordAccess().getFigureKeyword_3()); }
 )
@@ -525,7 +525,7 @@
     |(
 { before(grammarAccess.getMarkupKeywordAccess().getFigureRefKeyword_4()); }
 
-	'figureRef' 
+	'figureRef'
 
 { after(grammarAccess.getMarkupKeywordAccess().getFigureRefKeyword_4()); }
 )
@@ -533,7 +533,7 @@
     |(
 { before(grammarAccess.getMarkupKeywordAccess().getFootnoteKeyword_5()); }
 
-	'footnote' 
+	'footnote'
 
 { after(grammarAccess.getMarkupKeywordAccess().getFootnoteKeyword_5()); }
 )
@@ -541,7 +541,7 @@
     |(
 { before(grammarAccess.getMarkupKeywordAccess().getHeadingKeyword_6()); }
 
-	'heading' 
+	'heading'
 
 { after(grammarAccess.getMarkupKeywordAccess().getHeadingKeyword_6()); }
 )
@@ -549,7 +549,7 @@
     |(
 { before(grammarAccess.getMarkupKeywordAccess().getOclCodeKeyword_7()); }
 
-	'oclCode' 
+	'oclCode'
 
 { after(grammarAccess.getMarkupKeywordAccess().getOclCodeKeyword_7()); }
 )
@@ -557,7 +557,7 @@
     |(
 { before(grammarAccess.getMarkupKeywordAccess().getOclEvalKeyword_8()); }
 
-	'oclEval' 
+	'oclEval'
 
 { after(grammarAccess.getMarkupKeywordAccess().getOclEvalKeyword_8()); }
 )
@@ -565,7 +565,7 @@
     |(
 { before(grammarAccess.getMarkupKeywordAccess().getOclTextKeyword_9()); }
 
-	'oclText' 
+	'oclText'
 
 { after(grammarAccess.getMarkupKeywordAccess().getOclTextKeyword_9()); }
 )
@@ -665,7 +665,7 @@
 (
 { before(grammarAccess.getFontElementAccess().getFontBKeyword_0_0_0()); }
 
-	'b' 
+	'b'
 
 { after(grammarAccess.getFontElementAccess().getFontBKeyword_0_0_0()); }
 )
@@ -673,7 +673,7 @@
     |(
 { before(grammarAccess.getFontElementAccess().getFontEKeyword_0_0_1()); }
 
-	'e' 
+	'e'
 
 { after(grammarAccess.getFontElementAccess().getFontEKeyword_0_0_1()); }
 )
@@ -744,7 +744,7 @@
     |(
 { before(grammarAccess.getTextElementAccess().getTextColonKeyword_0_0_4()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getTextElementAccess().getTextColonKeyword_0_0_4()); }
 )
@@ -752,7 +752,7 @@
     |(
 { before(grammarAccess.getTextElementAccess().getTextNumberSignKeyword_0_0_5()); }
 
-	'#' 
+	'#'
 
 { after(grammarAccess.getTextElementAccess().getTextNumberSignKeyword_0_0_5()); }
 )
@@ -760,7 +760,7 @@
     |(
 { before(grammarAccess.getTextElementAccess().getTextCommaKeyword_0_0_6()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTextElementAccess().getTextCommaKeyword_0_0_6()); }
 )
@@ -823,7 +823,7 @@
 (
 { before(grammarAccess.getBulletElementAccess().getBulletKeyword_1()); }
 
-	'bullet' 
+	'bullet'
 
 { after(grammarAccess.getBulletElementAccess().getBulletKeyword_1()); }
 )
@@ -883,7 +883,7 @@
 (
 { before(grammarAccess.getBulletElementAccess().getLeftSquareBracketKeyword_3()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getBulletElementAccess().getLeftSquareBracketKeyword_3()); }
 )
@@ -942,7 +942,7 @@
 (
 { before(grammarAccess.getBulletElementAccess().getRightSquareBracketKeyword_5()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getBulletElementAccess().getRightSquareBracketKeyword_5()); }
 )
@@ -985,7 +985,7 @@
 (
 { before(grammarAccess.getBulletElementAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getBulletElementAccess().getColonKeyword_2_0()); }
 )
@@ -1077,7 +1077,7 @@
 (
 { before(grammarAccess.getFontElementAccess().getLeftSquareBracketKeyword_1()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getFontElementAccess().getLeftSquareBracketKeyword_1()); }
 )
@@ -1136,7 +1136,7 @@
 (
 { before(grammarAccess.getFontElementAccess().getRightSquareBracketKeyword_3()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getFontElementAccess().getRightSquareBracketKeyword_3()); }
 )
@@ -1175,7 +1175,7 @@
 (
 { before(grammarAccess.getFigureElementAccess().getFigureKeyword_0()); }
 
-	'figure' 
+	'figure'
 
 { after(grammarAccess.getFigureElementAccess().getFigureKeyword_0()); }
 )
@@ -1235,7 +1235,7 @@
 (
 { before(grammarAccess.getFigureElementAccess().getLeftSquareBracketKeyword_2()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getFigureElementAccess().getLeftSquareBracketKeyword_2()); }
 )
@@ -1323,7 +1323,7 @@
 (
 { before(grammarAccess.getFigureElementAccess().getRightSquareBracketKeyword_5()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getFigureElementAccess().getRightSquareBracketKeyword_5()); }
 )
@@ -1366,7 +1366,7 @@
 (
 { before(grammarAccess.getFigureElementAccess().getNumberSignKeyword_1_0()); }
 
-	'#' 
+	'#'
 
 { after(grammarAccess.getFigureElementAccess().getNumberSignKeyword_1_0()); }
 )
@@ -1429,7 +1429,7 @@
 (
 { before(grammarAccess.getFigureElementAccess().getCommaKeyword_4_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getFigureElementAccess().getCommaKeyword_4_0()); }
 )
@@ -1523,7 +1523,7 @@
 (
 { before(grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_0()); }
 )
@@ -1617,7 +1617,7 @@
 (
 { before(grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_2_0()); }
 )
@@ -1680,7 +1680,7 @@
 (
 { before(grammarAccess.getFigureRefElementAccess().getFigureRefKeyword_0()); }
 
-	'figureRef' 
+	'figureRef'
 
 { after(grammarAccess.getFigureRefElementAccess().getFigureRefKeyword_0()); }
 )
@@ -1711,7 +1711,7 @@
 (
 { before(grammarAccess.getFigureRefElementAccess().getLeftSquareBracketKeyword_1()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getFigureRefElementAccess().getLeftSquareBracketKeyword_1()); }
 )
@@ -1770,7 +1770,7 @@
 (
 { before(grammarAccess.getFigureRefElementAccess().getRightSquareBracketKeyword_3()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getFigureRefElementAccess().getRightSquareBracketKeyword_3()); }
 )
@@ -1840,7 +1840,7 @@
 (
 { before(grammarAccess.getFootnoteElementAccess().getFootnoteKeyword_1()); }
 
-	'footnote' 
+	'footnote'
 
 { after(grammarAccess.getFootnoteElementAccess().getFootnoteKeyword_1()); }
 )
@@ -1871,7 +1871,7 @@
 (
 { before(grammarAccess.getFootnoteElementAccess().getLeftSquareBracketKeyword_2()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getFootnoteElementAccess().getLeftSquareBracketKeyword_2()); }
 )
@@ -1930,7 +1930,7 @@
 (
 { before(grammarAccess.getFootnoteElementAccess().getRightSquareBracketKeyword_4()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getFootnoteElementAccess().getRightSquareBracketKeyword_4()); }
 )
@@ -2002,7 +2002,7 @@
 (
 { before(grammarAccess.getHeadingElementAccess().getHeadingKeyword_1()); }
 
-	'heading' 
+	'heading'
 
 { after(grammarAccess.getHeadingElementAccess().getHeadingKeyword_1()); }
 )
@@ -2062,7 +2062,7 @@
 (
 { before(grammarAccess.getHeadingElementAccess().getLeftSquareBracketKeyword_3()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getHeadingElementAccess().getLeftSquareBracketKeyword_3()); }
 )
@@ -2121,7 +2121,7 @@
 (
 { before(grammarAccess.getHeadingElementAccess().getRightSquareBracketKeyword_5()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getHeadingElementAccess().getRightSquareBracketKeyword_5()); }
 )
@@ -2164,7 +2164,7 @@
 (
 { before(grammarAccess.getHeadingElementAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getHeadingElementAccess().getColonKeyword_2_0()); }
 )
@@ -2258,7 +2258,7 @@
 (
 { before(grammarAccess.getNullElementAccess().getLeftSquareBracketKeyword_1()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getNullElementAccess().getLeftSquareBracketKeyword_1()); }
 )
@@ -2317,7 +2317,7 @@
 (
 { before(grammarAccess.getNullElementAccess().getRightSquareBracketKeyword_3()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getNullElementAccess().getRightSquareBracketKeyword_3()); }
 )
@@ -2387,7 +2387,7 @@
 (
 { before(grammarAccess.getOCLCodeElementAccess().getOclCodeKeyword_1()); }
 
-	'oclCode' 
+	'oclCode'
 
 { after(grammarAccess.getOCLCodeElementAccess().getOclCodeKeyword_1()); }
 )
@@ -2418,7 +2418,7 @@
 (
 { before(grammarAccess.getOCLCodeElementAccess().getLeftSquareBracketKeyword_2()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getOCLCodeElementAccess().getLeftSquareBracketKeyword_2()); }
 )
@@ -2477,7 +2477,7 @@
 (
 { before(grammarAccess.getOCLCodeElementAccess().getRightSquareBracketKeyword_4()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getOCLCodeElementAccess().getRightSquareBracketKeyword_4()); }
 )
@@ -2549,7 +2549,7 @@
 (
 { before(grammarAccess.getOCLEvalElementAccess().getOclEvalKeyword_1()); }
 
-	'oclEval' 
+	'oclEval'
 
 { after(grammarAccess.getOCLEvalElementAccess().getOclEvalKeyword_1()); }
 )
@@ -2580,7 +2580,7 @@
 (
 { before(grammarAccess.getOCLEvalElementAccess().getLeftSquareBracketKeyword_2()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getOCLEvalElementAccess().getLeftSquareBracketKeyword_2()); }
 )
@@ -2639,7 +2639,7 @@
 (
 { before(grammarAccess.getOCLEvalElementAccess().getRightSquareBracketKeyword_4()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getOCLEvalElementAccess().getRightSquareBracketKeyword_4()); }
 )
@@ -2711,7 +2711,7 @@
 (
 { before(grammarAccess.getOCLTextElementAccess().getOclTextKeyword_1()); }
 
-	'oclText' 
+	'oclText'
 
 { after(grammarAccess.getOCLTextElementAccess().getOclTextKeyword_1()); }
 )
@@ -2742,7 +2742,7 @@
 (
 { before(grammarAccess.getOCLTextElementAccess().getLeftSquareBracketKeyword_2()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getOCLTextElementAccess().getLeftSquareBracketKeyword_2()); }
 )
@@ -2801,7 +2801,7 @@
 (
 { before(grammarAccess.getOCLTextElementAccess().getRightSquareBracketKeyword_4()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getOCLTextElementAccess().getRightSquareBracketKeyword_4()); }
 )
diff --git a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/internal/InternalMarkupLexer.java b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/internal/InternalMarkupLexer.java
index 377e07f..23836fa 100644
--- a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/internal/InternalMarkupLexer.java
+++ b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/internal/InternalMarkupLexer.java
@@ -1,6 +1,6 @@
 package org.eclipse.ocl.xtext.markup.ui.contentassist.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
 
@@ -44,7 +44,7 @@
     // delegates
     // delegators
 
-    public InternalMarkupLexer() {;} 
+    public InternalMarkupLexer() {;}
     public InternalMarkupLexer(CharStream input) {
         this(input, new RecognizerSharedState());
     }
@@ -62,7 +62,7 @@
             // InternalMarkup.g:11:7: ( 'b' )
             // InternalMarkup.g:11:9: 'b'
             {
-            match('b'); 
+            match('b');
 
             }
 
@@ -82,7 +82,7 @@
             // InternalMarkup.g:12:7: ( 'e' )
             // InternalMarkup.g:12:9: 'e'
             {
-            match('e'); 
+            match('e');
 
             }
 
@@ -102,7 +102,7 @@
             // InternalMarkup.g:13:7: ( 'bullet' )
             // InternalMarkup.g:13:9: 'bullet'
             {
-            match("bullet"); 
+            match("bullet");
 
 
             }
@@ -123,7 +123,7 @@
             // InternalMarkup.g:14:7: ( 'figure' )
             // InternalMarkup.g:14:9: 'figure'
             {
-            match("figure"); 
+            match("figure");
 
 
             }
@@ -144,7 +144,7 @@
             // InternalMarkup.g:15:7: ( 'figureRef' )
             // InternalMarkup.g:15:9: 'figureRef'
             {
-            match("figureRef"); 
+            match("figureRef");
 
 
             }
@@ -165,7 +165,7 @@
             // InternalMarkup.g:16:7: ( 'footnote' )
             // InternalMarkup.g:16:9: 'footnote'
             {
-            match("footnote"); 
+            match("footnote");
 
 
             }
@@ -186,7 +186,7 @@
             // InternalMarkup.g:17:7: ( 'heading' )
             // InternalMarkup.g:17:9: 'heading'
             {
-            match("heading"); 
+            match("heading");
 
 
             }
@@ -207,7 +207,7 @@
             // InternalMarkup.g:18:7: ( 'oclCode' )
             // InternalMarkup.g:18:9: 'oclCode'
             {
-            match("oclCode"); 
+            match("oclCode");
 
 
             }
@@ -228,7 +228,7 @@
             // InternalMarkup.g:19:7: ( 'oclEval' )
             // InternalMarkup.g:19:9: 'oclEval'
             {
-            match("oclEval"); 
+            match("oclEval");
 
 
             }
@@ -249,7 +249,7 @@
             // InternalMarkup.g:20:7: ( 'oclText' )
             // InternalMarkup.g:20:9: 'oclText'
             {
-            match("oclText"); 
+            match("oclText");
 
 
             }
@@ -270,7 +270,7 @@
             // InternalMarkup.g:21:7: ( ':' )
             // InternalMarkup.g:21:9: ':'
             {
-            match(':'); 
+            match(':');
 
             }
 
@@ -290,7 +290,7 @@
             // InternalMarkup.g:22:7: ( '#' )
             // InternalMarkup.g:22:9: '#'
             {
-            match('#'); 
+            match('#');
 
             }
 
@@ -310,7 +310,7 @@
             // InternalMarkup.g:23:7: ( ',' )
             // InternalMarkup.g:23:9: ','
             {
-            match(','); 
+            match(',');
 
             }
 
@@ -330,7 +330,7 @@
             // InternalMarkup.g:24:7: ( '[' )
             // InternalMarkup.g:24:9: '['
             {
-            match('['); 
+            match('[');
 
             }
 
@@ -350,7 +350,7 @@
             // InternalMarkup.g:25:7: ( ']' )
             // InternalMarkup.g:25:9: ']'
             {
-            match(']'); 
+            match(']');
 
             }
 
@@ -368,7 +368,7 @@
             // InternalMarkup.g:3148:22: ( '0' .. '9' )
             // InternalMarkup.g:3148:24: '0' .. '9'
             {
-            matchRange('0','9'); 
+            matchRange('0','9');
 
             }
 
@@ -408,7 +408,7 @@
             // InternalMarkup.g:3152:23: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' | '<' | '>' | '[' | ']' ) )
             // InternalMarkup.g:3152:25: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' | '<' | '>' | '[' | ']' )
             {
-            match('\\'); 
+            match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='<'||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.consume();
 
@@ -499,7 +499,7 @@
             	case 1 :
             	    // InternalMarkup.g:3158:12: RULE_NUMBER
             	    {
-            	    mRULE_NUMBER(); 
+            	    mRULE_NUMBER();
 
             	    }
             	    break;
@@ -532,7 +532,7 @@
             // InternalMarkup.g:3160:13: ( '\"' ( RULE_ESCAPED | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
             // InternalMarkup.g:3160:15: '\"' ( RULE_ESCAPED | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
-            match('\"'); 
+            match('\"');
             // InternalMarkup.g:3160:19: ( RULE_ESCAPED | ~ ( ( '\\\\' | '\"' ) ) )*
             loop2:
             do {
@@ -551,7 +551,7 @@
             	case 1 :
             	    // InternalMarkup.g:3160:20: RULE_ESCAPED
             	    {
-            	    mRULE_ESCAPED(); 
+            	    mRULE_ESCAPED();
 
             	    }
             	    break;
@@ -576,7 +576,7 @@
                 }
             } while (true);
 
-            match('\"'); 
+            match('\"');
 
             }
 
@@ -596,7 +596,7 @@
             // InternalMarkup.g:3162:9: ( RULE_LETTER ( RULE_LETTER | RULE_NUMBER )* )
             // InternalMarkup.g:3162:11: RULE_LETTER ( RULE_LETTER | RULE_NUMBER )*
             {
-            mRULE_LETTER(); 
+            mRULE_LETTER();
             // InternalMarkup.g:3162:23: ( RULE_LETTER | RULE_NUMBER )*
             loop3:
             do {
@@ -668,7 +668,7 @@
             	case 1 :
             	    // InternalMarkup.g:3164:14: RULE_ESCAPED
             	    {
-            	    mRULE_ESCAPED(); 
+            	    mRULE_ESCAPED();
 
             	    }
             	    break;
@@ -747,7 +747,7 @@
             	    	case 1 :
             	    	    // InternalMarkup.g:3166:12: RULE_HORIZONTAL_WS
             	    	    {
-            	    	    mRULE_HORIZONTAL_WS(); 
+            	    	    mRULE_HORIZONTAL_WS();
 
             	    	    }
             	    	    break;
@@ -757,7 +757,7 @@
             	        }
             	    } while (true);
 
-            	    mRULE_VERTICAL_WS(); 
+            	    mRULE_VERTICAL_WS();
 
             	    }
             	    break;
@@ -806,7 +806,7 @@
             	case 1 :
             	    // InternalMarkup.g:3168:11: RULE_HORIZONTAL_WS
             	    {
-            	    mRULE_HORIZONTAL_WS(); 
+            	    mRULE_HORIZONTAL_WS();
 
             	    }
             	    break;
@@ -839,7 +839,7 @@
             // InternalMarkup.g:3170:16: ( . )
             // InternalMarkup.g:3170:18: .
             {
-            matchAny(); 
+            matchAny();
 
             }
 
@@ -859,154 +859,154 @@
             case 1 :
                 // InternalMarkup.g:1:10: T__16
                 {
-                mT__16(); 
+                mT__16();
 
                 }
                 break;
             case 2 :
                 // InternalMarkup.g:1:16: T__17
                 {
-                mT__17(); 
+                mT__17();
 
                 }
                 break;
             case 3 :
                 // InternalMarkup.g:1:22: T__18
                 {
-                mT__18(); 
+                mT__18();
 
                 }
                 break;
             case 4 :
                 // InternalMarkup.g:1:28: T__19
                 {
-                mT__19(); 
+                mT__19();
 
                 }
                 break;
             case 5 :
                 // InternalMarkup.g:1:34: T__20
                 {
-                mT__20(); 
+                mT__20();
 
                 }
                 break;
             case 6 :
                 // InternalMarkup.g:1:40: T__21
                 {
-                mT__21(); 
+                mT__21();
 
                 }
                 break;
             case 7 :
                 // InternalMarkup.g:1:46: T__22
                 {
-                mT__22(); 
+                mT__22();
 
                 }
                 break;
             case 8 :
                 // InternalMarkup.g:1:52: T__23
                 {
-                mT__23(); 
+                mT__23();
 
                 }
                 break;
             case 9 :
                 // InternalMarkup.g:1:58: T__24
                 {
-                mT__24(); 
+                mT__24();
 
                 }
                 break;
             case 10 :
                 // InternalMarkup.g:1:64: T__25
                 {
-                mT__25(); 
+                mT__25();
 
                 }
                 break;
             case 11 :
                 // InternalMarkup.g:1:70: T__26
                 {
-                mT__26(); 
+                mT__26();
 
                 }
                 break;
             case 12 :
                 // InternalMarkup.g:1:76: T__27
                 {
-                mT__27(); 
+                mT__27();
 
                 }
                 break;
             case 13 :
                 // InternalMarkup.g:1:82: T__28
                 {
-                mT__28(); 
+                mT__28();
 
                 }
                 break;
             case 14 :
                 // InternalMarkup.g:1:88: T__29
                 {
-                mT__29(); 
+                mT__29();
 
                 }
                 break;
             case 15 :
                 // InternalMarkup.g:1:94: T__30
                 {
-                mT__30(); 
+                mT__30();
 
                 }
                 break;
             case 16 :
                 // InternalMarkup.g:1:100: RULE_INT
                 {
-                mRULE_INT(); 
+                mRULE_INT();
 
                 }
                 break;
             case 17 :
                 // InternalMarkup.g:1:109: RULE_STRING
                 {
-                mRULE_STRING(); 
+                mRULE_STRING();
 
                 }
                 break;
             case 18 :
                 // InternalMarkup.g:1:121: RULE_ID
                 {
-                mRULE_ID(); 
+                mRULE_ID();
 
                 }
                 break;
             case 19 :
                 // InternalMarkup.g:1:129: RULE_WORD
                 {
-                mRULE_WORD(); 
+                mRULE_WORD();
 
                 }
                 break;
             case 20 :
                 // InternalMarkup.g:1:139: RULE_NL
                 {
-                mRULE_NL(); 
+                mRULE_NL();
 
                 }
                 break;
             case 21 :
                 // InternalMarkup.g:1:147: RULE_WS
                 {
-                mRULE_WS(); 
+                mRULE_WS();
 
                 }
                 break;
             case 22 :
                 // InternalMarkup.g:1:155: RULE_ANY_OTHER
                 {
-                mRULE_ANY_OTHER(); 
+                mRULE_ANY_OTHER();
 
                 }
                 break;
@@ -1151,7 +1151,7 @@
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA8_61 = input.LA(1);
 
                         s = -1;
@@ -1165,7 +1165,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA8_69 = input.LA(1);
 
                         s = -1;
@@ -1179,7 +1179,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA8_26 = input.LA(1);
 
                         s = -1;
@@ -1193,7 +1193,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA8_43 = input.LA(1);
 
                         s = -1;
@@ -1207,7 +1207,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA8_48 = input.LA(1);
 
                         s = -1;
@@ -1221,7 +1221,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA8_70 = input.LA(1);
 
                         s = -1;
@@ -1233,7 +1233,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA8_55 = input.LA(1);
 
                         s = -1;
@@ -1247,7 +1247,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 7 : 
+                    case 7 :
                         int LA8_62 = input.LA(1);
 
                         s = -1;
@@ -1261,7 +1261,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 8 : 
+                    case 8 :
                         int LA8_49 = input.LA(1);
 
                         s = -1;
@@ -1275,7 +1275,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 9 : 
+                    case 9 :
                         int LA8_56 = input.LA(1);
 
                         s = -1;
@@ -1289,7 +1289,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 10 : 
+                    case 10 :
                         int LA8_63 = input.LA(1);
 
                         s = -1;
@@ -1303,7 +1303,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 11 : 
+                    case 11 :
                         int LA8_4 = input.LA(1);
 
                         s = -1;
@@ -1317,7 +1317,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 12 : 
+                    case 12 :
                         int LA8_20 = input.LA(1);
 
                         s = -1;
@@ -1329,7 +1329,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 13 : 
+                    case 13 :
                         int LA8_27 = input.LA(1);
 
                         s = -1;
@@ -1343,7 +1343,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 14 : 
+                    case 14 :
                         int LA8_71 = input.LA(1);
 
                         s = -1;
@@ -1355,7 +1355,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 15 : 
+                    case 15 :
                         int LA8_50 = input.LA(1);
 
                         s = -1;
@@ -1369,7 +1369,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 16 : 
+                    case 16 :
                         int LA8_44 = input.LA(1);
 
                         s = -1;
@@ -1387,7 +1387,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 17 : 
+                    case 17 :
                         int LA8_57 = input.LA(1);
 
                         s = -1;
@@ -1401,7 +1401,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 18 : 
+                    case 18 :
                         int LA8_64 = input.LA(1);
 
                         s = -1;
@@ -1415,7 +1415,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 19 : 
+                    case 19 :
                         int LA8_0 = input.LA(1);
 
                         s = -1;
@@ -1455,7 +1455,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 20 : 
+                    case 20 :
                         int LA8_51 = input.LA(1);
 
                         s = -1;
@@ -1469,7 +1469,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 21 : 
+                    case 21 :
                         int LA8_58 = input.LA(1);
 
                         s = -1;
@@ -1483,7 +1483,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 22 : 
+                    case 22 :
                         int LA8_60 = input.LA(1);
 
                         s = -1;
@@ -1497,7 +1497,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 23 : 
+                    case 23 :
                         int LA8_65 = input.LA(1);
 
                         s = -1;
@@ -1511,7 +1511,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 24 : 
+                    case 24 :
                         int LA8_5 = input.LA(1);
 
                         s = -1;
@@ -1525,7 +1525,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 25 : 
+                    case 25 :
                         int LA8_3 = input.LA(1);
 
                         s = -1;
@@ -1541,7 +1541,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 26 : 
+                    case 26 :
                         int LA8_72 = input.LA(1);
 
                         s = -1;
@@ -1553,7 +1553,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 27 : 
+                    case 27 :
                         int LA8_13 = input.LA(1);
 
                         s = -1;
@@ -1565,7 +1565,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 28 : 
+                    case 28 :
                         int LA8_23 = input.LA(1);
 
                         s = -1;
@@ -1579,7 +1579,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 29 : 
+                    case 29 :
                         int LA8_41 = input.LA(1);
 
                         s = -1;
@@ -1593,7 +1593,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 30 : 
+                    case 30 :
                         int LA8_59 = input.LA(1);
 
                         s = -1;
@@ -1605,7 +1605,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 31 : 
+                    case 31 :
                         int LA8_73 = input.LA(1);
 
                         s = -1;
@@ -1617,7 +1617,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 32 : 
+                    case 32 :
                         int LA8_46 = input.LA(1);
 
                         s = -1;
@@ -1631,7 +1631,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 33 : 
+                    case 33 :
                         int LA8_2 = input.LA(1);
 
                         s = -1;
@@ -1643,7 +1643,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 34 : 
+                    case 34 :
                         int LA8_53 = input.LA(1);
 
                         s = -1;
@@ -1657,7 +1657,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 35 : 
+                    case 35 :
                         int LA8_12 = input.LA(1);
 
                         s = -1;
@@ -1667,7 +1667,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 36 : 
+                    case 36 :
                         int LA8_18 = input.LA(1);
 
                         s = -1;
@@ -1681,7 +1681,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 37 : 
+                    case 37 :
                         int LA8_40 = input.LA(1);
 
                         s = -1;
@@ -1695,7 +1695,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 38 : 
+                    case 38 :
                         int LA8_34 = input.LA(1);
 
                         s = -1;
@@ -1707,7 +1707,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 39 : 
+                    case 39 :
                         int LA8_45 = input.LA(1);
 
                         s = -1;
@@ -1721,7 +1721,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 40 : 
+                    case 40 :
                         int LA8_52 = input.LA(1);
 
                         s = -1;
@@ -1735,7 +1735,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 41 : 
+                    case 41 :
                         int LA8_80 = input.LA(1);
 
                         s = -1;
@@ -1747,7 +1747,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 42 : 
+                    case 42 :
                         int LA8_11 = input.LA(1);
 
                         s = -1;
@@ -1759,7 +1759,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 43 : 
+                    case 43 :
                         int LA8_67 = input.LA(1);
 
                         s = -1;
@@ -1773,7 +1773,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 44 : 
+                    case 44 :
                         int LA8_74 = input.LA(1);
 
                         s = -1;
@@ -1787,7 +1787,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 45 : 
+                    case 45 :
                         int LA8_1 = input.LA(1);
 
                         s = -1;
@@ -1801,7 +1801,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 46 : 
+                    case 46 :
                         int LA8_75 = input.LA(1);
 
                         s = -1;
@@ -1813,7 +1813,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 47 : 
+                    case 47 :
                         int LA8_24 = input.LA(1);
 
                         s = -1;
@@ -1827,7 +1827,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 48 : 
+                    case 48 :
                         int LA8_42 = input.LA(1);
 
                         s = -1;
@@ -1841,7 +1841,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 49 : 
+                    case 49 :
                         int LA8_47 = input.LA(1);
 
                         s = -1;
@@ -1855,7 +1855,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 50 : 
+                    case 50 :
                         int LA8_54 = input.LA(1);
 
                         s = -1;
@@ -1876,6 +1876,6 @@
             throw nvae;
         }
     }
- 
+
 
 }
\ No newline at end of file
diff --git a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/internal/InternalMarkupParser.java b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/internal/InternalMarkupParser.java
index 4b9f89d..fec0922 100644
--- a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/internal/InternalMarkupParser.java
+++ b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/contentassist/antlr/internal/InternalMarkupParser.java
@@ -1,4 +1,4 @@
-package org.eclipse.ocl.xtext.markup.ui.contentassist.antlr.internal; 
+package org.eclipse.ocl.xtext.markup.ui.contentassist.antlr.internal;
 
 import java.io.InputStream;
 import org.eclipse.xtext.*;
@@ -73,26 +73,26 @@
         }
         public InternalMarkupParser(TokenStream input, RecognizerSharedState state) {
             super(input, state);
-             
+
         }
-        
+
 
     public String[] getTokenNames() { return InternalMarkupParser.tokenNames; }
     public String getGrammarFileName() { return "InternalMarkup.g"; }
 
 
-     
+
      	private MarkupGrammarAccess grammarAccess;
-     	
+
         public void setGrammarAccess(MarkupGrammarAccess grammarAccess) {
         	this.grammarAccess = grammarAccess;
         }
-        
+
         @Override
         protected Grammar getGrammar() {
         	return grammarAccess.getGrammar();
         }
-        
+
         @Override
         protected String getValueForTokenName(String tokenName) {
         	return tokenName;
@@ -109,7 +109,7 @@
             // InternalMarkup.g:70:1: ruleMarkup EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMarkupRule()); 
+               before(grammarAccess.getMarkupRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMarkup();
@@ -117,7 +117,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMarkupRule()); 
+               after(grammarAccess.getMarkupRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -140,7 +140,7 @@
     public final void ruleMarkup() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:81:2: ( ( ( rule__Markup__ElementsAssignment )* ) )
             // InternalMarkup.g:82:1: ( ( rule__Markup__ElementsAssignment )* )
@@ -149,7 +149,7 @@
             // InternalMarkup.g:83:1: ( rule__Markup__ElementsAssignment )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMarkupAccess().getElementsAssignment()); 
+               before(grammarAccess.getMarkupAccess().getElementsAssignment());
             }
             // InternalMarkup.g:84:1: ( rule__Markup__ElementsAssignment )*
             loop1:
@@ -181,7 +181,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMarkupAccess().getElementsAssignment()); 
+               after(grammarAccess.getMarkupAccess().getElementsAssignment());
             }
 
             }
@@ -212,7 +212,7 @@
             // InternalMarkup.g:98:1: ruleMarkupKeyword EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMarkupKeywordRule()); 
+               before(grammarAccess.getMarkupKeywordRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMarkupKeyword();
@@ -220,7 +220,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMarkupKeywordRule()); 
+               after(grammarAccess.getMarkupKeywordRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -243,7 +243,7 @@
     public final void ruleMarkupKeyword() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:109:2: ( ( ( rule__MarkupKeyword__Alternatives ) ) )
             // InternalMarkup.g:110:1: ( ( rule__MarkupKeyword__Alternatives ) )
@@ -252,7 +252,7 @@
             // InternalMarkup.g:111:1: ( rule__MarkupKeyword__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMarkupKeywordAccess().getAlternatives()); 
+               before(grammarAccess.getMarkupKeywordAccess().getAlternatives());
             }
             // InternalMarkup.g:112:1: ( rule__MarkupKeyword__Alternatives )
             // InternalMarkup.g:112:2: rule__MarkupKeyword__Alternatives
@@ -266,7 +266,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMarkupKeywordAccess().getAlternatives()); 
+               after(grammarAccess.getMarkupKeywordAccess().getAlternatives());
             }
 
             }
@@ -297,7 +297,7 @@
             // InternalMarkup.g:126:1: ruleMarkupElement EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMarkupElementRule()); 
+               before(grammarAccess.getMarkupElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMarkupElement();
@@ -305,7 +305,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMarkupElementRule()); 
+               after(grammarAccess.getMarkupElementRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -328,7 +328,7 @@
     public final void ruleMarkupElement() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:137:2: ( ( ( rule__MarkupElement__Alternatives ) ) )
             // InternalMarkup.g:138:1: ( ( rule__MarkupElement__Alternatives ) )
@@ -337,7 +337,7 @@
             // InternalMarkup.g:139:1: ( rule__MarkupElement__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMarkupElementAccess().getAlternatives()); 
+               before(grammarAccess.getMarkupElementAccess().getAlternatives());
             }
             // InternalMarkup.g:140:1: ( rule__MarkupElement__Alternatives )
             // InternalMarkup.g:140:2: rule__MarkupElement__Alternatives
@@ -351,7 +351,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMarkupElementAccess().getAlternatives()); 
+               after(grammarAccess.getMarkupElementAccess().getAlternatives());
             }
 
             }
@@ -382,7 +382,7 @@
             // InternalMarkup.g:154:1: ruleBulletElement EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBulletElementRule()); 
+               before(grammarAccess.getBulletElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleBulletElement();
@@ -390,7 +390,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBulletElementRule()); 
+               after(grammarAccess.getBulletElementRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -413,7 +413,7 @@
     public final void ruleBulletElement() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:165:2: ( ( ( rule__BulletElement__Group__0 ) ) )
             // InternalMarkup.g:166:1: ( ( rule__BulletElement__Group__0 ) )
@@ -422,7 +422,7 @@
             // InternalMarkup.g:167:1: ( rule__BulletElement__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBulletElementAccess().getGroup()); 
+               before(grammarAccess.getBulletElementAccess().getGroup());
             }
             // InternalMarkup.g:168:1: ( rule__BulletElement__Group__0 )
             // InternalMarkup.g:168:2: rule__BulletElement__Group__0
@@ -436,7 +436,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBulletElementAccess().getGroup()); 
+               after(grammarAccess.getBulletElementAccess().getGroup());
             }
 
             }
@@ -467,7 +467,7 @@
             // InternalMarkup.g:182:1: ruleFontElement EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFontElementRule()); 
+               before(grammarAccess.getFontElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleFontElement();
@@ -475,7 +475,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFontElementRule()); 
+               after(grammarAccess.getFontElementRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -498,7 +498,7 @@
     public final void ruleFontElement() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:193:2: ( ( ( rule__FontElement__Group__0 ) ) )
             // InternalMarkup.g:194:1: ( ( rule__FontElement__Group__0 ) )
@@ -507,7 +507,7 @@
             // InternalMarkup.g:195:1: ( rule__FontElement__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFontElementAccess().getGroup()); 
+               before(grammarAccess.getFontElementAccess().getGroup());
             }
             // InternalMarkup.g:196:1: ( rule__FontElement__Group__0 )
             // InternalMarkup.g:196:2: rule__FontElement__Group__0
@@ -521,7 +521,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFontElementAccess().getGroup()); 
+               after(grammarAccess.getFontElementAccess().getGroup());
             }
 
             }
@@ -552,7 +552,7 @@
             // InternalMarkup.g:210:1: ruleFigureElement EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementRule()); 
+               before(grammarAccess.getFigureElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleFigureElement();
@@ -560,7 +560,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementRule()); 
+               after(grammarAccess.getFigureElementRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -583,7 +583,7 @@
     public final void ruleFigureElement() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:221:2: ( ( ( rule__FigureElement__Group__0 ) ) )
             // InternalMarkup.g:222:1: ( ( rule__FigureElement__Group__0 ) )
@@ -592,7 +592,7 @@
             // InternalMarkup.g:223:1: ( rule__FigureElement__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getGroup()); 
+               before(grammarAccess.getFigureElementAccess().getGroup());
             }
             // InternalMarkup.g:224:1: ( rule__FigureElement__Group__0 )
             // InternalMarkup.g:224:2: rule__FigureElement__Group__0
@@ -606,7 +606,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getGroup()); 
+               after(grammarAccess.getFigureElementAccess().getGroup());
             }
 
             }
@@ -637,7 +637,7 @@
             // InternalMarkup.g:238:1: ruleFigureRefElement EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureRefElementRule()); 
+               before(grammarAccess.getFigureRefElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleFigureRefElement();
@@ -645,7 +645,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureRefElementRule()); 
+               after(grammarAccess.getFigureRefElementRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -668,7 +668,7 @@
     public final void ruleFigureRefElement() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:249:2: ( ( ( rule__FigureRefElement__Group__0 ) ) )
             // InternalMarkup.g:250:1: ( ( rule__FigureRefElement__Group__0 ) )
@@ -677,7 +677,7 @@
             // InternalMarkup.g:251:1: ( rule__FigureRefElement__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureRefElementAccess().getGroup()); 
+               before(grammarAccess.getFigureRefElementAccess().getGroup());
             }
             // InternalMarkup.g:252:1: ( rule__FigureRefElement__Group__0 )
             // InternalMarkup.g:252:2: rule__FigureRefElement__Group__0
@@ -691,7 +691,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureRefElementAccess().getGroup()); 
+               after(grammarAccess.getFigureRefElementAccess().getGroup());
             }
 
             }
@@ -722,7 +722,7 @@
             // InternalMarkup.g:266:1: ruleFootnoteElement EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFootnoteElementRule()); 
+               before(grammarAccess.getFootnoteElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleFootnoteElement();
@@ -730,7 +730,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFootnoteElementRule()); 
+               after(grammarAccess.getFootnoteElementRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -753,7 +753,7 @@
     public final void ruleFootnoteElement() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:277:2: ( ( ( rule__FootnoteElement__Group__0 ) ) )
             // InternalMarkup.g:278:1: ( ( rule__FootnoteElement__Group__0 ) )
@@ -762,7 +762,7 @@
             // InternalMarkup.g:279:1: ( rule__FootnoteElement__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFootnoteElementAccess().getGroup()); 
+               before(grammarAccess.getFootnoteElementAccess().getGroup());
             }
             // InternalMarkup.g:280:1: ( rule__FootnoteElement__Group__0 )
             // InternalMarkup.g:280:2: rule__FootnoteElement__Group__0
@@ -776,7 +776,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFootnoteElementAccess().getGroup()); 
+               after(grammarAccess.getFootnoteElementAccess().getGroup());
             }
 
             }
@@ -807,7 +807,7 @@
             // InternalMarkup.g:294:1: ruleHeadingElement EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getHeadingElementRule()); 
+               before(grammarAccess.getHeadingElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleHeadingElement();
@@ -815,7 +815,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getHeadingElementRule()); 
+               after(grammarAccess.getHeadingElementRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -838,7 +838,7 @@
     public final void ruleHeadingElement() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:305:2: ( ( ( rule__HeadingElement__Group__0 ) ) )
             // InternalMarkup.g:306:1: ( ( rule__HeadingElement__Group__0 ) )
@@ -847,7 +847,7 @@
             // InternalMarkup.g:307:1: ( rule__HeadingElement__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getHeadingElementAccess().getGroup()); 
+               before(grammarAccess.getHeadingElementAccess().getGroup());
             }
             // InternalMarkup.g:308:1: ( rule__HeadingElement__Group__0 )
             // InternalMarkup.g:308:2: rule__HeadingElement__Group__0
@@ -861,7 +861,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getHeadingElementAccess().getGroup()); 
+               after(grammarAccess.getHeadingElementAccess().getGroup());
             }
 
             }
@@ -892,7 +892,7 @@
             // InternalMarkup.g:322:1: ruleNewLineElement EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNewLineElementRule()); 
+               before(grammarAccess.getNewLineElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNewLineElement();
@@ -900,7 +900,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNewLineElementRule()); 
+               after(grammarAccess.getNewLineElementRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -923,7 +923,7 @@
     public final void ruleNewLineElement() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:333:2: ( ( ( rule__NewLineElement__TextAssignment ) ) )
             // InternalMarkup.g:334:1: ( ( rule__NewLineElement__TextAssignment ) )
@@ -932,7 +932,7 @@
             // InternalMarkup.g:335:1: ( rule__NewLineElement__TextAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNewLineElementAccess().getTextAssignment()); 
+               before(grammarAccess.getNewLineElementAccess().getTextAssignment());
             }
             // InternalMarkup.g:336:1: ( rule__NewLineElement__TextAssignment )
             // InternalMarkup.g:336:2: rule__NewLineElement__TextAssignment
@@ -946,7 +946,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNewLineElementAccess().getTextAssignment()); 
+               after(grammarAccess.getNewLineElementAccess().getTextAssignment());
             }
 
             }
@@ -977,7 +977,7 @@
             // InternalMarkup.g:350:1: ruleNullElement EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullElementRule()); 
+               before(grammarAccess.getNullElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNullElement();
@@ -985,7 +985,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullElementRule()); 
+               after(grammarAccess.getNullElementRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1008,7 +1008,7 @@
     public final void ruleNullElement() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:361:2: ( ( ( rule__NullElement__Group__0 ) ) )
             // InternalMarkup.g:362:1: ( ( rule__NullElement__Group__0 ) )
@@ -1017,7 +1017,7 @@
             // InternalMarkup.g:363:1: ( rule__NullElement__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullElementAccess().getGroup()); 
+               before(grammarAccess.getNullElementAccess().getGroup());
             }
             // InternalMarkup.g:364:1: ( rule__NullElement__Group__0 )
             // InternalMarkup.g:364:2: rule__NullElement__Group__0
@@ -1031,7 +1031,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullElementAccess().getGroup()); 
+               after(grammarAccess.getNullElementAccess().getGroup());
             }
 
             }
@@ -1062,7 +1062,7 @@
             // InternalMarkup.g:378:1: ruleOCLCodeElement EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLCodeElementRule()); 
+               before(grammarAccess.getOCLCodeElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleOCLCodeElement();
@@ -1070,7 +1070,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLCodeElementRule()); 
+               after(grammarAccess.getOCLCodeElementRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1093,7 +1093,7 @@
     public final void ruleOCLCodeElement() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:389:2: ( ( ( rule__OCLCodeElement__Group__0 ) ) )
             // InternalMarkup.g:390:1: ( ( rule__OCLCodeElement__Group__0 ) )
@@ -1102,7 +1102,7 @@
             // InternalMarkup.g:391:1: ( rule__OCLCodeElement__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLCodeElementAccess().getGroup()); 
+               before(grammarAccess.getOCLCodeElementAccess().getGroup());
             }
             // InternalMarkup.g:392:1: ( rule__OCLCodeElement__Group__0 )
             // InternalMarkup.g:392:2: rule__OCLCodeElement__Group__0
@@ -1116,7 +1116,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLCodeElementAccess().getGroup()); 
+               after(grammarAccess.getOCLCodeElementAccess().getGroup());
             }
 
             }
@@ -1147,7 +1147,7 @@
             // InternalMarkup.g:406:1: ruleOCLEvalElement EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLEvalElementRule()); 
+               before(grammarAccess.getOCLEvalElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleOCLEvalElement();
@@ -1155,7 +1155,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLEvalElementRule()); 
+               after(grammarAccess.getOCLEvalElementRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1178,7 +1178,7 @@
     public final void ruleOCLEvalElement() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:417:2: ( ( ( rule__OCLEvalElement__Group__0 ) ) )
             // InternalMarkup.g:418:1: ( ( rule__OCLEvalElement__Group__0 ) )
@@ -1187,7 +1187,7 @@
             // InternalMarkup.g:419:1: ( rule__OCLEvalElement__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLEvalElementAccess().getGroup()); 
+               before(grammarAccess.getOCLEvalElementAccess().getGroup());
             }
             // InternalMarkup.g:420:1: ( rule__OCLEvalElement__Group__0 )
             // InternalMarkup.g:420:2: rule__OCLEvalElement__Group__0
@@ -1201,7 +1201,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLEvalElementAccess().getGroup()); 
+               after(grammarAccess.getOCLEvalElementAccess().getGroup());
             }
 
             }
@@ -1232,7 +1232,7 @@
             // InternalMarkup.g:434:1: ruleOCLTextElement EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLTextElementRule()); 
+               before(grammarAccess.getOCLTextElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleOCLTextElement();
@@ -1240,7 +1240,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLTextElementRule()); 
+               after(grammarAccess.getOCLTextElementRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1263,7 +1263,7 @@
     public final void ruleOCLTextElement() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:445:2: ( ( ( rule__OCLTextElement__Group__0 ) ) )
             // InternalMarkup.g:446:1: ( ( rule__OCLTextElement__Group__0 ) )
@@ -1272,7 +1272,7 @@
             // InternalMarkup.g:447:1: ( rule__OCLTextElement__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLTextElementAccess().getGroup()); 
+               before(grammarAccess.getOCLTextElementAccess().getGroup());
             }
             // InternalMarkup.g:448:1: ( rule__OCLTextElement__Group__0 )
             // InternalMarkup.g:448:2: rule__OCLTextElement__Group__0
@@ -1286,7 +1286,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLTextElementAccess().getGroup()); 
+               after(grammarAccess.getOCLTextElementAccess().getGroup());
             }
 
             }
@@ -1317,7 +1317,7 @@
             // InternalMarkup.g:462:1: ruleTextElement EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTextElementRule()); 
+               before(grammarAccess.getTextElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTextElement();
@@ -1325,7 +1325,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTextElementRule()); 
+               after(grammarAccess.getTextElementRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1348,7 +1348,7 @@
     public final void ruleTextElement() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:473:2: ( ( ( rule__TextElement__Alternatives ) ) )
             // InternalMarkup.g:474:1: ( ( rule__TextElement__Alternatives ) )
@@ -1357,7 +1357,7 @@
             // InternalMarkup.g:475:1: ( rule__TextElement__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTextElementAccess().getAlternatives()); 
+               before(grammarAccess.getTextElementAccess().getAlternatives());
             }
             // InternalMarkup.g:476:1: ( rule__TextElement__Alternatives )
             // InternalMarkup.g:476:2: rule__TextElement__Alternatives
@@ -1371,7 +1371,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTextElementAccess().getAlternatives()); 
+               after(grammarAccess.getTextElementAccess().getAlternatives());
             }
 
             }
@@ -1399,7 +1399,7 @@
     public final void rule__MarkupKeyword__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:492:1: ( ( 'b' ) | ( 'e' ) | ( 'bullet' ) | ( 'figure' ) | ( 'figureRef' ) | ( 'footnote' ) | ( 'heading' ) | ( 'oclCode' ) | ( 'oclEval' ) | ( 'oclText' ) )
             int alt2=10;
@@ -1470,11 +1470,11 @@
                     // InternalMarkup.g:494:1: 'b'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupKeywordAccess().getBKeyword_0()); 
+                       before(grammarAccess.getMarkupKeywordAccess().getBKeyword_0());
                     }
                     match(input,16,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupKeywordAccess().getBKeyword_0()); 
+                       after(grammarAccess.getMarkupKeywordAccess().getBKeyword_0());
                     }
 
                     }
@@ -1489,11 +1489,11 @@
                     // InternalMarkup.g:502:1: 'e'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupKeywordAccess().getEKeyword_1()); 
+                       before(grammarAccess.getMarkupKeywordAccess().getEKeyword_1());
                     }
                     match(input,17,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupKeywordAccess().getEKeyword_1()); 
+                       after(grammarAccess.getMarkupKeywordAccess().getEKeyword_1());
                     }
 
                     }
@@ -1508,11 +1508,11 @@
                     // InternalMarkup.g:510:1: 'bullet'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupKeywordAccess().getBulletKeyword_2()); 
+                       before(grammarAccess.getMarkupKeywordAccess().getBulletKeyword_2());
                     }
                     match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupKeywordAccess().getBulletKeyword_2()); 
+                       after(grammarAccess.getMarkupKeywordAccess().getBulletKeyword_2());
                     }
 
                     }
@@ -1527,11 +1527,11 @@
                     // InternalMarkup.g:518:1: 'figure'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupKeywordAccess().getFigureKeyword_3()); 
+                       before(grammarAccess.getMarkupKeywordAccess().getFigureKeyword_3());
                     }
                     match(input,19,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupKeywordAccess().getFigureKeyword_3()); 
+                       after(grammarAccess.getMarkupKeywordAccess().getFigureKeyword_3());
                     }
 
                     }
@@ -1546,11 +1546,11 @@
                     // InternalMarkup.g:526:1: 'figureRef'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupKeywordAccess().getFigureRefKeyword_4()); 
+                       before(grammarAccess.getMarkupKeywordAccess().getFigureRefKeyword_4());
                     }
                     match(input,20,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupKeywordAccess().getFigureRefKeyword_4()); 
+                       after(grammarAccess.getMarkupKeywordAccess().getFigureRefKeyword_4());
                     }
 
                     }
@@ -1565,11 +1565,11 @@
                     // InternalMarkup.g:534:1: 'footnote'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupKeywordAccess().getFootnoteKeyword_5()); 
+                       before(grammarAccess.getMarkupKeywordAccess().getFootnoteKeyword_5());
                     }
                     match(input,21,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupKeywordAccess().getFootnoteKeyword_5()); 
+                       after(grammarAccess.getMarkupKeywordAccess().getFootnoteKeyword_5());
                     }
 
                     }
@@ -1584,11 +1584,11 @@
                     // InternalMarkup.g:542:1: 'heading'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupKeywordAccess().getHeadingKeyword_6()); 
+                       before(grammarAccess.getMarkupKeywordAccess().getHeadingKeyword_6());
                     }
                     match(input,22,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupKeywordAccess().getHeadingKeyword_6()); 
+                       after(grammarAccess.getMarkupKeywordAccess().getHeadingKeyword_6());
                     }
 
                     }
@@ -1603,11 +1603,11 @@
                     // InternalMarkup.g:550:1: 'oclCode'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupKeywordAccess().getOclCodeKeyword_7()); 
+                       before(grammarAccess.getMarkupKeywordAccess().getOclCodeKeyword_7());
                     }
                     match(input,23,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupKeywordAccess().getOclCodeKeyword_7()); 
+                       after(grammarAccess.getMarkupKeywordAccess().getOclCodeKeyword_7());
                     }
 
                     }
@@ -1622,11 +1622,11 @@
                     // InternalMarkup.g:558:1: 'oclEval'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupKeywordAccess().getOclEvalKeyword_8()); 
+                       before(grammarAccess.getMarkupKeywordAccess().getOclEvalKeyword_8());
                     }
                     match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupKeywordAccess().getOclEvalKeyword_8()); 
+                       after(grammarAccess.getMarkupKeywordAccess().getOclEvalKeyword_8());
                     }
 
                     }
@@ -1641,11 +1641,11 @@
                     // InternalMarkup.g:566:1: 'oclText'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupKeywordAccess().getOclTextKeyword_9()); 
+                       before(grammarAccess.getMarkupKeywordAccess().getOclTextKeyword_9());
                     }
                     match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupKeywordAccess().getOclTextKeyword_9()); 
+                       after(grammarAccess.getMarkupKeywordAccess().getOclTextKeyword_9());
                     }
 
                     }
@@ -1675,7 +1675,7 @@
     public final void rule__MarkupElement__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:582:1: ( ( ruleFontElement ) | ( ruleNewLineElement ) | ( ruleBulletElement ) | ( ruleFigureElement ) | ( ruleFigureRefElement ) | ( ruleFootnoteElement ) | ( ruleHeadingElement ) | ( ruleNullElement ) | ( ruleOCLCodeElement ) | ( ruleOCLEvalElement ) | ( ruleOCLTextElement ) | ( ruleTextElement ) )
             int alt3=12;
@@ -1688,7 +1688,7 @@
                     // InternalMarkup.g:584:1: ruleFontElement
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupElementAccess().getFontElementParserRuleCall_0()); 
+                       before(grammarAccess.getMarkupElementAccess().getFontElementParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleFontElement();
@@ -1696,7 +1696,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupElementAccess().getFontElementParserRuleCall_0()); 
+                       after(grammarAccess.getMarkupElementAccess().getFontElementParserRuleCall_0());
                     }
 
                     }
@@ -1711,7 +1711,7 @@
                     // InternalMarkup.g:590:1: ruleNewLineElement
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupElementAccess().getNewLineElementParserRuleCall_1()); 
+                       before(grammarAccess.getMarkupElementAccess().getNewLineElementParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNewLineElement();
@@ -1719,7 +1719,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupElementAccess().getNewLineElementParserRuleCall_1()); 
+                       after(grammarAccess.getMarkupElementAccess().getNewLineElementParserRuleCall_1());
                     }
 
                     }
@@ -1734,7 +1734,7 @@
                     // InternalMarkup.g:596:1: ruleBulletElement
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupElementAccess().getBulletElementParserRuleCall_2()); 
+                       before(grammarAccess.getMarkupElementAccess().getBulletElementParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleBulletElement();
@@ -1742,7 +1742,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupElementAccess().getBulletElementParserRuleCall_2()); 
+                       after(grammarAccess.getMarkupElementAccess().getBulletElementParserRuleCall_2());
                     }
 
                     }
@@ -1757,7 +1757,7 @@
                     // InternalMarkup.g:602:1: ruleFigureElement
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupElementAccess().getFigureElementParserRuleCall_3()); 
+                       before(grammarAccess.getMarkupElementAccess().getFigureElementParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleFigureElement();
@@ -1765,7 +1765,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupElementAccess().getFigureElementParserRuleCall_3()); 
+                       after(grammarAccess.getMarkupElementAccess().getFigureElementParserRuleCall_3());
                     }
 
                     }
@@ -1780,7 +1780,7 @@
                     // InternalMarkup.g:608:1: ruleFigureRefElement
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupElementAccess().getFigureRefElementParserRuleCall_4()); 
+                       before(grammarAccess.getMarkupElementAccess().getFigureRefElementParserRuleCall_4());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleFigureRefElement();
@@ -1788,7 +1788,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupElementAccess().getFigureRefElementParserRuleCall_4()); 
+                       after(grammarAccess.getMarkupElementAccess().getFigureRefElementParserRuleCall_4());
                     }
 
                     }
@@ -1803,7 +1803,7 @@
                     // InternalMarkup.g:614:1: ruleFootnoteElement
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupElementAccess().getFootnoteElementParserRuleCall_5()); 
+                       before(grammarAccess.getMarkupElementAccess().getFootnoteElementParserRuleCall_5());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleFootnoteElement();
@@ -1811,7 +1811,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupElementAccess().getFootnoteElementParserRuleCall_5()); 
+                       after(grammarAccess.getMarkupElementAccess().getFootnoteElementParserRuleCall_5());
                     }
 
                     }
@@ -1826,7 +1826,7 @@
                     // InternalMarkup.g:620:1: ruleHeadingElement
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupElementAccess().getHeadingElementParserRuleCall_6()); 
+                       before(grammarAccess.getMarkupElementAccess().getHeadingElementParserRuleCall_6());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleHeadingElement();
@@ -1834,7 +1834,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupElementAccess().getHeadingElementParserRuleCall_6()); 
+                       after(grammarAccess.getMarkupElementAccess().getHeadingElementParserRuleCall_6());
                     }
 
                     }
@@ -1849,7 +1849,7 @@
                     // InternalMarkup.g:626:1: ruleNullElement
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupElementAccess().getNullElementParserRuleCall_7()); 
+                       before(grammarAccess.getMarkupElementAccess().getNullElementParserRuleCall_7());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNullElement();
@@ -1857,7 +1857,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupElementAccess().getNullElementParserRuleCall_7()); 
+                       after(grammarAccess.getMarkupElementAccess().getNullElementParserRuleCall_7());
                     }
 
                     }
@@ -1872,7 +1872,7 @@
                     // InternalMarkup.g:632:1: ruleOCLCodeElement
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupElementAccess().getOCLCodeElementParserRuleCall_8()); 
+                       before(grammarAccess.getMarkupElementAccess().getOCLCodeElementParserRuleCall_8());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleOCLCodeElement();
@@ -1880,7 +1880,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupElementAccess().getOCLCodeElementParserRuleCall_8()); 
+                       after(grammarAccess.getMarkupElementAccess().getOCLCodeElementParserRuleCall_8());
                     }
 
                     }
@@ -1895,7 +1895,7 @@
                     // InternalMarkup.g:638:1: ruleOCLEvalElement
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupElementAccess().getOCLEvalElementParserRuleCall_9()); 
+                       before(grammarAccess.getMarkupElementAccess().getOCLEvalElementParserRuleCall_9());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleOCLEvalElement();
@@ -1903,7 +1903,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupElementAccess().getOCLEvalElementParserRuleCall_9()); 
+                       after(grammarAccess.getMarkupElementAccess().getOCLEvalElementParserRuleCall_9());
                     }
 
                     }
@@ -1918,7 +1918,7 @@
                     // InternalMarkup.g:644:1: ruleOCLTextElement
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupElementAccess().getOCLTextElementParserRuleCall_10()); 
+                       before(grammarAccess.getMarkupElementAccess().getOCLTextElementParserRuleCall_10());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleOCLTextElement();
@@ -1926,7 +1926,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupElementAccess().getOCLTextElementParserRuleCall_10()); 
+                       after(grammarAccess.getMarkupElementAccess().getOCLTextElementParserRuleCall_10());
                     }
 
                     }
@@ -1941,7 +1941,7 @@
                     // InternalMarkup.g:650:1: ruleTextElement
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMarkupElementAccess().getTextElementParserRuleCall_11()); 
+                       before(grammarAccess.getMarkupElementAccess().getTextElementParserRuleCall_11());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTextElement();
@@ -1949,7 +1949,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMarkupElementAccess().getTextElementParserRuleCall_11()); 
+                       after(grammarAccess.getMarkupElementAccess().getTextElementParserRuleCall_11());
                     }
 
                     }
@@ -1979,7 +1979,7 @@
     public final void rule__FontElement__FontAlternatives_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:664:1: ( ( 'b' ) | ( 'e' ) )
             int alt4=2;
@@ -2006,11 +2006,11 @@
                     // InternalMarkup.g:666:1: 'b'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getFontElementAccess().getFontBKeyword_0_0_0()); 
+                       before(grammarAccess.getFontElementAccess().getFontBKeyword_0_0_0());
                     }
                     match(input,16,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getFontElementAccess().getFontBKeyword_0_0_0()); 
+                       after(grammarAccess.getFontElementAccess().getFontBKeyword_0_0_0());
                     }
 
                     }
@@ -2025,11 +2025,11 @@
                     // InternalMarkup.g:674:1: 'e'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getFontElementAccess().getFontEKeyword_0_0_1()); 
+                       before(grammarAccess.getFontElementAccess().getFontEKeyword_0_0_1());
                     }
                     match(input,17,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getFontElementAccess().getFontEKeyword_0_0_1()); 
+                       after(grammarAccess.getFontElementAccess().getFontEKeyword_0_0_1());
                     }
 
                     }
@@ -2059,7 +2059,7 @@
     public final void rule__TextElement__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:690:1: ( ( ( ( rule__TextElement__TextAssignment_0 ) ) ( ( rule__TextElement__TextAssignment_0 )* ) ) | ( ( rule__TextElement__TextAssignment_1 ) ) )
             int alt6=2;
@@ -2089,7 +2089,7 @@
                     // InternalMarkup.g:693:1: ( rule__TextElement__TextAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTextElementAccess().getTextAssignment_0()); 
+                       before(grammarAccess.getTextElementAccess().getTextAssignment_0());
                     }
                     // InternalMarkup.g:694:1: ( rule__TextElement__TextAssignment_0 )
                     // InternalMarkup.g:694:2: rule__TextElement__TextAssignment_0
@@ -2103,7 +2103,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTextElementAccess().getTextAssignment_0()); 
+                       after(grammarAccess.getTextElementAccess().getTextAssignment_0());
                     }
 
                     }
@@ -2112,7 +2112,7 @@
                     // InternalMarkup.g:698:1: ( rule__TextElement__TextAssignment_0 )*
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTextElementAccess().getTextAssignment_0()); 
+                       before(grammarAccess.getTextElementAccess().getTextAssignment_0());
                     }
                     // InternalMarkup.g:699:1: ( rule__TextElement__TextAssignment_0 )*
                     loop5:
@@ -2138,7 +2138,7 @@
                     } while (true);
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTextElementAccess().getTextAssignment_0()); 
+                       after(grammarAccess.getTextElementAccess().getTextAssignment_0());
                     }
 
                     }
@@ -2156,7 +2156,7 @@
                     // InternalMarkup.g:705:1: ( rule__TextElement__TextAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTextElementAccess().getTextAssignment_1()); 
+                       before(grammarAccess.getTextElementAccess().getTextAssignment_1());
                     }
                     // InternalMarkup.g:706:1: ( rule__TextElement__TextAssignment_1 )
                     // InternalMarkup.g:706:2: rule__TextElement__TextAssignment_1
@@ -2170,7 +2170,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTextElementAccess().getTextAssignment_1()); 
+                       after(grammarAccess.getTextElementAccess().getTextAssignment_1());
                     }
 
                     }
@@ -2200,7 +2200,7 @@
     public final void rule__TextElement__TextAlternatives_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:719:1: ( ( RULE_ID ) | ( RULE_WORD ) | ( RULE_INT ) | ( RULE_WS ) | ( ':' ) | ( '#' ) | ( ',' ) )
             int alt7=7;
@@ -2256,11 +2256,11 @@
                     // InternalMarkup.g:721:1: RULE_ID
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTextElementAccess().getTextIDTerminalRuleCall_0_0_0()); 
+                       before(grammarAccess.getTextElementAccess().getTextIDTerminalRuleCall_0_0_0());
                     }
                     match(input,RULE_ID,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTextElementAccess().getTextIDTerminalRuleCall_0_0_0()); 
+                       after(grammarAccess.getTextElementAccess().getTextIDTerminalRuleCall_0_0_0());
                     }
 
                     }
@@ -2275,11 +2275,11 @@
                     // InternalMarkup.g:727:1: RULE_WORD
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTextElementAccess().getTextWORDTerminalRuleCall_0_0_1()); 
+                       before(grammarAccess.getTextElementAccess().getTextWORDTerminalRuleCall_0_0_1());
                     }
                     match(input,RULE_WORD,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTextElementAccess().getTextWORDTerminalRuleCall_0_0_1()); 
+                       after(grammarAccess.getTextElementAccess().getTextWORDTerminalRuleCall_0_0_1());
                     }
 
                     }
@@ -2294,11 +2294,11 @@
                     // InternalMarkup.g:733:1: RULE_INT
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTextElementAccess().getTextINTTerminalRuleCall_0_0_2()); 
+                       before(grammarAccess.getTextElementAccess().getTextINTTerminalRuleCall_0_0_2());
                     }
                     match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTextElementAccess().getTextINTTerminalRuleCall_0_0_2()); 
+                       after(grammarAccess.getTextElementAccess().getTextINTTerminalRuleCall_0_0_2());
                     }
 
                     }
@@ -2313,11 +2313,11 @@
                     // InternalMarkup.g:739:1: RULE_WS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTextElementAccess().getTextWSTerminalRuleCall_0_0_3()); 
+                       before(grammarAccess.getTextElementAccess().getTextWSTerminalRuleCall_0_0_3());
                     }
                     match(input,RULE_WS,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTextElementAccess().getTextWSTerminalRuleCall_0_0_3()); 
+                       after(grammarAccess.getTextElementAccess().getTextWSTerminalRuleCall_0_0_3());
                     }
 
                     }
@@ -2332,11 +2332,11 @@
                     // InternalMarkup.g:745:1: ':'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTextElementAccess().getTextColonKeyword_0_0_4()); 
+                       before(grammarAccess.getTextElementAccess().getTextColonKeyword_0_0_4());
                     }
                     match(input,26,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTextElementAccess().getTextColonKeyword_0_0_4()); 
+                       after(grammarAccess.getTextElementAccess().getTextColonKeyword_0_0_4());
                     }
 
                     }
@@ -2351,11 +2351,11 @@
                     // InternalMarkup.g:753:1: '#'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTextElementAccess().getTextNumberSignKeyword_0_0_5()); 
+                       before(grammarAccess.getTextElementAccess().getTextNumberSignKeyword_0_0_5());
                     }
                     match(input,27,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTextElementAccess().getTextNumberSignKeyword_0_0_5()); 
+                       after(grammarAccess.getTextElementAccess().getTextNumberSignKeyword_0_0_5());
                     }
 
                     }
@@ -2370,11 +2370,11 @@
                     // InternalMarkup.g:761:1: ','
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTextElementAccess().getTextCommaKeyword_0_0_6()); 
+                       before(grammarAccess.getTextElementAccess().getTextCommaKeyword_0_0_6());
                     }
                     match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTextElementAccess().getTextCommaKeyword_0_0_6()); 
+                       after(grammarAccess.getTextElementAccess().getTextCommaKeyword_0_0_6());
                     }
 
                     }
@@ -2404,7 +2404,7 @@
     public final void rule__BulletElement__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:779:1: ( rule__BulletElement__Group__0__Impl rule__BulletElement__Group__1 )
             // InternalMarkup.g:780:2: rule__BulletElement__Group__0__Impl rule__BulletElement__Group__1
@@ -2442,7 +2442,7 @@
     public final void rule__BulletElement__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:791:1: ( ( () ) )
             // InternalMarkup.g:792:1: ( () )
@@ -2451,15 +2451,15 @@
             // InternalMarkup.g:793:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBulletElementAccess().getBulletElementAction_0()); 
+               before(grammarAccess.getBulletElementAccess().getBulletElementAction_0());
             }
             // InternalMarkup.g:794:1: ()
-            // InternalMarkup.g:796:1: 
+            // InternalMarkup.g:796:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBulletElementAccess().getBulletElementAction_0()); 
+               after(grammarAccess.getBulletElementAccess().getBulletElementAction_0());
             }
 
             }
@@ -2483,7 +2483,7 @@
     public final void rule__BulletElement__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:810:1: ( rule__BulletElement__Group__1__Impl rule__BulletElement__Group__2 )
             // InternalMarkup.g:811:2: rule__BulletElement__Group__1__Impl rule__BulletElement__Group__2
@@ -2521,7 +2521,7 @@
     public final void rule__BulletElement__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:822:1: ( ( 'bullet' ) )
             // InternalMarkup.g:823:1: ( 'bullet' )
@@ -2530,11 +2530,11 @@
             // InternalMarkup.g:824:1: 'bullet'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBulletElementAccess().getBulletKeyword_1()); 
+               before(grammarAccess.getBulletElementAccess().getBulletKeyword_1());
             }
             match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBulletElementAccess().getBulletKeyword_1()); 
+               after(grammarAccess.getBulletElementAccess().getBulletKeyword_1());
             }
 
             }
@@ -2562,7 +2562,7 @@
     public final void rule__BulletElement__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:841:1: ( rule__BulletElement__Group__2__Impl rule__BulletElement__Group__3 )
             // InternalMarkup.g:842:2: rule__BulletElement__Group__2__Impl rule__BulletElement__Group__3
@@ -2600,7 +2600,7 @@
     public final void rule__BulletElement__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:853:1: ( ( ( rule__BulletElement__Group_2__0 )? ) )
             // InternalMarkup.g:854:1: ( ( rule__BulletElement__Group_2__0 )? )
@@ -2609,7 +2609,7 @@
             // InternalMarkup.g:855:1: ( rule__BulletElement__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBulletElementAccess().getGroup_2()); 
+               before(grammarAccess.getBulletElementAccess().getGroup_2());
             }
             // InternalMarkup.g:856:1: ( rule__BulletElement__Group_2__0 )?
             int alt8=2;
@@ -2634,7 +2634,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBulletElementAccess().getGroup_2()); 
+               after(grammarAccess.getBulletElementAccess().getGroup_2());
             }
 
             }
@@ -2662,7 +2662,7 @@
     public final void rule__BulletElement__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:870:1: ( rule__BulletElement__Group__3__Impl rule__BulletElement__Group__4 )
             // InternalMarkup.g:871:2: rule__BulletElement__Group__3__Impl rule__BulletElement__Group__4
@@ -2700,7 +2700,7 @@
     public final void rule__BulletElement__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:882:1: ( ( '[' ) )
             // InternalMarkup.g:883:1: ( '[' )
@@ -2709,11 +2709,11 @@
             // InternalMarkup.g:884:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBulletElementAccess().getLeftSquareBracketKeyword_3()); 
+               before(grammarAccess.getBulletElementAccess().getLeftSquareBracketKeyword_3());
             }
             match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBulletElementAccess().getLeftSquareBracketKeyword_3()); 
+               after(grammarAccess.getBulletElementAccess().getLeftSquareBracketKeyword_3());
             }
 
             }
@@ -2741,7 +2741,7 @@
     public final void rule__BulletElement__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:901:1: ( rule__BulletElement__Group__4__Impl rule__BulletElement__Group__5 )
             // InternalMarkup.g:902:2: rule__BulletElement__Group__4__Impl rule__BulletElement__Group__5
@@ -2779,7 +2779,7 @@
     public final void rule__BulletElement__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:913:1: ( ( ( rule__BulletElement__ElementsAssignment_4 )* ) )
             // InternalMarkup.g:914:1: ( ( rule__BulletElement__ElementsAssignment_4 )* )
@@ -2788,7 +2788,7 @@
             // InternalMarkup.g:915:1: ( rule__BulletElement__ElementsAssignment_4 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBulletElementAccess().getElementsAssignment_4()); 
+               before(grammarAccess.getBulletElementAccess().getElementsAssignment_4());
             }
             // InternalMarkup.g:916:1: ( rule__BulletElement__ElementsAssignment_4 )*
             loop9:
@@ -2820,7 +2820,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBulletElementAccess().getElementsAssignment_4()); 
+               after(grammarAccess.getBulletElementAccess().getElementsAssignment_4());
             }
 
             }
@@ -2848,7 +2848,7 @@
     public final void rule__BulletElement__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:930:1: ( rule__BulletElement__Group__5__Impl )
             // InternalMarkup.g:931:2: rule__BulletElement__Group__5__Impl
@@ -2881,7 +2881,7 @@
     public final void rule__BulletElement__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:941:1: ( ( ']' ) )
             // InternalMarkup.g:942:1: ( ']' )
@@ -2890,11 +2890,11 @@
             // InternalMarkup.g:943:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBulletElementAccess().getRightSquareBracketKeyword_5()); 
+               before(grammarAccess.getBulletElementAccess().getRightSquareBracketKeyword_5());
             }
             match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBulletElementAccess().getRightSquareBracketKeyword_5()); 
+               after(grammarAccess.getBulletElementAccess().getRightSquareBracketKeyword_5());
             }
 
             }
@@ -2922,7 +2922,7 @@
     public final void rule__BulletElement__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:972:1: ( rule__BulletElement__Group_2__0__Impl rule__BulletElement__Group_2__1 )
             // InternalMarkup.g:973:2: rule__BulletElement__Group_2__0__Impl rule__BulletElement__Group_2__1
@@ -2960,7 +2960,7 @@
     public final void rule__BulletElement__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:984:1: ( ( ':' ) )
             // InternalMarkup.g:985:1: ( ':' )
@@ -2969,11 +2969,11 @@
             // InternalMarkup.g:986:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBulletElementAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getBulletElementAccess().getColonKeyword_2_0());
             }
             match(input,26,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBulletElementAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getBulletElementAccess().getColonKeyword_2_0());
             }
 
             }
@@ -3001,7 +3001,7 @@
     public final void rule__BulletElement__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1003:1: ( rule__BulletElement__Group_2__1__Impl )
             // InternalMarkup.g:1004:2: rule__BulletElement__Group_2__1__Impl
@@ -3034,7 +3034,7 @@
     public final void rule__BulletElement__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1014:1: ( ( ( rule__BulletElement__LevelAssignment_2_1 ) ) )
             // InternalMarkup.g:1015:1: ( ( rule__BulletElement__LevelAssignment_2_1 ) )
@@ -3043,7 +3043,7 @@
             // InternalMarkup.g:1016:1: ( rule__BulletElement__LevelAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBulletElementAccess().getLevelAssignment_2_1()); 
+               before(grammarAccess.getBulletElementAccess().getLevelAssignment_2_1());
             }
             // InternalMarkup.g:1017:1: ( rule__BulletElement__LevelAssignment_2_1 )
             // InternalMarkup.g:1017:2: rule__BulletElement__LevelAssignment_2_1
@@ -3057,7 +3057,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBulletElementAccess().getLevelAssignment_2_1()); 
+               after(grammarAccess.getBulletElementAccess().getLevelAssignment_2_1());
             }
 
             }
@@ -3085,7 +3085,7 @@
     public final void rule__FontElement__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1035:1: ( rule__FontElement__Group__0__Impl rule__FontElement__Group__1 )
             // InternalMarkup.g:1036:2: rule__FontElement__Group__0__Impl rule__FontElement__Group__1
@@ -3123,7 +3123,7 @@
     public final void rule__FontElement__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1047:1: ( ( ( rule__FontElement__FontAssignment_0 ) ) )
             // InternalMarkup.g:1048:1: ( ( rule__FontElement__FontAssignment_0 ) )
@@ -3132,7 +3132,7 @@
             // InternalMarkup.g:1049:1: ( rule__FontElement__FontAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFontElementAccess().getFontAssignment_0()); 
+               before(grammarAccess.getFontElementAccess().getFontAssignment_0());
             }
             // InternalMarkup.g:1050:1: ( rule__FontElement__FontAssignment_0 )
             // InternalMarkup.g:1050:2: rule__FontElement__FontAssignment_0
@@ -3146,7 +3146,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFontElementAccess().getFontAssignment_0()); 
+               after(grammarAccess.getFontElementAccess().getFontAssignment_0());
             }
 
             }
@@ -3174,7 +3174,7 @@
     public final void rule__FontElement__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1064:1: ( rule__FontElement__Group__1__Impl rule__FontElement__Group__2 )
             // InternalMarkup.g:1065:2: rule__FontElement__Group__1__Impl rule__FontElement__Group__2
@@ -3212,7 +3212,7 @@
     public final void rule__FontElement__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1076:1: ( ( '[' ) )
             // InternalMarkup.g:1077:1: ( '[' )
@@ -3221,11 +3221,11 @@
             // InternalMarkup.g:1078:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFontElementAccess().getLeftSquareBracketKeyword_1()); 
+               before(grammarAccess.getFontElementAccess().getLeftSquareBracketKeyword_1());
             }
             match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFontElementAccess().getLeftSquareBracketKeyword_1()); 
+               after(grammarAccess.getFontElementAccess().getLeftSquareBracketKeyword_1());
             }
 
             }
@@ -3253,7 +3253,7 @@
     public final void rule__FontElement__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1095:1: ( rule__FontElement__Group__2__Impl rule__FontElement__Group__3 )
             // InternalMarkup.g:1096:2: rule__FontElement__Group__2__Impl rule__FontElement__Group__3
@@ -3291,7 +3291,7 @@
     public final void rule__FontElement__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1107:1: ( ( ( rule__FontElement__ElementsAssignment_2 )* ) )
             // InternalMarkup.g:1108:1: ( ( rule__FontElement__ElementsAssignment_2 )* )
@@ -3300,7 +3300,7 @@
             // InternalMarkup.g:1109:1: ( rule__FontElement__ElementsAssignment_2 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFontElementAccess().getElementsAssignment_2()); 
+               before(grammarAccess.getFontElementAccess().getElementsAssignment_2());
             }
             // InternalMarkup.g:1110:1: ( rule__FontElement__ElementsAssignment_2 )*
             loop10:
@@ -3332,7 +3332,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFontElementAccess().getElementsAssignment_2()); 
+               after(grammarAccess.getFontElementAccess().getElementsAssignment_2());
             }
 
             }
@@ -3360,7 +3360,7 @@
     public final void rule__FontElement__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1124:1: ( rule__FontElement__Group__3__Impl )
             // InternalMarkup.g:1125:2: rule__FontElement__Group__3__Impl
@@ -3393,7 +3393,7 @@
     public final void rule__FontElement__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1135:1: ( ( ']' ) )
             // InternalMarkup.g:1136:1: ( ']' )
@@ -3402,11 +3402,11 @@
             // InternalMarkup.g:1137:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFontElementAccess().getRightSquareBracketKeyword_3()); 
+               before(grammarAccess.getFontElementAccess().getRightSquareBracketKeyword_3());
             }
             match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFontElementAccess().getRightSquareBracketKeyword_3()); 
+               after(grammarAccess.getFontElementAccess().getRightSquareBracketKeyword_3());
             }
 
             }
@@ -3434,7 +3434,7 @@
     public final void rule__FigureElement__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1162:1: ( rule__FigureElement__Group__0__Impl rule__FigureElement__Group__1 )
             // InternalMarkup.g:1163:2: rule__FigureElement__Group__0__Impl rule__FigureElement__Group__1
@@ -3472,7 +3472,7 @@
     public final void rule__FigureElement__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1174:1: ( ( 'figure' ) )
             // InternalMarkup.g:1175:1: ( 'figure' )
@@ -3481,11 +3481,11 @@
             // InternalMarkup.g:1176:1: 'figure'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getFigureKeyword_0()); 
+               before(grammarAccess.getFigureElementAccess().getFigureKeyword_0());
             }
             match(input,19,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getFigureKeyword_0()); 
+               after(grammarAccess.getFigureElementAccess().getFigureKeyword_0());
             }
 
             }
@@ -3513,7 +3513,7 @@
     public final void rule__FigureElement__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1193:1: ( rule__FigureElement__Group__1__Impl rule__FigureElement__Group__2 )
             // InternalMarkup.g:1194:2: rule__FigureElement__Group__1__Impl rule__FigureElement__Group__2
@@ -3551,7 +3551,7 @@
     public final void rule__FigureElement__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1205:1: ( ( ( rule__FigureElement__Group_1__0 )? ) )
             // InternalMarkup.g:1206:1: ( ( rule__FigureElement__Group_1__0 )? )
@@ -3560,7 +3560,7 @@
             // InternalMarkup.g:1207:1: ( rule__FigureElement__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getGroup_1()); 
+               before(grammarAccess.getFigureElementAccess().getGroup_1());
             }
             // InternalMarkup.g:1208:1: ( rule__FigureElement__Group_1__0 )?
             int alt11=2;
@@ -3585,7 +3585,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getGroup_1()); 
+               after(grammarAccess.getFigureElementAccess().getGroup_1());
             }
 
             }
@@ -3613,7 +3613,7 @@
     public final void rule__FigureElement__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1222:1: ( rule__FigureElement__Group__2__Impl rule__FigureElement__Group__3 )
             // InternalMarkup.g:1223:2: rule__FigureElement__Group__2__Impl rule__FigureElement__Group__3
@@ -3651,7 +3651,7 @@
     public final void rule__FigureElement__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1234:1: ( ( '[' ) )
             // InternalMarkup.g:1235:1: ( '[' )
@@ -3660,11 +3660,11 @@
             // InternalMarkup.g:1236:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getLeftSquareBracketKeyword_2()); 
+               before(grammarAccess.getFigureElementAccess().getLeftSquareBracketKeyword_2());
             }
             match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getLeftSquareBracketKeyword_2()); 
+               after(grammarAccess.getFigureElementAccess().getLeftSquareBracketKeyword_2());
             }
 
             }
@@ -3692,7 +3692,7 @@
     public final void rule__FigureElement__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1253:1: ( rule__FigureElement__Group__3__Impl rule__FigureElement__Group__4 )
             // InternalMarkup.g:1254:2: rule__FigureElement__Group__3__Impl rule__FigureElement__Group__4
@@ -3730,7 +3730,7 @@
     public final void rule__FigureElement__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1265:1: ( ( ( rule__FigureElement__SrcAssignment_3 ) ) )
             // InternalMarkup.g:1266:1: ( ( rule__FigureElement__SrcAssignment_3 ) )
@@ -3739,7 +3739,7 @@
             // InternalMarkup.g:1267:1: ( rule__FigureElement__SrcAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getSrcAssignment_3()); 
+               before(grammarAccess.getFigureElementAccess().getSrcAssignment_3());
             }
             // InternalMarkup.g:1268:1: ( rule__FigureElement__SrcAssignment_3 )
             // InternalMarkup.g:1268:2: rule__FigureElement__SrcAssignment_3
@@ -3753,7 +3753,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getSrcAssignment_3()); 
+               after(grammarAccess.getFigureElementAccess().getSrcAssignment_3());
             }
 
             }
@@ -3781,7 +3781,7 @@
     public final void rule__FigureElement__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1282:1: ( rule__FigureElement__Group__4__Impl rule__FigureElement__Group__5 )
             // InternalMarkup.g:1283:2: rule__FigureElement__Group__4__Impl rule__FigureElement__Group__5
@@ -3819,7 +3819,7 @@
     public final void rule__FigureElement__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1294:1: ( ( ( rule__FigureElement__Group_4__0 )? ) )
             // InternalMarkup.g:1295:1: ( ( rule__FigureElement__Group_4__0 )? )
@@ -3828,7 +3828,7 @@
             // InternalMarkup.g:1296:1: ( rule__FigureElement__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getGroup_4()); 
+               before(grammarAccess.getFigureElementAccess().getGroup_4());
             }
             // InternalMarkup.g:1297:1: ( rule__FigureElement__Group_4__0 )?
             int alt12=2;
@@ -3853,7 +3853,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getGroup_4()); 
+               after(grammarAccess.getFigureElementAccess().getGroup_4());
             }
 
             }
@@ -3881,7 +3881,7 @@
     public final void rule__FigureElement__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1311:1: ( rule__FigureElement__Group__5__Impl )
             // InternalMarkup.g:1312:2: rule__FigureElement__Group__5__Impl
@@ -3914,7 +3914,7 @@
     public final void rule__FigureElement__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1322:1: ( ( ']' ) )
             // InternalMarkup.g:1323:1: ( ']' )
@@ -3923,11 +3923,11 @@
             // InternalMarkup.g:1324:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getRightSquareBracketKeyword_5()); 
+               before(grammarAccess.getFigureElementAccess().getRightSquareBracketKeyword_5());
             }
             match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getRightSquareBracketKeyword_5()); 
+               after(grammarAccess.getFigureElementAccess().getRightSquareBracketKeyword_5());
             }
 
             }
@@ -3955,7 +3955,7 @@
     public final void rule__FigureElement__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1353:1: ( rule__FigureElement__Group_1__0__Impl rule__FigureElement__Group_1__1 )
             // InternalMarkup.g:1354:2: rule__FigureElement__Group_1__0__Impl rule__FigureElement__Group_1__1
@@ -3993,7 +3993,7 @@
     public final void rule__FigureElement__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1365:1: ( ( '#' ) )
             // InternalMarkup.g:1366:1: ( '#' )
@@ -4002,11 +4002,11 @@
             // InternalMarkup.g:1367:1: '#'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getNumberSignKeyword_1_0()); 
+               before(grammarAccess.getFigureElementAccess().getNumberSignKeyword_1_0());
             }
             match(input,27,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getNumberSignKeyword_1_0()); 
+               after(grammarAccess.getFigureElementAccess().getNumberSignKeyword_1_0());
             }
 
             }
@@ -4034,7 +4034,7 @@
     public final void rule__FigureElement__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1384:1: ( rule__FigureElement__Group_1__1__Impl )
             // InternalMarkup.g:1385:2: rule__FigureElement__Group_1__1__Impl
@@ -4067,7 +4067,7 @@
     public final void rule__FigureElement__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1395:1: ( ( ( rule__FigureElement__DefAssignment_1_1 ) ) )
             // InternalMarkup.g:1396:1: ( ( rule__FigureElement__DefAssignment_1_1 ) )
@@ -4076,7 +4076,7 @@
             // InternalMarkup.g:1397:1: ( rule__FigureElement__DefAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getDefAssignment_1_1()); 
+               before(grammarAccess.getFigureElementAccess().getDefAssignment_1_1());
             }
             // InternalMarkup.g:1398:1: ( rule__FigureElement__DefAssignment_1_1 )
             // InternalMarkup.g:1398:2: rule__FigureElement__DefAssignment_1_1
@@ -4090,7 +4090,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getDefAssignment_1_1()); 
+               after(grammarAccess.getFigureElementAccess().getDefAssignment_1_1());
             }
 
             }
@@ -4118,7 +4118,7 @@
     public final void rule__FigureElement__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1416:1: ( rule__FigureElement__Group_4__0__Impl rule__FigureElement__Group_4__1 )
             // InternalMarkup.g:1417:2: rule__FigureElement__Group_4__0__Impl rule__FigureElement__Group_4__1
@@ -4156,7 +4156,7 @@
     public final void rule__FigureElement__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1428:1: ( ( ',' ) )
             // InternalMarkup.g:1429:1: ( ',' )
@@ -4165,11 +4165,11 @@
             // InternalMarkup.g:1430:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getCommaKeyword_4_0()); 
+               before(grammarAccess.getFigureElementAccess().getCommaKeyword_4_0());
             }
             match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getCommaKeyword_4_0()); 
+               after(grammarAccess.getFigureElementAccess().getCommaKeyword_4_0());
             }
 
             }
@@ -4197,7 +4197,7 @@
     public final void rule__FigureElement__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1447:1: ( rule__FigureElement__Group_4__1__Impl rule__FigureElement__Group_4__2 )
             // InternalMarkup.g:1448:2: rule__FigureElement__Group_4__1__Impl rule__FigureElement__Group_4__2
@@ -4235,7 +4235,7 @@
     public final void rule__FigureElement__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1459:1: ( ( ( rule__FigureElement__AltAssignment_4_1 ) ) )
             // InternalMarkup.g:1460:1: ( ( rule__FigureElement__AltAssignment_4_1 ) )
@@ -4244,7 +4244,7 @@
             // InternalMarkup.g:1461:1: ( rule__FigureElement__AltAssignment_4_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getAltAssignment_4_1()); 
+               before(grammarAccess.getFigureElementAccess().getAltAssignment_4_1());
             }
             // InternalMarkup.g:1462:1: ( rule__FigureElement__AltAssignment_4_1 )
             // InternalMarkup.g:1462:2: rule__FigureElement__AltAssignment_4_1
@@ -4258,7 +4258,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getAltAssignment_4_1()); 
+               after(grammarAccess.getFigureElementAccess().getAltAssignment_4_1());
             }
 
             }
@@ -4286,7 +4286,7 @@
     public final void rule__FigureElement__Group_4__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1476:1: ( rule__FigureElement__Group_4__2__Impl )
             // InternalMarkup.g:1477:2: rule__FigureElement__Group_4__2__Impl
@@ -4319,7 +4319,7 @@
     public final void rule__FigureElement__Group_4__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1487:1: ( ( ( rule__FigureElement__Group_4_2__0 )? ) )
             // InternalMarkup.g:1488:1: ( ( rule__FigureElement__Group_4_2__0 )? )
@@ -4328,7 +4328,7 @@
             // InternalMarkup.g:1489:1: ( rule__FigureElement__Group_4_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getGroup_4_2()); 
+               before(grammarAccess.getFigureElementAccess().getGroup_4_2());
             }
             // InternalMarkup.g:1490:1: ( rule__FigureElement__Group_4_2__0 )?
             int alt13=2;
@@ -4353,7 +4353,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getGroup_4_2()); 
+               after(grammarAccess.getFigureElementAccess().getGroup_4_2());
             }
 
             }
@@ -4381,7 +4381,7 @@
     public final void rule__FigureElement__Group_4_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1510:1: ( rule__FigureElement__Group_4_2__0__Impl rule__FigureElement__Group_4_2__1 )
             // InternalMarkup.g:1511:2: rule__FigureElement__Group_4_2__0__Impl rule__FigureElement__Group_4_2__1
@@ -4419,7 +4419,7 @@
     public final void rule__FigureElement__Group_4_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1522:1: ( ( ',' ) )
             // InternalMarkup.g:1523:1: ( ',' )
@@ -4428,11 +4428,11 @@
             // InternalMarkup.g:1524:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_0()); 
+               before(grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_0());
             }
             match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_0()); 
+               after(grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_0());
             }
 
             }
@@ -4460,7 +4460,7 @@
     public final void rule__FigureElement__Group_4_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1541:1: ( rule__FigureElement__Group_4_2__1__Impl rule__FigureElement__Group_4_2__2 )
             // InternalMarkup.g:1542:2: rule__FigureElement__Group_4_2__1__Impl rule__FigureElement__Group_4_2__2
@@ -4498,7 +4498,7 @@
     public final void rule__FigureElement__Group_4_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1553:1: ( ( ( rule__FigureElement__RequiredWidthAssignment_4_2_1 ) ) )
             // InternalMarkup.g:1554:1: ( ( rule__FigureElement__RequiredWidthAssignment_4_2_1 ) )
@@ -4507,7 +4507,7 @@
             // InternalMarkup.g:1555:1: ( rule__FigureElement__RequiredWidthAssignment_4_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getRequiredWidthAssignment_4_2_1()); 
+               before(grammarAccess.getFigureElementAccess().getRequiredWidthAssignment_4_2_1());
             }
             // InternalMarkup.g:1556:1: ( rule__FigureElement__RequiredWidthAssignment_4_2_1 )
             // InternalMarkup.g:1556:2: rule__FigureElement__RequiredWidthAssignment_4_2_1
@@ -4521,7 +4521,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getRequiredWidthAssignment_4_2_1()); 
+               after(grammarAccess.getFigureElementAccess().getRequiredWidthAssignment_4_2_1());
             }
 
             }
@@ -4549,7 +4549,7 @@
     public final void rule__FigureElement__Group_4_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1570:1: ( rule__FigureElement__Group_4_2__2__Impl )
             // InternalMarkup.g:1571:2: rule__FigureElement__Group_4_2__2__Impl
@@ -4582,7 +4582,7 @@
     public final void rule__FigureElement__Group_4_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1581:1: ( ( ( rule__FigureElement__Group_4_2_2__0 )? ) )
             // InternalMarkup.g:1582:1: ( ( rule__FigureElement__Group_4_2_2__0 )? )
@@ -4591,7 +4591,7 @@
             // InternalMarkup.g:1583:1: ( rule__FigureElement__Group_4_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getGroup_4_2_2()); 
+               before(grammarAccess.getFigureElementAccess().getGroup_4_2_2());
             }
             // InternalMarkup.g:1584:1: ( rule__FigureElement__Group_4_2_2__0 )?
             int alt14=2;
@@ -4616,7 +4616,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getGroup_4_2_2()); 
+               after(grammarAccess.getFigureElementAccess().getGroup_4_2_2());
             }
 
             }
@@ -4644,7 +4644,7 @@
     public final void rule__FigureElement__Group_4_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1604:1: ( rule__FigureElement__Group_4_2_2__0__Impl rule__FigureElement__Group_4_2_2__1 )
             // InternalMarkup.g:1605:2: rule__FigureElement__Group_4_2_2__0__Impl rule__FigureElement__Group_4_2_2__1
@@ -4682,7 +4682,7 @@
     public final void rule__FigureElement__Group_4_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1616:1: ( ( ',' ) )
             // InternalMarkup.g:1617:1: ( ',' )
@@ -4691,11 +4691,11 @@
             // InternalMarkup.g:1618:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_2_0()); 
+               before(grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_2_0());
             }
             match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_2_0()); 
+               after(grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_2_0());
             }
 
             }
@@ -4723,7 +4723,7 @@
     public final void rule__FigureElement__Group_4_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1635:1: ( rule__FigureElement__Group_4_2_2__1__Impl )
             // InternalMarkup.g:1636:2: rule__FigureElement__Group_4_2_2__1__Impl
@@ -4756,7 +4756,7 @@
     public final void rule__FigureElement__Group_4_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1646:1: ( ( ( rule__FigureElement__RequiredHeightAssignment_4_2_2_1 ) ) )
             // InternalMarkup.g:1647:1: ( ( rule__FigureElement__RequiredHeightAssignment_4_2_2_1 ) )
@@ -4765,7 +4765,7 @@
             // InternalMarkup.g:1648:1: ( rule__FigureElement__RequiredHeightAssignment_4_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getRequiredHeightAssignment_4_2_2_1()); 
+               before(grammarAccess.getFigureElementAccess().getRequiredHeightAssignment_4_2_2_1());
             }
             // InternalMarkup.g:1649:1: ( rule__FigureElement__RequiredHeightAssignment_4_2_2_1 )
             // InternalMarkup.g:1649:2: rule__FigureElement__RequiredHeightAssignment_4_2_2_1
@@ -4779,7 +4779,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getRequiredHeightAssignment_4_2_2_1()); 
+               after(grammarAccess.getFigureElementAccess().getRequiredHeightAssignment_4_2_2_1());
             }
 
             }
@@ -4807,7 +4807,7 @@
     public final void rule__FigureRefElement__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1667:1: ( rule__FigureRefElement__Group__0__Impl rule__FigureRefElement__Group__1 )
             // InternalMarkup.g:1668:2: rule__FigureRefElement__Group__0__Impl rule__FigureRefElement__Group__1
@@ -4845,7 +4845,7 @@
     public final void rule__FigureRefElement__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1679:1: ( ( 'figureRef' ) )
             // InternalMarkup.g:1680:1: ( 'figureRef' )
@@ -4854,11 +4854,11 @@
             // InternalMarkup.g:1681:1: 'figureRef'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureRefElementAccess().getFigureRefKeyword_0()); 
+               before(grammarAccess.getFigureRefElementAccess().getFigureRefKeyword_0());
             }
             match(input,20,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureRefElementAccess().getFigureRefKeyword_0()); 
+               after(grammarAccess.getFigureRefElementAccess().getFigureRefKeyword_0());
             }
 
             }
@@ -4886,7 +4886,7 @@
     public final void rule__FigureRefElement__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1698:1: ( rule__FigureRefElement__Group__1__Impl rule__FigureRefElement__Group__2 )
             // InternalMarkup.g:1699:2: rule__FigureRefElement__Group__1__Impl rule__FigureRefElement__Group__2
@@ -4924,7 +4924,7 @@
     public final void rule__FigureRefElement__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1710:1: ( ( '[' ) )
             // InternalMarkup.g:1711:1: ( '[' )
@@ -4933,11 +4933,11 @@
             // InternalMarkup.g:1712:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureRefElementAccess().getLeftSquareBracketKeyword_1()); 
+               before(grammarAccess.getFigureRefElementAccess().getLeftSquareBracketKeyword_1());
             }
             match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureRefElementAccess().getLeftSquareBracketKeyword_1()); 
+               after(grammarAccess.getFigureRefElementAccess().getLeftSquareBracketKeyword_1());
             }
 
             }
@@ -4965,7 +4965,7 @@
     public final void rule__FigureRefElement__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1729:1: ( rule__FigureRefElement__Group__2__Impl rule__FigureRefElement__Group__3 )
             // InternalMarkup.g:1730:2: rule__FigureRefElement__Group__2__Impl rule__FigureRefElement__Group__3
@@ -5003,7 +5003,7 @@
     public final void rule__FigureRefElement__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1741:1: ( ( ( rule__FigureRefElement__RefAssignment_2 ) ) )
             // InternalMarkup.g:1742:1: ( ( rule__FigureRefElement__RefAssignment_2 ) )
@@ -5012,7 +5012,7 @@
             // InternalMarkup.g:1743:1: ( rule__FigureRefElement__RefAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureRefElementAccess().getRefAssignment_2()); 
+               before(grammarAccess.getFigureRefElementAccess().getRefAssignment_2());
             }
             // InternalMarkup.g:1744:1: ( rule__FigureRefElement__RefAssignment_2 )
             // InternalMarkup.g:1744:2: rule__FigureRefElement__RefAssignment_2
@@ -5026,7 +5026,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureRefElementAccess().getRefAssignment_2()); 
+               after(grammarAccess.getFigureRefElementAccess().getRefAssignment_2());
             }
 
             }
@@ -5054,7 +5054,7 @@
     public final void rule__FigureRefElement__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1758:1: ( rule__FigureRefElement__Group__3__Impl )
             // InternalMarkup.g:1759:2: rule__FigureRefElement__Group__3__Impl
@@ -5087,7 +5087,7 @@
     public final void rule__FigureRefElement__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1769:1: ( ( ']' ) )
             // InternalMarkup.g:1770:1: ( ']' )
@@ -5096,11 +5096,11 @@
             // InternalMarkup.g:1771:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureRefElementAccess().getRightSquareBracketKeyword_3()); 
+               before(grammarAccess.getFigureRefElementAccess().getRightSquareBracketKeyword_3());
             }
             match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureRefElementAccess().getRightSquareBracketKeyword_3()); 
+               after(grammarAccess.getFigureRefElementAccess().getRightSquareBracketKeyword_3());
             }
 
             }
@@ -5128,7 +5128,7 @@
     public final void rule__FootnoteElement__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1796:1: ( rule__FootnoteElement__Group__0__Impl rule__FootnoteElement__Group__1 )
             // InternalMarkup.g:1797:2: rule__FootnoteElement__Group__0__Impl rule__FootnoteElement__Group__1
@@ -5166,7 +5166,7 @@
     public final void rule__FootnoteElement__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1808:1: ( ( () ) )
             // InternalMarkup.g:1809:1: ( () )
@@ -5175,15 +5175,15 @@
             // InternalMarkup.g:1810:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFootnoteElementAccess().getFootnoteElementAction_0()); 
+               before(grammarAccess.getFootnoteElementAccess().getFootnoteElementAction_0());
             }
             // InternalMarkup.g:1811:1: ()
-            // InternalMarkup.g:1813:1: 
+            // InternalMarkup.g:1813:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFootnoteElementAccess().getFootnoteElementAction_0()); 
+               after(grammarAccess.getFootnoteElementAccess().getFootnoteElementAction_0());
             }
 
             }
@@ -5207,7 +5207,7 @@
     public final void rule__FootnoteElement__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1827:1: ( rule__FootnoteElement__Group__1__Impl rule__FootnoteElement__Group__2 )
             // InternalMarkup.g:1828:2: rule__FootnoteElement__Group__1__Impl rule__FootnoteElement__Group__2
@@ -5245,7 +5245,7 @@
     public final void rule__FootnoteElement__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1839:1: ( ( 'footnote' ) )
             // InternalMarkup.g:1840:1: ( 'footnote' )
@@ -5254,11 +5254,11 @@
             // InternalMarkup.g:1841:1: 'footnote'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFootnoteElementAccess().getFootnoteKeyword_1()); 
+               before(grammarAccess.getFootnoteElementAccess().getFootnoteKeyword_1());
             }
             match(input,21,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFootnoteElementAccess().getFootnoteKeyword_1()); 
+               after(grammarAccess.getFootnoteElementAccess().getFootnoteKeyword_1());
             }
 
             }
@@ -5286,7 +5286,7 @@
     public final void rule__FootnoteElement__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1858:1: ( rule__FootnoteElement__Group__2__Impl rule__FootnoteElement__Group__3 )
             // InternalMarkup.g:1859:2: rule__FootnoteElement__Group__2__Impl rule__FootnoteElement__Group__3
@@ -5324,7 +5324,7 @@
     public final void rule__FootnoteElement__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1870:1: ( ( '[' ) )
             // InternalMarkup.g:1871:1: ( '[' )
@@ -5333,11 +5333,11 @@
             // InternalMarkup.g:1872:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFootnoteElementAccess().getLeftSquareBracketKeyword_2()); 
+               before(grammarAccess.getFootnoteElementAccess().getLeftSquareBracketKeyword_2());
             }
             match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFootnoteElementAccess().getLeftSquareBracketKeyword_2()); 
+               after(grammarAccess.getFootnoteElementAccess().getLeftSquareBracketKeyword_2());
             }
 
             }
@@ -5365,7 +5365,7 @@
     public final void rule__FootnoteElement__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1889:1: ( rule__FootnoteElement__Group__3__Impl rule__FootnoteElement__Group__4 )
             // InternalMarkup.g:1890:2: rule__FootnoteElement__Group__3__Impl rule__FootnoteElement__Group__4
@@ -5403,7 +5403,7 @@
     public final void rule__FootnoteElement__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1901:1: ( ( ( rule__FootnoteElement__ElementsAssignment_3 )* ) )
             // InternalMarkup.g:1902:1: ( ( rule__FootnoteElement__ElementsAssignment_3 )* )
@@ -5412,7 +5412,7 @@
             // InternalMarkup.g:1903:1: ( rule__FootnoteElement__ElementsAssignment_3 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFootnoteElementAccess().getElementsAssignment_3()); 
+               before(grammarAccess.getFootnoteElementAccess().getElementsAssignment_3());
             }
             // InternalMarkup.g:1904:1: ( rule__FootnoteElement__ElementsAssignment_3 )*
             loop15:
@@ -5444,7 +5444,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFootnoteElementAccess().getElementsAssignment_3()); 
+               after(grammarAccess.getFootnoteElementAccess().getElementsAssignment_3());
             }
 
             }
@@ -5472,7 +5472,7 @@
     public final void rule__FootnoteElement__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1918:1: ( rule__FootnoteElement__Group__4__Impl )
             // InternalMarkup.g:1919:2: rule__FootnoteElement__Group__4__Impl
@@ -5505,7 +5505,7 @@
     public final void rule__FootnoteElement__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1929:1: ( ( ']' ) )
             // InternalMarkup.g:1930:1: ( ']' )
@@ -5514,11 +5514,11 @@
             // InternalMarkup.g:1931:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFootnoteElementAccess().getRightSquareBracketKeyword_4()); 
+               before(grammarAccess.getFootnoteElementAccess().getRightSquareBracketKeyword_4());
             }
             match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFootnoteElementAccess().getRightSquareBracketKeyword_4()); 
+               after(grammarAccess.getFootnoteElementAccess().getRightSquareBracketKeyword_4());
             }
 
             }
@@ -5546,7 +5546,7 @@
     public final void rule__HeadingElement__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1958:1: ( rule__HeadingElement__Group__0__Impl rule__HeadingElement__Group__1 )
             // InternalMarkup.g:1959:2: rule__HeadingElement__Group__0__Impl rule__HeadingElement__Group__1
@@ -5584,7 +5584,7 @@
     public final void rule__HeadingElement__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1970:1: ( ( () ) )
             // InternalMarkup.g:1971:1: ( () )
@@ -5593,15 +5593,15 @@
             // InternalMarkup.g:1972:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getHeadingElementAccess().getHeadingElementAction_0()); 
+               before(grammarAccess.getHeadingElementAccess().getHeadingElementAction_0());
             }
             // InternalMarkup.g:1973:1: ()
-            // InternalMarkup.g:1975:1: 
+            // InternalMarkup.g:1975:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getHeadingElementAccess().getHeadingElementAction_0()); 
+               after(grammarAccess.getHeadingElementAccess().getHeadingElementAction_0());
             }
 
             }
@@ -5625,7 +5625,7 @@
     public final void rule__HeadingElement__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:1989:1: ( rule__HeadingElement__Group__1__Impl rule__HeadingElement__Group__2 )
             // InternalMarkup.g:1990:2: rule__HeadingElement__Group__1__Impl rule__HeadingElement__Group__2
@@ -5663,7 +5663,7 @@
     public final void rule__HeadingElement__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2001:1: ( ( 'heading' ) )
             // InternalMarkup.g:2002:1: ( 'heading' )
@@ -5672,11 +5672,11 @@
             // InternalMarkup.g:2003:1: 'heading'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getHeadingElementAccess().getHeadingKeyword_1()); 
+               before(grammarAccess.getHeadingElementAccess().getHeadingKeyword_1());
             }
             match(input,22,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getHeadingElementAccess().getHeadingKeyword_1()); 
+               after(grammarAccess.getHeadingElementAccess().getHeadingKeyword_1());
             }
 
             }
@@ -5704,7 +5704,7 @@
     public final void rule__HeadingElement__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2020:1: ( rule__HeadingElement__Group__2__Impl rule__HeadingElement__Group__3 )
             // InternalMarkup.g:2021:2: rule__HeadingElement__Group__2__Impl rule__HeadingElement__Group__3
@@ -5742,7 +5742,7 @@
     public final void rule__HeadingElement__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2032:1: ( ( ( rule__HeadingElement__Group_2__0 )? ) )
             // InternalMarkup.g:2033:1: ( ( rule__HeadingElement__Group_2__0 )? )
@@ -5751,7 +5751,7 @@
             // InternalMarkup.g:2034:1: ( rule__HeadingElement__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getHeadingElementAccess().getGroup_2()); 
+               before(grammarAccess.getHeadingElementAccess().getGroup_2());
             }
             // InternalMarkup.g:2035:1: ( rule__HeadingElement__Group_2__0 )?
             int alt16=2;
@@ -5776,7 +5776,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getHeadingElementAccess().getGroup_2()); 
+               after(grammarAccess.getHeadingElementAccess().getGroup_2());
             }
 
             }
@@ -5804,7 +5804,7 @@
     public final void rule__HeadingElement__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2049:1: ( rule__HeadingElement__Group__3__Impl rule__HeadingElement__Group__4 )
             // InternalMarkup.g:2050:2: rule__HeadingElement__Group__3__Impl rule__HeadingElement__Group__4
@@ -5842,7 +5842,7 @@
     public final void rule__HeadingElement__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2061:1: ( ( '[' ) )
             // InternalMarkup.g:2062:1: ( '[' )
@@ -5851,11 +5851,11 @@
             // InternalMarkup.g:2063:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getHeadingElementAccess().getLeftSquareBracketKeyword_3()); 
+               before(grammarAccess.getHeadingElementAccess().getLeftSquareBracketKeyword_3());
             }
             match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getHeadingElementAccess().getLeftSquareBracketKeyword_3()); 
+               after(grammarAccess.getHeadingElementAccess().getLeftSquareBracketKeyword_3());
             }
 
             }
@@ -5883,7 +5883,7 @@
     public final void rule__HeadingElement__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2080:1: ( rule__HeadingElement__Group__4__Impl rule__HeadingElement__Group__5 )
             // InternalMarkup.g:2081:2: rule__HeadingElement__Group__4__Impl rule__HeadingElement__Group__5
@@ -5921,7 +5921,7 @@
     public final void rule__HeadingElement__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2092:1: ( ( ( rule__HeadingElement__ElementsAssignment_4 )* ) )
             // InternalMarkup.g:2093:1: ( ( rule__HeadingElement__ElementsAssignment_4 )* )
@@ -5930,7 +5930,7 @@
             // InternalMarkup.g:2094:1: ( rule__HeadingElement__ElementsAssignment_4 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getHeadingElementAccess().getElementsAssignment_4()); 
+               before(grammarAccess.getHeadingElementAccess().getElementsAssignment_4());
             }
             // InternalMarkup.g:2095:1: ( rule__HeadingElement__ElementsAssignment_4 )*
             loop17:
@@ -5962,7 +5962,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getHeadingElementAccess().getElementsAssignment_4()); 
+               after(grammarAccess.getHeadingElementAccess().getElementsAssignment_4());
             }
 
             }
@@ -5990,7 +5990,7 @@
     public final void rule__HeadingElement__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2109:1: ( rule__HeadingElement__Group__5__Impl )
             // InternalMarkup.g:2110:2: rule__HeadingElement__Group__5__Impl
@@ -6023,7 +6023,7 @@
     public final void rule__HeadingElement__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2120:1: ( ( ']' ) )
             // InternalMarkup.g:2121:1: ( ']' )
@@ -6032,11 +6032,11 @@
             // InternalMarkup.g:2122:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getHeadingElementAccess().getRightSquareBracketKeyword_5()); 
+               before(grammarAccess.getHeadingElementAccess().getRightSquareBracketKeyword_5());
             }
             match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getHeadingElementAccess().getRightSquareBracketKeyword_5()); 
+               after(grammarAccess.getHeadingElementAccess().getRightSquareBracketKeyword_5());
             }
 
             }
@@ -6064,7 +6064,7 @@
     public final void rule__HeadingElement__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2151:1: ( rule__HeadingElement__Group_2__0__Impl rule__HeadingElement__Group_2__1 )
             // InternalMarkup.g:2152:2: rule__HeadingElement__Group_2__0__Impl rule__HeadingElement__Group_2__1
@@ -6102,7 +6102,7 @@
     public final void rule__HeadingElement__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2163:1: ( ( ':' ) )
             // InternalMarkup.g:2164:1: ( ':' )
@@ -6111,11 +6111,11 @@
             // InternalMarkup.g:2165:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getHeadingElementAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getHeadingElementAccess().getColonKeyword_2_0());
             }
             match(input,26,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getHeadingElementAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getHeadingElementAccess().getColonKeyword_2_0());
             }
 
             }
@@ -6143,7 +6143,7 @@
     public final void rule__HeadingElement__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2182:1: ( rule__HeadingElement__Group_2__1__Impl )
             // InternalMarkup.g:2183:2: rule__HeadingElement__Group_2__1__Impl
@@ -6176,7 +6176,7 @@
     public final void rule__HeadingElement__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2193:1: ( ( ( rule__HeadingElement__LevelAssignment_2_1 ) ) )
             // InternalMarkup.g:2194:1: ( ( rule__HeadingElement__LevelAssignment_2_1 ) )
@@ -6185,7 +6185,7 @@
             // InternalMarkup.g:2195:1: ( rule__HeadingElement__LevelAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getHeadingElementAccess().getLevelAssignment_2_1()); 
+               before(grammarAccess.getHeadingElementAccess().getLevelAssignment_2_1());
             }
             // InternalMarkup.g:2196:1: ( rule__HeadingElement__LevelAssignment_2_1 )
             // InternalMarkup.g:2196:2: rule__HeadingElement__LevelAssignment_2_1
@@ -6199,7 +6199,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getHeadingElementAccess().getLevelAssignment_2_1()); 
+               after(grammarAccess.getHeadingElementAccess().getLevelAssignment_2_1());
             }
 
             }
@@ -6227,7 +6227,7 @@
     public final void rule__NullElement__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2214:1: ( rule__NullElement__Group__0__Impl rule__NullElement__Group__1 )
             // InternalMarkup.g:2215:2: rule__NullElement__Group__0__Impl rule__NullElement__Group__1
@@ -6265,7 +6265,7 @@
     public final void rule__NullElement__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2226:1: ( ( () ) )
             // InternalMarkup.g:2227:1: ( () )
@@ -6274,15 +6274,15 @@
             // InternalMarkup.g:2228:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullElementAccess().getNullElementAction_0()); 
+               before(grammarAccess.getNullElementAccess().getNullElementAction_0());
             }
             // InternalMarkup.g:2229:1: ()
-            // InternalMarkup.g:2231:1: 
+            // InternalMarkup.g:2231:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullElementAccess().getNullElementAction_0()); 
+               after(grammarAccess.getNullElementAccess().getNullElementAction_0());
             }
 
             }
@@ -6306,7 +6306,7 @@
     public final void rule__NullElement__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2245:1: ( rule__NullElement__Group__1__Impl rule__NullElement__Group__2 )
             // InternalMarkup.g:2246:2: rule__NullElement__Group__1__Impl rule__NullElement__Group__2
@@ -6344,7 +6344,7 @@
     public final void rule__NullElement__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2257:1: ( ( '[' ) )
             // InternalMarkup.g:2258:1: ( '[' )
@@ -6353,11 +6353,11 @@
             // InternalMarkup.g:2259:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullElementAccess().getLeftSquareBracketKeyword_1()); 
+               before(grammarAccess.getNullElementAccess().getLeftSquareBracketKeyword_1());
             }
             match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullElementAccess().getLeftSquareBracketKeyword_1()); 
+               after(grammarAccess.getNullElementAccess().getLeftSquareBracketKeyword_1());
             }
 
             }
@@ -6385,7 +6385,7 @@
     public final void rule__NullElement__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2276:1: ( rule__NullElement__Group__2__Impl rule__NullElement__Group__3 )
             // InternalMarkup.g:2277:2: rule__NullElement__Group__2__Impl rule__NullElement__Group__3
@@ -6423,7 +6423,7 @@
     public final void rule__NullElement__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2288:1: ( ( ( rule__NullElement__ElementsAssignment_2 )* ) )
             // InternalMarkup.g:2289:1: ( ( rule__NullElement__ElementsAssignment_2 )* )
@@ -6432,7 +6432,7 @@
             // InternalMarkup.g:2290:1: ( rule__NullElement__ElementsAssignment_2 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullElementAccess().getElementsAssignment_2()); 
+               before(grammarAccess.getNullElementAccess().getElementsAssignment_2());
             }
             // InternalMarkup.g:2291:1: ( rule__NullElement__ElementsAssignment_2 )*
             loop18:
@@ -6464,7 +6464,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullElementAccess().getElementsAssignment_2()); 
+               after(grammarAccess.getNullElementAccess().getElementsAssignment_2());
             }
 
             }
@@ -6492,7 +6492,7 @@
     public final void rule__NullElement__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2305:1: ( rule__NullElement__Group__3__Impl )
             // InternalMarkup.g:2306:2: rule__NullElement__Group__3__Impl
@@ -6525,7 +6525,7 @@
     public final void rule__NullElement__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2316:1: ( ( ']' ) )
             // InternalMarkup.g:2317:1: ( ']' )
@@ -6534,11 +6534,11 @@
             // InternalMarkup.g:2318:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullElementAccess().getRightSquareBracketKeyword_3()); 
+               before(grammarAccess.getNullElementAccess().getRightSquareBracketKeyword_3());
             }
             match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullElementAccess().getRightSquareBracketKeyword_3()); 
+               after(grammarAccess.getNullElementAccess().getRightSquareBracketKeyword_3());
             }
 
             }
@@ -6566,7 +6566,7 @@
     public final void rule__OCLCodeElement__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2343:1: ( rule__OCLCodeElement__Group__0__Impl rule__OCLCodeElement__Group__1 )
             // InternalMarkup.g:2344:2: rule__OCLCodeElement__Group__0__Impl rule__OCLCodeElement__Group__1
@@ -6604,7 +6604,7 @@
     public final void rule__OCLCodeElement__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2355:1: ( ( () ) )
             // InternalMarkup.g:2356:1: ( () )
@@ -6613,15 +6613,15 @@
             // InternalMarkup.g:2357:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLCodeElementAccess().getOCLCodeElementAction_0()); 
+               before(grammarAccess.getOCLCodeElementAccess().getOCLCodeElementAction_0());
             }
             // InternalMarkup.g:2358:1: ()
-            // InternalMarkup.g:2360:1: 
+            // InternalMarkup.g:2360:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLCodeElementAccess().getOCLCodeElementAction_0()); 
+               after(grammarAccess.getOCLCodeElementAccess().getOCLCodeElementAction_0());
             }
 
             }
@@ -6645,7 +6645,7 @@
     public final void rule__OCLCodeElement__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2374:1: ( rule__OCLCodeElement__Group__1__Impl rule__OCLCodeElement__Group__2 )
             // InternalMarkup.g:2375:2: rule__OCLCodeElement__Group__1__Impl rule__OCLCodeElement__Group__2
@@ -6683,7 +6683,7 @@
     public final void rule__OCLCodeElement__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2386:1: ( ( 'oclCode' ) )
             // InternalMarkup.g:2387:1: ( 'oclCode' )
@@ -6692,11 +6692,11 @@
             // InternalMarkup.g:2388:1: 'oclCode'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLCodeElementAccess().getOclCodeKeyword_1()); 
+               before(grammarAccess.getOCLCodeElementAccess().getOclCodeKeyword_1());
             }
             match(input,23,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLCodeElementAccess().getOclCodeKeyword_1()); 
+               after(grammarAccess.getOCLCodeElementAccess().getOclCodeKeyword_1());
             }
 
             }
@@ -6724,7 +6724,7 @@
     public final void rule__OCLCodeElement__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2405:1: ( rule__OCLCodeElement__Group__2__Impl rule__OCLCodeElement__Group__3 )
             // InternalMarkup.g:2406:2: rule__OCLCodeElement__Group__2__Impl rule__OCLCodeElement__Group__3
@@ -6762,7 +6762,7 @@
     public final void rule__OCLCodeElement__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2417:1: ( ( '[' ) )
             // InternalMarkup.g:2418:1: ( '[' )
@@ -6771,11 +6771,11 @@
             // InternalMarkup.g:2419:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLCodeElementAccess().getLeftSquareBracketKeyword_2()); 
+               before(grammarAccess.getOCLCodeElementAccess().getLeftSquareBracketKeyword_2());
             }
             match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLCodeElementAccess().getLeftSquareBracketKeyword_2()); 
+               after(grammarAccess.getOCLCodeElementAccess().getLeftSquareBracketKeyword_2());
             }
 
             }
@@ -6803,7 +6803,7 @@
     public final void rule__OCLCodeElement__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2436:1: ( rule__OCLCodeElement__Group__3__Impl rule__OCLCodeElement__Group__4 )
             // InternalMarkup.g:2437:2: rule__OCLCodeElement__Group__3__Impl rule__OCLCodeElement__Group__4
@@ -6841,7 +6841,7 @@
     public final void rule__OCLCodeElement__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2448:1: ( ( ( rule__OCLCodeElement__ElementsAssignment_3 )* ) )
             // InternalMarkup.g:2449:1: ( ( rule__OCLCodeElement__ElementsAssignment_3 )* )
@@ -6850,7 +6850,7 @@
             // InternalMarkup.g:2450:1: ( rule__OCLCodeElement__ElementsAssignment_3 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLCodeElementAccess().getElementsAssignment_3()); 
+               before(grammarAccess.getOCLCodeElementAccess().getElementsAssignment_3());
             }
             // InternalMarkup.g:2451:1: ( rule__OCLCodeElement__ElementsAssignment_3 )*
             loop19:
@@ -6882,7 +6882,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLCodeElementAccess().getElementsAssignment_3()); 
+               after(grammarAccess.getOCLCodeElementAccess().getElementsAssignment_3());
             }
 
             }
@@ -6910,7 +6910,7 @@
     public final void rule__OCLCodeElement__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2465:1: ( rule__OCLCodeElement__Group__4__Impl )
             // InternalMarkup.g:2466:2: rule__OCLCodeElement__Group__4__Impl
@@ -6943,7 +6943,7 @@
     public final void rule__OCLCodeElement__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2476:1: ( ( ']' ) )
             // InternalMarkup.g:2477:1: ( ']' )
@@ -6952,11 +6952,11 @@
             // InternalMarkup.g:2478:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLCodeElementAccess().getRightSquareBracketKeyword_4()); 
+               before(grammarAccess.getOCLCodeElementAccess().getRightSquareBracketKeyword_4());
             }
             match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLCodeElementAccess().getRightSquareBracketKeyword_4()); 
+               after(grammarAccess.getOCLCodeElementAccess().getRightSquareBracketKeyword_4());
             }
 
             }
@@ -6984,7 +6984,7 @@
     public final void rule__OCLEvalElement__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2505:1: ( rule__OCLEvalElement__Group__0__Impl rule__OCLEvalElement__Group__1 )
             // InternalMarkup.g:2506:2: rule__OCLEvalElement__Group__0__Impl rule__OCLEvalElement__Group__1
@@ -7022,7 +7022,7 @@
     public final void rule__OCLEvalElement__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2517:1: ( ( () ) )
             // InternalMarkup.g:2518:1: ( () )
@@ -7031,15 +7031,15 @@
             // InternalMarkup.g:2519:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLEvalElementAccess().getOCLEvalElementAction_0()); 
+               before(grammarAccess.getOCLEvalElementAccess().getOCLEvalElementAction_0());
             }
             // InternalMarkup.g:2520:1: ()
-            // InternalMarkup.g:2522:1: 
+            // InternalMarkup.g:2522:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLEvalElementAccess().getOCLEvalElementAction_0()); 
+               after(grammarAccess.getOCLEvalElementAccess().getOCLEvalElementAction_0());
             }
 
             }
@@ -7063,7 +7063,7 @@
     public final void rule__OCLEvalElement__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2536:1: ( rule__OCLEvalElement__Group__1__Impl rule__OCLEvalElement__Group__2 )
             // InternalMarkup.g:2537:2: rule__OCLEvalElement__Group__1__Impl rule__OCLEvalElement__Group__2
@@ -7101,7 +7101,7 @@
     public final void rule__OCLEvalElement__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2548:1: ( ( 'oclEval' ) )
             // InternalMarkup.g:2549:1: ( 'oclEval' )
@@ -7110,11 +7110,11 @@
             // InternalMarkup.g:2550:1: 'oclEval'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLEvalElementAccess().getOclEvalKeyword_1()); 
+               before(grammarAccess.getOCLEvalElementAccess().getOclEvalKeyword_1());
             }
             match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLEvalElementAccess().getOclEvalKeyword_1()); 
+               after(grammarAccess.getOCLEvalElementAccess().getOclEvalKeyword_1());
             }
 
             }
@@ -7142,7 +7142,7 @@
     public final void rule__OCLEvalElement__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2567:1: ( rule__OCLEvalElement__Group__2__Impl rule__OCLEvalElement__Group__3 )
             // InternalMarkup.g:2568:2: rule__OCLEvalElement__Group__2__Impl rule__OCLEvalElement__Group__3
@@ -7180,7 +7180,7 @@
     public final void rule__OCLEvalElement__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2579:1: ( ( '[' ) )
             // InternalMarkup.g:2580:1: ( '[' )
@@ -7189,11 +7189,11 @@
             // InternalMarkup.g:2581:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLEvalElementAccess().getLeftSquareBracketKeyword_2()); 
+               before(grammarAccess.getOCLEvalElementAccess().getLeftSquareBracketKeyword_2());
             }
             match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLEvalElementAccess().getLeftSquareBracketKeyword_2()); 
+               after(grammarAccess.getOCLEvalElementAccess().getLeftSquareBracketKeyword_2());
             }
 
             }
@@ -7221,7 +7221,7 @@
     public final void rule__OCLEvalElement__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2598:1: ( rule__OCLEvalElement__Group__3__Impl rule__OCLEvalElement__Group__4 )
             // InternalMarkup.g:2599:2: rule__OCLEvalElement__Group__3__Impl rule__OCLEvalElement__Group__4
@@ -7259,7 +7259,7 @@
     public final void rule__OCLEvalElement__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2610:1: ( ( ( rule__OCLEvalElement__ElementsAssignment_3 )* ) )
             // InternalMarkup.g:2611:1: ( ( rule__OCLEvalElement__ElementsAssignment_3 )* )
@@ -7268,7 +7268,7 @@
             // InternalMarkup.g:2612:1: ( rule__OCLEvalElement__ElementsAssignment_3 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLEvalElementAccess().getElementsAssignment_3()); 
+               before(grammarAccess.getOCLEvalElementAccess().getElementsAssignment_3());
             }
             // InternalMarkup.g:2613:1: ( rule__OCLEvalElement__ElementsAssignment_3 )*
             loop20:
@@ -7300,7 +7300,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLEvalElementAccess().getElementsAssignment_3()); 
+               after(grammarAccess.getOCLEvalElementAccess().getElementsAssignment_3());
             }
 
             }
@@ -7328,7 +7328,7 @@
     public final void rule__OCLEvalElement__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2627:1: ( rule__OCLEvalElement__Group__4__Impl )
             // InternalMarkup.g:2628:2: rule__OCLEvalElement__Group__4__Impl
@@ -7361,7 +7361,7 @@
     public final void rule__OCLEvalElement__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2638:1: ( ( ']' ) )
             // InternalMarkup.g:2639:1: ( ']' )
@@ -7370,11 +7370,11 @@
             // InternalMarkup.g:2640:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLEvalElementAccess().getRightSquareBracketKeyword_4()); 
+               before(grammarAccess.getOCLEvalElementAccess().getRightSquareBracketKeyword_4());
             }
             match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLEvalElementAccess().getRightSquareBracketKeyword_4()); 
+               after(grammarAccess.getOCLEvalElementAccess().getRightSquareBracketKeyword_4());
             }
 
             }
@@ -7402,7 +7402,7 @@
     public final void rule__OCLTextElement__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2667:1: ( rule__OCLTextElement__Group__0__Impl rule__OCLTextElement__Group__1 )
             // InternalMarkup.g:2668:2: rule__OCLTextElement__Group__0__Impl rule__OCLTextElement__Group__1
@@ -7440,7 +7440,7 @@
     public final void rule__OCLTextElement__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2679:1: ( ( () ) )
             // InternalMarkup.g:2680:1: ( () )
@@ -7449,15 +7449,15 @@
             // InternalMarkup.g:2681:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLTextElementAccess().getOCLTextElementAction_0()); 
+               before(grammarAccess.getOCLTextElementAccess().getOCLTextElementAction_0());
             }
             // InternalMarkup.g:2682:1: ()
-            // InternalMarkup.g:2684:1: 
+            // InternalMarkup.g:2684:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLTextElementAccess().getOCLTextElementAction_0()); 
+               after(grammarAccess.getOCLTextElementAccess().getOCLTextElementAction_0());
             }
 
             }
@@ -7481,7 +7481,7 @@
     public final void rule__OCLTextElement__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2698:1: ( rule__OCLTextElement__Group__1__Impl rule__OCLTextElement__Group__2 )
             // InternalMarkup.g:2699:2: rule__OCLTextElement__Group__1__Impl rule__OCLTextElement__Group__2
@@ -7519,7 +7519,7 @@
     public final void rule__OCLTextElement__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2710:1: ( ( 'oclText' ) )
             // InternalMarkup.g:2711:1: ( 'oclText' )
@@ -7528,11 +7528,11 @@
             // InternalMarkup.g:2712:1: 'oclText'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLTextElementAccess().getOclTextKeyword_1()); 
+               before(grammarAccess.getOCLTextElementAccess().getOclTextKeyword_1());
             }
             match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLTextElementAccess().getOclTextKeyword_1()); 
+               after(grammarAccess.getOCLTextElementAccess().getOclTextKeyword_1());
             }
 
             }
@@ -7560,7 +7560,7 @@
     public final void rule__OCLTextElement__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2729:1: ( rule__OCLTextElement__Group__2__Impl rule__OCLTextElement__Group__3 )
             // InternalMarkup.g:2730:2: rule__OCLTextElement__Group__2__Impl rule__OCLTextElement__Group__3
@@ -7598,7 +7598,7 @@
     public final void rule__OCLTextElement__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2741:1: ( ( '[' ) )
             // InternalMarkup.g:2742:1: ( '[' )
@@ -7607,11 +7607,11 @@
             // InternalMarkup.g:2743:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLTextElementAccess().getLeftSquareBracketKeyword_2()); 
+               before(grammarAccess.getOCLTextElementAccess().getLeftSquareBracketKeyword_2());
             }
             match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLTextElementAccess().getLeftSquareBracketKeyword_2()); 
+               after(grammarAccess.getOCLTextElementAccess().getLeftSquareBracketKeyword_2());
             }
 
             }
@@ -7639,7 +7639,7 @@
     public final void rule__OCLTextElement__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2760:1: ( rule__OCLTextElement__Group__3__Impl rule__OCLTextElement__Group__4 )
             // InternalMarkup.g:2761:2: rule__OCLTextElement__Group__3__Impl rule__OCLTextElement__Group__4
@@ -7677,7 +7677,7 @@
     public final void rule__OCLTextElement__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2772:1: ( ( ( rule__OCLTextElement__ElementsAssignment_3 )* ) )
             // InternalMarkup.g:2773:1: ( ( rule__OCLTextElement__ElementsAssignment_3 )* )
@@ -7686,7 +7686,7 @@
             // InternalMarkup.g:2774:1: ( rule__OCLTextElement__ElementsAssignment_3 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLTextElementAccess().getElementsAssignment_3()); 
+               before(grammarAccess.getOCLTextElementAccess().getElementsAssignment_3());
             }
             // InternalMarkup.g:2775:1: ( rule__OCLTextElement__ElementsAssignment_3 )*
             loop21:
@@ -7718,7 +7718,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLTextElementAccess().getElementsAssignment_3()); 
+               after(grammarAccess.getOCLTextElementAccess().getElementsAssignment_3());
             }
 
             }
@@ -7746,7 +7746,7 @@
     public final void rule__OCLTextElement__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2789:1: ( rule__OCLTextElement__Group__4__Impl )
             // InternalMarkup.g:2790:2: rule__OCLTextElement__Group__4__Impl
@@ -7779,7 +7779,7 @@
     public final void rule__OCLTextElement__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2800:1: ( ( ']' ) )
             // InternalMarkup.g:2801:1: ( ']' )
@@ -7788,11 +7788,11 @@
             // InternalMarkup.g:2802:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLTextElementAccess().getRightSquareBracketKeyword_4()); 
+               before(grammarAccess.getOCLTextElementAccess().getRightSquareBracketKeyword_4());
             }
             match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLTextElementAccess().getRightSquareBracketKeyword_4()); 
+               after(grammarAccess.getOCLTextElementAccess().getRightSquareBracketKeyword_4());
             }
 
             }
@@ -7820,7 +7820,7 @@
     public final void rule__Markup__ElementsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2830:1: ( ( ruleMarkupElement ) )
             // InternalMarkup.g:2831:1: ( ruleMarkupElement )
@@ -7829,7 +7829,7 @@
             // InternalMarkup.g:2832:1: ruleMarkupElement
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMarkupAccess().getElementsMarkupElementParserRuleCall_0()); 
+               before(grammarAccess.getMarkupAccess().getElementsMarkupElementParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMarkupElement();
@@ -7837,7 +7837,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMarkupAccess().getElementsMarkupElementParserRuleCall_0()); 
+               after(grammarAccess.getMarkupAccess().getElementsMarkupElementParserRuleCall_0());
             }
 
             }
@@ -7865,7 +7865,7 @@
     public final void rule__BulletElement__LevelAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2845:1: ( ( RULE_INT ) )
             // InternalMarkup.g:2846:1: ( RULE_INT )
@@ -7874,11 +7874,11 @@
             // InternalMarkup.g:2847:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBulletElementAccess().getLevelINTTerminalRuleCall_2_1_0()); 
+               before(grammarAccess.getBulletElementAccess().getLevelINTTerminalRuleCall_2_1_0());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBulletElementAccess().getLevelINTTerminalRuleCall_2_1_0()); 
+               after(grammarAccess.getBulletElementAccess().getLevelINTTerminalRuleCall_2_1_0());
             }
 
             }
@@ -7906,7 +7906,7 @@
     public final void rule__BulletElement__ElementsAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2860:1: ( ( ruleMarkupElement ) )
             // InternalMarkup.g:2861:1: ( ruleMarkupElement )
@@ -7915,7 +7915,7 @@
             // InternalMarkup.g:2862:1: ruleMarkupElement
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBulletElementAccess().getElementsMarkupElementParserRuleCall_4_0()); 
+               before(grammarAccess.getBulletElementAccess().getElementsMarkupElementParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMarkupElement();
@@ -7923,7 +7923,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBulletElementAccess().getElementsMarkupElementParserRuleCall_4_0()); 
+               after(grammarAccess.getBulletElementAccess().getElementsMarkupElementParserRuleCall_4_0());
             }
 
             }
@@ -7951,7 +7951,7 @@
     public final void rule__FontElement__FontAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2875:1: ( ( ( rule__FontElement__FontAlternatives_0_0 ) ) )
             // InternalMarkup.g:2876:1: ( ( rule__FontElement__FontAlternatives_0_0 ) )
@@ -7960,7 +7960,7 @@
             // InternalMarkup.g:2877:1: ( rule__FontElement__FontAlternatives_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFontElementAccess().getFontAlternatives_0_0()); 
+               before(grammarAccess.getFontElementAccess().getFontAlternatives_0_0());
             }
             // InternalMarkup.g:2878:1: ( rule__FontElement__FontAlternatives_0_0 )
             // InternalMarkup.g:2878:2: rule__FontElement__FontAlternatives_0_0
@@ -7974,7 +7974,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFontElementAccess().getFontAlternatives_0_0()); 
+               after(grammarAccess.getFontElementAccess().getFontAlternatives_0_0());
             }
 
             }
@@ -8002,7 +8002,7 @@
     public final void rule__FontElement__ElementsAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2891:1: ( ( ruleMarkupElement ) )
             // InternalMarkup.g:2892:1: ( ruleMarkupElement )
@@ -8011,7 +8011,7 @@
             // InternalMarkup.g:2893:1: ruleMarkupElement
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFontElementAccess().getElementsMarkupElementParserRuleCall_2_0()); 
+               before(grammarAccess.getFontElementAccess().getElementsMarkupElementParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMarkupElement();
@@ -8019,7 +8019,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFontElementAccess().getElementsMarkupElementParserRuleCall_2_0()); 
+               after(grammarAccess.getFontElementAccess().getElementsMarkupElementParserRuleCall_2_0());
             }
 
             }
@@ -8047,7 +8047,7 @@
     public final void rule__FigureElement__DefAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2906:1: ( ( RULE_ID ) )
             // InternalMarkup.g:2907:1: ( RULE_ID )
@@ -8056,11 +8056,11 @@
             // InternalMarkup.g:2908:1: RULE_ID
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getDefIDTerminalRuleCall_1_1_0()); 
+               before(grammarAccess.getFigureElementAccess().getDefIDTerminalRuleCall_1_1_0());
             }
             match(input,RULE_ID,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getDefIDTerminalRuleCall_1_1_0()); 
+               after(grammarAccess.getFigureElementAccess().getDefIDTerminalRuleCall_1_1_0());
             }
 
             }
@@ -8088,7 +8088,7 @@
     public final void rule__FigureElement__SrcAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2921:1: ( ( RULE_STRING ) )
             // InternalMarkup.g:2922:1: ( RULE_STRING )
@@ -8097,11 +8097,11 @@
             // InternalMarkup.g:2923:1: RULE_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getSrcSTRINGTerminalRuleCall_3_0()); 
+               before(grammarAccess.getFigureElementAccess().getSrcSTRINGTerminalRuleCall_3_0());
             }
             match(input,RULE_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getSrcSTRINGTerminalRuleCall_3_0()); 
+               after(grammarAccess.getFigureElementAccess().getSrcSTRINGTerminalRuleCall_3_0());
             }
 
             }
@@ -8129,7 +8129,7 @@
     public final void rule__FigureElement__AltAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2936:1: ( ( RULE_STRING ) )
             // InternalMarkup.g:2937:1: ( RULE_STRING )
@@ -8138,11 +8138,11 @@
             // InternalMarkup.g:2938:1: RULE_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getAltSTRINGTerminalRuleCall_4_1_0()); 
+               before(grammarAccess.getFigureElementAccess().getAltSTRINGTerminalRuleCall_4_1_0());
             }
             match(input,RULE_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getAltSTRINGTerminalRuleCall_4_1_0()); 
+               after(grammarAccess.getFigureElementAccess().getAltSTRINGTerminalRuleCall_4_1_0());
             }
 
             }
@@ -8170,7 +8170,7 @@
     public final void rule__FigureElement__RequiredWidthAssignment_4_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2951:1: ( ( RULE_INT ) )
             // InternalMarkup.g:2952:1: ( RULE_INT )
@@ -8179,11 +8179,11 @@
             // InternalMarkup.g:2953:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getRequiredWidthINTTerminalRuleCall_4_2_1_0()); 
+               before(grammarAccess.getFigureElementAccess().getRequiredWidthINTTerminalRuleCall_4_2_1_0());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getRequiredWidthINTTerminalRuleCall_4_2_1_0()); 
+               after(grammarAccess.getFigureElementAccess().getRequiredWidthINTTerminalRuleCall_4_2_1_0());
             }
 
             }
@@ -8211,7 +8211,7 @@
     public final void rule__FigureElement__RequiredHeightAssignment_4_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2966:1: ( ( RULE_INT ) )
             // InternalMarkup.g:2967:1: ( RULE_INT )
@@ -8220,11 +8220,11 @@
             // InternalMarkup.g:2968:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureElementAccess().getRequiredHeightINTTerminalRuleCall_4_2_2_1_0()); 
+               before(grammarAccess.getFigureElementAccess().getRequiredHeightINTTerminalRuleCall_4_2_2_1_0());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureElementAccess().getRequiredHeightINTTerminalRuleCall_4_2_2_1_0()); 
+               after(grammarAccess.getFigureElementAccess().getRequiredHeightINTTerminalRuleCall_4_2_2_1_0());
             }
 
             }
@@ -8252,7 +8252,7 @@
     public final void rule__FigureRefElement__RefAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:2981:1: ( ( ( RULE_ID ) ) )
             // InternalMarkup.g:2982:1: ( ( RULE_ID ) )
@@ -8261,23 +8261,23 @@
             // InternalMarkup.g:2983:1: ( RULE_ID )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureRefElementAccess().getRefFigureElementCrossReference_2_0()); 
+               before(grammarAccess.getFigureRefElementAccess().getRefFigureElementCrossReference_2_0());
             }
             // InternalMarkup.g:2984:1: ( RULE_ID )
             // InternalMarkup.g:2985:1: RULE_ID
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFigureRefElementAccess().getRefFigureElementIDTerminalRuleCall_2_0_1()); 
+               before(grammarAccess.getFigureRefElementAccess().getRefFigureElementIDTerminalRuleCall_2_0_1());
             }
             match(input,RULE_ID,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureRefElementAccess().getRefFigureElementIDTerminalRuleCall_2_0_1()); 
+               after(grammarAccess.getFigureRefElementAccess().getRefFigureElementIDTerminalRuleCall_2_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFigureRefElementAccess().getRefFigureElementCrossReference_2_0()); 
+               after(grammarAccess.getFigureRefElementAccess().getRefFigureElementCrossReference_2_0());
             }
 
             }
@@ -8305,7 +8305,7 @@
     public final void rule__FootnoteElement__ElementsAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:3000:1: ( ( ruleMarkupElement ) )
             // InternalMarkup.g:3001:1: ( ruleMarkupElement )
@@ -8314,7 +8314,7 @@
             // InternalMarkup.g:3002:1: ruleMarkupElement
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFootnoteElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
+               before(grammarAccess.getFootnoteElementAccess().getElementsMarkupElementParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMarkupElement();
@@ -8322,7 +8322,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFootnoteElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
+               after(grammarAccess.getFootnoteElementAccess().getElementsMarkupElementParserRuleCall_3_0());
             }
 
             }
@@ -8350,7 +8350,7 @@
     public final void rule__HeadingElement__LevelAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:3015:1: ( ( RULE_INT ) )
             // InternalMarkup.g:3016:1: ( RULE_INT )
@@ -8359,11 +8359,11 @@
             // InternalMarkup.g:3017:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getHeadingElementAccess().getLevelINTTerminalRuleCall_2_1_0()); 
+               before(grammarAccess.getHeadingElementAccess().getLevelINTTerminalRuleCall_2_1_0());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getHeadingElementAccess().getLevelINTTerminalRuleCall_2_1_0()); 
+               after(grammarAccess.getHeadingElementAccess().getLevelINTTerminalRuleCall_2_1_0());
             }
 
             }
@@ -8391,7 +8391,7 @@
     public final void rule__HeadingElement__ElementsAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:3030:1: ( ( ruleMarkupElement ) )
             // InternalMarkup.g:3031:1: ( ruleMarkupElement )
@@ -8400,7 +8400,7 @@
             // InternalMarkup.g:3032:1: ruleMarkupElement
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getHeadingElementAccess().getElementsMarkupElementParserRuleCall_4_0()); 
+               before(grammarAccess.getHeadingElementAccess().getElementsMarkupElementParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMarkupElement();
@@ -8408,7 +8408,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getHeadingElementAccess().getElementsMarkupElementParserRuleCall_4_0()); 
+               after(grammarAccess.getHeadingElementAccess().getElementsMarkupElementParserRuleCall_4_0());
             }
 
             }
@@ -8436,7 +8436,7 @@
     public final void rule__NewLineElement__TextAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:3045:1: ( ( RULE_NL ) )
             // InternalMarkup.g:3046:1: ( RULE_NL )
@@ -8445,11 +8445,11 @@
             // InternalMarkup.g:3047:1: RULE_NL
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNewLineElementAccess().getTextNLTerminalRuleCall_0()); 
+               before(grammarAccess.getNewLineElementAccess().getTextNLTerminalRuleCall_0());
             }
             match(input,RULE_NL,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNewLineElementAccess().getTextNLTerminalRuleCall_0()); 
+               after(grammarAccess.getNewLineElementAccess().getTextNLTerminalRuleCall_0());
             }
 
             }
@@ -8477,7 +8477,7 @@
     public final void rule__NullElement__ElementsAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:3060:1: ( ( ruleMarkupElement ) )
             // InternalMarkup.g:3061:1: ( ruleMarkupElement )
@@ -8486,7 +8486,7 @@
             // InternalMarkup.g:3062:1: ruleMarkupElement
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullElementAccess().getElementsMarkupElementParserRuleCall_2_0()); 
+               before(grammarAccess.getNullElementAccess().getElementsMarkupElementParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMarkupElement();
@@ -8494,7 +8494,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullElementAccess().getElementsMarkupElementParserRuleCall_2_0()); 
+               after(grammarAccess.getNullElementAccess().getElementsMarkupElementParserRuleCall_2_0());
             }
 
             }
@@ -8522,7 +8522,7 @@
     public final void rule__OCLCodeElement__ElementsAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:3075:1: ( ( ruleMarkupElement ) )
             // InternalMarkup.g:3076:1: ( ruleMarkupElement )
@@ -8531,7 +8531,7 @@
             // InternalMarkup.g:3077:1: ruleMarkupElement
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLCodeElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
+               before(grammarAccess.getOCLCodeElementAccess().getElementsMarkupElementParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMarkupElement();
@@ -8539,7 +8539,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLCodeElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
+               after(grammarAccess.getOCLCodeElementAccess().getElementsMarkupElementParserRuleCall_3_0());
             }
 
             }
@@ -8567,7 +8567,7 @@
     public final void rule__OCLEvalElement__ElementsAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:3090:1: ( ( ruleMarkupElement ) )
             // InternalMarkup.g:3091:1: ( ruleMarkupElement )
@@ -8576,7 +8576,7 @@
             // InternalMarkup.g:3092:1: ruleMarkupElement
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLEvalElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
+               before(grammarAccess.getOCLEvalElementAccess().getElementsMarkupElementParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMarkupElement();
@@ -8584,7 +8584,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLEvalElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
+               after(grammarAccess.getOCLEvalElementAccess().getElementsMarkupElementParserRuleCall_3_0());
             }
 
             }
@@ -8612,7 +8612,7 @@
     public final void rule__OCLTextElement__ElementsAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:3105:1: ( ( ruleMarkupElement ) )
             // InternalMarkup.g:3106:1: ( ruleMarkupElement )
@@ -8621,7 +8621,7 @@
             // InternalMarkup.g:3107:1: ruleMarkupElement
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOCLTextElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
+               before(grammarAccess.getOCLTextElementAccess().getElementsMarkupElementParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMarkupElement();
@@ -8629,7 +8629,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOCLTextElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
+               after(grammarAccess.getOCLTextElementAccess().getElementsMarkupElementParserRuleCall_3_0());
             }
 
             }
@@ -8657,7 +8657,7 @@
     public final void rule__TextElement__TextAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:3120:1: ( ( ( rule__TextElement__TextAlternatives_0_0 ) ) )
             // InternalMarkup.g:3121:1: ( ( rule__TextElement__TextAlternatives_0_0 ) )
@@ -8666,7 +8666,7 @@
             // InternalMarkup.g:3122:1: ( rule__TextElement__TextAlternatives_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTextElementAccess().getTextAlternatives_0_0()); 
+               before(grammarAccess.getTextElementAccess().getTextAlternatives_0_0());
             }
             // InternalMarkup.g:3123:1: ( rule__TextElement__TextAlternatives_0_0 )
             // InternalMarkup.g:3123:2: rule__TextElement__TextAlternatives_0_0
@@ -8680,7 +8680,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTextElementAccess().getTextAlternatives_0_0()); 
+               after(grammarAccess.getTextElementAccess().getTextAlternatives_0_0());
             }
 
             }
@@ -8708,7 +8708,7 @@
     public final void rule__TextElement__TextAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalMarkup.g:3136:1: ( ( ruleMarkupKeyword ) )
             // InternalMarkup.g:3137:1: ( ruleMarkupKeyword )
@@ -8717,7 +8717,7 @@
             // InternalMarkup.g:3138:1: ruleMarkupKeyword
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTextElementAccess().getTextMarkupKeywordParserRuleCall_1_0()); 
+               before(grammarAccess.getTextElementAccess().getTextMarkupKeywordParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMarkupKeyword();
@@ -8725,7 +8725,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTextElementAccess().getTextMarkupKeywordParserRuleCall_1_0()); 
+               after(grammarAccess.getTextElementAccess().getTextMarkupKeywordParserRuleCall_1_0());
             }
 
             }
@@ -8748,7 +8748,7 @@
     // $ANTLR end "rule__TextElement__TextAssignment_1"
 
     // $ANTLR start synpred11_InternalMarkup
-    public final void synpred11_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred11_InternalMarkup_fragment() throws RecognitionException {
         // InternalMarkup.g:583:1: ( ( ruleFontElement ) )
         // InternalMarkup.g:583:1: ( ruleFontElement )
         {
@@ -8756,7 +8756,7 @@
         // InternalMarkup.g:584:1: ruleFontElement
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getMarkupElementAccess().getFontElementParserRuleCall_0()); 
+           before(grammarAccess.getMarkupElementAccess().getFontElementParserRuleCall_0());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleFontElement();
@@ -8772,7 +8772,7 @@
     // $ANTLR end synpred11_InternalMarkup
 
     // $ANTLR start synpred13_InternalMarkup
-    public final void synpred13_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred13_InternalMarkup_fragment() throws RecognitionException {
         // InternalMarkup.g:595:6: ( ( ruleBulletElement ) )
         // InternalMarkup.g:595:6: ( ruleBulletElement )
         {
@@ -8780,7 +8780,7 @@
         // InternalMarkup.g:596:1: ruleBulletElement
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getMarkupElementAccess().getBulletElementParserRuleCall_2()); 
+           before(grammarAccess.getMarkupElementAccess().getBulletElementParserRuleCall_2());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleBulletElement();
@@ -8796,7 +8796,7 @@
     // $ANTLR end synpred13_InternalMarkup
 
     // $ANTLR start synpred14_InternalMarkup
-    public final void synpred14_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred14_InternalMarkup_fragment() throws RecognitionException {
         // InternalMarkup.g:601:6: ( ( ruleFigureElement ) )
         // InternalMarkup.g:601:6: ( ruleFigureElement )
         {
@@ -8804,7 +8804,7 @@
         // InternalMarkup.g:602:1: ruleFigureElement
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getMarkupElementAccess().getFigureElementParserRuleCall_3()); 
+           before(grammarAccess.getMarkupElementAccess().getFigureElementParserRuleCall_3());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleFigureElement();
@@ -8820,7 +8820,7 @@
     // $ANTLR end synpred14_InternalMarkup
 
     // $ANTLR start synpred15_InternalMarkup
-    public final void synpred15_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred15_InternalMarkup_fragment() throws RecognitionException {
         // InternalMarkup.g:607:6: ( ( ruleFigureRefElement ) )
         // InternalMarkup.g:607:6: ( ruleFigureRefElement )
         {
@@ -8828,7 +8828,7 @@
         // InternalMarkup.g:608:1: ruleFigureRefElement
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getMarkupElementAccess().getFigureRefElementParserRuleCall_4()); 
+           before(grammarAccess.getMarkupElementAccess().getFigureRefElementParserRuleCall_4());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleFigureRefElement();
@@ -8844,7 +8844,7 @@
     // $ANTLR end synpred15_InternalMarkup
 
     // $ANTLR start synpred16_InternalMarkup
-    public final void synpred16_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred16_InternalMarkup_fragment() throws RecognitionException {
         // InternalMarkup.g:613:6: ( ( ruleFootnoteElement ) )
         // InternalMarkup.g:613:6: ( ruleFootnoteElement )
         {
@@ -8852,7 +8852,7 @@
         // InternalMarkup.g:614:1: ruleFootnoteElement
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getMarkupElementAccess().getFootnoteElementParserRuleCall_5()); 
+           before(grammarAccess.getMarkupElementAccess().getFootnoteElementParserRuleCall_5());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleFootnoteElement();
@@ -8868,7 +8868,7 @@
     // $ANTLR end synpred16_InternalMarkup
 
     // $ANTLR start synpred17_InternalMarkup
-    public final void synpred17_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred17_InternalMarkup_fragment() throws RecognitionException {
         // InternalMarkup.g:619:6: ( ( ruleHeadingElement ) )
         // InternalMarkup.g:619:6: ( ruleHeadingElement )
         {
@@ -8876,7 +8876,7 @@
         // InternalMarkup.g:620:1: ruleHeadingElement
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getMarkupElementAccess().getHeadingElementParserRuleCall_6()); 
+           before(grammarAccess.getMarkupElementAccess().getHeadingElementParserRuleCall_6());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleHeadingElement();
@@ -8892,7 +8892,7 @@
     // $ANTLR end synpred17_InternalMarkup
 
     // $ANTLR start synpred19_InternalMarkup
-    public final void synpred19_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred19_InternalMarkup_fragment() throws RecognitionException {
         // InternalMarkup.g:631:6: ( ( ruleOCLCodeElement ) )
         // InternalMarkup.g:631:6: ( ruleOCLCodeElement )
         {
@@ -8900,7 +8900,7 @@
         // InternalMarkup.g:632:1: ruleOCLCodeElement
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getMarkupElementAccess().getOCLCodeElementParserRuleCall_8()); 
+           before(grammarAccess.getMarkupElementAccess().getOCLCodeElementParserRuleCall_8());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleOCLCodeElement();
@@ -8916,7 +8916,7 @@
     // $ANTLR end synpred19_InternalMarkup
 
     // $ANTLR start synpred20_InternalMarkup
-    public final void synpred20_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred20_InternalMarkup_fragment() throws RecognitionException {
         // InternalMarkup.g:637:6: ( ( ruleOCLEvalElement ) )
         // InternalMarkup.g:637:6: ( ruleOCLEvalElement )
         {
@@ -8924,7 +8924,7 @@
         // InternalMarkup.g:638:1: ruleOCLEvalElement
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getMarkupElementAccess().getOCLEvalElementParserRuleCall_9()); 
+           before(grammarAccess.getMarkupElementAccess().getOCLEvalElementParserRuleCall_9());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleOCLEvalElement();
@@ -8940,7 +8940,7 @@
     // $ANTLR end synpred20_InternalMarkup
 
     // $ANTLR start synpred21_InternalMarkup
-    public final void synpred21_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred21_InternalMarkup_fragment() throws RecognitionException {
         // InternalMarkup.g:643:6: ( ( ruleOCLTextElement ) )
         // InternalMarkup.g:643:6: ( ruleOCLTextElement )
         {
@@ -8948,7 +8948,7 @@
         // InternalMarkup.g:644:1: ruleOCLTextElement
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getMarkupElementAccess().getOCLTextElementParserRuleCall_10()); 
+           before(grammarAccess.getMarkupElementAccess().getOCLTextElementParserRuleCall_10());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleOCLTextElement();
@@ -8964,7 +8964,7 @@
     // $ANTLR end synpred21_InternalMarkup
 
     // $ANTLR start synpred23_InternalMarkup
-    public final void synpred23_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred23_InternalMarkup_fragment() throws RecognitionException {
         // InternalMarkup.g:699:2: ( rule__TextElement__TextAssignment_0 )
         // InternalMarkup.g:699:2: rule__TextElement__TextAssignment_0
         {
@@ -9188,10 +9188,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA3_1 = input.LA(1);
 
-                         
+
                         int index3_1 = input.index();
                         input.rewind();
                         s = -1;
@@ -9199,14 +9199,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_1);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA3_2 = input.LA(1);
 
-                         
+
                         int index3_2 = input.index();
                         input.rewind();
                         s = -1;
@@ -9214,14 +9214,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_2);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA3_4 = input.LA(1);
 
-                         
+
                         int index3_4 = input.index();
                         input.rewind();
                         s = -1;
@@ -9229,14 +9229,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_4);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA3_5 = input.LA(1);
 
-                         
+
                         int index3_5 = input.index();
                         input.rewind();
                         s = -1;
@@ -9244,14 +9244,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_5);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA3_6 = input.LA(1);
 
-                         
+
                         int index3_6 = input.index();
                         input.rewind();
                         s = -1;
@@ -9259,14 +9259,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_6);
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA3_7 = input.LA(1);
 
-                         
+
                         int index3_7 = input.index();
                         input.rewind();
                         s = -1;
@@ -9274,14 +9274,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_7);
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA3_8 = input.LA(1);
 
-                         
+
                         int index3_8 = input.index();
                         input.rewind();
                         s = -1;
@@ -9289,14 +9289,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_8);
                         if ( s>=0 ) return s;
                         break;
-                    case 7 : 
+                    case 7 :
                         int LA3_10 = input.LA(1);
 
-                         
+
                         int index3_10 = input.index();
                         input.rewind();
                         s = -1;
@@ -9304,14 +9304,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_10);
                         if ( s>=0 ) return s;
                         break;
-                    case 8 : 
+                    case 8 :
                         int LA3_11 = input.LA(1);
 
-                         
+
                         int index3_11 = input.index();
                         input.rewind();
                         s = -1;
@@ -9319,14 +9319,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_11);
                         if ( s>=0 ) return s;
                         break;
-                    case 9 : 
+                    case 9 :
                         int LA3_12 = input.LA(1);
 
-                         
+
                         int index3_12 = input.index();
                         input.rewind();
                         s = -1;
@@ -9334,7 +9334,7 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_12);
                         if ( s>=0 ) return s;
                         break;
@@ -9393,10 +9393,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA5_3 = input.LA(1);
 
-                         
+
                         int index5_3 = input.index();
                         input.rewind();
                         s = -1;
@@ -9404,14 +9404,14 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index5_3);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA5_7 = input.LA(1);
 
-                         
+
                         int index5_7 = input.index();
                         input.rewind();
                         s = -1;
@@ -9419,14 +9419,14 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index5_7);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA5_4 = input.LA(1);
 
-                         
+
                         int index5_4 = input.index();
                         input.rewind();
                         s = -1;
@@ -9434,14 +9434,14 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index5_4);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA5_5 = input.LA(1);
 
-                         
+
                         int index5_5 = input.index();
                         input.rewind();
                         s = -1;
@@ -9449,14 +9449,14 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index5_5);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA5_2 = input.LA(1);
 
-                         
+
                         int index5_2 = input.index();
                         input.rewind();
                         s = -1;
@@ -9464,14 +9464,14 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index5_2);
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA5_6 = input.LA(1);
 
-                         
+
                         int index5_6 = input.index();
                         input.rewind();
                         s = -1;
@@ -9479,14 +9479,14 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index5_6);
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA5_8 = input.LA(1);
 
-                         
+
                         int index5_8 = input.index();
                         input.rewind();
                         s = -1;
@@ -9494,7 +9494,7 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index5_8);
                         if ( s>=0 ) return s;
                         break;
@@ -9506,9 +9506,9 @@
             throw nvae;
         }
     }
- 
 
-    
+
+
     private static class FollowSets000 {
         public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
         public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
diff --git a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/internal/MarkupActivator.java b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/internal/MarkupActivator.java
index dd31ec6..671e282 100644
--- a/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/internal/MarkupActivator.java
+++ b/plugins/org.eclipse.ocl.xtext.markup.ui/src-gen/org/eclipse/ocl/xtext/markup/ui/internal/MarkupActivator.java
@@ -26,35 +26,35 @@
 
 /**
  * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
+ * introduced subclass.
  */
 public class MarkupActivator extends AbstractUIPlugin {
-	
+
 	public static final String ORG_ECLIPSE_OCL_XTEXT_MARKUP_MARKUP = "org.eclipse.ocl.xtext.markup.Markup";
-	
+
 	private static final Logger logger = Logger.getLogger(MarkupActivator.class);
-	
+
 	private static MarkupActivator INSTANCE;
-	
+
 	private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1));
-	
+
 	@Override
 	public void start(BundleContext context) throws Exception {
 		super.start(context);
 		INSTANCE = this;
 	}
-	
+
 	@Override
 	public void stop(BundleContext context) throws Exception {
 		injectors.clear();
 		INSTANCE = null;
 		super.stop(context);
 	}
-	
+
 	public static MarkupActivator getInstance() {
 		return INSTANCE;
 	}
-	
+
 	public Injector getInjector(String language) {
 		synchronized (injectors) {
 			Injector injector = injectors.get(language);
@@ -64,7 +64,7 @@
 			return injector;
 		}
 	}
-	
+
 	protected Injector createInjector(String language) {
 		try {
 			Module runtimeModule = getRuntimeModule(language);
@@ -83,20 +83,20 @@
 		if (ORG_ECLIPSE_OCL_XTEXT_MARKUP_MARKUP.equals(grammar)) {
 			return new org.eclipse.ocl.xtext.markup.MarkupRuntimeModule();
 		}
-		
+
 		throw new IllegalArgumentException(grammar);
 	}
-	
+
 	protected Module getUiModule(String grammar) {
 		if (ORG_ECLIPSE_OCL_XTEXT_MARKUP_MARKUP.equals(grammar)) {
 			return new org.eclipse.ocl.xtext.markup.ui.MarkupUiModule(this);
 		}
-		
+
 		throw new IllegalArgumentException(grammar);
 	}
-	
+
 	protected Module getSharedStateModule() {
 		return new SharedStateModule();
 	}
-	
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.markup/emf-gen/org/eclipse/ocl/xtext/markupcs/util/MarkupAdapterFactory.java b/plugins/org.eclipse.ocl.xtext.markup/emf-gen/org/eclipse/ocl/xtext/markupcs/util/MarkupAdapterFactory.java
index c5b9a2e..a03384b 100644
--- a/plugins/org.eclipse.ocl.xtext.markup/emf-gen/org/eclipse/ocl/xtext/markupcs/util/MarkupAdapterFactory.java
+++ b/plugins/org.eclipse.ocl.xtext.markup/emf-gen/org/eclipse/ocl/xtext/markupcs/util/MarkupAdapterFactory.java
@@ -87,72 +87,72 @@
 	 * @generated
 	 */
 	protected MarkupSwitch<@Nullable Adapter> modelSwitch =
-		new MarkupSwitch<@Nullable Adapter>() {
-			@Override
-			public Adapter caseBulletElement(BulletElement object) {
-				return createBulletElementAdapter();
-			}
-			@Override
-			public Adapter caseCompoundElement(CompoundElement object) {
-				return createCompoundElementAdapter();
-			}
-			@Override
-			public Adapter caseFigureElement(FigureElement object) {
-				return createFigureElementAdapter();
-			}
-			@Override
-			public Adapter caseFigureRefElement(FigureRefElement object) {
-				return createFigureRefElementAdapter();
-			}
-			@Override
-			public Adapter caseFontElement(FontElement object) {
-				return createFontElementAdapter();
-			}
-			@Override
-			public Adapter caseFootnoteElement(FootnoteElement object) {
-				return createFootnoteElementAdapter();
-			}
-			@Override
-			public Adapter caseHeadingElement(HeadingElement object) {
-				return createHeadingElementAdapter();
-			}
-			@Override
-			public Adapter caseMarkup(Markup object) {
-				return createMarkupAdapter();
-			}
-			@Override
-			public Adapter caseMarkupElement(MarkupElement object) {
-				return createMarkupElementAdapter();
-			}
-			@Override
-			public Adapter caseNewLineElement(NewLineElement object) {
-				return createNewLineElementAdapter();
-			}
-			@Override
-			public Adapter caseNullElement(NullElement object) {
-				return createNullElementAdapter();
-			}
-			@Override
-			public Adapter caseOCLCodeElement(OCLCodeElement object) {
-				return createOCLCodeElementAdapter();
-			}
-			@Override
-			public Adapter caseOCLEvalElement(OCLEvalElement object) {
-				return createOCLEvalElementAdapter();
-			}
-			@Override
-			public Adapter caseOCLTextElement(OCLTextElement object) {
-				return createOCLTextElementAdapter();
-			}
-			@Override
-			public Adapter caseTextElement(TextElement object) {
-				return createTextElementAdapter();
-			}
-			@Override
-			public Adapter defaultCase(EObject object) {
-				return createEObjectAdapter();
-			}
-		};
+			new MarkupSwitch<@Nullable Adapter>() {
+		@Override
+		public Adapter caseBulletElement(BulletElement object) {
+			return createBulletElementAdapter();
+		}
+		@Override
+		public Adapter caseCompoundElement(CompoundElement object) {
+			return createCompoundElementAdapter();
+		}
+		@Override
+		public Adapter caseFigureElement(FigureElement object) {
+			return createFigureElementAdapter();
+		}
+		@Override
+		public Adapter caseFigureRefElement(FigureRefElement object) {
+			return createFigureRefElementAdapter();
+		}
+		@Override
+		public Adapter caseFontElement(FontElement object) {
+			return createFontElementAdapter();
+		}
+		@Override
+		public Adapter caseFootnoteElement(FootnoteElement object) {
+			return createFootnoteElementAdapter();
+		}
+		@Override
+		public Adapter caseHeadingElement(HeadingElement object) {
+			return createHeadingElementAdapter();
+		}
+		@Override
+		public Adapter caseMarkup(Markup object) {
+			return createMarkupAdapter();
+		}
+		@Override
+		public Adapter caseMarkupElement(MarkupElement object) {
+			return createMarkupElementAdapter();
+		}
+		@Override
+		public Adapter caseNewLineElement(NewLineElement object) {
+			return createNewLineElementAdapter();
+		}
+		@Override
+		public Adapter caseNullElement(NullElement object) {
+			return createNullElementAdapter();
+		}
+		@Override
+		public Adapter caseOCLCodeElement(OCLCodeElement object) {
+			return createOCLCodeElementAdapter();
+		}
+		@Override
+		public Adapter caseOCLEvalElement(OCLEvalElement object) {
+			return createOCLEvalElementAdapter();
+		}
+		@Override
+		public Adapter caseOCLTextElement(OCLTextElement object) {
+			return createOCLTextElementAdapter();
+		}
+		@Override
+		public Adapter caseTextElement(TextElement object) {
+			return createTextElementAdapter();
+		}
+		@Override
+		public Adapter defaultCase(EObject object) {
+			return createEObjectAdapter();
+		}
+	};
 
 	/**
 	 * Creates an adapter for the <code>target</code>.
diff --git a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/AbstractMarkupRuntimeModule.java b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/AbstractMarkupRuntimeModule.java
index e49e94e..53e6954 100644
--- a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/AbstractMarkupRuntimeModule.java
+++ b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/AbstractMarkupRuntimeModule.java
@@ -30,16 +30,16 @@
 		properties = tryBindProperties(binder, "org/eclipse/ocl/xtext/markup/Markup.properties");
 		super.configure(binder);
 	}
-	
+
 	public void configureLanguageName(Binder binder) {
 		binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.eclipse.ocl.xtext.markup.Markup");
 	}
-	
+
 	public void configureFileExtensions(Binder binder) {
 		if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
 			binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("markupocl");
 	}
-	
+
 	// contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
 	public java.lang.ClassLoader bindClassLoaderToInstance() {
 		return getClass().getClassLoader();
diff --git a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/MarkupGrammarResource.java b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/MarkupGrammarResource.java
index c4350da..7d4a49b 100644
--- a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/MarkupGrammarResource.java
+++ b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/MarkupGrammarResource.java
@@ -9,7 +9,7 @@
  *     E.D.Willink - initial API and implementation
  *******************************************************************************
  * This code is 100% auto-generated
- * from: E:\GIT\org.eclipse.ocl\examples..\..\plugins\org.eclipse.ocl.xtext.markup\src-gen\org\eclipse\ocl\xtext\markup\Markup.xtextbin
+ * from: E:\GIT\org.eclipse.ocl\plugins..\..\plugins\org.eclipse.ocl.xtext.markup\src-gen\org\eclipse\ocl\xtext\markup\Markup.xtextbin
  * by: org.eclipse.ocl.examples.build.xtend.generateGrammar.xtend
  *
  * Do not edit it.
@@ -69,7 +69,7 @@
 
 	/*
 	 * This class should be bound to org.eclipse.xtext.service.GrammarProvider.
-	 */ 
+	 */
 	@Singleton
 	public static class GrammarProvider extends org.eclipse.xtext.service.GrammarProvider
 	{
@@ -83,12 +83,12 @@
 			return MarkupGrammarResource.GRAMMAR;
 		}
 	}
-	
+
 	private static class _Markup
 	{
 		private static final @NonNull ReferencedMetamodel MM = createReferencedMetamodel(org.eclipse.ocl.xtext.markupcs.MarkupPackage.eINSTANCE, null); // http://www.eclipse.org/ocl/2015/MarkupCS
 		private static final @NonNull ReferencedMetamodel MM_ecore = createReferencedMetamodel(org.eclipse.emf.ecore.EcorePackage.eINSTANCE, "ecore"); // http://www.eclipse.org/emf/2002/Ecore
-		
+
 		private static final @NonNull TerminalRule TR_ANY_OTHER = createTerminalRule("ANY_OTHER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_ESCAPED = createTerminalRule("ESCAPED", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_HORIZONTAL_WS = createTerminalRule("HORIZONTAL_WS", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
@@ -101,7 +101,7 @@
 		private static final @NonNull TerminalRule TR_VERTICAL_WS = createTerminalRule("VERTICAL_WS", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_WORD = createTerminalRule("WORD", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_WS = createTerminalRule("WS", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initTerminalRules() {
 			TR_ANY_OTHER.setAlternatives(createWildcard());
 			TR_ESCAPED.setFragment(true);
@@ -121,7 +121,7 @@
 			TR_WORD.setAlternatives(setCardinality("+", createAlternatives(createRuleCall(TR_ESCAPED), createNegatedToken(createAlternatives(createKeyword("\\"), createKeyword("\""), createKeyword("["), createKeyword("]"), createKeyword(":"), createKeyword("#"), createKeyword(","), createRuleCall(TR_HORIZONTAL_WS), createRuleCall(TR_VERTICAL_WS))))));
 			TR_WS.setAlternatives(setCardinality("+", createRuleCall(TR_HORIZONTAL_WS)));
 		}
-		
+
 		private static final @NonNull ParserRule PR_BulletElement = createParserRule("BulletElement", createTypeRef(MM, org.eclipse.ocl.xtext.markupcs.MarkupPackage.Literals.BULLET_ELEMENT));
 		private static final @NonNull ParserRule PR_FigureElement = createParserRule("FigureElement", createTypeRef(MM, org.eclipse.ocl.xtext.markupcs.MarkupPackage.Literals.FIGURE_ELEMENT));
 		private static final @NonNull ParserRule PR_FigureRefElement = createParserRule("FigureRefElement", createTypeRef(MM, org.eclipse.ocl.xtext.markupcs.MarkupPackage.Literals.FIGURE_REF_ELEMENT));
@@ -137,7 +137,7 @@
 		private static final @NonNull ParserRule PR_OCLEvalElement = createParserRule("OCLEvalElement", createTypeRef(MM, org.eclipse.ocl.xtext.markupcs.MarkupPackage.Literals.OCL_EVAL_ELEMENT));
 		private static final @NonNull ParserRule PR_OCLTextElement = createParserRule("OCLTextElement", createTypeRef(MM, org.eclipse.ocl.xtext.markupcs.MarkupPackage.Literals.OCL_TEXT_ELEMENT));
 		private static final @NonNull ParserRule PR_TextElement = createParserRule("TextElement", createTypeRef(MM, org.eclipse.ocl.xtext.markupcs.MarkupPackage.Literals.TEXT_ELEMENT));
-		
+
 		private static void initParserRules() {
 			PR_BulletElement.setAlternatives(createGroup(createAction(null, null, createTypeRef(MM, org.eclipse.ocl.xtext.markupcs.MarkupPackage.Literals.BULLET_ELEMENT)), createKeyword("bullet"), setCardinality("?", createGroup(createKeyword(":"), createAssignment("level", "=", createRuleCall(TR_INT)))), createKeyword("["), setCardinality("*", createAssignment("elements", "+=", createRuleCall(PR_MarkupElement))), createKeyword("]")));
 			PR_FigureElement.setAlternatives(createGroup(createKeyword("figure"), setCardinality("?", createGroup(createKeyword("#"), createAssignment("def", "=", createRuleCall(TR_ID)))), createKeyword("["), createAssignment("src", "=", createRuleCall(TR_STRING)), setCardinality("?", createGroup(createKeyword(","), createAssignment("alt", "=", createRuleCall(TR_STRING)), setCardinality("?", createGroup(createKeyword(","), createAssignment("requiredWidth", "=", createRuleCall(TR_INT)), setCardinality("?", createGroup(createKeyword(","), createAssignment("requiredHeight", "=", createRuleCall(TR_INT)))))))), createKeyword("]")));
@@ -155,7 +155,7 @@
 			PR_OCLTextElement.setAlternatives(createGroup(createAction(null, null, createTypeRef(MM, org.eclipse.ocl.xtext.markupcs.MarkupPackage.Literals.OCL_TEXT_ELEMENT)), createKeyword("oclText"), createKeyword("["), setCardinality("*", createAssignment("elements", "+=", createRuleCall(PR_MarkupElement))), createKeyword("]")));
 			PR_TextElement.setAlternatives(createAlternatives(setCardinality("+", createAssignment("text", "+=", createAlternatives(createRuleCall(TR_ID), createRuleCall(TR_WORD), createRuleCall(TR_INT), createRuleCall(TR_WS), createKeyword(":"), createKeyword("#"), createKeyword(",")))), createAssignment("text", "+=", createRuleCall(PR_MarkupKeyword))));
 		}
-		
+
 		private static @NonNull Grammar initGrammar() {
 			initTerminalRules();
 			initParserRules();
diff --git a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/MarkupStandaloneSetupGenerated.java b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/MarkupStandaloneSetupGenerated.java
index 27acc87..6f2cf3e 100644
--- a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/MarkupStandaloneSetupGenerated.java
+++ b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/MarkupStandaloneSetupGenerated.java
@@ -42,18 +42,18 @@
 		register(injector);
 		return injector;
 	}
-	
+
 	public Injector createInjector() {
 		return Guice.createInjector(new org.eclipse.ocl.xtext.markup.MarkupRuntimeModule());
 	}
-	
+
 	public void register(Injector injector) {
 
 		org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class);
 		org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class);
 		Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("markupocl", resourceFactory);
 		org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("markupocl", serviceProvider);
-		
+
 
 
 
diff --git a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/MarkupAntlrTokenFileProvider.java b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/MarkupAntlrTokenFileProvider.java
index 795fa6f..a17c8cb 100644
--- a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/MarkupAntlrTokenFileProvider.java
+++ b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/MarkupAntlrTokenFileProvider.java
@@ -14,7 +14,7 @@
 import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider;
 
 public class MarkupAntlrTokenFileProvider implements IAntlrTokenFileProvider {
-	
+
 	@Override
 	public InputStream getAntlrTokenFile() {
 		ClassLoader classLoader = getClass().getClassLoader();
diff --git a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/MarkupParser.java b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/MarkupParser.java
index d116a02..8408612 100644
--- a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/MarkupParser.java
+++ b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/MarkupParser.java
@@ -16,31 +16,31 @@
 import org.eclipse.ocl.xtext.markup.services.MarkupGrammarAccess;
 
 public class MarkupParser extends org.eclipse.xtext.parser.antlr.AbstractAntlrParser {
-	
+
 	@Inject
 	private MarkupGrammarAccess grammarAccess;
-	
+
 	@Override
 	protected void setInitialHiddenTokens(XtextTokenStream tokenStream) {
 		tokenStream.setInitialHiddenTokens();
 	}
-	
+
 	@Override
 	protected org.eclipse.ocl.xtext.markup.parser.antlr.internal.InternalMarkupParser createParser(XtextTokenStream stream) {
 		return new org.eclipse.ocl.xtext.markup.parser.antlr.internal.InternalMarkupParser(stream, getGrammarAccess());
 	}
-	
-	@Override 
+
+	@Override
 	protected String getDefaultRuleName() {
 		return "Markup";
 	}
-	
+
 	public MarkupGrammarAccess getGrammarAccess() {
 		return this.grammarAccess;
 	}
-	
+
 	public void setGrammarAccess(MarkupGrammarAccess grammarAccess) {
 		this.grammarAccess = grammarAccess;
 	}
-	
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/internal/InternalMarkup.g b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/internal/InternalMarkup.g
index 6ac7c27..38ef8df 100644
--- a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/internal/InternalMarkup.g
+++ b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/internal/InternalMarkup.g
@@ -13,19 +13,19 @@
 options {
 	superClass=AbstractInternalAntlrParser;
 	backtrack=true;
-	
+
 }
 
 @lexer::header {
 package org.eclipse.ocl.xtext.markup.parser.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.parser.antlr.Lexer;
 }
 
 @parser::header {
-package org.eclipse.ocl.xtext.markup.parser.antlr.internal; 
+package org.eclipse.ocl.xtext.markup.parser.antlr.internal;
 
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
@@ -46,63 +46,63 @@
   This grammar contains a lot of empty actions to work around a bug in ANTLR.
   Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases.
 */
- 
+
  	private MarkupGrammarAccess grammarAccess;
- 	
+
     public InternalMarkupParser(TokenStream input, MarkupGrammarAccess grammarAccess) {
         this(input);
         this.grammarAccess = grammarAccess;
         registerRules(grammarAccess.getGrammar());
     }
-    
+
     @Override
     protected String getFirstRuleName() {
-    	return "Markup";	
+    	return "Markup";
    	}
-   	
+
    	@Override
    	protected MarkupGrammarAccess getGrammarAccess() {
    		return grammarAccess;
    	}
 }
 
-@rulecatch { 
-    catch (RecognitionException re) { 
-        recover(input,re); 
+@rulecatch {
+    catch (RecognitionException re) {
+        recover(input,re);
         appendSkippedTokens();
-    } 
+    }
 }
 
 
 
 
 // Entry rule entryRuleMarkup
-entryRuleMarkup returns [EObject current=null] 
+entryRuleMarkup returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMarkupRule()); }
-	 iv_ruleMarkup=ruleMarkup 
-	 { $current=$iv_ruleMarkup.current; } 
-	 EOF 
+	 iv_ruleMarkup=ruleMarkup
+	 { $current=$iv_ruleMarkup.current; }
+	 EOF
 ;
 
 // Rule Markup
-ruleMarkup returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMarkup returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMarkupAccess().getElementsMarkupElementParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMarkupAccess().getElementsMarkupElementParserRuleCall_0());
 	    }
 		lv_elements_0_0=ruleMarkupElement		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMarkupRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"elements",
-        		lv_elements_0_0, 
+        		lv_elements_0_0,
         		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -116,87 +116,87 @@
 
 
 // Entry rule entryRuleMarkupKeyword
-entryRuleMarkupKeyword returns [String current=null] 
+entryRuleMarkupKeyword returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getMarkupKeywordRule()); } 
-	 iv_ruleMarkupKeyword=ruleMarkupKeyword 
-	 { $current=$iv_ruleMarkupKeyword.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getMarkupKeywordRule()); }
+	 iv_ruleMarkupKeyword=ruleMarkupKeyword
+	 { $current=$iv_ruleMarkupKeyword.current.getText(); }
+	 EOF
 ;
 
 // Rule MarkupKeyword
-ruleMarkupKeyword returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleMarkupKeyword returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='b' 
+	kw='b'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getBKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getBKeyword_0());
     }
 
     |
-	kw='e' 
+	kw='e'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getEKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getEKeyword_1());
     }
 
     |
-	kw='bullet' 
+	kw='bullet'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getBulletKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getBulletKeyword_2());
     }
 
     |
-	kw='figure' 
+	kw='figure'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getFigureKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getFigureKeyword_3());
     }
 
     |
-	kw='figureRef' 
+	kw='figureRef'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getFigureRefKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getFigureRefKeyword_4());
     }
 
     |
-	kw='footnote' 
+	kw='footnote'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getFootnoteKeyword_5()); 
+        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getFootnoteKeyword_5());
     }
 
     |
-	kw='heading' 
+	kw='heading'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getHeadingKeyword_6()); 
+        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getHeadingKeyword_6());
     }
 
     |
-	kw='oclCode' 
+	kw='oclCode'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getOclCodeKeyword_7()); 
+        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getOclCodeKeyword_7());
     }
 
     |
-	kw='oclEval' 
+	kw='oclEval'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getOclEvalKeyword_8()); 
+        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getOclEvalKeyword_8());
     }
 
     |
-	kw='oclText' 
+	kw='oclText'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getOclTextKeyword_9()); 
+        newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getOclTextKeyword_9());
     }
 )
     ;
@@ -206,172 +206,172 @@
 
 
 // Entry rule entryRuleMarkupElement
-entryRuleMarkupElement returns [EObject current=null] 
+entryRuleMarkupElement returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMarkupElementRule()); }
-	 iv_ruleMarkupElement=ruleMarkupElement 
-	 { $current=$iv_ruleMarkupElement.current; } 
-	 EOF 
+	 iv_ruleMarkupElement=ruleMarkupElement
+	 { $current=$iv_ruleMarkupElement.current; }
+	 EOF
 ;
 
 // Rule MarkupElement
-ruleMarkupElement returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMarkupElement returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMarkupElementAccess().getFontElementParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getMarkupElementAccess().getFontElementParserRuleCall_0());
     }
     this_FontElement_0=ruleFontElement
-    { 
-        $current = $this_FontElement_0.current; 
+    {
+        $current = $this_FontElement_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMarkupElementAccess().getNewLineElementParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getMarkupElementAccess().getNewLineElementParserRuleCall_1());
     }
     this_NewLineElement_1=ruleNewLineElement
-    { 
-        $current = $this_NewLineElement_1.current; 
+    {
+        $current = $this_NewLineElement_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMarkupElementAccess().getBulletElementParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getMarkupElementAccess().getBulletElementParserRuleCall_2());
     }
     this_BulletElement_2=ruleBulletElement
-    { 
-        $current = $this_BulletElement_2.current; 
+    {
+        $current = $this_BulletElement_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMarkupElementAccess().getFigureElementParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getMarkupElementAccess().getFigureElementParserRuleCall_3());
     }
     this_FigureElement_3=ruleFigureElement
-    { 
-        $current = $this_FigureElement_3.current; 
+    {
+        $current = $this_FigureElement_3.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMarkupElementAccess().getFigureRefElementParserRuleCall_4()); 
+    {
+        newCompositeNode(grammarAccess.getMarkupElementAccess().getFigureRefElementParserRuleCall_4());
     }
     this_FigureRefElement_4=ruleFigureRefElement
-    { 
-        $current = $this_FigureRefElement_4.current; 
+    {
+        $current = $this_FigureRefElement_4.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMarkupElementAccess().getFootnoteElementParserRuleCall_5()); 
+    {
+        newCompositeNode(grammarAccess.getMarkupElementAccess().getFootnoteElementParserRuleCall_5());
     }
     this_FootnoteElement_5=ruleFootnoteElement
-    { 
-        $current = $this_FootnoteElement_5.current; 
+    {
+        $current = $this_FootnoteElement_5.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMarkupElementAccess().getHeadingElementParserRuleCall_6()); 
+    {
+        newCompositeNode(grammarAccess.getMarkupElementAccess().getHeadingElementParserRuleCall_6());
     }
     this_HeadingElement_6=ruleHeadingElement
-    { 
-        $current = $this_HeadingElement_6.current; 
+    {
+        $current = $this_HeadingElement_6.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMarkupElementAccess().getNullElementParserRuleCall_7()); 
+    {
+        newCompositeNode(grammarAccess.getMarkupElementAccess().getNullElementParserRuleCall_7());
     }
     this_NullElement_7=ruleNullElement
-    { 
-        $current = $this_NullElement_7.current; 
+    {
+        $current = $this_NullElement_7.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMarkupElementAccess().getOCLCodeElementParserRuleCall_8()); 
+    {
+        newCompositeNode(grammarAccess.getMarkupElementAccess().getOCLCodeElementParserRuleCall_8());
     }
     this_OCLCodeElement_8=ruleOCLCodeElement
-    { 
-        $current = $this_OCLCodeElement_8.current; 
+    {
+        $current = $this_OCLCodeElement_8.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMarkupElementAccess().getOCLEvalElementParserRuleCall_9()); 
+    {
+        newCompositeNode(grammarAccess.getMarkupElementAccess().getOCLEvalElementParserRuleCall_9());
     }
     this_OCLEvalElement_9=ruleOCLEvalElement
-    { 
-        $current = $this_OCLEvalElement_9.current; 
+    {
+        $current = $this_OCLEvalElement_9.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMarkupElementAccess().getOCLTextElementParserRuleCall_10()); 
+    {
+        newCompositeNode(grammarAccess.getMarkupElementAccess().getOCLTextElementParserRuleCall_10());
     }
     this_OCLTextElement_10=ruleOCLTextElement
-    { 
-        $current = $this_OCLTextElement_10.current; 
+    {
+        $current = $this_OCLTextElement_10.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMarkupElementAccess().getTextElementParserRuleCall_11()); 
+    {
+        newCompositeNode(grammarAccess.getMarkupElementAccess().getTextElementParserRuleCall_11());
     }
     this_TextElement_11=ruleTextElement
-    { 
-        $current = $this_TextElement_11.current; 
+    {
+        $current = $this_TextElement_11.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -382,33 +382,33 @@
 
 
 // Entry rule entryRuleBulletElement
-entryRuleBulletElement returns [EObject current=null] 
+entryRuleBulletElement returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getBulletElementRule()); }
-	 iv_ruleBulletElement=ruleBulletElement 
-	 { $current=$iv_ruleBulletElement.current; } 
-	 EOF 
+	 iv_ruleBulletElement=ruleBulletElement
+	 { $current=$iv_ruleBulletElement.current; }
+	 EOF
 ;
 
 // Rule BulletElement
-ruleBulletElement returns [EObject current=null] 
-    @init { enterRule(); 
+ruleBulletElement returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getBulletElementAccess().getBulletElementAction_0(),
             $current);
     }
-)	otherlv_1='bullet' 
+)	otherlv_1='bullet'
     {
     	newLeafNode(otherlv_1, grammarAccess.getBulletElementAccess().getBulletKeyword_1());
     }
-(	otherlv_2=':' 
+(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getBulletElementAccess().getColonKeyword_2_0());
     }
@@ -416,43 +416,43 @@
 (
 		lv_level_3_0=RULE_INT
 		{
-			newLeafNode(lv_level_3_0, grammarAccess.getBulletElementAccess().getLevelINTTerminalRuleCall_2_1_0()); 
+			newLeafNode(lv_level_3_0, grammarAccess.getBulletElementAccess().getLevelINTTerminalRuleCall_2_1_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getBulletElementRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"level",
-        		lv_level_3_0, 
+        		lv_level_3_0,
         		"org.eclipse.ocl.xtext.markup.Markup.INT");
 	    }
 
 )
-))?	otherlv_4='[' 
+))?	otherlv_4='['
     {
     	newLeafNode(otherlv_4, grammarAccess.getBulletElementAccess().getLeftSquareBracketKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getBulletElementAccess().getElementsMarkupElementParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getBulletElementAccess().getElementsMarkupElementParserRuleCall_4_0());
 	    }
 		lv_elements_5_0=ruleMarkupElement		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getBulletElementRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"elements",
-        		lv_elements_5_0, 
+        		lv_elements_5_0,
         		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_6=']' 
+)*	otherlv_6=']'
     {
     	newLeafNode(otherlv_6, grammarAccess.getBulletElementAccess().getRightSquareBracketKeyword_5());
     }
@@ -464,27 +464,27 @@
 
 
 // Entry rule entryRuleFontElement
-entryRuleFontElement returns [EObject current=null] 
+entryRuleFontElement returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getFontElementRule()); }
-	 iv_ruleFontElement=ruleFontElement 
-	 { $current=$iv_ruleFontElement.current; } 
-	 EOF 
+	 iv_ruleFontElement=ruleFontElement
+	 { $current=$iv_ruleFontElement.current; }
+	 EOF
 ;
 
 // Rule FontElement
-ruleFontElement returns [EObject current=null] 
-    @init { enterRule(); 
+ruleFontElement returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
 (
-		lv_font_0_1=	'b' 
+		lv_font_0_1=	'b'
     {
         newLeafNode(lv_font_0_1, grammarAccess.getFontElementAccess().getFontBKeyword_0_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getFontElementRule());
@@ -492,11 +492,11 @@
        		setWithLastConsumed($current, "font", lv_font_0_1, null);
 	    }
 
-    |		lv_font_0_2=	'e' 
+    |		lv_font_0_2=	'e'
     {
         newLeafNode(lv_font_0_2, grammarAccess.getFontElementAccess().getFontEKeyword_0_0_1());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getFontElementRule());
@@ -507,29 +507,29 @@
 )
 
 )
-)	otherlv_1='[' 
+)	otherlv_1='['
     {
     	newLeafNode(otherlv_1, grammarAccess.getFontElementAccess().getLeftSquareBracketKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getFontElementAccess().getElementsMarkupElementParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getFontElementAccess().getElementsMarkupElementParserRuleCall_2_0());
 	    }
 		lv_elements_2_0=ruleMarkupElement		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getFontElementRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"elements",
-        		lv_elements_2_0, 
+        		lv_elements_2_0,
         		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_3=']' 
+)*	otherlv_3=']'
     {
     	newLeafNode(otherlv_3, grammarAccess.getFontElementAccess().getRightSquareBracketKeyword_3());
     }
@@ -541,24 +541,24 @@
 
 
 // Entry rule entryRuleFigureElement
-entryRuleFigureElement returns [EObject current=null] 
+entryRuleFigureElement returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getFigureElementRule()); }
-	 iv_ruleFigureElement=ruleFigureElement 
-	 { $current=$iv_ruleFigureElement.current; } 
-	 EOF 
+	 iv_ruleFigureElement=ruleFigureElement
+	 { $current=$iv_ruleFigureElement.current; }
+	 EOF
 ;
 
 // Rule FigureElement
-ruleFigureElement returns [EObject current=null] 
-    @init { enterRule(); 
+ruleFigureElement returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='figure' 
+(	otherlv_0='figure'
     {
     	newLeafNode(otherlv_0, grammarAccess.getFigureElementAccess().getFigureKeyword_0());
     }
-(	otherlv_1='#' 
+(	otherlv_1='#'
     {
     	newLeafNode(otherlv_1, grammarAccess.getFigureElementAccess().getNumberSignKeyword_1_0());
     }
@@ -566,21 +566,21 @@
 (
 		lv_def_2_0=RULE_ID
 		{
-			newLeafNode(lv_def_2_0, grammarAccess.getFigureElementAccess().getDefIDTerminalRuleCall_1_1_0()); 
+			newLeafNode(lv_def_2_0, grammarAccess.getFigureElementAccess().getDefIDTerminalRuleCall_1_1_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getFigureElementRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"def",
-        		lv_def_2_0, 
+        		lv_def_2_0,
         		"org.eclipse.ocl.xtext.markup.Markup.ID");
 	    }
 
 )
-))?	otherlv_3='[' 
+))?	otherlv_3='['
     {
     	newLeafNode(otherlv_3, grammarAccess.getFigureElementAccess().getLeftSquareBracketKeyword_2());
     }
@@ -588,21 +588,21 @@
 (
 		lv_src_4_0=RULE_STRING
 		{
-			newLeafNode(lv_src_4_0, grammarAccess.getFigureElementAccess().getSrcSTRINGTerminalRuleCall_3_0()); 
+			newLeafNode(lv_src_4_0, grammarAccess.getFigureElementAccess().getSrcSTRINGTerminalRuleCall_3_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getFigureElementRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"src",
-        		lv_src_4_0, 
+        		lv_src_4_0,
         		"org.eclipse.ocl.xtext.markup.Markup.STRING");
 	    }
 
 )
-)(	otherlv_5=',' 
+)(	otherlv_5=','
     {
     	newLeafNode(otherlv_5, grammarAccess.getFigureElementAccess().getCommaKeyword_4_0());
     }
@@ -610,21 +610,21 @@
 (
 		lv_alt_6_0=RULE_STRING
 		{
-			newLeafNode(lv_alt_6_0, grammarAccess.getFigureElementAccess().getAltSTRINGTerminalRuleCall_4_1_0()); 
+			newLeafNode(lv_alt_6_0, grammarAccess.getFigureElementAccess().getAltSTRINGTerminalRuleCall_4_1_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getFigureElementRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"alt",
-        		lv_alt_6_0, 
+        		lv_alt_6_0,
         		"org.eclipse.ocl.xtext.markup.Markup.STRING");
 	    }
 
 )
-)(	otherlv_7=',' 
+)(	otherlv_7=','
     {
     	newLeafNode(otherlv_7, grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_0());
     }
@@ -632,21 +632,21 @@
 (
 		lv_requiredWidth_8_0=RULE_INT
 		{
-			newLeafNode(lv_requiredWidth_8_0, grammarAccess.getFigureElementAccess().getRequiredWidthINTTerminalRuleCall_4_2_1_0()); 
+			newLeafNode(lv_requiredWidth_8_0, grammarAccess.getFigureElementAccess().getRequiredWidthINTTerminalRuleCall_4_2_1_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getFigureElementRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"requiredWidth",
-        		lv_requiredWidth_8_0, 
+        		lv_requiredWidth_8_0,
         		"org.eclipse.ocl.xtext.markup.Markup.INT");
 	    }
 
 )
-)(	otherlv_9=',' 
+)(	otherlv_9=','
     {
     	newLeafNode(otherlv_9, grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_2_0());
     }
@@ -654,21 +654,21 @@
 (
 		lv_requiredHeight_10_0=RULE_INT
 		{
-			newLeafNode(lv_requiredHeight_10_0, grammarAccess.getFigureElementAccess().getRequiredHeightINTTerminalRuleCall_4_2_2_1_0()); 
+			newLeafNode(lv_requiredHeight_10_0, grammarAccess.getFigureElementAccess().getRequiredHeightINTTerminalRuleCall_4_2_2_1_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getFigureElementRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"requiredHeight",
-        		lv_requiredHeight_10_0, 
+        		lv_requiredHeight_10_0,
         		"org.eclipse.ocl.xtext.markup.Markup.INT");
 	    }
 
 )
-))?)?)?	otherlv_11=']' 
+))?)?)?	otherlv_11=']'
     {
     	newLeafNode(otherlv_11, grammarAccess.getFigureElementAccess().getRightSquareBracketKeyword_5());
     }
@@ -680,31 +680,31 @@
 
 
 // Entry rule entryRuleFigureRefElement
-entryRuleFigureRefElement returns [EObject current=null] 
+entryRuleFigureRefElement returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getFigureRefElementRule()); }
-	 iv_ruleFigureRefElement=ruleFigureRefElement 
-	 { $current=$iv_ruleFigureRefElement.current; } 
-	 EOF 
+	 iv_ruleFigureRefElement=ruleFigureRefElement
+	 { $current=$iv_ruleFigureRefElement.current; }
+	 EOF
 ;
 
 // Rule FigureRefElement
-ruleFigureRefElement returns [EObject current=null] 
-    @init { enterRule(); 
+ruleFigureRefElement returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='figureRef' 
+(	otherlv_0='figureRef'
     {
     	newLeafNode(otherlv_0, grammarAccess.getFigureRefElementAccess().getFigureRefKeyword_0());
     }
-	otherlv_1='[' 
+	otherlv_1='['
     {
     	newLeafNode(otherlv_1, grammarAccess.getFigureRefElementAccess().getLeftSquareBracketKeyword_1());
     }
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
@@ -713,11 +713,11 @@
         }
 	otherlv_2=RULE_ID
 	{
-		newLeafNode(otherlv_2, grammarAccess.getFigureRefElementAccess().getRefFigureElementCrossReference_2_0()); 
+		newLeafNode(otherlv_2, grammarAccess.getFigureRefElementAccess().getRefFigureElementCrossReference_2_0());
 	}
 
 )
-)	otherlv_3=']' 
+)	otherlv_3=']'
     {
     	newLeafNode(otherlv_3, grammarAccess.getFigureRefElementAccess().getRightSquareBracketKeyword_3());
     }
@@ -729,55 +729,55 @@
 
 
 // Entry rule entryRuleFootnoteElement
-entryRuleFootnoteElement returns [EObject current=null] 
+entryRuleFootnoteElement returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getFootnoteElementRule()); }
-	 iv_ruleFootnoteElement=ruleFootnoteElement 
-	 { $current=$iv_ruleFootnoteElement.current; } 
-	 EOF 
+	 iv_ruleFootnoteElement=ruleFootnoteElement
+	 { $current=$iv_ruleFootnoteElement.current; }
+	 EOF
 ;
 
 // Rule FootnoteElement
-ruleFootnoteElement returns [EObject current=null] 
-    @init { enterRule(); 
+ruleFootnoteElement returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getFootnoteElementAccess().getFootnoteElementAction_0(),
             $current);
     }
-)	otherlv_1='footnote' 
+)	otherlv_1='footnote'
     {
     	newLeafNode(otherlv_1, grammarAccess.getFootnoteElementAccess().getFootnoteKeyword_1());
     }
-	otherlv_2='[' 
+	otherlv_2='['
     {
     	newLeafNode(otherlv_2, grammarAccess.getFootnoteElementAccess().getLeftSquareBracketKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getFootnoteElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getFootnoteElementAccess().getElementsMarkupElementParserRuleCall_3_0());
 	    }
 		lv_elements_3_0=ruleMarkupElement		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getFootnoteElementRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"elements",
-        		lv_elements_3_0, 
+        		lv_elements_3_0,
         		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_4=']' 
+)*	otherlv_4=']'
     {
     	newLeafNode(otherlv_4, grammarAccess.getFootnoteElementAccess().getRightSquareBracketKeyword_4());
     }
@@ -789,33 +789,33 @@
 
 
 // Entry rule entryRuleHeadingElement
-entryRuleHeadingElement returns [EObject current=null] 
+entryRuleHeadingElement returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getHeadingElementRule()); }
-	 iv_ruleHeadingElement=ruleHeadingElement 
-	 { $current=$iv_ruleHeadingElement.current; } 
-	 EOF 
+	 iv_ruleHeadingElement=ruleHeadingElement
+	 { $current=$iv_ruleHeadingElement.current; }
+	 EOF
 ;
 
 // Rule HeadingElement
-ruleHeadingElement returns [EObject current=null] 
-    @init { enterRule(); 
+ruleHeadingElement returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getHeadingElementAccess().getHeadingElementAction_0(),
             $current);
     }
-)	otherlv_1='heading' 
+)	otherlv_1='heading'
     {
     	newLeafNode(otherlv_1, grammarAccess.getHeadingElementAccess().getHeadingKeyword_1());
     }
-(	otherlv_2=':' 
+(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getHeadingElementAccess().getColonKeyword_2_0());
     }
@@ -823,43 +823,43 @@
 (
 		lv_level_3_0=RULE_INT
 		{
-			newLeafNode(lv_level_3_0, grammarAccess.getHeadingElementAccess().getLevelINTTerminalRuleCall_2_1_0()); 
+			newLeafNode(lv_level_3_0, grammarAccess.getHeadingElementAccess().getLevelINTTerminalRuleCall_2_1_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getHeadingElementRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"level",
-        		lv_level_3_0, 
+        		lv_level_3_0,
         		"org.eclipse.ocl.xtext.markup.Markup.INT");
 	    }
 
 )
-))?	otherlv_4='[' 
+))?	otherlv_4='['
     {
     	newLeafNode(otherlv_4, grammarAccess.getHeadingElementAccess().getLeftSquareBracketKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getHeadingElementAccess().getElementsMarkupElementParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getHeadingElementAccess().getElementsMarkupElementParserRuleCall_4_0());
 	    }
 		lv_elements_5_0=ruleMarkupElement		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getHeadingElementRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"elements",
-        		lv_elements_5_0, 
+        		lv_elements_5_0,
         		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_6=']' 
+)*	otherlv_6=']'
     {
     	newLeafNode(otherlv_6, grammarAccess.getHeadingElementAccess().getRightSquareBracketKeyword_5());
     }
@@ -871,33 +871,33 @@
 
 
 // Entry rule entryRuleNewLineElement
-entryRuleNewLineElement returns [EObject current=null] 
+entryRuleNewLineElement returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNewLineElementRule()); }
-	 iv_ruleNewLineElement=ruleNewLineElement 
-	 { $current=$iv_ruleNewLineElement.current; } 
-	 EOF 
+	 iv_ruleNewLineElement=ruleNewLineElement
+	 { $current=$iv_ruleNewLineElement.current; }
+	 EOF
 ;
 
 // Rule NewLineElement
-ruleNewLineElement returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNewLineElement returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
 		lv_text_0_0=RULE_NL
 		{
-			newLeafNode(lv_text_0_0, grammarAccess.getNewLineElementAccess().getTextNLTerminalRuleCall_0()); 
+			newLeafNode(lv_text_0_0, grammarAccess.getNewLineElementAccess().getTextNLTerminalRuleCall_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNewLineElementRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"text",
-        		lv_text_0_0, 
+        		lv_text_0_0,
         		"org.eclipse.ocl.xtext.markup.Markup.NL");
 	    }
 
@@ -910,51 +910,51 @@
 
 
 // Entry rule entryRuleNullElement
-entryRuleNullElement returns [EObject current=null] 
+entryRuleNullElement returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNullElementRule()); }
-	 iv_ruleNullElement=ruleNullElement 
-	 { $current=$iv_ruleNullElement.current; } 
-	 EOF 
+	 iv_ruleNullElement=ruleNullElement
+	 { $current=$iv_ruleNullElement.current; }
+	 EOF
 ;
 
 // Rule NullElement
-ruleNullElement returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNullElement returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getNullElementAccess().getNullElementAction_0(),
             $current);
     }
-)	otherlv_1='[' 
+)	otherlv_1='['
     {
     	newLeafNode(otherlv_1, grammarAccess.getNullElementAccess().getLeftSquareBracketKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNullElementAccess().getElementsMarkupElementParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNullElementAccess().getElementsMarkupElementParserRuleCall_2_0());
 	    }
 		lv_elements_2_0=ruleMarkupElement		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNullElementRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"elements",
-        		lv_elements_2_0, 
+        		lv_elements_2_0,
         		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_3=']' 
+)*	otherlv_3=']'
     {
     	newLeafNode(otherlv_3, grammarAccess.getNullElementAccess().getRightSquareBracketKeyword_3());
     }
@@ -966,55 +966,55 @@
 
 
 // Entry rule entryRuleOCLCodeElement
-entryRuleOCLCodeElement returns [EObject current=null] 
+entryRuleOCLCodeElement returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getOCLCodeElementRule()); }
-	 iv_ruleOCLCodeElement=ruleOCLCodeElement 
-	 { $current=$iv_ruleOCLCodeElement.current; } 
-	 EOF 
+	 iv_ruleOCLCodeElement=ruleOCLCodeElement
+	 { $current=$iv_ruleOCLCodeElement.current; }
+	 EOF
 ;
 
 // Rule OCLCodeElement
-ruleOCLCodeElement returns [EObject current=null] 
-    @init { enterRule(); 
+ruleOCLCodeElement returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getOCLCodeElementAccess().getOCLCodeElementAction_0(),
             $current);
     }
-)	otherlv_1='oclCode' 
+)	otherlv_1='oclCode'
     {
     	newLeafNode(otherlv_1, grammarAccess.getOCLCodeElementAccess().getOclCodeKeyword_1());
     }
-	otherlv_2='[' 
+	otherlv_2='['
     {
     	newLeafNode(otherlv_2, grammarAccess.getOCLCodeElementAccess().getLeftSquareBracketKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOCLCodeElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOCLCodeElementAccess().getElementsMarkupElementParserRuleCall_3_0());
 	    }
 		lv_elements_3_0=ruleMarkupElement		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOCLCodeElementRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"elements",
-        		lv_elements_3_0, 
+        		lv_elements_3_0,
         		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_4=']' 
+)*	otherlv_4=']'
     {
     	newLeafNode(otherlv_4, grammarAccess.getOCLCodeElementAccess().getRightSquareBracketKeyword_4());
     }
@@ -1026,55 +1026,55 @@
 
 
 // Entry rule entryRuleOCLEvalElement
-entryRuleOCLEvalElement returns [EObject current=null] 
+entryRuleOCLEvalElement returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getOCLEvalElementRule()); }
-	 iv_ruleOCLEvalElement=ruleOCLEvalElement 
-	 { $current=$iv_ruleOCLEvalElement.current; } 
-	 EOF 
+	 iv_ruleOCLEvalElement=ruleOCLEvalElement
+	 { $current=$iv_ruleOCLEvalElement.current; }
+	 EOF
 ;
 
 // Rule OCLEvalElement
-ruleOCLEvalElement returns [EObject current=null] 
-    @init { enterRule(); 
+ruleOCLEvalElement returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getOCLEvalElementAccess().getOCLEvalElementAction_0(),
             $current);
     }
-)	otherlv_1='oclEval' 
+)	otherlv_1='oclEval'
     {
     	newLeafNode(otherlv_1, grammarAccess.getOCLEvalElementAccess().getOclEvalKeyword_1());
     }
-	otherlv_2='[' 
+	otherlv_2='['
     {
     	newLeafNode(otherlv_2, grammarAccess.getOCLEvalElementAccess().getLeftSquareBracketKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOCLEvalElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOCLEvalElementAccess().getElementsMarkupElementParserRuleCall_3_0());
 	    }
 		lv_elements_3_0=ruleMarkupElement		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOCLEvalElementRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"elements",
-        		lv_elements_3_0, 
+        		lv_elements_3_0,
         		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_4=']' 
+)*	otherlv_4=']'
     {
     	newLeafNode(otherlv_4, grammarAccess.getOCLEvalElementAccess().getRightSquareBracketKeyword_4());
     }
@@ -1086,55 +1086,55 @@
 
 
 // Entry rule entryRuleOCLTextElement
-entryRuleOCLTextElement returns [EObject current=null] 
+entryRuleOCLTextElement returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getOCLTextElementRule()); }
-	 iv_ruleOCLTextElement=ruleOCLTextElement 
-	 { $current=$iv_ruleOCLTextElement.current; } 
-	 EOF 
+	 iv_ruleOCLTextElement=ruleOCLTextElement
+	 { $current=$iv_ruleOCLTextElement.current; }
+	 EOF
 ;
 
 // Rule OCLTextElement
-ruleOCLTextElement returns [EObject current=null] 
-    @init { enterRule(); 
+ruleOCLTextElement returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getOCLTextElementAccess().getOCLTextElementAction_0(),
             $current);
     }
-)	otherlv_1='oclText' 
+)	otherlv_1='oclText'
     {
     	newLeafNode(otherlv_1, grammarAccess.getOCLTextElementAccess().getOclTextKeyword_1());
     }
-	otherlv_2='[' 
+	otherlv_2='['
     {
     	newLeafNode(otherlv_2, grammarAccess.getOCLTextElementAccess().getLeftSquareBracketKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOCLTextElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOCLTextElementAccess().getElementsMarkupElementParserRuleCall_3_0());
 	    }
 		lv_elements_3_0=ruleMarkupElement		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOCLTextElementRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"elements",
-        		lv_elements_3_0, 
+        		lv_elements_3_0,
         		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_4=']' 
+)*	otherlv_4=']'
     {
     	newLeafNode(otherlv_4, grammarAccess.getOCLTextElementAccess().getRightSquareBracketKeyword_4());
     }
@@ -1146,17 +1146,17 @@
 
 
 // Entry rule entryRuleTextElement
-entryRuleTextElement returns [EObject current=null] 
+entryRuleTextElement returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTextElementRule()); }
-	 iv_ruleTextElement=ruleTextElement 
-	 { $current=$iv_ruleTextElement.current; } 
-	 EOF 
+	 iv_ruleTextElement=ruleTextElement
+	 { $current=$iv_ruleTextElement.current; }
+	 EOF
 ;
 
 // Rule TextElement
-ruleTextElement returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTextElement returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
@@ -1164,69 +1164,69 @@
 (
 		lv_text_0_1=RULE_ID
 		{
-			newLeafNode(lv_text_0_1, grammarAccess.getTextElementAccess().getTextIDTerminalRuleCall_0_0_0()); 
+			newLeafNode(lv_text_0_1, grammarAccess.getTextElementAccess().getTextIDTerminalRuleCall_0_0_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getTextElementRule());
 	        }
        		addWithLastConsumed(
-       			$current, 
+       			$current,
        			"text",
-        		lv_text_0_1, 
+        		lv_text_0_1,
         		"org.eclipse.ocl.xtext.markup.Markup.ID");
 	    }
 
     |		lv_text_0_2=RULE_WORD
 		{
-			newLeafNode(lv_text_0_2, grammarAccess.getTextElementAccess().getTextWORDTerminalRuleCall_0_0_1()); 
+			newLeafNode(lv_text_0_2, grammarAccess.getTextElementAccess().getTextWORDTerminalRuleCall_0_0_1());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getTextElementRule());
 	        }
        		addWithLastConsumed(
-       			$current, 
+       			$current,
        			"text",
-        		lv_text_0_2, 
+        		lv_text_0_2,
         		"org.eclipse.ocl.xtext.markup.Markup.WORD");
 	    }
 
     |		lv_text_0_3=RULE_INT
 		{
-			newLeafNode(lv_text_0_3, grammarAccess.getTextElementAccess().getTextINTTerminalRuleCall_0_0_2()); 
+			newLeafNode(lv_text_0_3, grammarAccess.getTextElementAccess().getTextINTTerminalRuleCall_0_0_2());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getTextElementRule());
 	        }
        		addWithLastConsumed(
-       			$current, 
+       			$current,
        			"text",
-        		lv_text_0_3, 
+        		lv_text_0_3,
         		"org.eclipse.ocl.xtext.markup.Markup.INT");
 	    }
 
     |		lv_text_0_4=RULE_WS
 		{
-			newLeafNode(lv_text_0_4, grammarAccess.getTextElementAccess().getTextWSTerminalRuleCall_0_0_3()); 
+			newLeafNode(lv_text_0_4, grammarAccess.getTextElementAccess().getTextWSTerminalRuleCall_0_0_3());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getTextElementRule());
 	        }
        		addWithLastConsumed(
-       			$current, 
+       			$current,
        			"text",
-        		lv_text_0_4, 
+        		lv_text_0_4,
         		"org.eclipse.ocl.xtext.markup.Markup.WS");
 	    }
 
-    |		lv_text_0_5=	':' 
+    |		lv_text_0_5=	':'
     {
         newLeafNode(lv_text_0_5, grammarAccess.getTextElementAccess().getTextColonKeyword_0_0_4());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getTextElementRule());
@@ -1234,11 +1234,11 @@
        		addWithLastConsumed($current, "text", lv_text_0_5, null);
 	    }
 
-    |		lv_text_0_6=	'#' 
+    |		lv_text_0_6=	'#'
     {
         newLeafNode(lv_text_0_6, grammarAccess.getTextElementAccess().getTextNumberSignKeyword_0_0_5());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getTextElementRule());
@@ -1246,11 +1246,11 @@
        		addWithLastConsumed($current, "text", lv_text_0_6, null);
 	    }
 
-    |		lv_text_0_7=	',' 
+    |		lv_text_0_7=	','
     {
         newLeafNode(lv_text_0_7, grammarAccess.getTextElementAccess().getTextCommaKeyword_0_0_6());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getTextElementRule());
@@ -1264,17 +1264,17 @@
 )+
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTextElementAccess().getTextMarkupKeywordParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTextElementAccess().getTextMarkupKeywordParserRuleCall_1_0());
 	    }
 		lv_text_1_0=ruleMarkupKeyword		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTextElementRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"text",
-        		lv_text_1_0, 
+        		lv_text_1_0,
         		"org.eclipse.ocl.xtext.markup.Markup.MarkupKeyword");
 	        afterParserOrEnumRuleCall();
 	    }
diff --git a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/internal/InternalMarkupLexer.java b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/internal/InternalMarkupLexer.java
index 6ee8abd..731981c 100644
--- a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/internal/InternalMarkupLexer.java
+++ b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/internal/InternalMarkupLexer.java
@@ -1,6 +1,6 @@
 package org.eclipse.ocl.xtext.markup.parser.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.parser.antlr.Lexer;
 
@@ -44,7 +44,7 @@
     // delegates
     // delegators
 
-    public InternalMarkupLexer() {;} 
+    public InternalMarkupLexer() {;}
     public InternalMarkupLexer(CharStream input) {
         this(input, new RecognizerSharedState());
     }
@@ -62,7 +62,7 @@
             // InternalMarkup.g:11:7: ( 'b' )
             // InternalMarkup.g:11:9: 'b'
             {
-            match('b'); 
+            match('b');
 
             }
 
@@ -82,7 +82,7 @@
             // InternalMarkup.g:12:7: ( 'e' )
             // InternalMarkup.g:12:9: 'e'
             {
-            match('e'); 
+            match('e');
 
             }
 
@@ -102,7 +102,7 @@
             // InternalMarkup.g:13:7: ( 'bullet' )
             // InternalMarkup.g:13:9: 'bullet'
             {
-            match("bullet"); 
+            match("bullet");
 
 
             }
@@ -123,7 +123,7 @@
             // InternalMarkup.g:14:7: ( 'figure' )
             // InternalMarkup.g:14:9: 'figure'
             {
-            match("figure"); 
+            match("figure");
 
 
             }
@@ -144,7 +144,7 @@
             // InternalMarkup.g:15:7: ( 'figureRef' )
             // InternalMarkup.g:15:9: 'figureRef'
             {
-            match("figureRef"); 
+            match("figureRef");
 
 
             }
@@ -165,7 +165,7 @@
             // InternalMarkup.g:16:7: ( 'footnote' )
             // InternalMarkup.g:16:9: 'footnote'
             {
-            match("footnote"); 
+            match("footnote");
 
 
             }
@@ -186,7 +186,7 @@
             // InternalMarkup.g:17:7: ( 'heading' )
             // InternalMarkup.g:17:9: 'heading'
             {
-            match("heading"); 
+            match("heading");
 
 
             }
@@ -207,7 +207,7 @@
             // InternalMarkup.g:18:7: ( 'oclCode' )
             // InternalMarkup.g:18:9: 'oclCode'
             {
-            match("oclCode"); 
+            match("oclCode");
 
 
             }
@@ -228,7 +228,7 @@
             // InternalMarkup.g:19:7: ( 'oclEval' )
             // InternalMarkup.g:19:9: 'oclEval'
             {
-            match("oclEval"); 
+            match("oclEval");
 
 
             }
@@ -249,7 +249,7 @@
             // InternalMarkup.g:20:7: ( 'oclText' )
             // InternalMarkup.g:20:9: 'oclText'
             {
-            match("oclText"); 
+            match("oclText");
 
 
             }
@@ -270,7 +270,7 @@
             // InternalMarkup.g:21:7: ( ':' )
             // InternalMarkup.g:21:9: ':'
             {
-            match(':'); 
+            match(':');
 
             }
 
@@ -290,7 +290,7 @@
             // InternalMarkup.g:22:7: ( '[' )
             // InternalMarkup.g:22:9: '['
             {
-            match('['); 
+            match('[');
 
             }
 
@@ -310,7 +310,7 @@
             // InternalMarkup.g:23:7: ( ']' )
             // InternalMarkup.g:23:9: ']'
             {
-            match(']'); 
+            match(']');
 
             }
 
@@ -330,7 +330,7 @@
             // InternalMarkup.g:24:7: ( '#' )
             // InternalMarkup.g:24:9: '#'
             {
-            match('#'); 
+            match('#');
 
             }
 
@@ -350,7 +350,7 @@
             // InternalMarkup.g:25:7: ( ',' )
             // InternalMarkup.g:25:9: ','
             {
-            match(','); 
+            match(',');
 
             }
 
@@ -368,7 +368,7 @@
             // InternalMarkup.g:1290:22: ( '0' .. '9' )
             // InternalMarkup.g:1290:24: '0' .. '9'
             {
-            matchRange('0','9'); 
+            matchRange('0','9');
 
             }
 
@@ -408,7 +408,7 @@
             // InternalMarkup.g:1294:23: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' | '<' | '>' | '[' | ']' ) )
             // InternalMarkup.g:1294:25: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' | '<' | '>' | '[' | ']' )
             {
-            match('\\'); 
+            match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='<'||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.consume();
 
@@ -499,7 +499,7 @@
             	case 1 :
             	    // InternalMarkup.g:1300:12: RULE_NUMBER
             	    {
-            	    mRULE_NUMBER(); 
+            	    mRULE_NUMBER();
 
             	    }
             	    break;
@@ -532,7 +532,7 @@
             // InternalMarkup.g:1302:13: ( '\"' ( RULE_ESCAPED | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
             // InternalMarkup.g:1302:15: '\"' ( RULE_ESCAPED | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
-            match('\"'); 
+            match('\"');
             // InternalMarkup.g:1302:19: ( RULE_ESCAPED | ~ ( ( '\\\\' | '\"' ) ) )*
             loop2:
             do {
@@ -551,7 +551,7 @@
             	case 1 :
             	    // InternalMarkup.g:1302:20: RULE_ESCAPED
             	    {
-            	    mRULE_ESCAPED(); 
+            	    mRULE_ESCAPED();
 
             	    }
             	    break;
@@ -576,7 +576,7 @@
                 }
             } while (true);
 
-            match('\"'); 
+            match('\"');
 
             }
 
@@ -596,7 +596,7 @@
             // InternalMarkup.g:1304:9: ( RULE_LETTER ( RULE_LETTER | RULE_NUMBER )* )
             // InternalMarkup.g:1304:11: RULE_LETTER ( RULE_LETTER | RULE_NUMBER )*
             {
-            mRULE_LETTER(); 
+            mRULE_LETTER();
             // InternalMarkup.g:1304:23: ( RULE_LETTER | RULE_NUMBER )*
             loop3:
             do {
@@ -668,7 +668,7 @@
             	case 1 :
             	    // InternalMarkup.g:1306:14: RULE_ESCAPED
             	    {
-            	    mRULE_ESCAPED(); 
+            	    mRULE_ESCAPED();
 
             	    }
             	    break;
@@ -747,7 +747,7 @@
             	    	case 1 :
             	    	    // InternalMarkup.g:1308:12: RULE_HORIZONTAL_WS
             	    	    {
-            	    	    mRULE_HORIZONTAL_WS(); 
+            	    	    mRULE_HORIZONTAL_WS();
 
             	    	    }
             	    	    break;
@@ -757,7 +757,7 @@
             	        }
             	    } while (true);
 
-            	    mRULE_VERTICAL_WS(); 
+            	    mRULE_VERTICAL_WS();
 
             	    }
             	    break;
@@ -806,7 +806,7 @@
             	case 1 :
             	    // InternalMarkup.g:1310:11: RULE_HORIZONTAL_WS
             	    {
-            	    mRULE_HORIZONTAL_WS(); 
+            	    mRULE_HORIZONTAL_WS();
 
             	    }
             	    break;
@@ -839,7 +839,7 @@
             // InternalMarkup.g:1312:16: ( . )
             // InternalMarkup.g:1312:18: .
             {
-            matchAny(); 
+            matchAny();
 
             }
 
@@ -859,154 +859,154 @@
             case 1 :
                 // InternalMarkup.g:1:10: T__16
                 {
-                mT__16(); 
+                mT__16();
 
                 }
                 break;
             case 2 :
                 // InternalMarkup.g:1:16: T__17
                 {
-                mT__17(); 
+                mT__17();
 
                 }
                 break;
             case 3 :
                 // InternalMarkup.g:1:22: T__18
                 {
-                mT__18(); 
+                mT__18();
 
                 }
                 break;
             case 4 :
                 // InternalMarkup.g:1:28: T__19
                 {
-                mT__19(); 
+                mT__19();
 
                 }
                 break;
             case 5 :
                 // InternalMarkup.g:1:34: T__20
                 {
-                mT__20(); 
+                mT__20();
 
                 }
                 break;
             case 6 :
                 // InternalMarkup.g:1:40: T__21
                 {
-                mT__21(); 
+                mT__21();
 
                 }
                 break;
             case 7 :
                 // InternalMarkup.g:1:46: T__22
                 {
-                mT__22(); 
+                mT__22();
 
                 }
                 break;
             case 8 :
                 // InternalMarkup.g:1:52: T__23
                 {
-                mT__23(); 
+                mT__23();
 
                 }
                 break;
             case 9 :
                 // InternalMarkup.g:1:58: T__24
                 {
-                mT__24(); 
+                mT__24();
 
                 }
                 break;
             case 10 :
                 // InternalMarkup.g:1:64: T__25
                 {
-                mT__25(); 
+                mT__25();
 
                 }
                 break;
             case 11 :
                 // InternalMarkup.g:1:70: T__26
                 {
-                mT__26(); 
+                mT__26();
 
                 }
                 break;
             case 12 :
                 // InternalMarkup.g:1:76: T__27
                 {
-                mT__27(); 
+                mT__27();
 
                 }
                 break;
             case 13 :
                 // InternalMarkup.g:1:82: T__28
                 {
-                mT__28(); 
+                mT__28();
 
                 }
                 break;
             case 14 :
                 // InternalMarkup.g:1:88: T__29
                 {
-                mT__29(); 
+                mT__29();
 
                 }
                 break;
             case 15 :
                 // InternalMarkup.g:1:94: T__30
                 {
-                mT__30(); 
+                mT__30();
 
                 }
                 break;
             case 16 :
                 // InternalMarkup.g:1:100: RULE_INT
                 {
-                mRULE_INT(); 
+                mRULE_INT();
 
                 }
                 break;
             case 17 :
                 // InternalMarkup.g:1:109: RULE_STRING
                 {
-                mRULE_STRING(); 
+                mRULE_STRING();
 
                 }
                 break;
             case 18 :
                 // InternalMarkup.g:1:121: RULE_ID
                 {
-                mRULE_ID(); 
+                mRULE_ID();
 
                 }
                 break;
             case 19 :
                 // InternalMarkup.g:1:129: RULE_WORD
                 {
-                mRULE_WORD(); 
+                mRULE_WORD();
 
                 }
                 break;
             case 20 :
                 // InternalMarkup.g:1:139: RULE_NL
                 {
-                mRULE_NL(); 
+                mRULE_NL();
 
                 }
                 break;
             case 21 :
                 // InternalMarkup.g:1:147: RULE_WS
                 {
-                mRULE_WS(); 
+                mRULE_WS();
 
                 }
                 break;
             case 22 :
                 // InternalMarkup.g:1:155: RULE_ANY_OTHER
                 {
-                mRULE_ANY_OTHER(); 
+                mRULE_ANY_OTHER();
 
                 }
                 break;
@@ -1151,7 +1151,7 @@
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA8_61 = input.LA(1);
 
                         s = -1;
@@ -1165,7 +1165,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA8_69 = input.LA(1);
 
                         s = -1;
@@ -1179,7 +1179,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA8_26 = input.LA(1);
 
                         s = -1;
@@ -1193,7 +1193,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA8_43 = input.LA(1);
 
                         s = -1;
@@ -1207,7 +1207,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA8_48 = input.LA(1);
 
                         s = -1;
@@ -1221,7 +1221,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA8_70 = input.LA(1);
 
                         s = -1;
@@ -1233,7 +1233,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA8_55 = input.LA(1);
 
                         s = -1;
@@ -1247,7 +1247,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 7 : 
+                    case 7 :
                         int LA8_62 = input.LA(1);
 
                         s = -1;
@@ -1261,7 +1261,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 8 : 
+                    case 8 :
                         int LA8_49 = input.LA(1);
 
                         s = -1;
@@ -1275,7 +1275,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 9 : 
+                    case 9 :
                         int LA8_56 = input.LA(1);
 
                         s = -1;
@@ -1289,7 +1289,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 10 : 
+                    case 10 :
                         int LA8_63 = input.LA(1);
 
                         s = -1;
@@ -1303,7 +1303,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 11 : 
+                    case 11 :
                         int LA8_4 = input.LA(1);
 
                         s = -1;
@@ -1317,7 +1317,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 12 : 
+                    case 12 :
                         int LA8_20 = input.LA(1);
 
                         s = -1;
@@ -1329,7 +1329,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 13 : 
+                    case 13 :
                         int LA8_27 = input.LA(1);
 
                         s = -1;
@@ -1343,7 +1343,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 14 : 
+                    case 14 :
                         int LA8_71 = input.LA(1);
 
                         s = -1;
@@ -1355,7 +1355,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 15 : 
+                    case 15 :
                         int LA8_50 = input.LA(1);
 
                         s = -1;
@@ -1369,7 +1369,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 16 : 
+                    case 16 :
                         int LA8_44 = input.LA(1);
 
                         s = -1;
@@ -1387,7 +1387,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 17 : 
+                    case 17 :
                         int LA8_57 = input.LA(1);
 
                         s = -1;
@@ -1401,7 +1401,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 18 : 
+                    case 18 :
                         int LA8_64 = input.LA(1);
 
                         s = -1;
@@ -1415,7 +1415,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 19 : 
+                    case 19 :
                         int LA8_0 = input.LA(1);
 
                         s = -1;
@@ -1455,7 +1455,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 20 : 
+                    case 20 :
                         int LA8_51 = input.LA(1);
 
                         s = -1;
@@ -1469,7 +1469,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 21 : 
+                    case 21 :
                         int LA8_58 = input.LA(1);
 
                         s = -1;
@@ -1483,7 +1483,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 22 : 
+                    case 22 :
                         int LA8_60 = input.LA(1);
 
                         s = -1;
@@ -1497,7 +1497,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 23 : 
+                    case 23 :
                         int LA8_65 = input.LA(1);
 
                         s = -1;
@@ -1511,7 +1511,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 24 : 
+                    case 24 :
                         int LA8_5 = input.LA(1);
 
                         s = -1;
@@ -1525,7 +1525,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 25 : 
+                    case 25 :
                         int LA8_3 = input.LA(1);
 
                         s = -1;
@@ -1541,7 +1541,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 26 : 
+                    case 26 :
                         int LA8_72 = input.LA(1);
 
                         s = -1;
@@ -1553,7 +1553,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 27 : 
+                    case 27 :
                         int LA8_13 = input.LA(1);
 
                         s = -1;
@@ -1565,7 +1565,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 28 : 
+                    case 28 :
                         int LA8_23 = input.LA(1);
 
                         s = -1;
@@ -1579,7 +1579,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 29 : 
+                    case 29 :
                         int LA8_41 = input.LA(1);
 
                         s = -1;
@@ -1593,7 +1593,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 30 : 
+                    case 30 :
                         int LA8_59 = input.LA(1);
 
                         s = -1;
@@ -1605,7 +1605,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 31 : 
+                    case 31 :
                         int LA8_73 = input.LA(1);
 
                         s = -1;
@@ -1617,7 +1617,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 32 : 
+                    case 32 :
                         int LA8_46 = input.LA(1);
 
                         s = -1;
@@ -1631,7 +1631,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 33 : 
+                    case 33 :
                         int LA8_2 = input.LA(1);
 
                         s = -1;
@@ -1643,7 +1643,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 34 : 
+                    case 34 :
                         int LA8_53 = input.LA(1);
 
                         s = -1;
@@ -1657,7 +1657,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 35 : 
+                    case 35 :
                         int LA8_12 = input.LA(1);
 
                         s = -1;
@@ -1667,7 +1667,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 36 : 
+                    case 36 :
                         int LA8_18 = input.LA(1);
 
                         s = -1;
@@ -1681,7 +1681,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 37 : 
+                    case 37 :
                         int LA8_40 = input.LA(1);
 
                         s = -1;
@@ -1695,7 +1695,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 38 : 
+                    case 38 :
                         int LA8_34 = input.LA(1);
 
                         s = -1;
@@ -1707,7 +1707,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 39 : 
+                    case 39 :
                         int LA8_45 = input.LA(1);
 
                         s = -1;
@@ -1721,7 +1721,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 40 : 
+                    case 40 :
                         int LA8_52 = input.LA(1);
 
                         s = -1;
@@ -1735,7 +1735,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 41 : 
+                    case 41 :
                         int LA8_80 = input.LA(1);
 
                         s = -1;
@@ -1747,7 +1747,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 42 : 
+                    case 42 :
                         int LA8_11 = input.LA(1);
 
                         s = -1;
@@ -1759,7 +1759,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 43 : 
+                    case 43 :
                         int LA8_67 = input.LA(1);
 
                         s = -1;
@@ -1773,7 +1773,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 44 : 
+                    case 44 :
                         int LA8_74 = input.LA(1);
 
                         s = -1;
@@ -1787,7 +1787,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 45 : 
+                    case 45 :
                         int LA8_1 = input.LA(1);
 
                         s = -1;
@@ -1801,7 +1801,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 46 : 
+                    case 46 :
                         int LA8_75 = input.LA(1);
 
                         s = -1;
@@ -1813,7 +1813,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 47 : 
+                    case 47 :
                         int LA8_24 = input.LA(1);
 
                         s = -1;
@@ -1827,7 +1827,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 48 : 
+                    case 48 :
                         int LA8_42 = input.LA(1);
 
                         s = -1;
@@ -1841,7 +1841,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 49 : 
+                    case 49 :
                         int LA8_47 = input.LA(1);
 
                         s = -1;
@@ -1855,7 +1855,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 50 : 
+                    case 50 :
                         int LA8_54 = input.LA(1);
 
                         s = -1;
@@ -1876,6 +1876,6 @@
             throw nvae;
         }
     }
- 
+
 
 }
\ No newline at end of file
diff --git a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/internal/InternalMarkupParser.java b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/internal/InternalMarkupParser.java
index 3150275..9734443 100644
--- a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/internal/InternalMarkupParser.java
+++ b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/parser/antlr/internal/InternalMarkupParser.java
@@ -1,4 +1,4 @@
-package org.eclipse.ocl.xtext.markup.parser.antlr.internal; 
+package org.eclipse.ocl.xtext.markup.parser.antlr.internal;
 
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
@@ -72,9 +72,9 @@
         }
         public InternalMarkupParser(TokenStream input, RecognizerSharedState state) {
             super(input, state);
-             
+
         }
-        
+
 
     public String[] getTokenNames() { return InternalMarkupParser.tokenNames; }
     public String getGrammarFileName() { return "InternalMarkup.g"; }
@@ -85,20 +85,20 @@
       This grammar contains a lot of empty actions to work around a bug in ANTLR.
       Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases.
     */
-     
+
      	private MarkupGrammarAccess grammarAccess;
-     	
+
         public InternalMarkupParser(TokenStream input, MarkupGrammarAccess grammarAccess) {
             this(input);
             this.grammarAccess = grammarAccess;
             registerRules(grammarAccess.getGrammar());
         }
-        
+
         @Override
         protected String getFirstRuleName() {
-        	return "Markup";	
+        	return "Markup";
        	}
-       	
+
        	@Override
        	protected MarkupGrammarAccess getGrammarAccess() {
        		return grammarAccess;
@@ -119,7 +119,7 @@
             // InternalMarkup.g:82:2: iv_ruleMarkup= ruleMarkup EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMarkupRule()); 
+               newCompositeNode(grammarAccess.getMarkupRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMarkup=ruleMarkup();
@@ -127,18 +127,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMarkup; 
+               current =iv_ruleMarkup;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -154,8 +154,8 @@
         EObject lv_elements_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:92:28: ( ( (lv_elements_0_0= ruleMarkupElement ) )* )
             // InternalMarkup.g:93:1: ( (lv_elements_0_0= ruleMarkupElement ) )*
@@ -179,9 +179,9 @@
             	    // InternalMarkup.g:95:3: lv_elements_0_0= ruleMarkupElement
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getMarkupAccess().getElementsMarkupElementParserRuleCall_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getMarkupAccess().getElementsMarkupElementParserRuleCall_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_3);
             	    lv_elements_0_0=ruleMarkupElement();
@@ -194,12 +194,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getMarkupRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"elements",
-            	              		lv_elements_0_0, 
+            	              		lv_elements_0_0,
             	              		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -217,14 +217,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -245,7 +245,7 @@
             // InternalMarkup.g:121:2: iv_ruleMarkupKeyword= ruleMarkupKeyword EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMarkupKeywordRule()); 
+               newCompositeNode(grammarAccess.getMarkupKeywordRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMarkupKeyword=ruleMarkupKeyword();
@@ -253,18 +253,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMarkupKeyword.getText(); 
+               current =iv_ruleMarkupKeyword.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -279,8 +279,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:131:28: ( (kw= 'b' | kw= 'e' | kw= 'bullet' | kw= 'figure' | kw= 'figureRef' | kw= 'footnote' | kw= 'heading' | kw= 'oclCode' | kw= 'oclEval' | kw= 'oclText' ) )
             // InternalMarkup.g:132:1: (kw= 'b' | kw= 'e' | kw= 'bullet' | kw= 'figure' | kw= 'figureRef' | kw= 'footnote' | kw= 'heading' | kw= 'oclCode' | kw= 'oclEval' | kw= 'oclText' )
@@ -354,8 +354,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getBKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getBKeyword_0());
+
                     }
 
                     }
@@ -367,8 +367,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getEKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getEKeyword_1());
+
                     }
 
                     }
@@ -380,8 +380,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getBulletKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getBulletKeyword_2());
+
                     }
 
                     }
@@ -393,8 +393,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getFigureKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getFigureKeyword_3());
+
                     }
 
                     }
@@ -406,8 +406,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getFigureRefKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getFigureRefKeyword_4());
+
                     }
 
                     }
@@ -419,8 +419,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getFootnoteKeyword_5()); 
-                          
+                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getFootnoteKeyword_5());
+
                     }
 
                     }
@@ -432,8 +432,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getHeadingKeyword_6()); 
-                          
+                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getHeadingKeyword_6());
+
                     }
 
                     }
@@ -445,8 +445,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getOclCodeKeyword_7()); 
-                          
+                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getOclCodeKeyword_7());
+
                     }
 
                     }
@@ -458,8 +458,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getOclEvalKeyword_8()); 
-                          
+                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getOclEvalKeyword_8());
+
                     }
 
                     }
@@ -471,8 +471,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getOclTextKeyword_9()); 
-                          
+                              newLeafNode(kw, grammarAccess.getMarkupKeywordAccess().getOclTextKeyword_9());
+
                     }
 
                     }
@@ -484,14 +484,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -512,7 +512,7 @@
             // InternalMarkup.g:211:2: iv_ruleMarkupElement= ruleMarkupElement EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMarkupElementRule()); 
+               newCompositeNode(grammarAccess.getMarkupElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMarkupElement=ruleMarkupElement();
@@ -520,18 +520,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMarkupElement; 
+               current =iv_ruleMarkupElement;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -569,8 +569,8 @@
         EObject this_TextElement_11 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:221:28: ( (this_FontElement_0= ruleFontElement | this_NewLineElement_1= ruleNewLineElement | this_BulletElement_2= ruleBulletElement | this_FigureElement_3= ruleFigureElement | this_FigureRefElement_4= ruleFigureRefElement | this_FootnoteElement_5= ruleFootnoteElement | this_HeadingElement_6= ruleHeadingElement | this_NullElement_7= ruleNullElement | this_OCLCodeElement_8= ruleOCLCodeElement | this_OCLEvalElement_9= ruleOCLEvalElement | this_OCLTextElement_10= ruleOCLTextElement | this_TextElement_11= ruleTextElement ) )
             // InternalMarkup.g:222:1: (this_FontElement_0= ruleFontElement | this_NewLineElement_1= ruleNewLineElement | this_BulletElement_2= ruleBulletElement | this_FigureElement_3= ruleFigureElement | this_FigureRefElement_4= ruleFigureRefElement | this_FootnoteElement_5= ruleFootnoteElement | this_HeadingElement_6= ruleHeadingElement | this_NullElement_7= ruleNullElement | this_OCLCodeElement_8= ruleOCLCodeElement | this_OCLEvalElement_9= ruleOCLEvalElement | this_OCLTextElement_10= ruleOCLTextElement | this_TextElement_11= ruleTextElement )
@@ -583,14 +583,14 @@
                     // InternalMarkup.g:223:2: this_FontElement_0= ruleFontElement
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMarkupElementAccess().getFontElementParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMarkupElementAccess().getFontElementParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_FontElement_0=ruleFontElement();
@@ -598,10 +598,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_FontElement_0; 
+
+                              current = this_FontElement_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -610,14 +610,14 @@
                     // InternalMarkup.g:236:2: this_NewLineElement_1= ruleNewLineElement
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMarkupElementAccess().getNewLineElementParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMarkupElementAccess().getNewLineElementParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NewLineElement_1=ruleNewLineElement();
@@ -625,10 +625,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NewLineElement_1; 
+
+                              current = this_NewLineElement_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -637,14 +637,14 @@
                     // InternalMarkup.g:249:2: this_BulletElement_2= ruleBulletElement
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMarkupElementAccess().getBulletElementParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMarkupElementAccess().getBulletElementParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_BulletElement_2=ruleBulletElement();
@@ -652,10 +652,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_BulletElement_2; 
+
+                              current = this_BulletElement_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -664,14 +664,14 @@
                     // InternalMarkup.g:262:2: this_FigureElement_3= ruleFigureElement
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMarkupElementAccess().getFigureElementParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMarkupElementAccess().getFigureElementParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_FigureElement_3=ruleFigureElement();
@@ -679,10 +679,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_FigureElement_3; 
+
+                              current = this_FigureElement_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -691,14 +691,14 @@
                     // InternalMarkup.g:275:2: this_FigureRefElement_4= ruleFigureRefElement
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMarkupElementAccess().getFigureRefElementParserRuleCall_4()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMarkupElementAccess().getFigureRefElementParserRuleCall_4());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_FigureRefElement_4=ruleFigureRefElement();
@@ -706,10 +706,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_FigureRefElement_4; 
+
+                              current = this_FigureRefElement_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -718,14 +718,14 @@
                     // InternalMarkup.g:288:2: this_FootnoteElement_5= ruleFootnoteElement
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMarkupElementAccess().getFootnoteElementParserRuleCall_5()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMarkupElementAccess().getFootnoteElementParserRuleCall_5());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_FootnoteElement_5=ruleFootnoteElement();
@@ -733,10 +733,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_FootnoteElement_5; 
+
+                              current = this_FootnoteElement_5;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -745,14 +745,14 @@
                     // InternalMarkup.g:301:2: this_HeadingElement_6= ruleHeadingElement
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMarkupElementAccess().getHeadingElementParserRuleCall_6()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMarkupElementAccess().getHeadingElementParserRuleCall_6());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_HeadingElement_6=ruleHeadingElement();
@@ -760,10 +760,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_HeadingElement_6; 
+
+                              current = this_HeadingElement_6;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -772,14 +772,14 @@
                     // InternalMarkup.g:314:2: this_NullElement_7= ruleNullElement
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMarkupElementAccess().getNullElementParserRuleCall_7()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMarkupElementAccess().getNullElementParserRuleCall_7());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NullElement_7=ruleNullElement();
@@ -787,10 +787,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NullElement_7; 
+
+                              current = this_NullElement_7;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -799,14 +799,14 @@
                     // InternalMarkup.g:327:2: this_OCLCodeElement_8= ruleOCLCodeElement
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMarkupElementAccess().getOCLCodeElementParserRuleCall_8()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMarkupElementAccess().getOCLCodeElementParserRuleCall_8());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_OCLCodeElement_8=ruleOCLCodeElement();
@@ -814,10 +814,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_OCLCodeElement_8; 
+
+                              current = this_OCLCodeElement_8;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -826,14 +826,14 @@
                     // InternalMarkup.g:340:2: this_OCLEvalElement_9= ruleOCLEvalElement
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMarkupElementAccess().getOCLEvalElementParserRuleCall_9()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMarkupElementAccess().getOCLEvalElementParserRuleCall_9());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_OCLEvalElement_9=ruleOCLEvalElement();
@@ -841,10 +841,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_OCLEvalElement_9; 
+
+                              current = this_OCLEvalElement_9;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -853,14 +853,14 @@
                     // InternalMarkup.g:353:2: this_OCLTextElement_10= ruleOCLTextElement
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMarkupElementAccess().getOCLTextElementParserRuleCall_10()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMarkupElementAccess().getOCLTextElementParserRuleCall_10());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_OCLTextElement_10=ruleOCLTextElement();
@@ -868,10 +868,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_OCLTextElement_10; 
+
+                              current = this_OCLTextElement_10;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -880,14 +880,14 @@
                     // InternalMarkup.g:366:2: this_TextElement_11= ruleTextElement
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMarkupElementAccess().getTextElementParserRuleCall_11()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMarkupElementAccess().getTextElementParserRuleCall_11());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TextElement_11=ruleTextElement();
@@ -895,10 +895,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TextElement_11; 
+
+                              current = this_TextElement_11;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -910,14 +910,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -938,7 +938,7 @@
             // InternalMarkup.g:387:2: iv_ruleBulletElement= ruleBulletElement EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getBulletElementRule()); 
+               newCompositeNode(grammarAccess.getBulletElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleBulletElement=ruleBulletElement();
@@ -946,18 +946,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleBulletElement; 
+               current =iv_ruleBulletElement;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -978,8 +978,8 @@
         EObject lv_elements_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:397:28: ( ( () otherlv_1= 'bullet' (otherlv_2= ':' ( (lv_level_3_0= RULE_INT ) ) )? otherlv_4= '[' ( (lv_elements_5_0= ruleMarkupElement ) )* otherlv_6= ']' ) )
             // InternalMarkup.g:398:1: ( () otherlv_1= 'bullet' (otherlv_2= ':' ( (lv_level_3_0= RULE_INT ) ) )? otherlv_4= '[' ( (lv_elements_5_0= ruleMarkupElement ) )* otherlv_6= ']' )
@@ -988,19 +988,19 @@
             // InternalMarkup.g:398:2: () otherlv_1= 'bullet' (otherlv_2= ':' ( (lv_level_3_0= RULE_INT ) ) )? otherlv_4= '[' ( (lv_elements_5_0= ruleMarkupElement ) )* otherlv_6= ']'
             {
             // InternalMarkup.g:398:2: ()
-            // InternalMarkup.g:399:2: 
+            // InternalMarkup.g:399:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getBulletElementAccess().getBulletElementAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -1009,7 +1009,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getBulletElementAccess().getBulletKeyword_1());
-                  
+
             }
             // InternalMarkup.g:411:1: (otherlv_2= ':' ( (lv_level_3_0= RULE_INT ) ) )?
             int alt4=2;
@@ -1026,7 +1026,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getBulletElementAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalMarkup.g:415:1: ( (lv_level_3_0= RULE_INT ) )
                     // InternalMarkup.g:416:1: (lv_level_3_0= RULE_INT )
@@ -1037,8 +1037,8 @@
                     lv_level_3_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_6); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_level_3_0, grammarAccess.getBulletElementAccess().getLevelINTTerminalRuleCall_2_1_0()); 
-                      		
+                      			newLeafNode(lv_level_3_0, grammarAccess.getBulletElementAccess().getLevelINTTerminalRuleCall_2_1_0());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -1046,11 +1046,11 @@
                       	            current = createModelElement(grammarAccess.getBulletElementRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"level",
-                              		lv_level_3_0, 
+                              		lv_level_3_0,
                               		"org.eclipse.ocl.xtext.markup.Markup.INT");
-                      	    
+
                     }
 
                     }
@@ -1068,7 +1068,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getBulletElementAccess().getLeftSquareBracketKeyword_3());
-                  
+
             }
             // InternalMarkup.g:437:1: ( (lv_elements_5_0= ruleMarkupElement ) )*
             loop5:
@@ -1089,9 +1089,9 @@
             	    // InternalMarkup.g:439:3: lv_elements_5_0= ruleMarkupElement
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getBulletElementAccess().getElementsMarkupElementParserRuleCall_4_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getBulletElementAccess().getElementsMarkupElementParserRuleCall_4_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_7);
             	    lv_elements_5_0=ruleMarkupElement();
@@ -1104,12 +1104,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getBulletElementRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"elements",
-            	              		lv_elements_5_0, 
+            	              		lv_elements_5_0,
             	              		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -1127,7 +1127,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_6, grammarAccess.getBulletElementAccess().getRightSquareBracketKeyword_5());
-                  
+
             }
 
             }
@@ -1136,14 +1136,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1164,7 +1164,7 @@
             // InternalMarkup.g:469:2: iv_ruleFontElement= ruleFontElement EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getFontElementRule()); 
+               newCompositeNode(grammarAccess.getFontElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleFontElement=ruleFontElement();
@@ -1172,18 +1172,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleFontElement; 
+               current =iv_ruleFontElement;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1203,8 +1203,8 @@
         EObject lv_elements_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:479:28: ( ( ( ( (lv_font_0_1= 'b' | lv_font_0_2= 'e' ) ) ) otherlv_1= '[' ( (lv_elements_2_0= ruleMarkupElement ) )* otherlv_3= ']' ) )
             // InternalMarkup.g:480:1: ( ( ( (lv_font_0_1= 'b' | lv_font_0_2= 'e' ) ) ) otherlv_1= '[' ( (lv_elements_2_0= ruleMarkupElement ) )* otherlv_3= ']' )
@@ -1243,7 +1243,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_font_0_1, grammarAccess.getFontElementAccess().getFontBKeyword_0_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -1251,7 +1251,7 @@
                       	            current = createModelElement(grammarAccess.getFontElementRule());
                       	        }
                              		setWithLastConsumed(current, "font", lv_font_0_1, null);
-                      	    
+
                     }
 
                     }
@@ -1263,7 +1263,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_font_0_2, grammarAccess.getFontElementAccess().getFontEKeyword_0_0_1());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -1271,7 +1271,7 @@
                       	            current = createModelElement(grammarAccess.getFontElementRule());
                       	        }
                              		setWithLastConsumed(current, "font", lv_font_0_2, null);
-                      	    
+
                     }
 
                     }
@@ -1289,7 +1289,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getFontElementAccess().getLeftSquareBracketKeyword_1());
-                  
+
             }
             // InternalMarkup.g:514:1: ( (lv_elements_2_0= ruleMarkupElement ) )*
             loop7:
@@ -1310,9 +1310,9 @@
             	    // InternalMarkup.g:516:3: lv_elements_2_0= ruleMarkupElement
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getFontElementAccess().getElementsMarkupElementParserRuleCall_2_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getFontElementAccess().getElementsMarkupElementParserRuleCall_2_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_7);
             	    lv_elements_2_0=ruleMarkupElement();
@@ -1325,12 +1325,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getFontElementRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"elements",
-            	              		lv_elements_2_0, 
+            	              		lv_elements_2_0,
             	              		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -1348,7 +1348,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getFontElementAccess().getRightSquareBracketKeyword_3());
-                  
+
             }
 
             }
@@ -1357,14 +1357,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1385,7 +1385,7 @@
             // InternalMarkup.g:546:2: iv_ruleFigureElement= ruleFigureElement EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getFigureElementRule()); 
+               newCompositeNode(grammarAccess.getFigureElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleFigureElement=ruleFigureElement();
@@ -1393,18 +1393,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleFigureElement; 
+               current =iv_ruleFigureElement;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1430,8 +1430,8 @@
         Token lv_requiredHeight_10_0=null;
         Token otherlv_11=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:556:28: ( (otherlv_0= 'figure' (otherlv_1= '#' ( (lv_def_2_0= RULE_ID ) ) )? otherlv_3= '[' ( (lv_src_4_0= RULE_STRING ) ) (otherlv_5= ',' ( (lv_alt_6_0= RULE_STRING ) ) (otherlv_7= ',' ( (lv_requiredWidth_8_0= RULE_INT ) ) (otherlv_9= ',' ( (lv_requiredHeight_10_0= RULE_INT ) ) )? )? )? otherlv_11= ']' ) )
             // InternalMarkup.g:557:1: (otherlv_0= 'figure' (otherlv_1= '#' ( (lv_def_2_0= RULE_ID ) ) )? otherlv_3= '[' ( (lv_src_4_0= RULE_STRING ) ) (otherlv_5= ',' ( (lv_alt_6_0= RULE_STRING ) ) (otherlv_7= ',' ( (lv_requiredWidth_8_0= RULE_INT ) ) (otherlv_9= ',' ( (lv_requiredHeight_10_0= RULE_INT ) ) )? )? )? otherlv_11= ']' )
@@ -1443,7 +1443,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getFigureElementAccess().getFigureKeyword_0());
-                  
+
             }
             // InternalMarkup.g:561:1: (otherlv_1= '#' ( (lv_def_2_0= RULE_ID ) ) )?
             int alt8=2;
@@ -1460,7 +1460,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getFigureElementAccess().getNumberSignKeyword_1_0());
-                          
+
                     }
                     // InternalMarkup.g:565:1: ( (lv_def_2_0= RULE_ID ) )
                     // InternalMarkup.g:566:1: (lv_def_2_0= RULE_ID )
@@ -1471,8 +1471,8 @@
                     lv_def_2_0=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_6); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_def_2_0, grammarAccess.getFigureElementAccess().getDefIDTerminalRuleCall_1_1_0()); 
-                      		
+                      			newLeafNode(lv_def_2_0, grammarAccess.getFigureElementAccess().getDefIDTerminalRuleCall_1_1_0());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -1480,11 +1480,11 @@
                       	            current = createModelElement(grammarAccess.getFigureElementRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"def",
-                              		lv_def_2_0, 
+                              		lv_def_2_0,
                               		"org.eclipse.ocl.xtext.markup.Markup.ID");
-                      	    
+
                     }
 
                     }
@@ -1502,7 +1502,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getFigureElementAccess().getLeftSquareBracketKeyword_2());
-                  
+
             }
             // InternalMarkup.g:587:1: ( (lv_src_4_0= RULE_STRING ) )
             // InternalMarkup.g:588:1: (lv_src_4_0= RULE_STRING )
@@ -1513,8 +1513,8 @@
             lv_src_4_0=(Token)match(input,RULE_STRING,FollowSets000.FOLLOW_11); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
-              			newLeafNode(lv_src_4_0, grammarAccess.getFigureElementAccess().getSrcSTRINGTerminalRuleCall_3_0()); 
-              		
+              			newLeafNode(lv_src_4_0, grammarAccess.getFigureElementAccess().getSrcSTRINGTerminalRuleCall_3_0());
+
             }
             if ( state.backtracking==0 ) {
 
@@ -1522,11 +1522,11 @@
               	            current = createModelElement(grammarAccess.getFigureElementRule());
               	        }
                      		setWithLastConsumed(
-                     			current, 
+                     			current,
                      			"src",
-                      		lv_src_4_0, 
+                      		lv_src_4_0,
                       		"org.eclipse.ocl.xtext.markup.Markup.STRING");
-              	    
+
             }
 
             }
@@ -1549,7 +1549,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getFigureElementAccess().getCommaKeyword_4_0());
-                          
+
                     }
                     // InternalMarkup.g:609:1: ( (lv_alt_6_0= RULE_STRING ) )
                     // InternalMarkup.g:610:1: (lv_alt_6_0= RULE_STRING )
@@ -1560,8 +1560,8 @@
                     lv_alt_6_0=(Token)match(input,RULE_STRING,FollowSets000.FOLLOW_11); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_alt_6_0, grammarAccess.getFigureElementAccess().getAltSTRINGTerminalRuleCall_4_1_0()); 
-                      		
+                      			newLeafNode(lv_alt_6_0, grammarAccess.getFigureElementAccess().getAltSTRINGTerminalRuleCall_4_1_0());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -1569,11 +1569,11 @@
                       	            current = createModelElement(grammarAccess.getFigureElementRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"alt",
-                              		lv_alt_6_0, 
+                              		lv_alt_6_0,
                               		"org.eclipse.ocl.xtext.markup.Markup.STRING");
-                      	    
+
                     }
 
                     }
@@ -1596,7 +1596,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_7, grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_0());
-                                  
+
                             }
                             // InternalMarkup.g:631:1: ( (lv_requiredWidth_8_0= RULE_INT ) )
                             // InternalMarkup.g:632:1: (lv_requiredWidth_8_0= RULE_INT )
@@ -1607,8 +1607,8 @@
                             lv_requiredWidth_8_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_11); if (state.failed) return current;
                             if ( state.backtracking==0 ) {
 
-                              			newLeafNode(lv_requiredWidth_8_0, grammarAccess.getFigureElementAccess().getRequiredWidthINTTerminalRuleCall_4_2_1_0()); 
-                              		
+                              			newLeafNode(lv_requiredWidth_8_0, grammarAccess.getFigureElementAccess().getRequiredWidthINTTerminalRuleCall_4_2_1_0());
+
                             }
                             if ( state.backtracking==0 ) {
 
@@ -1616,11 +1616,11 @@
                               	            current = createModelElement(grammarAccess.getFigureElementRule());
                               	        }
                                      		setWithLastConsumed(
-                                     			current, 
+                                     			current,
                                      			"requiredWidth",
-                                      		lv_requiredWidth_8_0, 
+                                      		lv_requiredWidth_8_0,
                                       		"org.eclipse.ocl.xtext.markup.Markup.INT");
-                              	    
+
                             }
 
                             }
@@ -1643,7 +1643,7 @@
                                     if ( state.backtracking==0 ) {
 
                                           	newLeafNode(otherlv_9, grammarAccess.getFigureElementAccess().getCommaKeyword_4_2_2_0());
-                                          
+
                                     }
                                     // InternalMarkup.g:653:1: ( (lv_requiredHeight_10_0= RULE_INT ) )
                                     // InternalMarkup.g:654:1: (lv_requiredHeight_10_0= RULE_INT )
@@ -1654,8 +1654,8 @@
                                     lv_requiredHeight_10_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_12); if (state.failed) return current;
                                     if ( state.backtracking==0 ) {
 
-                                      			newLeafNode(lv_requiredHeight_10_0, grammarAccess.getFigureElementAccess().getRequiredHeightINTTerminalRuleCall_4_2_2_1_0()); 
-                                      		
+                                      			newLeafNode(lv_requiredHeight_10_0, grammarAccess.getFigureElementAccess().getRequiredHeightINTTerminalRuleCall_4_2_2_1_0());
+
                                     }
                                     if ( state.backtracking==0 ) {
 
@@ -1663,11 +1663,11 @@
                                       	            current = createModelElement(grammarAccess.getFigureElementRule());
                                       	        }
                                              		setWithLastConsumed(
-                                             			current, 
+                                             			current,
                                              			"requiredHeight",
-                                              		lv_requiredHeight_10_0, 
+                                              		lv_requiredHeight_10_0,
                                               		"org.eclipse.ocl.xtext.markup.Markup.INT");
-                                      	    
+
                                     }
 
                                     }
@@ -1697,7 +1697,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_11, grammarAccess.getFigureElementAccess().getRightSquareBracketKeyword_5());
-                  
+
             }
 
             }
@@ -1706,14 +1706,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1734,7 +1734,7 @@
             // InternalMarkup.g:685:2: iv_ruleFigureRefElement= ruleFigureRefElement EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getFigureRefElementRule()); 
+               newCompositeNode(grammarAccess.getFigureRefElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleFigureRefElement=ruleFigureRefElement();
@@ -1742,18 +1742,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleFigureRefElement; 
+               current =iv_ruleFigureRefElement;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1771,8 +1771,8 @@
         Token otherlv_2=null;
         Token otherlv_3=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:695:28: ( (otherlv_0= 'figureRef' otherlv_1= '[' ( (otherlv_2= RULE_ID ) ) otherlv_3= ']' ) )
             // InternalMarkup.g:696:1: (otherlv_0= 'figureRef' otherlv_1= '[' ( (otherlv_2= RULE_ID ) ) otherlv_3= ']' )
@@ -1784,13 +1784,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getFigureRefElementAccess().getFigureRefKeyword_0());
-                  
+
             }
             otherlv_1=(Token)match(input,27,FollowSets000.FOLLOW_9); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getFigureRefElementAccess().getLeftSquareBracketKeyword_1());
-                  
+
             }
             // InternalMarkup.g:704:1: ( (otherlv_2= RULE_ID ) )
             // InternalMarkup.g:705:1: (otherlv_2= RULE_ID )
@@ -1799,22 +1799,22 @@
             // InternalMarkup.g:706:3: otherlv_2= RULE_ID
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getFigureRefElementRule());
               	        }
-                      
+
             }
             otherlv_2=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_12); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
-              		newLeafNode(otherlv_2, grammarAccess.getFigureRefElementAccess().getRefFigureElementCrossReference_2_0()); 
-              	
+              		newLeafNode(otherlv_2, grammarAccess.getFigureRefElementAccess().getRefFigureElementCrossReference_2_0());
+
             }
 
             }
@@ -1826,7 +1826,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getFigureRefElementAccess().getRightSquareBracketKeyword_3());
-                  
+
             }
 
             }
@@ -1835,14 +1835,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1863,7 +1863,7 @@
             // InternalMarkup.g:734:2: iv_ruleFootnoteElement= ruleFootnoteElement EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getFootnoteElementRule()); 
+               newCompositeNode(grammarAccess.getFootnoteElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleFootnoteElement=ruleFootnoteElement();
@@ -1871,18 +1871,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleFootnoteElement; 
+               current =iv_ruleFootnoteElement;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1901,8 +1901,8 @@
         EObject lv_elements_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:744:28: ( ( () otherlv_1= 'footnote' otherlv_2= '[' ( (lv_elements_3_0= ruleMarkupElement ) )* otherlv_4= ']' ) )
             // InternalMarkup.g:745:1: ( () otherlv_1= 'footnote' otherlv_2= '[' ( (lv_elements_3_0= ruleMarkupElement ) )* otherlv_4= ']' )
@@ -1911,19 +1911,19 @@
             // InternalMarkup.g:745:2: () otherlv_1= 'footnote' otherlv_2= '[' ( (lv_elements_3_0= ruleMarkupElement ) )* otherlv_4= ']'
             {
             // InternalMarkup.g:745:2: ()
-            // InternalMarkup.g:746:2: 
+            // InternalMarkup.g:746:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getFootnoteElementAccess().getFootnoteElementAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -1932,13 +1932,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getFootnoteElementAccess().getFootnoteKeyword_1());
-                  
+
             }
             otherlv_2=(Token)match(input,27,FollowSets000.FOLLOW_7); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getFootnoteElementAccess().getLeftSquareBracketKeyword_2());
-                  
+
             }
             // InternalMarkup.g:762:1: ( (lv_elements_3_0= ruleMarkupElement ) )*
             loop12:
@@ -1959,9 +1959,9 @@
             	    // InternalMarkup.g:764:3: lv_elements_3_0= ruleMarkupElement
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getFootnoteElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getFootnoteElementAccess().getElementsMarkupElementParserRuleCall_3_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_7);
             	    lv_elements_3_0=ruleMarkupElement();
@@ -1974,12 +1974,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getFootnoteElementRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"elements",
-            	              		lv_elements_3_0, 
+            	              		lv_elements_3_0,
             	              		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -1997,7 +1997,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getFootnoteElementAccess().getRightSquareBracketKeyword_4());
-                  
+
             }
 
             }
@@ -2006,14 +2006,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2034,7 +2034,7 @@
             // InternalMarkup.g:794:2: iv_ruleHeadingElement= ruleHeadingElement EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getHeadingElementRule()); 
+               newCompositeNode(grammarAccess.getHeadingElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleHeadingElement=ruleHeadingElement();
@@ -2042,18 +2042,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleHeadingElement; 
+               current =iv_ruleHeadingElement;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2074,8 +2074,8 @@
         EObject lv_elements_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:804:28: ( ( () otherlv_1= 'heading' (otherlv_2= ':' ( (lv_level_3_0= RULE_INT ) ) )? otherlv_4= '[' ( (lv_elements_5_0= ruleMarkupElement ) )* otherlv_6= ']' ) )
             // InternalMarkup.g:805:1: ( () otherlv_1= 'heading' (otherlv_2= ':' ( (lv_level_3_0= RULE_INT ) ) )? otherlv_4= '[' ( (lv_elements_5_0= ruleMarkupElement ) )* otherlv_6= ']' )
@@ -2084,19 +2084,19 @@
             // InternalMarkup.g:805:2: () otherlv_1= 'heading' (otherlv_2= ':' ( (lv_level_3_0= RULE_INT ) ) )? otherlv_4= '[' ( (lv_elements_5_0= ruleMarkupElement ) )* otherlv_6= ']'
             {
             // InternalMarkup.g:805:2: ()
-            // InternalMarkup.g:806:2: 
+            // InternalMarkup.g:806:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getHeadingElementAccess().getHeadingElementAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -2105,7 +2105,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getHeadingElementAccess().getHeadingKeyword_1());
-                  
+
             }
             // InternalMarkup.g:818:1: (otherlv_2= ':' ( (lv_level_3_0= RULE_INT ) ) )?
             int alt13=2;
@@ -2122,7 +2122,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getHeadingElementAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalMarkup.g:822:1: ( (lv_level_3_0= RULE_INT ) )
                     // InternalMarkup.g:823:1: (lv_level_3_0= RULE_INT )
@@ -2133,8 +2133,8 @@
                     lv_level_3_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_6); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_level_3_0, grammarAccess.getHeadingElementAccess().getLevelINTTerminalRuleCall_2_1_0()); 
-                      		
+                      			newLeafNode(lv_level_3_0, grammarAccess.getHeadingElementAccess().getLevelINTTerminalRuleCall_2_1_0());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -2142,11 +2142,11 @@
                       	            current = createModelElement(grammarAccess.getHeadingElementRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"level",
-                              		lv_level_3_0, 
+                              		lv_level_3_0,
                               		"org.eclipse.ocl.xtext.markup.Markup.INT");
-                      	    
+
                     }
 
                     }
@@ -2164,7 +2164,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getHeadingElementAccess().getLeftSquareBracketKeyword_3());
-                  
+
             }
             // InternalMarkup.g:844:1: ( (lv_elements_5_0= ruleMarkupElement ) )*
             loop14:
@@ -2185,9 +2185,9 @@
             	    // InternalMarkup.g:846:3: lv_elements_5_0= ruleMarkupElement
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getHeadingElementAccess().getElementsMarkupElementParserRuleCall_4_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getHeadingElementAccess().getElementsMarkupElementParserRuleCall_4_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_7);
             	    lv_elements_5_0=ruleMarkupElement();
@@ -2200,12 +2200,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getHeadingElementRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"elements",
-            	              		lv_elements_5_0, 
+            	              		lv_elements_5_0,
             	              		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -2223,7 +2223,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_6, grammarAccess.getHeadingElementAccess().getRightSquareBracketKeyword_5());
-                  
+
             }
 
             }
@@ -2232,14 +2232,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2260,7 +2260,7 @@
             // InternalMarkup.g:876:2: iv_ruleNewLineElement= ruleNewLineElement EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNewLineElementRule()); 
+               newCompositeNode(grammarAccess.getNewLineElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNewLineElement=ruleNewLineElement();
@@ -2268,18 +2268,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNewLineElement; 
+               current =iv_ruleNewLineElement;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2294,8 +2294,8 @@
 
         Token lv_text_0_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:886:28: ( ( (lv_text_0_0= RULE_NL ) ) )
             // InternalMarkup.g:887:1: ( (lv_text_0_0= RULE_NL ) )
@@ -2309,8 +2309,8 @@
             lv_text_0_0=(Token)match(input,RULE_NL,FollowSets000.FOLLOW_2); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
-              			newLeafNode(lv_text_0_0, grammarAccess.getNewLineElementAccess().getTextNLTerminalRuleCall_0()); 
-              		
+              			newLeafNode(lv_text_0_0, grammarAccess.getNewLineElementAccess().getTextNLTerminalRuleCall_0());
+
             }
             if ( state.backtracking==0 ) {
 
@@ -2318,11 +2318,11 @@
               	            current = createModelElement(grammarAccess.getNewLineElementRule());
               	        }
                      		setWithLastConsumed(
-                     			current, 
+                     			current,
                      			"text",
-                      		lv_text_0_0, 
+                      		lv_text_0_0,
                       		"org.eclipse.ocl.xtext.markup.Markup.NL");
-              	    
+
             }
 
             }
@@ -2334,14 +2334,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2362,7 +2362,7 @@
             // InternalMarkup.g:915:2: iv_ruleNullElement= ruleNullElement EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNullElementRule()); 
+               newCompositeNode(grammarAccess.getNullElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNullElement=ruleNullElement();
@@ -2370,18 +2370,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNullElement; 
+               current =iv_ruleNullElement;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2399,8 +2399,8 @@
         EObject lv_elements_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:925:28: ( ( () otherlv_1= '[' ( (lv_elements_2_0= ruleMarkupElement ) )* otherlv_3= ']' ) )
             // InternalMarkup.g:926:1: ( () otherlv_1= '[' ( (lv_elements_2_0= ruleMarkupElement ) )* otherlv_3= ']' )
@@ -2409,19 +2409,19 @@
             // InternalMarkup.g:926:2: () otherlv_1= '[' ( (lv_elements_2_0= ruleMarkupElement ) )* otherlv_3= ']'
             {
             // InternalMarkup.g:926:2: ()
-            // InternalMarkup.g:927:2: 
+            // InternalMarkup.g:927:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getNullElementAccess().getNullElementAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -2430,7 +2430,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getNullElementAccess().getLeftSquareBracketKeyword_1());
-                  
+
             }
             // InternalMarkup.g:939:1: ( (lv_elements_2_0= ruleMarkupElement ) )*
             loop15:
@@ -2451,9 +2451,9 @@
             	    // InternalMarkup.g:941:3: lv_elements_2_0= ruleMarkupElement
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getNullElementAccess().getElementsMarkupElementParserRuleCall_2_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getNullElementAccess().getElementsMarkupElementParserRuleCall_2_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_7);
             	    lv_elements_2_0=ruleMarkupElement();
@@ -2466,12 +2466,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getNullElementRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"elements",
-            	              		lv_elements_2_0, 
+            	              		lv_elements_2_0,
             	              		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -2489,7 +2489,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getNullElementAccess().getRightSquareBracketKeyword_3());
-                  
+
             }
 
             }
@@ -2498,14 +2498,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2526,7 +2526,7 @@
             // InternalMarkup.g:971:2: iv_ruleOCLCodeElement= ruleOCLCodeElement EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getOCLCodeElementRule()); 
+               newCompositeNode(grammarAccess.getOCLCodeElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleOCLCodeElement=ruleOCLCodeElement();
@@ -2534,18 +2534,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleOCLCodeElement; 
+               current =iv_ruleOCLCodeElement;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2564,8 +2564,8 @@
         EObject lv_elements_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:981:28: ( ( () otherlv_1= 'oclCode' otherlv_2= '[' ( (lv_elements_3_0= ruleMarkupElement ) )* otherlv_4= ']' ) )
             // InternalMarkup.g:982:1: ( () otherlv_1= 'oclCode' otherlv_2= '[' ( (lv_elements_3_0= ruleMarkupElement ) )* otherlv_4= ']' )
@@ -2574,19 +2574,19 @@
             // InternalMarkup.g:982:2: () otherlv_1= 'oclCode' otherlv_2= '[' ( (lv_elements_3_0= ruleMarkupElement ) )* otherlv_4= ']'
             {
             // InternalMarkup.g:982:2: ()
-            // InternalMarkup.g:983:2: 
+            // InternalMarkup.g:983:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getOCLCodeElementAccess().getOCLCodeElementAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -2595,13 +2595,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getOCLCodeElementAccess().getOclCodeKeyword_1());
-                  
+
             }
             otherlv_2=(Token)match(input,27,FollowSets000.FOLLOW_7); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getOCLCodeElementAccess().getLeftSquareBracketKeyword_2());
-                  
+
             }
             // InternalMarkup.g:999:1: ( (lv_elements_3_0= ruleMarkupElement ) )*
             loop16:
@@ -2622,9 +2622,9 @@
             	    // InternalMarkup.g:1001:3: lv_elements_3_0= ruleMarkupElement
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getOCLCodeElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getOCLCodeElementAccess().getElementsMarkupElementParserRuleCall_3_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_7);
             	    lv_elements_3_0=ruleMarkupElement();
@@ -2637,12 +2637,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getOCLCodeElementRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"elements",
-            	              		lv_elements_3_0, 
+            	              		lv_elements_3_0,
             	              		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -2660,7 +2660,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getOCLCodeElementAccess().getRightSquareBracketKeyword_4());
-                  
+
             }
 
             }
@@ -2669,14 +2669,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2697,7 +2697,7 @@
             // InternalMarkup.g:1031:2: iv_ruleOCLEvalElement= ruleOCLEvalElement EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getOCLEvalElementRule()); 
+               newCompositeNode(grammarAccess.getOCLEvalElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleOCLEvalElement=ruleOCLEvalElement();
@@ -2705,18 +2705,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleOCLEvalElement; 
+               current =iv_ruleOCLEvalElement;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2735,8 +2735,8 @@
         EObject lv_elements_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:1041:28: ( ( () otherlv_1= 'oclEval' otherlv_2= '[' ( (lv_elements_3_0= ruleMarkupElement ) )* otherlv_4= ']' ) )
             // InternalMarkup.g:1042:1: ( () otherlv_1= 'oclEval' otherlv_2= '[' ( (lv_elements_3_0= ruleMarkupElement ) )* otherlv_4= ']' )
@@ -2745,19 +2745,19 @@
             // InternalMarkup.g:1042:2: () otherlv_1= 'oclEval' otherlv_2= '[' ( (lv_elements_3_0= ruleMarkupElement ) )* otherlv_4= ']'
             {
             // InternalMarkup.g:1042:2: ()
-            // InternalMarkup.g:1043:2: 
+            // InternalMarkup.g:1043:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getOCLEvalElementAccess().getOCLEvalElementAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -2766,13 +2766,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getOCLEvalElementAccess().getOclEvalKeyword_1());
-                  
+
             }
             otherlv_2=(Token)match(input,27,FollowSets000.FOLLOW_7); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getOCLEvalElementAccess().getLeftSquareBracketKeyword_2());
-                  
+
             }
             // InternalMarkup.g:1059:1: ( (lv_elements_3_0= ruleMarkupElement ) )*
             loop17:
@@ -2793,9 +2793,9 @@
             	    // InternalMarkup.g:1061:3: lv_elements_3_0= ruleMarkupElement
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getOCLEvalElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getOCLEvalElementAccess().getElementsMarkupElementParserRuleCall_3_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_7);
             	    lv_elements_3_0=ruleMarkupElement();
@@ -2808,12 +2808,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getOCLEvalElementRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"elements",
-            	              		lv_elements_3_0, 
+            	              		lv_elements_3_0,
             	              		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -2831,7 +2831,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getOCLEvalElementAccess().getRightSquareBracketKeyword_4());
-                  
+
             }
 
             }
@@ -2840,14 +2840,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2868,7 +2868,7 @@
             // InternalMarkup.g:1091:2: iv_ruleOCLTextElement= ruleOCLTextElement EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getOCLTextElementRule()); 
+               newCompositeNode(grammarAccess.getOCLTextElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleOCLTextElement=ruleOCLTextElement();
@@ -2876,18 +2876,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleOCLTextElement; 
+               current =iv_ruleOCLTextElement;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2906,8 +2906,8 @@
         EObject lv_elements_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:1101:28: ( ( () otherlv_1= 'oclText' otherlv_2= '[' ( (lv_elements_3_0= ruleMarkupElement ) )* otherlv_4= ']' ) )
             // InternalMarkup.g:1102:1: ( () otherlv_1= 'oclText' otherlv_2= '[' ( (lv_elements_3_0= ruleMarkupElement ) )* otherlv_4= ']' )
@@ -2916,19 +2916,19 @@
             // InternalMarkup.g:1102:2: () otherlv_1= 'oclText' otherlv_2= '[' ( (lv_elements_3_0= ruleMarkupElement ) )* otherlv_4= ']'
             {
             // InternalMarkup.g:1102:2: ()
-            // InternalMarkup.g:1103:2: 
+            // InternalMarkup.g:1103:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getOCLTextElementAccess().getOCLTextElementAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -2937,13 +2937,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getOCLTextElementAccess().getOclTextKeyword_1());
-                  
+
             }
             otherlv_2=(Token)match(input,27,FollowSets000.FOLLOW_7); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getOCLTextElementAccess().getLeftSquareBracketKeyword_2());
-                  
+
             }
             // InternalMarkup.g:1119:1: ( (lv_elements_3_0= ruleMarkupElement ) )*
             loop18:
@@ -2964,9 +2964,9 @@
             	    // InternalMarkup.g:1121:3: lv_elements_3_0= ruleMarkupElement
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getOCLTextElementAccess().getElementsMarkupElementParserRuleCall_3_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getOCLTextElementAccess().getElementsMarkupElementParserRuleCall_3_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_7);
             	    lv_elements_3_0=ruleMarkupElement();
@@ -2979,12 +2979,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getOCLTextElementRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"elements",
-            	              		lv_elements_3_0, 
+            	              		lv_elements_3_0,
             	              		"org.eclipse.ocl.xtext.markup.Markup.MarkupElement");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -3002,7 +3002,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getOCLTextElementAccess().getRightSquareBracketKeyword_4());
-                  
+
             }
 
             }
@@ -3011,14 +3011,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3039,7 +3039,7 @@
             // InternalMarkup.g:1151:2: iv_ruleTextElement= ruleTextElement EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTextElementRule()); 
+               newCompositeNode(grammarAccess.getTextElementRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTextElement=ruleTextElement();
@@ -3047,18 +3047,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTextElement; 
+               current =iv_ruleTextElement;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3081,8 +3081,8 @@
         AntlrDatatypeRuleToken lv_text_1_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalMarkup.g:1161:28: ( ( ( ( (lv_text_0_1= RULE_ID | lv_text_0_2= RULE_WORD | lv_text_0_3= RULE_INT | lv_text_0_4= RULE_WS | lv_text_0_5= ':' | lv_text_0_6= '#' | lv_text_0_7= ',' ) ) )+ | ( (lv_text_1_0= ruleMarkupKeyword ) ) ) )
             // InternalMarkup.g:1162:1: ( ( ( (lv_text_0_1= RULE_ID | lv_text_0_2= RULE_WORD | lv_text_0_3= RULE_INT | lv_text_0_4= RULE_WS | lv_text_0_5= ':' | lv_text_0_6= '#' | lv_text_0_7= ',' ) ) )+ | ( (lv_text_1_0= ruleMarkupKeyword ) ) )
@@ -3174,8 +3174,8 @@
                     	            lv_text_0_1=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_13); if (state.failed) return current;
                     	            if ( state.backtracking==0 ) {
 
-                    	              			newLeafNode(lv_text_0_1, grammarAccess.getTextElementAccess().getTextIDTerminalRuleCall_0_0_0()); 
-                    	              		
+                    	              			newLeafNode(lv_text_0_1, grammarAccess.getTextElementAccess().getTextIDTerminalRuleCall_0_0_0());
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3183,11 +3183,11 @@
                     	              	            current = createModelElement(grammarAccess.getTextElementRule());
                     	              	        }
                     	                     		addWithLastConsumed(
-                    	                     			current, 
+                    	                     			current,
                     	                     			"text",
-                    	                      		lv_text_0_1, 
+                    	                      		lv_text_0_1,
                     	                      		"org.eclipse.ocl.xtext.markup.Markup.ID");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3198,8 +3198,8 @@
                     	            lv_text_0_2=(Token)match(input,RULE_WORD,FollowSets000.FOLLOW_13); if (state.failed) return current;
                     	            if ( state.backtracking==0 ) {
 
-                    	              			newLeafNode(lv_text_0_2, grammarAccess.getTextElementAccess().getTextWORDTerminalRuleCall_0_0_1()); 
-                    	              		
+                    	              			newLeafNode(lv_text_0_2, grammarAccess.getTextElementAccess().getTextWORDTerminalRuleCall_0_0_1());
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3207,11 +3207,11 @@
                     	              	            current = createModelElement(grammarAccess.getTextElementRule());
                     	              	        }
                     	                     		addWithLastConsumed(
-                    	                     			current, 
+                    	                     			current,
                     	                     			"text",
-                    	                      		lv_text_0_2, 
+                    	                      		lv_text_0_2,
                     	                      		"org.eclipse.ocl.xtext.markup.Markup.WORD");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3222,8 +3222,8 @@
                     	            lv_text_0_3=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_13); if (state.failed) return current;
                     	            if ( state.backtracking==0 ) {
 
-                    	              			newLeafNode(lv_text_0_3, grammarAccess.getTextElementAccess().getTextINTTerminalRuleCall_0_0_2()); 
-                    	              		
+                    	              			newLeafNode(lv_text_0_3, grammarAccess.getTextElementAccess().getTextINTTerminalRuleCall_0_0_2());
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3231,11 +3231,11 @@
                     	              	            current = createModelElement(grammarAccess.getTextElementRule());
                     	              	        }
                     	                     		addWithLastConsumed(
-                    	                     			current, 
+                    	                     			current,
                     	                     			"text",
-                    	                      		lv_text_0_3, 
+                    	                      		lv_text_0_3,
                     	                      		"org.eclipse.ocl.xtext.markup.Markup.INT");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3246,8 +3246,8 @@
                     	            lv_text_0_4=(Token)match(input,RULE_WS,FollowSets000.FOLLOW_13); if (state.failed) return current;
                     	            if ( state.backtracking==0 ) {
 
-                    	              			newLeafNode(lv_text_0_4, grammarAccess.getTextElementAccess().getTextWSTerminalRuleCall_0_0_3()); 
-                    	              		
+                    	              			newLeafNode(lv_text_0_4, grammarAccess.getTextElementAccess().getTextWSTerminalRuleCall_0_0_3());
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3255,11 +3255,11 @@
                     	              	            current = createModelElement(grammarAccess.getTextElementRule());
                     	              	        }
                     	                     		addWithLastConsumed(
-                    	                     			current, 
+                    	                     			current,
                     	                     			"text",
-                    	                      		lv_text_0_4, 
+                    	                      		lv_text_0_4,
                     	                      		"org.eclipse.ocl.xtext.markup.Markup.WS");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3271,7 +3271,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_text_0_5, grammarAccess.getTextElementAccess().getTextColonKeyword_0_0_4());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3279,7 +3279,7 @@
                     	              	            current = createModelElement(grammarAccess.getTextElementRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "text", lv_text_0_5, null);
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3291,7 +3291,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_text_0_6, grammarAccess.getTextElementAccess().getTextNumberSignKeyword_0_0_5());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3299,7 +3299,7 @@
                     	              	            current = createModelElement(grammarAccess.getTextElementRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "text", lv_text_0_6, null);
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3311,7 +3311,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_text_0_7, grammarAccess.getTextElementAccess().getTextCommaKeyword_0_0_6());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3319,7 +3319,7 @@
                     	              	            current = createModelElement(grammarAccess.getTextElementRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "text", lv_text_0_7, null);
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3357,9 +3357,9 @@
                     // InternalMarkup.g:1267:3: lv_text_1_0= ruleMarkupKeyword
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTextElementAccess().getTextMarkupKeywordParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTextElementAccess().getTextMarkupKeywordParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_text_1_0=ruleMarkupKeyword();
@@ -3372,12 +3372,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTextElementRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"text",
-                              		lv_text_1_0, 
+                              		lv_text_1_0,
                               		"org.eclipse.ocl.xtext.markup.Markup.MarkupKeyword");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -3395,14 +3395,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3410,7 +3410,7 @@
     // $ANTLR end "ruleTextElement"
 
     // $ANTLR start synpred11_InternalMarkup
-    public final void synpred11_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred11_InternalMarkup_fragment() throws RecognitionException {
         EObject this_FontElement_0 = null;
 
 
@@ -3418,9 +3418,9 @@
         // InternalMarkup.g:223:2: this_FontElement_0= ruleFontElement
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_FontElement_0=ruleFontElement();
@@ -3433,7 +3433,7 @@
     // $ANTLR end synpred11_InternalMarkup
 
     // $ANTLR start synpred13_InternalMarkup
-    public final void synpred13_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred13_InternalMarkup_fragment() throws RecognitionException {
         EObject this_BulletElement_2 = null;
 
 
@@ -3441,9 +3441,9 @@
         // InternalMarkup.g:249:2: this_BulletElement_2= ruleBulletElement
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_BulletElement_2=ruleBulletElement();
@@ -3456,7 +3456,7 @@
     // $ANTLR end synpred13_InternalMarkup
 
     // $ANTLR start synpred14_InternalMarkup
-    public final void synpred14_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred14_InternalMarkup_fragment() throws RecognitionException {
         EObject this_FigureElement_3 = null;
 
 
@@ -3464,9 +3464,9 @@
         // InternalMarkup.g:262:2: this_FigureElement_3= ruleFigureElement
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_FigureElement_3=ruleFigureElement();
@@ -3479,7 +3479,7 @@
     // $ANTLR end synpred14_InternalMarkup
 
     // $ANTLR start synpred15_InternalMarkup
-    public final void synpred15_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred15_InternalMarkup_fragment() throws RecognitionException {
         EObject this_FigureRefElement_4 = null;
 
 
@@ -3487,9 +3487,9 @@
         // InternalMarkup.g:275:2: this_FigureRefElement_4= ruleFigureRefElement
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_FigureRefElement_4=ruleFigureRefElement();
@@ -3502,7 +3502,7 @@
     // $ANTLR end synpred15_InternalMarkup
 
     // $ANTLR start synpred16_InternalMarkup
-    public final void synpred16_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred16_InternalMarkup_fragment() throws RecognitionException {
         EObject this_FootnoteElement_5 = null;
 
 
@@ -3510,9 +3510,9 @@
         // InternalMarkup.g:288:2: this_FootnoteElement_5= ruleFootnoteElement
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_FootnoteElement_5=ruleFootnoteElement();
@@ -3525,7 +3525,7 @@
     // $ANTLR end synpred16_InternalMarkup
 
     // $ANTLR start synpred17_InternalMarkup
-    public final void synpred17_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred17_InternalMarkup_fragment() throws RecognitionException {
         EObject this_HeadingElement_6 = null;
 
 
@@ -3533,9 +3533,9 @@
         // InternalMarkup.g:301:2: this_HeadingElement_6= ruleHeadingElement
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_HeadingElement_6=ruleHeadingElement();
@@ -3548,7 +3548,7 @@
     // $ANTLR end synpred17_InternalMarkup
 
     // $ANTLR start synpred19_InternalMarkup
-    public final void synpred19_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred19_InternalMarkup_fragment() throws RecognitionException {
         EObject this_OCLCodeElement_8 = null;
 
 
@@ -3556,9 +3556,9 @@
         // InternalMarkup.g:327:2: this_OCLCodeElement_8= ruleOCLCodeElement
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_OCLCodeElement_8=ruleOCLCodeElement();
@@ -3571,7 +3571,7 @@
     // $ANTLR end synpred19_InternalMarkup
 
     // $ANTLR start synpred20_InternalMarkup
-    public final void synpred20_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred20_InternalMarkup_fragment() throws RecognitionException {
         EObject this_OCLEvalElement_9 = null;
 
 
@@ -3579,9 +3579,9 @@
         // InternalMarkup.g:340:2: this_OCLEvalElement_9= ruleOCLEvalElement
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_OCLEvalElement_9=ruleOCLEvalElement();
@@ -3594,7 +3594,7 @@
     // $ANTLR end synpred20_InternalMarkup
 
     // $ANTLR start synpred21_InternalMarkup
-    public final void synpred21_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred21_InternalMarkup_fragment() throws RecognitionException {
         EObject this_OCLTextElement_10 = null;
 
 
@@ -3602,9 +3602,9 @@
         // InternalMarkup.g:353:2: this_OCLTextElement_10= ruleOCLTextElement
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_OCLTextElement_10=ruleOCLTextElement();
@@ -3617,7 +3617,7 @@
     // $ANTLR end synpred21_InternalMarkup
 
     // $ANTLR start synpred43_InternalMarkup
-    public final void synpred43_InternalMarkup_fragment() throws RecognitionException {   
+    public final void synpred43_InternalMarkup_fragment() throws RecognitionException {
         Token lv_text_0_1=null;
         Token lv_text_0_2=null;
         Token lv_text_0_3=null;
@@ -3949,10 +3949,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA3_1 = input.LA(1);
 
-                         
+
                         int index3_1 = input.index();
                         input.rewind();
                         s = -1;
@@ -3960,14 +3960,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_1);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA3_2 = input.LA(1);
 
-                         
+
                         int index3_2 = input.index();
                         input.rewind();
                         s = -1;
@@ -3975,14 +3975,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_2);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA3_4 = input.LA(1);
 
-                         
+
                         int index3_4 = input.index();
                         input.rewind();
                         s = -1;
@@ -3990,14 +3990,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_4);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA3_5 = input.LA(1);
 
-                         
+
                         int index3_5 = input.index();
                         input.rewind();
                         s = -1;
@@ -4005,14 +4005,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_5);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA3_6 = input.LA(1);
 
-                         
+
                         int index3_6 = input.index();
                         input.rewind();
                         s = -1;
@@ -4020,14 +4020,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_6);
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA3_7 = input.LA(1);
 
-                         
+
                         int index3_7 = input.index();
                         input.rewind();
                         s = -1;
@@ -4035,14 +4035,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_7);
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA3_8 = input.LA(1);
 
-                         
+
                         int index3_8 = input.index();
                         input.rewind();
                         s = -1;
@@ -4050,14 +4050,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_8);
                         if ( s>=0 ) return s;
                         break;
-                    case 7 : 
+                    case 7 :
                         int LA3_10 = input.LA(1);
 
-                         
+
                         int index3_10 = input.index();
                         input.rewind();
                         s = -1;
@@ -4065,14 +4065,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_10);
                         if ( s>=0 ) return s;
                         break;
-                    case 8 : 
+                    case 8 :
                         int LA3_11 = input.LA(1);
 
-                         
+
                         int index3_11 = input.index();
                         input.rewind();
                         s = -1;
@@ -4080,14 +4080,14 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_11);
                         if ( s>=0 ) return s;
                         break;
-                    case 9 : 
+                    case 9 :
                         int LA3_12 = input.LA(1);
 
-                         
+
                         int index3_12 = input.index();
                         input.rewind();
                         s = -1;
@@ -4095,7 +4095,7 @@
 
                         else if ( (true) ) {s = 13;}
 
-                         
+
                         input.seek(index3_12);
                         if ( s>=0 ) return s;
                         break;
@@ -4154,10 +4154,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA20_2 = input.LA(1);
 
-                         
+
                         int index20_2 = input.index();
                         input.rewind();
                         s = -1;
@@ -4165,14 +4165,14 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index20_2);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA20_3 = input.LA(1);
 
-                         
+
                         int index20_3 = input.index();
                         input.rewind();
                         s = -1;
@@ -4180,14 +4180,14 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index20_3);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA20_4 = input.LA(1);
 
-                         
+
                         int index20_4 = input.index();
                         input.rewind();
                         s = -1;
@@ -4195,14 +4195,14 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index20_4);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA20_5 = input.LA(1);
 
-                         
+
                         int index20_5 = input.index();
                         input.rewind();
                         s = -1;
@@ -4210,14 +4210,14 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index20_5);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA20_6 = input.LA(1);
 
-                         
+
                         int index20_6 = input.index();
                         input.rewind();
                         s = -1;
@@ -4225,14 +4225,14 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index20_6);
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA20_7 = input.LA(1);
 
-                         
+
                         int index20_7 = input.index();
                         input.rewind();
                         s = -1;
@@ -4240,14 +4240,14 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index20_7);
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA20_8 = input.LA(1);
 
-                         
+
                         int index20_8 = input.index();
                         input.rewind();
                         s = -1;
@@ -4255,7 +4255,7 @@
 
                         else if ( (true) ) {s = 1;}
 
-                         
+
                         input.seek(index20_8);
                         if ( s>=0 ) return s;
                         break;
@@ -4267,9 +4267,9 @@
             throw nvae;
         }
     }
- 
 
-    
+
+
     private static class FollowSets000 {
         public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
         public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
diff --git a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/serializer/AbstractMarkupSemanticSequencer.java b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/serializer/AbstractMarkupSemanticSequencer.java
index dcf2362..05072cf 100644
--- a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/serializer/AbstractMarkupSemanticSequencer.java
+++ b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/serializer/AbstractMarkupSemanticSequencer.java
@@ -42,7 +42,7 @@
 
 	@Inject
 	private MarkupGrammarAccess grammarAccess;
-	
+
 	@Override
 	public void sequence(ISerializationContext context, EObject semanticObject) {
 		EPackage epackage = semanticObject.eClass().getEPackage();
@@ -52,49 +52,49 @@
 		if (epackage == MarkupPackage.eINSTANCE)
 			switch (semanticObject.eClass().getClassifierID()) {
 			case MarkupPackage.BULLET_ELEMENT:
-				sequence_BulletElement(context, (BulletElement) semanticObject); 
-				return; 
+				sequence_BulletElement(context, (BulletElement) semanticObject);
+				return;
 			case MarkupPackage.FIGURE_ELEMENT:
-				sequence_FigureElement(context, (FigureElement) semanticObject); 
-				return; 
+				sequence_FigureElement(context, (FigureElement) semanticObject);
+				return;
 			case MarkupPackage.FIGURE_REF_ELEMENT:
-				sequence_FigureRefElement(context, (FigureRefElement) semanticObject); 
-				return; 
+				sequence_FigureRefElement(context, (FigureRefElement) semanticObject);
+				return;
 			case MarkupPackage.FONT_ELEMENT:
-				sequence_FontElement(context, (FontElement) semanticObject); 
-				return; 
+				sequence_FontElement(context, (FontElement) semanticObject);
+				return;
 			case MarkupPackage.FOOTNOTE_ELEMENT:
-				sequence_FootnoteElement(context, (FootnoteElement) semanticObject); 
-				return; 
+				sequence_FootnoteElement(context, (FootnoteElement) semanticObject);
+				return;
 			case MarkupPackage.HEADING_ELEMENT:
-				sequence_HeadingElement(context, (HeadingElement) semanticObject); 
-				return; 
+				sequence_HeadingElement(context, (HeadingElement) semanticObject);
+				return;
 			case MarkupPackage.MARKUP:
-				sequence_Markup(context, (Markup) semanticObject); 
-				return; 
+				sequence_Markup(context, (Markup) semanticObject);
+				return;
 			case MarkupPackage.NEW_LINE_ELEMENT:
-				sequence_NewLineElement(context, (NewLineElement) semanticObject); 
-				return; 
+				sequence_NewLineElement(context, (NewLineElement) semanticObject);
+				return;
 			case MarkupPackage.NULL_ELEMENT:
-				sequence_NullElement(context, (NullElement) semanticObject); 
-				return; 
+				sequence_NullElement(context, (NullElement) semanticObject);
+				return;
 			case MarkupPackage.OCL_CODE_ELEMENT:
-				sequence_OCLCodeElement(context, (OCLCodeElement) semanticObject); 
-				return; 
+				sequence_OCLCodeElement(context, (OCLCodeElement) semanticObject);
+				return;
 			case MarkupPackage.OCL_EVAL_ELEMENT:
-				sequence_OCLEvalElement(context, (OCLEvalElement) semanticObject); 
-				return; 
+				sequence_OCLEvalElement(context, (OCLEvalElement) semanticObject);
+				return;
 			case MarkupPackage.OCL_TEXT_ELEMENT:
-				sequence_OCLTextElement(context, (OCLTextElement) semanticObject); 
-				return; 
+				sequence_OCLTextElement(context, (OCLTextElement) semanticObject);
+				return;
 			case MarkupPackage.TEXT_ELEMENT:
-				sequence_TextElement(context, (TextElement) semanticObject); 
-				return; 
+				sequence_TextElement(context, (TextElement) semanticObject);
+				return;
 			}
 		if (errorAcceptor != null)
 			errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
 	}
-	
+
 	/**
 	 * Contexts:
 	 *     MarkupElement returns BulletElement
@@ -106,8 +106,8 @@
 	protected void sequence_BulletElement(ISerializationContext context, BulletElement semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MarkupElement returns FigureElement
@@ -119,8 +119,8 @@
 	protected void sequence_FigureElement(ISerializationContext context, FigureElement semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MarkupElement returns FigureRefElement
@@ -138,8 +138,8 @@
 		feeder.accept(grammarAccess.getFigureRefElementAccess().getRefFigureElementIDTerminalRuleCall_2_0_1(), semanticObject.getRef());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MarkupElement returns FontElement
@@ -151,8 +151,8 @@
 	protected void sequence_FontElement(ISerializationContext context, FontElement semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MarkupElement returns FootnoteElement
@@ -164,8 +164,8 @@
 	protected void sequence_FootnoteElement(ISerializationContext context, FootnoteElement semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MarkupElement returns HeadingElement
@@ -177,8 +177,8 @@
 	protected void sequence_HeadingElement(ISerializationContext context, HeadingElement semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     Markup returns Markup
@@ -189,8 +189,8 @@
 	protected void sequence_Markup(ISerializationContext context, Markup semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MarkupElement returns NewLineElement
@@ -208,8 +208,8 @@
 		feeder.accept(grammarAccess.getNewLineElementAccess().getTextNLTerminalRuleCall_0(), semanticObject.getText());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MarkupElement returns NullElement
@@ -221,8 +221,8 @@
 	protected void sequence_NullElement(ISerializationContext context, NullElement semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MarkupElement returns OCLCodeElement
@@ -234,8 +234,8 @@
 	protected void sequence_OCLCodeElement(ISerializationContext context, OCLCodeElement semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MarkupElement returns OCLEvalElement
@@ -247,8 +247,8 @@
 	protected void sequence_OCLEvalElement(ISerializationContext context, OCLEvalElement semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MarkupElement returns OCLTextElement
@@ -260,8 +260,8 @@
 	protected void sequence_OCLTextElement(ISerializationContext context, OCLTextElement semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     MarkupElement returns TextElement
@@ -270,20 +270,20 @@
 	 * Constraint:
 	 *     (
 	 *         (
-	 *             text+=ID | 
-	 *             text+=WORD | 
-	 *             text+=INT | 
-	 *             text+=WS | 
-	 *             text+=':' | 
-	 *             text+='#' | 
+	 *             text+=ID |
+	 *             text+=WORD |
+	 *             text+=INT |
+	 *             text+=WS |
+	 *             text+=':' |
+	 *             text+='#' |
 	 *             text+=','
-	 *         )+ | 
+	 *         )+ |
 	 *         text+=MarkupKeyword
 	 *     )
 	 */
 	protected void sequence_TextElement(ISerializationContext context, TextElement semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/serializer/AbstractMarkupSyntacticSequencer.java b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/serializer/AbstractMarkupSyntacticSequencer.java
index 39e34cd..f03f8e2 100644
--- a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/serializer/AbstractMarkupSyntacticSequencer.java
+++ b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/serializer/AbstractMarkupSyntacticSequencer.java
@@ -25,18 +25,18 @@
 public abstract class AbstractMarkupSyntacticSequencer extends AbstractSyntacticSequencer {
 
 	protected MarkupGrammarAccess grammarAccess;
-	
+
 	@Inject
 	protected void init(IGrammarAccess access) {
 		grammarAccess = (MarkupGrammarAccess) access;
 	}
-	
+
 	@Override
 	protected String getUnassignedRuleCallToken(EObject semanticObject, RuleCall ruleCall, INode node) {
 		return "";
 	}
-	
-	
+
+
 	@Override
 	protected void emitUnassignedTokens(EObject semanticObject, ISynTransition transition, INode fromNode, INode toNode) {
 		if (transition.getAmbiguousSyntaxes().isEmpty()) return;
diff --git a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/services/MarkupGrammarAccess.java b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/services/MarkupGrammarAccess.java
index a1c61f9..cc5365a 100644
--- a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/services/MarkupGrammarAccess.java
+++ b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/services/MarkupGrammarAccess.java
@@ -22,13 +22,13 @@
 
 @Singleton
 public class MarkupGrammarAccess extends AbstractGrammarElementFinder {
-	
-	
+
+
 	public class MarkupElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.markup.Markup.Markup");
 		private final Assignment cElementsAssignment = (Assignment)rule.eContents().get(1);
 		private final RuleCall cElementsMarkupElementParserRuleCall_0 = (RuleCall)cElementsAssignment.eContents().get(0);
-		
+
 		//Markup:
 		//	elements+=MarkupElement*;
 		@Override public ParserRule getRule() { return rule; }
@@ -53,9 +53,18 @@
 		private final Keyword cOclCodeKeyword_7 = (Keyword)cAlternatives.eContents().get(7);
 		private final Keyword cOclEvalKeyword_8 = (Keyword)cAlternatives.eContents().get(8);
 		private final Keyword cOclTextKeyword_9 = (Keyword)cAlternatives.eContents().get(9);
-		
+
 		//MarkupKeyword:
-		//	'b' | 'e' | 'bullet' | 'figure' | 'figureRef' | 'footnote' | 'heading' | 'oclCode' | 'oclEval' | 'oclText';
+		//	'b'
+		//	| 'e'
+		//	| 'bullet'
+		//	| 'figure'
+		//	| 'figureRef'
+		//	| 'footnote'
+		//	| 'heading'
+		//	| 'oclCode'
+		//	| 'oclEval'
+		//	| 'oclText';
 		@Override public ParserRule getRule() { return rule; }
 
 		//'b' | 'e' | 'bullet' | 'figure' | 'figureRef' | 'footnote' | 'heading' | 'oclCode' | 'oclEval' | 'oclText'
@@ -107,11 +116,20 @@
 		private final RuleCall cOCLEvalElementParserRuleCall_9 = (RuleCall)cAlternatives.eContents().get(9);
 		private final RuleCall cOCLTextElementParserRuleCall_10 = (RuleCall)cAlternatives.eContents().get(10);
 		private final RuleCall cTextElementParserRuleCall_11 = (RuleCall)cAlternatives.eContents().get(11);
-		
+
 		//MarkupElement:
-		//	FontElement | NewLineElement | BulletElement | FigureElement | FigureRefElement | FootnoteElement | HeadingElement |
-		//	NullElement | OCLCodeElement | OCLEvalElement | OCLTextElement | TextElement
-		//	// Last to give everything else a try first
+		//	FontElement
+		//	| NewLineElement
+		//	| BulletElement
+		//	| FigureElement
+		//	| FigureRefElement
+		//	| FootnoteElement
+		//	| HeadingElement
+		//	| NullElement
+		//	| OCLCodeElement
+		//	| OCLEvalElement
+		//	| OCLTextElement
+		//	| TextElement // Last to give everything else a try first
 		//;
 		@Override public ParserRule getRule() { return rule; }
 
@@ -169,7 +187,7 @@
 		private final Assignment cElementsAssignment_4 = (Assignment)cGroup.eContents().get(4);
 		private final RuleCall cElementsMarkupElementParserRuleCall_4_0 = (RuleCall)cElementsAssignment_4.eContents().get(0);
 		private final Keyword cRightSquareBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-		
+
 		//BulletElement:
 		//	{BulletElement} 'bullet' (':' level=INT)? '[' elements+=MarkupElement* ']';
 		@Override public ParserRule getRule() { return rule; }
@@ -219,7 +237,7 @@
 		private final Assignment cElementsAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cElementsMarkupElementParserRuleCall_2_0 = (RuleCall)cElementsAssignment_2.eContents().get(0);
 		private final Keyword cRightSquareBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		
+
 		//FontElement:
 		//	font=('b' | 'e') '[' elements+=MarkupElement* ']';
 		@Override public ParserRule getRule() { return rule; }
@@ -276,7 +294,7 @@
 		private final Assignment cRequiredHeightAssignment_4_2_2_1 = (Assignment)cGroup_4_2_2.eContents().get(1);
 		private final RuleCall cRequiredHeightINTTerminalRuleCall_4_2_2_1_0 = (RuleCall)cRequiredHeightAssignment_4_2_2_1.eContents().get(0);
 		private final Keyword cRightSquareBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-		
+
 		//FigureElement:
 		//	'figure' ('#' def=ID)? '[' src=STRING (',' alt=STRING (',' requiredWidth=INT (',' requiredHeight=INT)?)?)? ']';
 		@Override public ParserRule getRule() { return rule; }
@@ -357,7 +375,7 @@
 		private final CrossReference cRefFigureElementCrossReference_2_0 = (CrossReference)cRefAssignment_2.eContents().get(0);
 		private final RuleCall cRefFigureElementIDTerminalRuleCall_2_0_1 = (RuleCall)cRefFigureElementCrossReference_2_0.eContents().get(1);
 		private final Keyword cRightSquareBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		
+
 		//FigureRefElement:
 		//	'figureRef' '[' ref=[FigureElement] ']';
 		@Override public ParserRule getRule() { return rule; }
@@ -393,7 +411,7 @@
 		private final Assignment cElementsAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cElementsMarkupElementParserRuleCall_3_0 = (RuleCall)cElementsAssignment_3.eContents().get(0);
 		private final Keyword cRightSquareBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//FootnoteElement:
 		//	{FootnoteElement} 'footnote' '[' elements+=MarkupElement* ']';
 		@Override public ParserRule getRule() { return rule; }
@@ -433,7 +451,7 @@
 		private final Assignment cElementsAssignment_4 = (Assignment)cGroup.eContents().get(4);
 		private final RuleCall cElementsMarkupElementParserRuleCall_4_0 = (RuleCall)cElementsAssignment_4.eContents().get(0);
 		private final Keyword cRightSquareBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-		
+
 		//HeadingElement:
 		//	{HeadingElement} 'heading' (':' level=INT)? '[' elements+=MarkupElement* ']';
 		@Override public ParserRule getRule() { return rule; }
@@ -476,7 +494,7 @@
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.markup.Markup.NewLineElement");
 		private final Assignment cTextAssignment = (Assignment)rule.eContents().get(1);
 		private final RuleCall cTextNLTerminalRuleCall_0 = (RuleCall)cTextAssignment.eContents().get(0);
-		
+
 		//NewLineElement:
 		//	text=NL;
 		@Override public ParserRule getRule() { return rule; }
@@ -496,7 +514,7 @@
 		private final Assignment cElementsAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cElementsMarkupElementParserRuleCall_2_0 = (RuleCall)cElementsAssignment_2.eContents().get(0);
 		private final Keyword cRightSquareBracketKeyword_3 = (Keyword)cGroup.eContents().get(3);
-		
+
 		//NullElement:
 		//	{NullElement} '[' elements+=MarkupElement* ']';
 		@Override public ParserRule getRule() { return rule; }
@@ -529,7 +547,7 @@
 		private final Assignment cElementsAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cElementsMarkupElementParserRuleCall_3_0 = (RuleCall)cElementsAssignment_3.eContents().get(0);
 		private final Keyword cRightSquareBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//OCLCodeElement:
 		//	{OCLCodeElement} 'oclCode' '[' elements+=MarkupElement* ']';
 		@Override public ParserRule getRule() { return rule; }
@@ -565,7 +583,7 @@
 		private final Assignment cElementsAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cElementsMarkupElementParserRuleCall_3_0 = (RuleCall)cElementsAssignment_3.eContents().get(0);
 		private final Keyword cRightSquareBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//OCLEvalElement:
 		//	{OCLEvalElement} 'oclEval' '[' elements+=MarkupElement* ']';
 		@Override public ParserRule getRule() { return rule; }
@@ -601,7 +619,7 @@
 		private final Assignment cElementsAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cElementsMarkupElementParserRuleCall_3_0 = (RuleCall)cElementsAssignment_3.eContents().get(0);
 		private final Keyword cRightSquareBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//OCLTextElement:
 		//	{OCLTextElement} 'oclText' '[' elements+=MarkupElement* ']';
 		@Override public ParserRule getRule() { return rule; }
@@ -642,7 +660,7 @@
 		private final Keyword cTextCommaKeyword_0_0_6 = (Keyword)cTextAlternatives_0_0.eContents().get(6);
 		private final Assignment cTextAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
 		private final RuleCall cTextMarkupKeywordParserRuleCall_1_0 = (RuleCall)cTextAssignment_1.eContents().get(0);
-		
+
 		//TextElement:
 		//	text+=(ID | WORD | INT | WS | ':' | '#' | ',')+ | text+=MarkupKeyword;
 		@Override public ParserRule getRule() { return rule; }
@@ -683,8 +701,8 @@
 		//MarkupKeyword
 		public RuleCall getTextMarkupKeywordParserRuleCall_1_0() { return cTextMarkupKeywordParserRuleCall_1_0; }
 	}
-	
-	
+
+
 	private final MarkupElements pMarkup;
 	private final TerminalRule tNUMBER;
 	private final TerminalRule tLETTER;
@@ -712,7 +730,7 @@
 	private final OCLEvalElementElements pOCLEvalElement;
 	private final OCLTextElementElements pOCLTextElement;
 	private final TextElementElements pTextElement;
-	
+
 	private final Grammar grammar;
 
 	@Inject
@@ -746,7 +764,7 @@
 		this.pOCLTextElement = new OCLTextElementElements();
 		this.pTextElement = new TextElementElements();
 	}
-	
+
 	protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
 		Grammar grammar = grammarProvider.getGrammar(this);
 		while (grammar != null) {
@@ -762,20 +780,20 @@
 		}
 		return grammar;
 	}
-	
+
 	@Override
 	public Grammar getGrammar() {
 		return grammar;
 	}
-	
 
-	
+
+
 	//Markup:
 	//	elements+=MarkupElement*;
 	public MarkupElements getMarkupAccess() {
 		return pMarkup;
 	}
-	
+
 	public ParserRule getMarkupRule() {
 		return getMarkupAccess().getRule();
 	}
@@ -784,93 +802,111 @@
 	//	'0'..'9';
 	public TerminalRule getNUMBERRule() {
 		return tNUMBER;
-	} 
+	}
 
 	//terminal fragment LETTER:
 	//	'a'..'z' | 'A'..'Z' | '_';
 	public TerminalRule getLETTERRule() {
 		return tLETTER;
-	} 
+	}
 
 	//terminal fragment ESCAPED:
 	//	'\\' ('b' | 't' | 'n' | 'f' | 'r' | '"' | "'" | '\\' | '<' | '>' | '[' | ']');
 	public TerminalRule getESCAPEDRule() {
 		return tESCAPED;
-	} 
+	}
 
 	//terminal fragment VERTICAL_WS:
 	//	'\n' | '\r';
 	public TerminalRule getVERTICAL_WSRule() {
 		return tVERTICAL_WS;
-	} 
+	}
 
 	//terminal fragment HORIZONTAL_WS:
 	//	' ' | '\t';
 	public TerminalRule getHORIZONTAL_WSRule() {
 		return tHORIZONTAL_WS;
-	} 
+	}
 
 	//terminal INT:
 	//	NUMBER+;
 	public TerminalRule getINTRule() {
 		return tINT;
-	} 
+	}
 
 	//terminal STRING:
 	//	'"' (ESCAPED | !('\\' | '"'))* '"';
 	public TerminalRule getSTRINGRule() {
 		return tSTRING;
-	} 
+	}
 
 	//terminal ID:
 	//	LETTER (LETTER | NUMBER)*;
 	public TerminalRule getIDRule() {
 		return tID;
-	} 
+	}
 
 	//terminal WORD:
 	//	ESCAPED | !('\\' | '"' | '[' | ']' | ':' | '#' | ',' | HORIZONTAL_WS | VERTICAL_WS)+;
 	public TerminalRule getWORDRule() {
 		return tWORD;
-	} 
+	}
 
 	//terminal NL:
 	//	HORIZONTAL_WS* VERTICAL_WS+;
 	public TerminalRule getNLRule() {
 		return tNL;
-	} 
+	}
 
 	//terminal WS:
 	//	HORIZONTAL_WS+;
 	public TerminalRule getWSRule() {
 		return tWS;
-	} 
+	}
 
 	//terminal ANY_OTHER:
 	//	.;
 	public TerminalRule getANY_OTHERRule() {
 		return tANY_OTHER;
-	} 
+	}
 
 	//MarkupKeyword:
-	//	'b' | 'e' | 'bullet' | 'figure' | 'figureRef' | 'footnote' | 'heading' | 'oclCode' | 'oclEval' | 'oclText';
+	//	'b'
+	//	| 'e'
+	//	| 'bullet'
+	//	| 'figure'
+	//	| 'figureRef'
+	//	| 'footnote'
+	//	| 'heading'
+	//	| 'oclCode'
+	//	| 'oclEval'
+	//	| 'oclText';
 	public MarkupKeywordElements getMarkupKeywordAccess() {
 		return pMarkupKeyword;
 	}
-	
+
 	public ParserRule getMarkupKeywordRule() {
 		return getMarkupKeywordAccess().getRule();
 	}
 
 	//MarkupElement:
-	//	FontElement | NewLineElement | BulletElement | FigureElement | FigureRefElement | FootnoteElement | HeadingElement |
-	//	NullElement | OCLCodeElement | OCLEvalElement | OCLTextElement | TextElement
-	//	// Last to give everything else a try first
+	//	FontElement
+	//	| NewLineElement
+	//	| BulletElement
+	//	| FigureElement
+	//	| FigureRefElement
+	//	| FootnoteElement
+	//	| HeadingElement
+	//	| NullElement
+	//	| OCLCodeElement
+	//	| OCLEvalElement
+	//	| OCLTextElement
+	//	| TextElement // Last to give everything else a try first
 	//;
 	public MarkupElementElements getMarkupElementAccess() {
 		return pMarkupElement;
 	}
-	
+
 	public ParserRule getMarkupElementRule() {
 		return getMarkupElementAccess().getRule();
 	}
@@ -880,7 +916,7 @@
 	public BulletElementElements getBulletElementAccess() {
 		return pBulletElement;
 	}
-	
+
 	public ParserRule getBulletElementRule() {
 		return getBulletElementAccess().getRule();
 	}
@@ -890,7 +926,7 @@
 	public FontElementElements getFontElementAccess() {
 		return pFontElement;
 	}
-	
+
 	public ParserRule getFontElementRule() {
 		return getFontElementAccess().getRule();
 	}
@@ -900,7 +936,7 @@
 	public FigureElementElements getFigureElementAccess() {
 		return pFigureElement;
 	}
-	
+
 	public ParserRule getFigureElementRule() {
 		return getFigureElementAccess().getRule();
 	}
@@ -910,7 +946,7 @@
 	public FigureRefElementElements getFigureRefElementAccess() {
 		return pFigureRefElement;
 	}
-	
+
 	public ParserRule getFigureRefElementRule() {
 		return getFigureRefElementAccess().getRule();
 	}
@@ -920,7 +956,7 @@
 	public FootnoteElementElements getFootnoteElementAccess() {
 		return pFootnoteElement;
 	}
-	
+
 	public ParserRule getFootnoteElementRule() {
 		return getFootnoteElementAccess().getRule();
 	}
@@ -930,7 +966,7 @@
 	public HeadingElementElements getHeadingElementAccess() {
 		return pHeadingElement;
 	}
-	
+
 	public ParserRule getHeadingElementRule() {
 		return getHeadingElementAccess().getRule();
 	}
@@ -940,7 +976,7 @@
 	public NewLineElementElements getNewLineElementAccess() {
 		return pNewLineElement;
 	}
-	
+
 	public ParserRule getNewLineElementRule() {
 		return getNewLineElementAccess().getRule();
 	}
@@ -950,7 +986,7 @@
 	public NullElementElements getNullElementAccess() {
 		return pNullElement;
 	}
-	
+
 	public ParserRule getNullElementRule() {
 		return getNullElementAccess().getRule();
 	}
@@ -960,7 +996,7 @@
 	public OCLCodeElementElements getOCLCodeElementAccess() {
 		return pOCLCodeElement;
 	}
-	
+
 	public ParserRule getOCLCodeElementRule() {
 		return getOCLCodeElementAccess().getRule();
 	}
@@ -970,7 +1006,7 @@
 	public OCLEvalElementElements getOCLEvalElementAccess() {
 		return pOCLEvalElement;
 	}
-	
+
 	public ParserRule getOCLEvalElementRule() {
 		return getOCLEvalElementAccess().getRule();
 	}
@@ -980,7 +1016,7 @@
 	public OCLTextElementElements getOCLTextElementAccess() {
 		return pOCLTextElement;
 	}
-	
+
 	public ParserRule getOCLTextElementRule() {
 		return getOCLTextElementAccess().getRule();
 	}
@@ -990,7 +1026,7 @@
 	public TextElementElements getTextElementAccess() {
 		return pTextElement;
 	}
-	
+
 	public ParserRule getTextElementRule() {
 		return getTextElementAccess().getRule();
 	}
diff --git a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/validation/AbstractMarkupJavaValidator.java b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/validation/AbstractMarkupJavaValidator.java
index 3190350..e2f2754 100644
--- a/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/validation/AbstractMarkupJavaValidator.java
+++ b/plugins/org.eclipse.ocl.xtext.markup/src-gen/org/eclipse/ocl/xtext/markup/validation/AbstractMarkupJavaValidator.java
@@ -9,7 +9,7 @@
  *     E.D.Willink - initial API and implementation
  *******************************************************************************/
 package org.eclipse.ocl.xtext.markup.validation;
- 
+
 import java.util.ArrayList;
 import java.util.List;
 
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/AbstractOCLinEcoreUiModule.java b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/AbstractOCLinEcoreUiModule.java
index 54fb423..1342a19 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/AbstractOCLinEcoreUiModule.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/AbstractOCLinEcoreUiModule.java
@@ -18,12 +18,12 @@
  */
 @SuppressWarnings("all")
 public abstract class AbstractOCLinEcoreUiModule extends org.eclipse.xtext.ui.DefaultUiModule {
-	
+
 	public AbstractOCLinEcoreUiModule(AbstractUIPlugin plugin) {
 		super(plugin);
 	}
-	
-	
+
+
 	// contributed by org.eclipse.xtext.ui.generator.ImplicitUiFragment
 	public com.google.inject.Provider<org.eclipse.xtext.resource.containers.IAllContainersState> provideIAllContainersState() {
 		return org.eclipse.xtext.ui.shared.Access.getJavaProjectsState();
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/OCLinEcoreExecutableExtensionFactory.java b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/OCLinEcoreExecutableExtensionFactory.java
index 72b258d..4da090a 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/OCLinEcoreExecutableExtensionFactory.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/OCLinEcoreExecutableExtensionFactory.java
@@ -19,7 +19,7 @@
 
 /**
  * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
+ * introduced subclass.
  */
 public class OCLinEcoreExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory {
 
@@ -27,10 +27,10 @@
 	protected Bundle getBundle() {
 		return OCLinEcoreActivator.getInstance().getBundle();
 	}
-	
+
 	@Override
 	protected Injector getInjector() {
 		return OCLinEcoreActivator.getInstance().getInjector(OCLinEcoreActivator.ORG_ECLIPSE_OCL_XTEXT_OCLINECORE_OCLINECORE);
 	}
-	
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/AbstractOCLinEcoreProposalProvider.java b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/AbstractOCLinEcoreProposalProvider.java
index 8c485c4..a379f97 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/AbstractOCLinEcoreProposalProvider.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/contentassist/AbstractOCLinEcoreProposalProvider.java
@@ -17,12 +17,12 @@
 
 /**
  * Represents a generated, default implementation of superclass {@link org.eclipse.ocl.xtext.essentialocl.ui.contentassist.EssentialOCLProposalProvider}.
- * Methods are dynamically dispatched on the first parameter, i.e., you can override them 
- * with a more concrete subtype. 
+ * Methods are dynamically dispatched on the first parameter, i.e., you can override them
+ * with a more concrete subtype.
  */
 @SuppressWarnings("all")
 public class AbstractOCLinEcoreProposalProvider extends org.eclipse.ocl.xtext.essentialocl.ui.contentassist.EssentialOCLProposalProvider {
-		
+
 	public void completeTopLevelCS_OwnedImports(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
@@ -305,7 +305,7 @@
 	public void completeTypedMultiplicityRefCS_OwnedMultiplicity(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
-    
+
 	public void complete_TopLevelCS(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		// subclasses may override
 	}
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 bc2f1c5..6f584c0 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
@@ -25,19 +25,19 @@
 import org.eclipse.ocl.xtext.oclinecore.services.OCLinEcoreGrammarAccess;
 
 public class OCLinEcoreParser extends AbstractContentAssistParser {
-	
+
 	@Inject
 	private OCLinEcoreGrammarAccess grammarAccess;
-	
+
 	private Map<AbstractElement, String> nameMappings;
-	
+
 	@Override
 	protected org.eclipse.ocl.xtext.oclinecore.ui.contentassist.antlr.internal.InternalOCLinEcoreParser createParser() {
 		org.eclipse.ocl.xtext.oclinecore.ui.contentassist.antlr.internal.InternalOCLinEcoreParser result = new org.eclipse.ocl.xtext.oclinecore.ui.contentassist.antlr.internal.InternalOCLinEcoreParser(null);
 		result.setGrammarAccess(grammarAccess);
 		return result;
 	}
-	
+
 	@Override
 	protected String getRuleName(AbstractElement element) {
 		if (nameMappings == null) {
@@ -596,7 +596,7 @@
 		}
 		return nameMappings.get(element);
 	}
-	
+
 	@Override
 	protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
 		try {
@@ -605,18 +605,18 @@
 			return typedParser.getFollowElements();
 		} catch(RecognitionException ex) {
 			throw new RuntimeException(ex);
-		}		
+		}
 	}
-	
+
 	@Override
 	protected String[] getInitialHiddenTokens() {
 		return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" };
 	}
-	
+
 	public OCLinEcoreGrammarAccess getGrammarAccess() {
 		return this.grammarAccess;
 	}
-	
+
 	public void setGrammarAccess(OCLinEcoreGrammarAccess grammarAccess) {
 		this.grammarAccess = grammarAccess;
 	}
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 b45be01..2ed2fc6 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
@@ -13,19 +13,19 @@
 options {
 	superClass=AbstractInternalContentAssistParser;
 	backtrack=true;
-	
+
 }
 
 @lexer::header {
 package org.eclipse.ocl.xtext.oclinecore.ui.contentassist.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
 }
 
 @parser::header {
-package org.eclipse.ocl.xtext.oclinecore.ui.contentassist.antlr.internal; 
+package org.eclipse.ocl.xtext.oclinecore.ui.contentassist.antlr.internal;
 
 import java.io.InputStream;
 import org.eclipse.xtext.*;
@@ -42,18 +42,18 @@
 }
 
 @parser::members {
- 
+
  	private OCLinEcoreGrammarAccess grammarAccess;
- 	
+
     public void setGrammarAccess(OCLinEcoreGrammarAccess grammarAccess) {
     	this.grammarAccess = grammarAccess;
     }
-    
+
     @Override
     protected Grammar getGrammar() {
     	return grammarAccess.getGrammar();
     }
-    
+
     @Override
     protected String getValueForTokenName(String tokenName) {
     	return tokenName;
@@ -65,12 +65,12 @@
 
 
 // Entry rule entryRuleTopLevelCS
-entryRuleTopLevelCS 
+entryRuleTopLevelCS
 :
 { before(grammarAccess.getTopLevelCSRule()); }
 	 ruleTopLevelCS
-{ after(grammarAccess.getTopLevelCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTopLevelCSRule()); }
+	 EOF
 ;
 
 // Rule TopLevelCS
@@ -95,12 +95,12 @@
 
 
 // Entry rule entryRuleSIGNED
-entryRuleSIGNED 
+entryRuleSIGNED
 :
 { before(grammarAccess.getSIGNEDRule()); }
 	 ruleSIGNED
-{ after(grammarAccess.getSIGNEDRule()); } 
-	 EOF 
+{ after(grammarAccess.getSIGNEDRule()); }
+	 EOF
 ;
 
 // Rule SIGNED
@@ -123,12 +123,12 @@
 
 
 // Entry rule entryRuleEnumerationLiteralName
-entryRuleEnumerationLiteralName 
+entryRuleEnumerationLiteralName
 :
 { before(grammarAccess.getEnumerationLiteralNameRule()); }
 	 ruleEnumerationLiteralName
-{ after(grammarAccess.getEnumerationLiteralNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEnumerationLiteralNameRule()); }
+	 EOF
 ;
 
 // Rule EnumerationLiteralName
@@ -151,12 +151,12 @@
 
 
 // Entry rule entryRuleInvariantConstraintCS
-entryRuleInvariantConstraintCS 
+entryRuleInvariantConstraintCS
 :
 { before(grammarAccess.getInvariantConstraintCSRule()); }
 	 ruleInvariantConstraintCS
-{ after(grammarAccess.getInvariantConstraintCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getInvariantConstraintCSRule()); }
+	 EOF
 ;
 
 // Rule InvariantConstraintCS
@@ -179,12 +179,12 @@
 
 
 // Entry rule entryRulePostconditionConstraintCS
-entryRulePostconditionConstraintCS 
+entryRulePostconditionConstraintCS
 :
 { before(grammarAccess.getPostconditionConstraintCSRule()); }
 	 rulePostconditionConstraintCS
-{ after(grammarAccess.getPostconditionConstraintCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPostconditionConstraintCSRule()); }
+	 EOF
 ;
 
 // Rule PostconditionConstraintCS
@@ -207,12 +207,12 @@
 
 
 // Entry rule entryRulePreconditionConstraintCS
-entryRulePreconditionConstraintCS 
+entryRulePreconditionConstraintCS
 :
 { before(grammarAccess.getPreconditionConstraintCSRule()); }
 	 rulePreconditionConstraintCS
-{ after(grammarAccess.getPreconditionConstraintCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPreconditionConstraintCSRule()); }
+	 EOF
 ;
 
 // Rule PreconditionConstraintCS
@@ -235,12 +235,12 @@
 
 
 // Entry rule entryRuleAnnotationCS
-entryRuleAnnotationCS 
+entryRuleAnnotationCS
 :
 { before(grammarAccess.getAnnotationCSRule()); }
 	 ruleAnnotationCS
-{ after(grammarAccess.getAnnotationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getAnnotationCSRule()); }
+	 EOF
 ;
 
 // Rule AnnotationCS
@@ -263,12 +263,12 @@
 
 
 // Entry rule entryRuleAnnotationElementCS
-entryRuleAnnotationElementCS 
+entryRuleAnnotationElementCS
 :
 { before(grammarAccess.getAnnotationElementCSRule()); }
 	 ruleAnnotationElementCS
-{ after(grammarAccess.getAnnotationElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getAnnotationElementCSRule()); }
+	 EOF
 ;
 
 // Rule AnnotationElementCS
@@ -291,12 +291,12 @@
 
 
 // Entry rule entryRuleAttributeCS
-entryRuleAttributeCS 
+entryRuleAttributeCS
 :
 { before(grammarAccess.getAttributeCSRule()); }
 	 ruleAttributeCS
-{ after(grammarAccess.getAttributeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getAttributeCSRule()); }
+	 EOF
 ;
 
 // Rule AttributeCS
@@ -319,12 +319,12 @@
 
 
 // Entry rule entryRuleClassCS
-entryRuleClassCS 
+entryRuleClassCS
 :
 { before(grammarAccess.getClassCSRule()); }
 	 ruleClassCS
-{ after(grammarAccess.getClassCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getClassCSRule()); }
+	 EOF
 ;
 
 // Rule ClassCS
@@ -347,12 +347,12 @@
 
 
 // Entry rule entryRuleDataTypeCS
-entryRuleDataTypeCS 
+entryRuleDataTypeCS
 :
 { before(grammarAccess.getDataTypeCSRule()); }
 	 ruleDataTypeCS
-{ after(grammarAccess.getDataTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getDataTypeCSRule()); }
+	 EOF
 ;
 
 // Rule DataTypeCS
@@ -375,12 +375,12 @@
 
 
 // Entry rule entryRuleDetailCS
-entryRuleDetailCS 
+entryRuleDetailCS
 :
 { before(grammarAccess.getDetailCSRule()); }
 	 ruleDetailCS
-{ after(grammarAccess.getDetailCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getDetailCSRule()); }
+	 EOF
 ;
 
 // Rule DetailCS
@@ -403,12 +403,12 @@
 
 
 // Entry rule entryRuleDocumentationCS
-entryRuleDocumentationCS 
+entryRuleDocumentationCS
 :
 { before(grammarAccess.getDocumentationCSRule()); }
 	 ruleDocumentationCS
-{ after(grammarAccess.getDocumentationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getDocumentationCSRule()); }
+	 EOF
 ;
 
 // Rule DocumentationCS
@@ -431,12 +431,12 @@
 
 
 // Entry rule entryRuleEnumerationCS
-entryRuleEnumerationCS 
+entryRuleEnumerationCS
 :
 { before(grammarAccess.getEnumerationCSRule()); }
 	 ruleEnumerationCS
-{ after(grammarAccess.getEnumerationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getEnumerationCSRule()); }
+	 EOF
 ;
 
 // Rule EnumerationCS
@@ -459,12 +459,12 @@
 
 
 // Entry rule entryRuleEnumerationLiteralCS
-entryRuleEnumerationLiteralCS 
+entryRuleEnumerationLiteralCS
 :
 { before(grammarAccess.getEnumerationLiteralCSRule()); }
 	 ruleEnumerationLiteralCS
-{ after(grammarAccess.getEnumerationLiteralCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getEnumerationLiteralCSRule()); }
+	 EOF
 ;
 
 // Rule EnumerationLiteralCS
@@ -487,12 +487,12 @@
 
 
 // Entry rule entryRuleImportCS
-entryRuleImportCS 
+entryRuleImportCS
 :
 { before(grammarAccess.getImportCSRule()); }
 	 ruleImportCS
-{ after(grammarAccess.getImportCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getImportCSRule()); }
+	 EOF
 ;
 
 // Rule ImportCS
@@ -515,12 +515,12 @@
 
 
 // Entry rule entryRuleModelElementCS
-entryRuleModelElementCS 
+entryRuleModelElementCS
 :
 { before(grammarAccess.getModelElementCSRule()); }
 	 ruleModelElementCS
-{ after(grammarAccess.getModelElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getModelElementCSRule()); }
+	 EOF
 ;
 
 // Rule ModelElementCS
@@ -543,12 +543,12 @@
 
 
 // Entry rule entryRuleModelElementRefCS
-entryRuleModelElementRefCS 
+entryRuleModelElementRefCS
 :
 { before(grammarAccess.getModelElementRefCSRule()); }
 	 ruleModelElementRefCS
-{ after(grammarAccess.getModelElementRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getModelElementRefCSRule()); }
+	 EOF
 ;
 
 // Rule ModelElementRefCS
@@ -571,12 +571,12 @@
 
 
 // Entry rule entryRuleOperationCS
-entryRuleOperationCS 
+entryRuleOperationCS
 :
 { before(grammarAccess.getOperationCSRule()); }
 	 ruleOperationCS
-{ after(grammarAccess.getOperationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getOperationCSRule()); }
+	 EOF
 ;
 
 // Rule OperationCS
@@ -599,12 +599,12 @@
 
 
 // Entry rule entryRulePackageCS
-entryRulePackageCS 
+entryRulePackageCS
 :
 { before(grammarAccess.getPackageCSRule()); }
 	 rulePackageCS
-{ after(grammarAccess.getPackageCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPackageCSRule()); }
+	 EOF
 ;
 
 // Rule PackageCS
@@ -627,12 +627,12 @@
 
 
 // Entry rule entryRuleParameterCS
-entryRuleParameterCS 
+entryRuleParameterCS
 :
 { before(grammarAccess.getParameterCSRule()); }
 	 ruleParameterCS
-{ after(grammarAccess.getParameterCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getParameterCSRule()); }
+	 EOF
 ;
 
 // Rule ParameterCS
@@ -655,12 +655,12 @@
 
 
 // Entry rule entryRuleReferenceCS
-entryRuleReferenceCS 
+entryRuleReferenceCS
 :
 { before(grammarAccess.getReferenceCSRule()); }
 	 ruleReferenceCS
-{ after(grammarAccess.getReferenceCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getReferenceCSRule()); }
+	 EOF
 ;
 
 // Rule ReferenceCS
@@ -683,12 +683,12 @@
 
 
 // Entry rule entryRuleSpecificationCS
-entryRuleSpecificationCS 
+entryRuleSpecificationCS
 :
 { before(grammarAccess.getSpecificationCSRule()); }
 	 ruleSpecificationCS
-{ after(grammarAccess.getSpecificationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getSpecificationCSRule()); }
+	 EOF
 ;
 
 // Rule SpecificationCS
@@ -711,12 +711,12 @@
 
 
 // Entry rule entryRuleStructuredClassCS
-entryRuleStructuredClassCS 
+entryRuleStructuredClassCS
 :
 { before(grammarAccess.getStructuredClassCSRule()); }
 	 ruleStructuredClassCS
-{ after(grammarAccess.getStructuredClassCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getStructuredClassCSRule()); }
+	 EOF
 ;
 
 // Rule StructuredClassCS
@@ -739,12 +739,12 @@
 
 
 // Entry rule entryRuleStructuralFeatureCS
-entryRuleStructuralFeatureCS 
+entryRuleStructuralFeatureCS
 :
 { before(grammarAccess.getStructuralFeatureCSRule()); }
 	 ruleStructuralFeatureCS
-{ after(grammarAccess.getStructuralFeatureCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getStructuralFeatureCSRule()); }
+	 EOF
 ;
 
 // Rule StructuralFeatureCS
@@ -767,12 +767,12 @@
 
 
 // Entry rule entryRuleSysMLCS
-entryRuleSysMLCS 
+entryRuleSysMLCS
 :
 { before(grammarAccess.getSysMLCSRule()); }
 	 ruleSysMLCS
-{ after(grammarAccess.getSysMLCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getSysMLCSRule()); }
+	 EOF
 ;
 
 // Rule SysMLCS
@@ -797,12 +797,12 @@
 
 
 // Entry rule entryRuleTypedMultiplicityRefCS
-entryRuleTypedMultiplicityRefCS 
+entryRuleTypedMultiplicityRefCS
 :
 { before(grammarAccess.getTypedMultiplicityRefCSRule()); }
 	 ruleTypedMultiplicityRefCS
-{ after(grammarAccess.getTypedMultiplicityRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypedMultiplicityRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypedMultiplicityRefCS
@@ -825,12 +825,12 @@
 
 
 // Entry rule entryRuleTemplateSignatureCS
-entryRuleTemplateSignatureCS 
+entryRuleTemplateSignatureCS
 :
 { before(grammarAccess.getTemplateSignatureCSRule()); }
 	 ruleTemplateSignatureCS
-{ after(grammarAccess.getTemplateSignatureCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTemplateSignatureCSRule()); }
+	 EOF
 ;
 
 // Rule TemplateSignatureCS
@@ -853,12 +853,12 @@
 
 
 // Entry rule entryRuleTypedRefCS
-entryRuleTypedRefCS 
+entryRuleTypedRefCS
 :
 { before(grammarAccess.getTypedRefCSRule()); }
 	 ruleTypedRefCS
-{ after(grammarAccess.getTypedRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypedRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypedRefCS
@@ -881,12 +881,12 @@
 
 
 // Entry rule entryRuleTypedTypeRefCS
-entryRuleTypedTypeRefCS 
+entryRuleTypedTypeRefCS
 :
 { before(grammarAccess.getTypedTypeRefCSRule()); }
 	 ruleTypedTypeRefCS
-{ after(grammarAccess.getTypedTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypedTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypedTypeRefCS
@@ -909,12 +909,12 @@
 
 
 // Entry rule entryRuleUnrestrictedName
-entryRuleUnrestrictedName 
+entryRuleUnrestrictedName
 :
 { before(grammarAccess.getUnrestrictedNameRule()); }
 	 ruleUnrestrictedName
-{ after(grammarAccess.getUnrestrictedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnrestrictedNameRule()); }
+	 EOF
 ;
 
 // Rule UnrestrictedName
@@ -941,12 +941,12 @@
 
 
 // Entry rule entryRuleEssentialOCLUnaryOperatorName
-entryRuleEssentialOCLUnaryOperatorName 
+entryRuleEssentialOCLUnaryOperatorName
 :
 { before(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); }
 	 ruleEssentialOCLUnaryOperatorName
-{ after(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnaryOperatorName
@@ -969,12 +969,12 @@
 
 
 // Entry rule entryRuleEssentialOCLInfixOperatorName
-entryRuleEssentialOCLInfixOperatorName 
+entryRuleEssentialOCLInfixOperatorName
 :
 { before(grammarAccess.getEssentialOCLInfixOperatorNameRule()); }
 	 ruleEssentialOCLInfixOperatorName
-{ after(grammarAccess.getEssentialOCLInfixOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLInfixOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLInfixOperatorName
@@ -997,12 +997,12 @@
 
 
 // Entry rule entryRuleEssentialOCLNavigationOperatorName
-entryRuleEssentialOCLNavigationOperatorName 
+entryRuleEssentialOCLNavigationOperatorName
 :
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); }
 	 ruleEssentialOCLNavigationOperatorName
-{ after(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLNavigationOperatorName
@@ -1025,12 +1025,12 @@
 
 
 // Entry rule entryRuleBinaryOperatorName
-entryRuleBinaryOperatorName 
+entryRuleBinaryOperatorName
 :
 { before(grammarAccess.getBinaryOperatorNameRule()); }
 	 ruleBinaryOperatorName
-{ after(grammarAccess.getBinaryOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getBinaryOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule BinaryOperatorName
@@ -1053,12 +1053,12 @@
 
 
 // Entry rule entryRuleInfixOperatorName
-entryRuleInfixOperatorName 
+entryRuleInfixOperatorName
 :
 { before(grammarAccess.getInfixOperatorNameRule()); }
 	 ruleInfixOperatorName
-{ after(grammarAccess.getInfixOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getInfixOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule InfixOperatorName
@@ -1081,12 +1081,12 @@
 
 
 // Entry rule entryRuleNavigationOperatorName
-entryRuleNavigationOperatorName 
+entryRuleNavigationOperatorName
 :
 { before(grammarAccess.getNavigationOperatorNameRule()); }
 	 ruleNavigationOperatorName
-{ after(grammarAccess.getNavigationOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigationOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule NavigationOperatorName
@@ -1109,12 +1109,12 @@
 
 
 // Entry rule entryRuleUnaryOperatorName
-entryRuleUnaryOperatorName 
+entryRuleUnaryOperatorName
 :
 { before(grammarAccess.getUnaryOperatorNameRule()); }
 	 ruleUnaryOperatorName
-{ after(grammarAccess.getUnaryOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnaryOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule UnaryOperatorName
@@ -1137,12 +1137,12 @@
 
 
 // Entry rule entryRuleEssentialOCLUnrestrictedName
-entryRuleEssentialOCLUnrestrictedName 
+entryRuleEssentialOCLUnrestrictedName
 :
 { before(grammarAccess.getEssentialOCLUnrestrictedNameRule()); }
 	 ruleEssentialOCLUnrestrictedName
-{ after(grammarAccess.getEssentialOCLUnrestrictedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLUnrestrictedNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnrestrictedName
@@ -1165,12 +1165,12 @@
 
 
 // Entry rule entryRuleEssentialOCLUnreservedName
-entryRuleEssentialOCLUnreservedName 
+entryRuleEssentialOCLUnreservedName
 :
 { before(grammarAccess.getEssentialOCLUnreservedNameRule()); }
 	 ruleEssentialOCLUnreservedName
-{ after(grammarAccess.getEssentialOCLUnreservedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLUnreservedNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnreservedName
@@ -1193,12 +1193,12 @@
 
 
 // Entry rule entryRuleUnreservedName
-entryRuleUnreservedName 
+entryRuleUnreservedName
 :
 { before(grammarAccess.getUnreservedNameRule()); }
 	 ruleUnreservedName
-{ after(grammarAccess.getUnreservedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnreservedNameRule()); }
+	 EOF
 ;
 
 // Rule UnreservedName
@@ -1221,12 +1221,12 @@
 
 
 // Entry rule entryRuleURIPathNameCS
-entryRuleURIPathNameCS 
+entryRuleURIPathNameCS
 :
 { before(grammarAccess.getURIPathNameCSRule()); }
 	 ruleURIPathNameCS
-{ after(grammarAccess.getURIPathNameCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getURIPathNameCSRule()); }
+	 EOF
 ;
 
 // Rule URIPathNameCS
@@ -1249,12 +1249,12 @@
 
 
 // Entry rule entryRuleURIFirstPathElementCS
-entryRuleURIFirstPathElementCS 
+entryRuleURIFirstPathElementCS
 :
 { before(grammarAccess.getURIFirstPathElementCSRule()); }
 	 ruleURIFirstPathElementCS
-{ after(grammarAccess.getURIFirstPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getURIFirstPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule URIFirstPathElementCS
@@ -1277,12 +1277,12 @@
 
 
 // Entry rule entryRulePrimitiveTypeIdentifier
-entryRulePrimitiveTypeIdentifier 
+entryRulePrimitiveTypeIdentifier
 :
 { before(grammarAccess.getPrimitiveTypeIdentifierRule()); }
 	 rulePrimitiveTypeIdentifier
-{ after(grammarAccess.getPrimitiveTypeIdentifierRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimitiveTypeIdentifierRule()); }
+	 EOF
 ;
 
 // Rule PrimitiveTypeIdentifier
@@ -1305,12 +1305,12 @@
 
 
 // Entry rule entryRulePrimitiveTypeCS
-entryRulePrimitiveTypeCS 
+entryRulePrimitiveTypeCS
 :
 { before(grammarAccess.getPrimitiveTypeCSRule()); }
 	 rulePrimitiveTypeCS
-{ after(grammarAccess.getPrimitiveTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimitiveTypeCSRule()); }
+	 EOF
 ;
 
 // Rule PrimitiveTypeCS
@@ -1333,12 +1333,12 @@
 
 
 // Entry rule entryRuleCollectionTypeIdentifier
-entryRuleCollectionTypeIdentifier 
+entryRuleCollectionTypeIdentifier
 :
 { before(grammarAccess.getCollectionTypeIdentifierRule()); }
 	 ruleCollectionTypeIdentifier
-{ after(grammarAccess.getCollectionTypeIdentifierRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionTypeIdentifierRule()); }
+	 EOF
 ;
 
 // Rule CollectionTypeIdentifier
@@ -1361,12 +1361,12 @@
 
 
 // Entry rule entryRuleCollectionTypeCS
-entryRuleCollectionTypeCS 
+entryRuleCollectionTypeCS
 :
 { before(grammarAccess.getCollectionTypeCSRule()); }
 	 ruleCollectionTypeCS
-{ after(grammarAccess.getCollectionTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionTypeCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionTypeCS
@@ -1389,12 +1389,12 @@
 
 
 // Entry rule entryRuleMapTypeCS
-entryRuleMapTypeCS 
+entryRuleMapTypeCS
 :
 { before(grammarAccess.getMapTypeCSRule()); }
 	 ruleMapTypeCS
-{ after(grammarAccess.getMapTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMapTypeCSRule()); }
+	 EOF
 ;
 
 // Rule MapTypeCS
@@ -1417,12 +1417,12 @@
 
 
 // Entry rule entryRuleTupleTypeCS
-entryRuleTupleTypeCS 
+entryRuleTupleTypeCS
 :
 { before(grammarAccess.getTupleTypeCSRule()); }
 	 ruleTupleTypeCS
-{ after(grammarAccess.getTupleTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTupleTypeCSRule()); }
+	 EOF
 ;
 
 // Rule TupleTypeCS
@@ -1445,12 +1445,12 @@
 
 
 // Entry rule entryRuleTuplePartCS
-entryRuleTuplePartCS 
+entryRuleTuplePartCS
 :
 { before(grammarAccess.getTuplePartCSRule()); }
 	 ruleTuplePartCS
-{ after(grammarAccess.getTuplePartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTuplePartCSRule()); }
+	 EOF
 ;
 
 // Rule TuplePartCS
@@ -1473,12 +1473,12 @@
 
 
 // Entry rule entryRuleCollectionLiteralExpCS
-entryRuleCollectionLiteralExpCS 
+entryRuleCollectionLiteralExpCS
 :
 { before(grammarAccess.getCollectionLiteralExpCSRule()); }
 	 ruleCollectionLiteralExpCS
-{ after(grammarAccess.getCollectionLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionLiteralExpCS
@@ -1501,12 +1501,12 @@
 
 
 // Entry rule entryRuleCollectionLiteralPartCS
-entryRuleCollectionLiteralPartCS 
+entryRuleCollectionLiteralPartCS
 :
 { before(grammarAccess.getCollectionLiteralPartCSRule()); }
 	 ruleCollectionLiteralPartCS
-{ after(grammarAccess.getCollectionLiteralPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionLiteralPartCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionLiteralPartCS
@@ -1529,12 +1529,12 @@
 
 
 // Entry rule entryRuleCollectionPatternCS
-entryRuleCollectionPatternCS 
+entryRuleCollectionPatternCS
 :
 { before(grammarAccess.getCollectionPatternCSRule()); }
 	 ruleCollectionPatternCS
-{ after(grammarAccess.getCollectionPatternCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionPatternCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionPatternCS
@@ -1557,12 +1557,12 @@
 
 
 // Entry rule entryRuleShadowPartCS
-entryRuleShadowPartCS 
+entryRuleShadowPartCS
 :
 { before(grammarAccess.getShadowPartCSRule()); }
 	 ruleShadowPartCS
-{ after(grammarAccess.getShadowPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getShadowPartCSRule()); }
+	 EOF
 ;
 
 // Rule ShadowPartCS
@@ -1585,12 +1585,12 @@
 
 
 // Entry rule entryRulePatternExpCS
-entryRulePatternExpCS 
+entryRulePatternExpCS
 :
 { before(grammarAccess.getPatternExpCSRule()); }
 	 rulePatternExpCS
-{ after(grammarAccess.getPatternExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPatternExpCSRule()); }
+	 EOF
 ;
 
 // Rule PatternExpCS
@@ -1613,12 +1613,12 @@
 
 
 // Entry rule entryRuleLambdaLiteralExpCS
-entryRuleLambdaLiteralExpCS 
+entryRuleLambdaLiteralExpCS
 :
 { before(grammarAccess.getLambdaLiteralExpCSRule()); }
 	 ruleLambdaLiteralExpCS
-{ after(grammarAccess.getLambdaLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLambdaLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule LambdaLiteralExpCS
@@ -1641,12 +1641,12 @@
 
 
 // Entry rule entryRuleMapLiteralExpCS
-entryRuleMapLiteralExpCS 
+entryRuleMapLiteralExpCS
 :
 { before(grammarAccess.getMapLiteralExpCSRule()); }
 	 ruleMapLiteralExpCS
-{ after(grammarAccess.getMapLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMapLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule MapLiteralExpCS
@@ -1669,12 +1669,12 @@
 
 
 // Entry rule entryRuleMapLiteralPartCS
-entryRuleMapLiteralPartCS 
+entryRuleMapLiteralPartCS
 :
 { before(grammarAccess.getMapLiteralPartCSRule()); }
 	 ruleMapLiteralPartCS
-{ after(grammarAccess.getMapLiteralPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMapLiteralPartCSRule()); }
+	 EOF
 ;
 
 // Rule MapLiteralPartCS
@@ -1697,12 +1697,12 @@
 
 
 // Entry rule entryRulePrimitiveLiteralExpCS
-entryRulePrimitiveLiteralExpCS 
+entryRulePrimitiveLiteralExpCS
 :
 { before(grammarAccess.getPrimitiveLiteralExpCSRule()); }
 	 rulePrimitiveLiteralExpCS
-{ after(grammarAccess.getPrimitiveLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimitiveLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrimitiveLiteralExpCS
@@ -1725,12 +1725,12 @@
 
 
 // Entry rule entryRuleTupleLiteralExpCS
-entryRuleTupleLiteralExpCS 
+entryRuleTupleLiteralExpCS
 :
 { before(grammarAccess.getTupleLiteralExpCSRule()); }
 	 ruleTupleLiteralExpCS
-{ after(grammarAccess.getTupleLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTupleLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule TupleLiteralExpCS
@@ -1753,12 +1753,12 @@
 
 
 // Entry rule entryRuleTupleLiteralPartCS
-entryRuleTupleLiteralPartCS 
+entryRuleTupleLiteralPartCS
 :
 { before(grammarAccess.getTupleLiteralPartCSRule()); }
 	 ruleTupleLiteralPartCS
-{ after(grammarAccess.getTupleLiteralPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTupleLiteralPartCSRule()); }
+	 EOF
 ;
 
 // Rule TupleLiteralPartCS
@@ -1781,12 +1781,12 @@
 
 
 // Entry rule entryRuleNumberLiteralExpCS
-entryRuleNumberLiteralExpCS 
+entryRuleNumberLiteralExpCS
 :
 { before(grammarAccess.getNumberLiteralExpCSRule()); }
 	 ruleNumberLiteralExpCS
-{ after(grammarAccess.getNumberLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNumberLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule NumberLiteralExpCS
@@ -1809,12 +1809,12 @@
 
 
 // Entry rule entryRuleStringLiteralExpCS
-entryRuleStringLiteralExpCS 
+entryRuleStringLiteralExpCS
 :
 { before(grammarAccess.getStringLiteralExpCSRule()); }
 	 ruleStringLiteralExpCS
-{ after(grammarAccess.getStringLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getStringLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule StringLiteralExpCS
@@ -1844,12 +1844,12 @@
 
 
 // Entry rule entryRuleBooleanLiteralExpCS
-entryRuleBooleanLiteralExpCS 
+entryRuleBooleanLiteralExpCS
 :
 { before(grammarAccess.getBooleanLiteralExpCSRule()); }
 	 ruleBooleanLiteralExpCS
-{ after(grammarAccess.getBooleanLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getBooleanLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule BooleanLiteralExpCS
@@ -1872,12 +1872,12 @@
 
 
 // Entry rule entryRuleUnlimitedNaturalLiteralExpCS
-entryRuleUnlimitedNaturalLiteralExpCS 
+entryRuleUnlimitedNaturalLiteralExpCS
 :
 { before(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); }
 	 ruleUnlimitedNaturalLiteralExpCS
-{ after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule UnlimitedNaturalLiteralExpCS
@@ -1900,12 +1900,12 @@
 
 
 // Entry rule entryRuleInvalidLiteralExpCS
-entryRuleInvalidLiteralExpCS 
+entryRuleInvalidLiteralExpCS
 :
 { before(grammarAccess.getInvalidLiteralExpCSRule()); }
 	 ruleInvalidLiteralExpCS
-{ after(grammarAccess.getInvalidLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getInvalidLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule InvalidLiteralExpCS
@@ -1928,12 +1928,12 @@
 
 
 // Entry rule entryRuleNullLiteralExpCS
-entryRuleNullLiteralExpCS 
+entryRuleNullLiteralExpCS
 :
 { before(grammarAccess.getNullLiteralExpCSRule()); }
 	 ruleNullLiteralExpCS
-{ after(grammarAccess.getNullLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNullLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule NullLiteralExpCS
@@ -1956,12 +1956,12 @@
 
 
 // Entry rule entryRuleTypeLiteralCS
-entryRuleTypeLiteralCS 
+entryRuleTypeLiteralCS
 :
 { before(grammarAccess.getTypeLiteralCSRule()); }
 	 ruleTypeLiteralCS
-{ after(grammarAccess.getTypeLiteralCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeLiteralCSRule()); }
+	 EOF
 ;
 
 // Rule TypeLiteralCS
@@ -1984,12 +1984,12 @@
 
 
 // Entry rule entryRuleTypeLiteralWithMultiplicityCS
-entryRuleTypeLiteralWithMultiplicityCS 
+entryRuleTypeLiteralWithMultiplicityCS
 :
 { before(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); }
 	 ruleTypeLiteralWithMultiplicityCS
-{ after(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); }
+	 EOF
 ;
 
 // Rule TypeLiteralWithMultiplicityCS
@@ -2012,12 +2012,12 @@
 
 
 // Entry rule entryRuleTypeLiteralExpCS
-entryRuleTypeLiteralExpCS 
+entryRuleTypeLiteralExpCS
 :
 { before(grammarAccess.getTypeLiteralExpCSRule()); }
 	 ruleTypeLiteralExpCS
-{ after(grammarAccess.getTypeLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule TypeLiteralExpCS
@@ -2040,12 +2040,12 @@
 
 
 // Entry rule entryRuleTypeNameExpCS
-entryRuleTypeNameExpCS 
+entryRuleTypeNameExpCS
 :
 { before(grammarAccess.getTypeNameExpCSRule()); }
 	 ruleTypeNameExpCS
-{ after(grammarAccess.getTypeNameExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeNameExpCSRule()); }
+	 EOF
 ;
 
 // Rule TypeNameExpCS
@@ -2068,12 +2068,12 @@
 
 
 // Entry rule entryRuleTypeExpCS
-entryRuleTypeExpCS 
+entryRuleTypeExpCS
 :
 { before(grammarAccess.getTypeExpCSRule()); }
 	 ruleTypeExpCS
-{ after(grammarAccess.getTypeExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeExpCSRule()); }
+	 EOF
 ;
 
 // Rule TypeExpCS
@@ -2096,12 +2096,12 @@
 
 
 // Entry rule entryRuleExpCS
-entryRuleExpCS 
+entryRuleExpCS
 :
 { before(grammarAccess.getExpCSRule()); }
 	 ruleExpCS
-{ after(grammarAccess.getExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getExpCSRule()); }
+	 EOF
 ;
 
 // Rule ExpCS
@@ -2124,12 +2124,12 @@
 
 
 // Entry rule entryRulePrefixedLetExpCS
-entryRulePrefixedLetExpCS 
+entryRulePrefixedLetExpCS
 :
 { before(grammarAccess.getPrefixedLetExpCSRule()); }
 	 rulePrefixedLetExpCS
-{ after(grammarAccess.getPrefixedLetExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrefixedLetExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrefixedLetExpCS
@@ -2152,12 +2152,12 @@
 
 
 // Entry rule entryRulePrefixedPrimaryExpCS
-entryRulePrefixedPrimaryExpCS 
+entryRulePrefixedPrimaryExpCS
 :
 { before(grammarAccess.getPrefixedPrimaryExpCSRule()); }
 	 rulePrefixedPrimaryExpCS
-{ after(grammarAccess.getPrefixedPrimaryExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrefixedPrimaryExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrefixedPrimaryExpCS
@@ -2180,12 +2180,12 @@
 
 
 // Entry rule entryRulePrimaryExpCS
-entryRulePrimaryExpCS 
+entryRulePrimaryExpCS
 :
 { before(grammarAccess.getPrimaryExpCSRule()); }
 	 rulePrimaryExpCS
-{ after(grammarAccess.getPrimaryExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimaryExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrimaryExpCS
@@ -2208,12 +2208,12 @@
 
 
 // Entry rule entryRuleNameExpCS
-entryRuleNameExpCS 
+entryRuleNameExpCS
 :
 { before(grammarAccess.getNameExpCSRule()); }
 	 ruleNameExpCS
-{ after(grammarAccess.getNameExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNameExpCSRule()); }
+	 EOF
 ;
 
 // Rule NameExpCS
@@ -2236,12 +2236,12 @@
 
 
 // Entry rule entryRuleCurlyBracketedClauseCS
-entryRuleCurlyBracketedClauseCS 
+entryRuleCurlyBracketedClauseCS
 :
 { before(grammarAccess.getCurlyBracketedClauseCSRule()); }
 	 ruleCurlyBracketedClauseCS
-{ after(grammarAccess.getCurlyBracketedClauseCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCurlyBracketedClauseCSRule()); }
+	 EOF
 ;
 
 // Rule CurlyBracketedClauseCS
@@ -2264,12 +2264,12 @@
 
 
 // Entry rule entryRuleRoundBracketedClauseCS
-entryRuleRoundBracketedClauseCS 
+entryRuleRoundBracketedClauseCS
 :
 { before(grammarAccess.getRoundBracketedClauseCSRule()); }
 	 ruleRoundBracketedClauseCS
-{ after(grammarAccess.getRoundBracketedClauseCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getRoundBracketedClauseCSRule()); }
+	 EOF
 ;
 
 // Rule RoundBracketedClauseCS
@@ -2292,12 +2292,12 @@
 
 
 // Entry rule entryRuleSquareBracketedClauseCS
-entryRuleSquareBracketedClauseCS 
+entryRuleSquareBracketedClauseCS
 :
 { before(grammarAccess.getSquareBracketedClauseCSRule()); }
 	 ruleSquareBracketedClauseCS
-{ after(grammarAccess.getSquareBracketedClauseCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getSquareBracketedClauseCSRule()); }
+	 EOF
 ;
 
 // Rule SquareBracketedClauseCS
@@ -2320,12 +2320,12 @@
 
 
 // Entry rule entryRuleNavigatingArgCS
-entryRuleNavigatingArgCS 
+entryRuleNavigatingArgCS
 :
 { before(grammarAccess.getNavigatingArgCSRule()); }
 	 ruleNavigatingArgCS
-{ after(grammarAccess.getNavigatingArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingArgCS
@@ -2348,12 +2348,12 @@
 
 
 // Entry rule entryRuleNavigatingBarArgCS
-entryRuleNavigatingBarArgCS 
+entryRuleNavigatingBarArgCS
 :
 { before(grammarAccess.getNavigatingBarArgCSRule()); }
 	 ruleNavigatingBarArgCS
-{ after(grammarAccess.getNavigatingBarArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingBarArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingBarArgCS
@@ -2376,12 +2376,12 @@
 
 
 // Entry rule entryRuleNavigatingCommaArgCS
-entryRuleNavigatingCommaArgCS 
+entryRuleNavigatingCommaArgCS
 :
 { before(grammarAccess.getNavigatingCommaArgCSRule()); }
 	 ruleNavigatingCommaArgCS
-{ after(grammarAccess.getNavigatingCommaArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingCommaArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingCommaArgCS
@@ -2404,12 +2404,12 @@
 
 
 // Entry rule entryRuleNavigatingSemiArgCS
-entryRuleNavigatingSemiArgCS 
+entryRuleNavigatingSemiArgCS
 :
 { before(grammarAccess.getNavigatingSemiArgCSRule()); }
 	 ruleNavigatingSemiArgCS
-{ after(grammarAccess.getNavigatingSemiArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingSemiArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingSemiArgCS
@@ -2432,12 +2432,12 @@
 
 
 // Entry rule entryRuleNavigatingArgExpCS
-entryRuleNavigatingArgExpCS 
+entryRuleNavigatingArgExpCS
 :
 { before(grammarAccess.getNavigatingArgExpCSRule()); }
 	 ruleNavigatingArgExpCS
-{ after(grammarAccess.getNavigatingArgExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingArgExpCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingArgExpCS
@@ -2460,12 +2460,12 @@
 
 
 // Entry rule entryRuleIfExpCS
-entryRuleIfExpCS 
+entryRuleIfExpCS
 :
 { before(grammarAccess.getIfExpCSRule()); }
 	 ruleIfExpCS
-{ after(grammarAccess.getIfExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getIfExpCSRule()); }
+	 EOF
 ;
 
 // Rule IfExpCS
@@ -2488,12 +2488,12 @@
 
 
 // Entry rule entryRuleElseIfThenExpCS
-entryRuleElseIfThenExpCS 
+entryRuleElseIfThenExpCS
 :
 { before(grammarAccess.getElseIfThenExpCSRule()); }
 	 ruleElseIfThenExpCS
-{ after(grammarAccess.getElseIfThenExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getElseIfThenExpCSRule()); }
+	 EOF
 ;
 
 // Rule ElseIfThenExpCS
@@ -2516,12 +2516,12 @@
 
 
 // Entry rule entryRuleLetExpCS
-entryRuleLetExpCS 
+entryRuleLetExpCS
 :
 { before(grammarAccess.getLetExpCSRule()); }
 	 ruleLetExpCS
-{ after(grammarAccess.getLetExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLetExpCSRule()); }
+	 EOF
 ;
 
 // Rule LetExpCS
@@ -2544,12 +2544,12 @@
 
 
 // Entry rule entryRuleLetVariableCS
-entryRuleLetVariableCS 
+entryRuleLetVariableCS
 :
 { before(grammarAccess.getLetVariableCSRule()); }
 	 ruleLetVariableCS
-{ after(grammarAccess.getLetVariableCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLetVariableCSRule()); }
+	 EOF
 ;
 
 // Rule LetVariableCS
@@ -2572,12 +2572,12 @@
 
 
 // Entry rule entryRuleNestedExpCS
-entryRuleNestedExpCS 
+entryRuleNestedExpCS
 :
 { before(grammarAccess.getNestedExpCSRule()); }
 	 ruleNestedExpCS
-{ after(grammarAccess.getNestedExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNestedExpCSRule()); }
+	 EOF
 ;
 
 // Rule NestedExpCS
@@ -2600,12 +2600,12 @@
 
 
 // Entry rule entryRuleSelfExpCS
-entryRuleSelfExpCS 
+entryRuleSelfExpCS
 :
 { before(grammarAccess.getSelfExpCSRule()); }
 	 ruleSelfExpCS
-{ after(grammarAccess.getSelfExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getSelfExpCSRule()); }
+	 EOF
 ;
 
 // Rule SelfExpCS
@@ -2628,12 +2628,12 @@
 
 
 // Entry rule entryRuleMultiplicityBoundsCS
-entryRuleMultiplicityBoundsCS 
+entryRuleMultiplicityBoundsCS
 :
 { before(grammarAccess.getMultiplicityBoundsCSRule()); }
 	 ruleMultiplicityBoundsCS
-{ after(grammarAccess.getMultiplicityBoundsCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityBoundsCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityBoundsCS
@@ -2656,12 +2656,12 @@
 
 
 // Entry rule entryRuleMultiplicityCS
-entryRuleMultiplicityCS 
+entryRuleMultiplicityCS
 :
 { before(grammarAccess.getMultiplicityCSRule()); }
 	 ruleMultiplicityCS
-{ after(grammarAccess.getMultiplicityCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityCS
@@ -2684,12 +2684,12 @@
 
 
 // Entry rule entryRuleMultiplicityStringCS
-entryRuleMultiplicityStringCS 
+entryRuleMultiplicityStringCS
 :
 { before(grammarAccess.getMultiplicityStringCSRule()); }
 	 ruleMultiplicityStringCS
-{ after(grammarAccess.getMultiplicityStringCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityStringCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityStringCS
@@ -2712,12 +2712,12 @@
 
 
 // Entry rule entryRulePathNameCS
-entryRulePathNameCS 
+entryRulePathNameCS
 :
 { before(grammarAccess.getPathNameCSRule()); }
 	 rulePathNameCS
-{ after(grammarAccess.getPathNameCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPathNameCSRule()); }
+	 EOF
 ;
 
 // Rule PathNameCS
@@ -2740,12 +2740,12 @@
 
 
 // Entry rule entryRuleFirstPathElementCS
-entryRuleFirstPathElementCS 
+entryRuleFirstPathElementCS
 :
 { before(grammarAccess.getFirstPathElementCSRule()); }
 	 ruleFirstPathElementCS
-{ after(grammarAccess.getFirstPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getFirstPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule FirstPathElementCS
@@ -2768,12 +2768,12 @@
 
 
 // Entry rule entryRuleNextPathElementCS
-entryRuleNextPathElementCS 
+entryRuleNextPathElementCS
 :
 { before(grammarAccess.getNextPathElementCSRule()); }
 	 ruleNextPathElementCS
-{ after(grammarAccess.getNextPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNextPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule NextPathElementCS
@@ -2796,12 +2796,12 @@
 
 
 // Entry rule entryRuleTemplateBindingCS
-entryRuleTemplateBindingCS 
+entryRuleTemplateBindingCS
 :
 { before(grammarAccess.getTemplateBindingCSRule()); }
 	 ruleTemplateBindingCS
-{ after(grammarAccess.getTemplateBindingCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTemplateBindingCSRule()); }
+	 EOF
 ;
 
 // Rule TemplateBindingCS
@@ -2824,12 +2824,12 @@
 
 
 // Entry rule entryRuleTemplateParameterSubstitutionCS
-entryRuleTemplateParameterSubstitutionCS 
+entryRuleTemplateParameterSubstitutionCS
 :
 { before(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
 	 ruleTemplateParameterSubstitutionCS
-{ after(grammarAccess.getTemplateParameterSubstitutionCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
+	 EOF
 ;
 
 // Rule TemplateParameterSubstitutionCS
@@ -2852,12 +2852,12 @@
 
 
 // Entry rule entryRuleTypeParameterCS
-entryRuleTypeParameterCS 
+entryRuleTypeParameterCS
 :
 { before(grammarAccess.getTypeParameterCSRule()); }
 	 ruleTypeParameterCS
-{ after(grammarAccess.getTypeParameterCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeParameterCSRule()); }
+	 EOF
 ;
 
 // Rule TypeParameterCS
@@ -2880,12 +2880,12 @@
 
 
 // Entry rule entryRuleTypeRefCS
-entryRuleTypeRefCS 
+entryRuleTypeRefCS
 :
 { before(grammarAccess.getTypeRefCSRule()); }
 	 ruleTypeRefCS
-{ after(grammarAccess.getTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypeRefCS
@@ -2908,12 +2908,12 @@
 
 
 // Entry rule entryRuleWildcardTypeRefCS
-entryRuleWildcardTypeRefCS 
+entryRuleWildcardTypeRefCS
 :
 { before(grammarAccess.getWildcardTypeRefCSRule()); }
 	 ruleWildcardTypeRefCS
-{ after(grammarAccess.getWildcardTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getWildcardTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule WildcardTypeRefCS
@@ -2936,12 +2936,12 @@
 
 
 // Entry rule entryRuleID
-entryRuleID 
+entryRuleID
 :
 { before(grammarAccess.getIDRule()); }
 	 ruleID
-{ after(grammarAccess.getIDRule()); } 
-	 EOF 
+{ after(grammarAccess.getIDRule()); }
+	 EOF
 ;
 
 // Rule ID
@@ -2964,12 +2964,12 @@
 
 
 // Entry rule entryRuleIdentifier
-entryRuleIdentifier 
+entryRuleIdentifier
 :
 { before(grammarAccess.getIdentifierRule()); }
 	 ruleIdentifier
-{ after(grammarAccess.getIdentifierRule()); } 
-	 EOF 
+{ after(grammarAccess.getIdentifierRule()); }
+	 EOF
 ;
 
 // Rule Identifier
@@ -2992,12 +2992,12 @@
 
 
 // Entry rule entryRuleLOWER
-entryRuleLOWER 
+entryRuleLOWER
 :
 { before(grammarAccess.getLOWERRule()); }
 	 ruleLOWER
-{ after(grammarAccess.getLOWERRule()); } 
-	 EOF 
+{ after(grammarAccess.getLOWERRule()); }
+	 EOF
 ;
 
 // Rule LOWER
@@ -3020,12 +3020,12 @@
 
 
 // Entry rule entryRuleNUMBER_LITERAL
-entryRuleNUMBER_LITERAL 
+entryRuleNUMBER_LITERAL
 :
 { before(grammarAccess.getNUMBER_LITERALRule()); }
 	 ruleNUMBER_LITERAL
-{ after(grammarAccess.getNUMBER_LITERALRule()); } 
-	 EOF 
+{ after(grammarAccess.getNUMBER_LITERALRule()); }
+	 EOF
 ;
 
 // Rule NUMBER_LITERAL
@@ -3048,12 +3048,12 @@
 
 
 // Entry rule entryRuleStringLiteral
-entryRuleStringLiteral 
+entryRuleStringLiteral
 :
 { before(grammarAccess.getStringLiteralRule()); }
 	 ruleStringLiteral
-{ after(grammarAccess.getStringLiteralRule()); } 
-	 EOF 
+{ after(grammarAccess.getStringLiteralRule()); }
+	 EOF
 ;
 
 // Rule StringLiteral
@@ -3076,12 +3076,12 @@
 
 
 // Entry rule entryRuleUPPER
-entryRuleUPPER 
+entryRuleUPPER
 :
 { before(grammarAccess.getUPPERRule()); }
 	 ruleUPPER
-{ after(grammarAccess.getUPPERRule()); } 
-	 EOF 
+{ after(grammarAccess.getUPPERRule()); }
+	 EOF
 ;
 
 // Rule UPPER
@@ -3104,12 +3104,12 @@
 
 
 // Entry rule entryRuleURI
-entryRuleURI 
+entryRuleURI
 :
 { before(grammarAccess.getURIRule()); }
 	 ruleURI
-{ after(grammarAccess.getURIRule()); } 
-	 EOF 
+{ after(grammarAccess.getURIRule()); }
+	 EOF
 ;
 
 // Rule URI
@@ -3146,7 +3146,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getAbstractKeyword_1()); }
 
-	'abstract' 
+	'abstract'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getAbstractKeyword_1()); }
 )
@@ -3154,7 +3154,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getAttributeKeyword_2()); }
 
-	'attribute' 
+	'attribute'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getAttributeKeyword_2()); }
 )
@@ -3162,7 +3162,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getBodyKeyword_3()); }
 
-	'body' 
+	'body'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getBodyKeyword_3()); }
 )
@@ -3170,7 +3170,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getCallableKeyword_4()); }
 
-	'callable' 
+	'callable'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getCallableKeyword_4()); }
 )
@@ -3178,7 +3178,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getClassKeyword_5()); }
 
-	'class' 
+	'class'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getClassKeyword_5()); }
 )
@@ -3186,7 +3186,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getComposesKeyword_6()); }
 
-	'composes' 
+	'composes'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getComposesKeyword_6()); }
 )
@@ -3194,7 +3194,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getDatatypeKeyword_7()); }
 
-	'datatype' 
+	'datatype'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getDatatypeKeyword_7()); }
 )
@@ -3202,7 +3202,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getDefinitionKeyword_8()); }
 
-	'definition' 
+	'definition'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getDefinitionKeyword_8()); }
 )
@@ -3210,7 +3210,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getDerivationKeyword_9()); }
 
-	'derivation' 
+	'derivation'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getDerivationKeyword_9()); }
 )
@@ -3218,7 +3218,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getDerivedKeyword_10()); }
 
-	'derived' 
+	'derived'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getDerivedKeyword_10()); }
 )
@@ -3226,7 +3226,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getEnumKeyword_11()); }
 
-	'enum' 
+	'enum'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getEnumKeyword_11()); }
 )
@@ -3234,7 +3234,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getExtendsKeyword_12()); }
 
-	'extends' 
+	'extends'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getExtendsKeyword_12()); }
 )
@@ -3242,7 +3242,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getIdKeyword_13()); }
 
-	'id' 
+	'id'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getIdKeyword_13()); }
 )
@@ -3250,7 +3250,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getImportKeyword_14()); }
 
-	'import' 
+	'import'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getImportKeyword_14()); }
 )
@@ -3258,7 +3258,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getInitialKeyword_15()); }
 
-	'initial' 
+	'initial'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getInitialKeyword_15()); }
 )
@@ -3266,7 +3266,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getInterfaceKeyword_16()); }
 
-	'interface' 
+	'interface'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getInterfaceKeyword_16()); }
 )
@@ -3274,7 +3274,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getKeyKeyword_17()); }
 
-	'key' 
+	'key'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getKeyKeyword_17()); }
 )
@@ -3282,7 +3282,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getLibraryKeyword_18()); }
 
-	'library' 
+	'library'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getLibraryKeyword_18()); }
 )
@@ -3290,7 +3290,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getModuleKeyword_19()); }
 
-	'module' 
+	'module'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getModuleKeyword_19()); }
 )
@@ -3298,7 +3298,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getOperationKeyword_20()); }
 
-	'operation' 
+	'operation'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getOperationKeyword_20()); }
 )
@@ -3306,7 +3306,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getOrderedKeyword_21()); }
 
-	'ordered' 
+	'ordered'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getOrderedKeyword_21()); }
 )
@@ -3314,7 +3314,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getPackageKeyword_22()); }
 
-	'package' 
+	'package'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getPackageKeyword_22()); }
 )
@@ -3322,7 +3322,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getPostconditionKeyword_23()); }
 
-	'postcondition' 
+	'postcondition'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getPostconditionKeyword_23()); }
 )
@@ -3330,7 +3330,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getPreconditionKeyword_24()); }
 
-	'precondition' 
+	'precondition'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getPreconditionKeyword_24()); }
 )
@@ -3338,7 +3338,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getPrimitiveKeyword_25()); }
 
-	'primitive' 
+	'primitive'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getPrimitiveKeyword_25()); }
 )
@@ -3346,7 +3346,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getPropertyKeyword_26()); }
 
-	'property' 
+	'property'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getPropertyKeyword_26()); }
 )
@@ -3354,7 +3354,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getReadonlyKeyword_27()); }
 
-	'readonly' 
+	'readonly'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getReadonlyKeyword_27()); }
 )
@@ -3362,7 +3362,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getReferenceKeyword_28()); }
 
-	'reference' 
+	'reference'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getReferenceKeyword_28()); }
 )
@@ -3370,7 +3370,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getResolveKeyword_29()); }
 
-	'resolve' 
+	'resolve'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getResolveKeyword_29()); }
 )
@@ -3378,7 +3378,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getStaticKeyword_30()); }
 
-	'static' 
+	'static'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getStaticKeyword_30()); }
 )
@@ -3386,7 +3386,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getThrowsKeyword_31()); }
 
-	'throws' 
+	'throws'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getThrowsKeyword_31()); }
 )
@@ -3394,7 +3394,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getTransientKeyword_32()); }
 
-	'transient' 
+	'transient'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getTransientKeyword_32()); }
 )
@@ -3402,7 +3402,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getUniqueKeyword_33()); }
 
-	'unique' 
+	'unique'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getUniqueKeyword_33()); }
 )
@@ -3410,7 +3410,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getUnsettableKeyword_34()); }
 
-	'unsettable' 
+	'unsettable'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getUnsettableKeyword_34()); }
 )
@@ -3418,7 +3418,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralNameAccess().getVolatileKeyword_35()); }
 
-	'volatile' 
+	'volatile'
 
 { after(grammarAccess.getEnumerationLiteralNameAccess().getVolatileKeyword_35()); }
 )
@@ -3442,7 +3442,7 @@
     |(
 { before(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_1()); }
 )
@@ -3488,7 +3488,7 @@
     |(
 { before(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_4_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_4_1()); }
 )
@@ -3696,7 +3696,7 @@
     |(
 { before(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_1()); }
 )
@@ -3776,7 +3776,7 @@
     |(
 { before(grammarAccess.getDataTypeCSAccess().getSerializableKeyword_5_1_1()); }
 
-	'!serializable' 
+	'!serializable'
 
 { after(grammarAccess.getDataTypeCSAccess().getSerializableKeyword_5_1_1()); }
 )
@@ -3800,7 +3800,7 @@
     |(
 { before(grammarAccess.getDataTypeCSAccess().getSemicolonKeyword_6_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getDataTypeCSAccess().getSemicolonKeyword_6_1()); }
 )
@@ -3890,7 +3890,7 @@
     |(
 { before(grammarAccess.getEnumerationCSAccess().getSerializableKeyword_4_1_1()); }
 
-	'!serializable' 
+	'!serializable'
 
 { after(grammarAccess.getEnumerationCSAccess().getSerializableKeyword_4_1_1()); }
 )
@@ -3914,7 +3914,7 @@
     |(
 { before(grammarAccess.getEnumerationCSAccess().getSemicolonKeyword_5_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getEnumerationCSAccess().getSemicolonKeyword_5_1()); }
 )
@@ -3988,7 +3988,7 @@
     |(
 { before(grammarAccess.getEnumerationLiteralCSAccess().getSemicolonKeyword_2_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getEnumerationLiteralCSAccess().getSemicolonKeyword_2_1()); }
 )
@@ -4006,7 +4006,7 @@
 (
 { before(grammarAccess.getImportCSAccess().getImportKeyword_0_0()); }
 
-	'import' 
+	'import'
 
 { after(grammarAccess.getImportCSAccess().getImportKeyword_0_0()); }
 )
@@ -4014,7 +4014,7 @@
     |(
 { before(grammarAccess.getImportCSAccess().getLibraryKeyword_0_1()); }
 
-	'library' 
+	'library'
 
 { after(grammarAccess.getImportCSAccess().getLibraryKeyword_0_1()); }
 )
@@ -4158,7 +4158,7 @@
     |(
 { before(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_1()); }
 )
@@ -4216,7 +4216,7 @@
     |(
 { before(grammarAccess.getPackageCSAccess().getSemicolonKeyword_4_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getPackageCSAccess().getSemicolonKeyword_4_1()); }
 )
@@ -4442,7 +4442,7 @@
     |(
 { before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_1()); }
 )
@@ -4522,7 +4522,7 @@
     |(
 { before(grammarAccess.getStructuredClassCSAccess().getSemicolonKeyword_7_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getStructuredClassCSAccess().getSemicolonKeyword_7_1()); }
 )
@@ -4691,7 +4691,7 @@
     |(
 { before(grammarAccess.getUnrestrictedNameAccess().getAnnotationKeyword_1()); }
 
-	'annotation' 
+	'annotation'
 
 { after(grammarAccess.getUnrestrictedNameAccess().getAnnotationKeyword_1()); }
 )
@@ -4699,7 +4699,7 @@
     |(
 { before(grammarAccess.getUnrestrictedNameAccess().getDocumentationKeyword_2()); }
 
-	'documentation' 
+	'documentation'
 
 { after(grammarAccess.getUnrestrictedNameAccess().getDocumentationKeyword_2()); }
 )
@@ -4707,7 +4707,7 @@
     |(
 { before(grammarAccess.getUnrestrictedNameAccess().getInvariantKeyword_3()); }
 
-	'invariant' 
+	'invariant'
 
 { after(grammarAccess.getUnrestrictedNameAccess().getInvariantKeyword_3()); }
 )
@@ -4715,7 +4715,7 @@
     |(
 { before(grammarAccess.getUnrestrictedNameAccess().getLiteralKeyword_4()); }
 
-	'literal' 
+	'literal'
 
 { after(grammarAccess.getUnrestrictedNameAccess().getLiteralKeyword_4()); }
 )
@@ -4723,7 +4723,7 @@
     |(
 { before(grammarAccess.getUnrestrictedNameAccess().getSerializableKeyword_5()); }
 
-	'serializable' 
+	'serializable'
 
 { after(grammarAccess.getUnrestrictedNameAccess().getSerializableKeyword_5()); }
 )
@@ -4731,7 +4731,7 @@
     |(
 { before(grammarAccess.getUnrestrictedNameAccess().getSysmlKeyword_6()); }
 
-	'sysml' 
+	'sysml'
 
 { after(grammarAccess.getUnrestrictedNameAccess().getSysmlKeyword_6()); }
 )
@@ -4750,7 +4750,7 @@
 (
 { before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); }
 
-	'-' 
+	'-'
 
 { after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); }
 )
@@ -4758,7 +4758,7 @@
     |(
 { before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); }
 
-	'not' 
+	'not'
 
 { after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); }
 )
@@ -4776,7 +4776,7 @@
 (
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); }
 )
@@ -4784,7 +4784,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); }
 
-	'/' 
+	'/'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); }
 )
@@ -4792,7 +4792,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); }
 
-	'+' 
+	'+'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); }
 )
@@ -4800,7 +4800,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); }
 
-	'-' 
+	'-'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); }
 )
@@ -4808,7 +4808,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); }
 
-	'>' 
+	'>'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); }
 )
@@ -4816,7 +4816,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); }
 
-	'<' 
+	'<'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); }
 )
@@ -4824,7 +4824,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); }
 
-	'>=' 
+	'>='
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); }
 )
@@ -4832,7 +4832,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); }
 
-	'<=' 
+	'<='
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); }
 )
@@ -4840,7 +4840,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); }
 )
@@ -4848,7 +4848,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); }
 
-	'<>' 
+	'<>'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); }
 )
@@ -4856,7 +4856,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); }
 
-	'and' 
+	'and'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); }
 )
@@ -4864,7 +4864,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); }
 
-	'or' 
+	'or'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); }
 )
@@ -4872,7 +4872,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); }
 
-	'xor' 
+	'xor'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); }
 )
@@ -4880,7 +4880,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); }
 
-	'implies' 
+	'implies'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); }
 )
@@ -4898,7 +4898,7 @@
 (
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); }
 
-	'.' 
+	'.'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); }
 )
@@ -4906,7 +4906,7 @@
     |(
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); }
 
-	'->' 
+	'->'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); }
 )
@@ -4914,7 +4914,7 @@
     |(
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); }
 
-	'?.' 
+	'?.'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); }
 )
@@ -4922,7 +4922,7 @@
     |(
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); }
 
-	'?->' 
+	'?->'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); }
 )
@@ -4980,7 +4980,7 @@
     |(
 { before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); }
 
-	'Map' 
+	'Map'
 
 { after(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); }
 )
@@ -4988,7 +4988,7 @@
     |(
 { before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); }
 
-	'Tuple' 
+	'Tuple'
 
 { after(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); }
 )
@@ -5028,7 +5028,7 @@
 (
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); }
 
-	'Boolean' 
+	'Boolean'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); }
 )
@@ -5036,7 +5036,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); }
 
-	'Integer' 
+	'Integer'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); }
 )
@@ -5044,7 +5044,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); }
 
-	'Real' 
+	'Real'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); }
 )
@@ -5052,7 +5052,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); }
 
-	'String' 
+	'String'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); }
 )
@@ -5060,7 +5060,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); }
 
-	'UnlimitedNatural' 
+	'UnlimitedNatural'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); }
 )
@@ -5068,7 +5068,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); }
 
-	'OclAny' 
+	'OclAny'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); }
 )
@@ -5076,7 +5076,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); }
 
-	'OclInvalid' 
+	'OclInvalid'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); }
 )
@@ -5084,7 +5084,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); }
 
-	'OclVoid' 
+	'OclVoid'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); }
 )
@@ -5102,7 +5102,7 @@
 (
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); }
 
-	'Set' 
+	'Set'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); }
 )
@@ -5110,7 +5110,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); }
 
-	'Bag' 
+	'Bag'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); }
 )
@@ -5118,7 +5118,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); }
 
-	'Sequence' 
+	'Sequence'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); }
 )
@@ -5126,7 +5126,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); }
 
-	'Collection' 
+	'Collection'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); }
 )
@@ -5134,7 +5134,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); }
 
-	'OrderedSet' 
+	'OrderedSet'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); }
 )
@@ -5594,7 +5594,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); }
 
-	'|?' 
+	'|?'
 
 { after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); }
 )
@@ -5618,7 +5618,7 @@
 (
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); }
 )
@@ -5626,7 +5626,7 @@
     |(
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); }
 
-	'+' 
+	'+'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); }
 )
@@ -5634,7 +5634,7 @@
     |(
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); }
 
-	'?' 
+	'?'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); }
 )
@@ -5702,7 +5702,7 @@
     |(
 { before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); }
 )
@@ -5859,7 +5859,7 @@
 (
 { before(grammarAccess.getTopLevelCSAccess().getModuleKeyword_1_0()); }
 
-	'module' 
+	'module'
 
 { after(grammarAccess.getTopLevelCSAccess().getModuleKeyword_1_0()); }
 )
@@ -5922,7 +5922,7 @@
 (
 { before(grammarAccess.getSIGNEDAccess().getHyphenMinusKeyword_0()); }
 (
-	'-' 
+	'-'
 )?
 { after(grammarAccess.getSIGNEDAccess().getHyphenMinusKeyword_0()); }
 )
@@ -6169,7 +6169,7 @@
 (
 { before(grammarAccess.getInvariantConstraintCSAccess().getLeftParenthesisKeyword_2_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getInvariantConstraintCSAccess().getLeftParenthesisKeyword_2_1_0()); }
 )
@@ -6228,7 +6228,7 @@
 (
 { before(grammarAccess.getInvariantConstraintCSAccess().getRightParenthesisKeyword_2_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getInvariantConstraintCSAccess().getRightParenthesisKeyword_2_1_2()); }
 )
@@ -6265,7 +6265,7 @@
 (
 { before(grammarAccess.getInvariantConstraintCSAccess().getColonKeyword_3_0_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getInvariantConstraintCSAccess().getColonKeyword_3_0_0()); }
 )
@@ -6324,7 +6324,7 @@
 (
 { before(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_0_2()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_0_2()); }
 )
@@ -6419,7 +6419,7 @@
 (
 { before(grammarAccess.getPostconditionConstraintCSAccess().getColonKeyword_2()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getPostconditionConstraintCSAccess().getColonKeyword_2()); }
 )
@@ -6478,7 +6478,7 @@
 (
 { before(grammarAccess.getPostconditionConstraintCSAccess().getSemicolonKeyword_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getPostconditionConstraintCSAccess().getSemicolonKeyword_4()); }
 )
@@ -6580,7 +6580,7 @@
 (
 { before(grammarAccess.getPostconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getPostconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0()); }
 )
@@ -6639,7 +6639,7 @@
 (
 { before(grammarAccess.getPostconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getPostconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2()); }
 )
@@ -6734,7 +6734,7 @@
 (
 { before(grammarAccess.getPreconditionConstraintCSAccess().getColonKeyword_2()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getPreconditionConstraintCSAccess().getColonKeyword_2()); }
 )
@@ -6793,7 +6793,7 @@
 (
 { before(grammarAccess.getPreconditionConstraintCSAccess().getSemicolonKeyword_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getPreconditionConstraintCSAccess().getSemicolonKeyword_4()); }
 )
@@ -6895,7 +6895,7 @@
 (
 { before(grammarAccess.getPreconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getPreconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0()); }
 )
@@ -6954,7 +6954,7 @@
 (
 { before(grammarAccess.getPreconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getPreconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2()); }
 )
@@ -7022,7 +7022,7 @@
 (
 { before(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_1()); }
 
-	'annotation' 
+	'annotation'
 
 { after(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_1()); }
 )
@@ -7149,7 +7149,7 @@
 (
 { before(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_3_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_3_0()); }
 )
@@ -7237,7 +7237,7 @@
 (
 { before(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_3_3()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_3_3()); }
 )
@@ -7276,7 +7276,7 @@
 (
 { before(grammarAccess.getAnnotationCSAccess().getCommaKeyword_3_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getAnnotationCSAccess().getCommaKeyword_3_2_0()); }
 )
@@ -7339,7 +7339,7 @@
 (
 { before(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_4_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_4_0_0()); }
 )
@@ -7405,7 +7405,7 @@
 (
 { before(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_4_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_4_0_2()); }
 )
@@ -7471,7 +7471,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getAttributeKeyword_1()); }
 
-	'attribute' 
+	'attribute'
 
 { after(grammarAccess.getAttributeCSAccess().getAttributeKeyword_1()); }
 )
@@ -7782,7 +7782,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getColonKeyword_3_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getAttributeCSAccess().getColonKeyword_3_0()); }
 )
@@ -7845,7 +7845,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getEqualsSignKeyword_4_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getAttributeCSAccess().getEqualsSignKeyword_4_0()); }
 )
@@ -7908,7 +7908,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_5_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_5_0()); }
 )
@@ -7974,7 +7974,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_5_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_5_2()); }
 )
@@ -8039,7 +8039,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getCommaKeyword_5_1_1()); }
 (
-	',' 
+	','
 )?
 { after(grammarAccess.getAttributeCSAccess().getCommaKeyword_5_1_1()); }
 )
@@ -8074,7 +8074,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_6_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_6_0_0()); }
 )
@@ -8133,7 +8133,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_6_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_6_0_2()); }
 )
@@ -8170,7 +8170,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getInitialKeyword_6_0_1_1_0()); }
 
-	'initial' 
+	'initial'
 
 { after(grammarAccess.getAttributeCSAccess().getInitialKeyword_6_0_1_1_0()); }
 )
@@ -8230,7 +8230,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_1_2()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_1_2()); }
 )
@@ -8289,7 +8289,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_1_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_1_4()); }
 )
@@ -8330,7 +8330,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getDerivationKeyword_6_0_1_2_0()); }
 
-	'derivation' 
+	'derivation'
 
 { after(grammarAccess.getAttributeCSAccess().getDerivationKeyword_6_0_1_2_0()); }
 )
@@ -8390,7 +8390,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_2_2()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_2_2()); }
 )
@@ -8449,7 +8449,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_2_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_2_4()); }
 )
@@ -8519,7 +8519,7 @@
 (
 { before(grammarAccess.getDataTypeCSAccess().getDatatypeKeyword_1()); }
 
-	'datatype' 
+	'datatype'
 
 { after(grammarAccess.getDataTypeCSAccess().getDatatypeKeyword_1()); }
 )
@@ -8708,7 +8708,7 @@
 (
 { before(grammarAccess.getDataTypeCSAccess().getColonKeyword_4_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getDataTypeCSAccess().getColonKeyword_4_0()); }
 )
@@ -8771,7 +8771,7 @@
 (
 { before(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_5_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_5_0()); }
 )
@@ -8830,7 +8830,7 @@
 (
 { before(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_5_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_5_2()); }
 )
@@ -8867,7 +8867,7 @@
 (
 { before(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_6_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_6_0_0()); }
 )
@@ -8926,7 +8926,7 @@
 (
 { before(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_6_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_6_0_2()); }
 )
@@ -8992,7 +8992,7 @@
 (
 { before(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1()); }
 )
@@ -9088,7 +9088,7 @@
 (
 { before(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1()); }
 
-	'documentation' 
+	'documentation'
 
 { after(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1()); }
 )
@@ -9176,7 +9176,7 @@
 (
 { before(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4()); }
 )
@@ -9217,7 +9217,7 @@
 (
 { before(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0()); }
 )
@@ -9305,7 +9305,7 @@
 (
 { before(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3()); }
 )
@@ -9344,7 +9344,7 @@
 (
 { before(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0()); }
 )
@@ -9407,7 +9407,7 @@
 (
 { before(grammarAccess.getEnumerationCSAccess().getEnumKeyword_0()); }
 
-	'enum' 
+	'enum'
 
 { after(grammarAccess.getEnumerationCSAccess().getEnumKeyword_0()); }
 )
@@ -9594,7 +9594,7 @@
 (
 { before(grammarAccess.getEnumerationCSAccess().getColonKeyword_3_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getEnumerationCSAccess().getColonKeyword_3_0()); }
 )
@@ -9657,7 +9657,7 @@
 (
 { before(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_4_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_4_0()); }
 )
@@ -9716,7 +9716,7 @@
 (
 { before(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_4_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_4_2()); }
 )
@@ -9753,7 +9753,7 @@
 (
 { before(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_5_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_5_0_0()); }
 )
@@ -9812,7 +9812,7 @@
 (
 { before(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_5_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_5_0_2()); }
 )
@@ -9941,7 +9941,7 @@
 (
 { before(grammarAccess.getEnumerationLiteralCSAccess().getLiteralKeyword_0_0_0()); }
 
-	'literal' 
+	'literal'
 
 { after(grammarAccess.getEnumerationLiteralCSAccess().getLiteralKeyword_0_0_0()); }
 )
@@ -10004,7 +10004,7 @@
 (
 { before(grammarAccess.getEnumerationLiteralCSAccess().getEqualsSignKeyword_1_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getEnumerationLiteralCSAccess().getEqualsSignKeyword_1_0()); }
 )
@@ -10067,7 +10067,7 @@
 (
 { before(grammarAccess.getEnumerationLiteralCSAccess().getLeftCurlyBracketKeyword_2_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getEnumerationLiteralCSAccess().getLeftCurlyBracketKeyword_2_0_0()); }
 )
@@ -10126,7 +10126,7 @@
 (
 { before(grammarAccess.getEnumerationLiteralCSAccess().getRightCurlyBracketKeyword_2_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getEnumerationLiteralCSAccess().getRightCurlyBracketKeyword_2_0_2()); }
 )
@@ -10278,7 +10278,7 @@
 (
 { before(grammarAccess.getImportCSAccess().getSemicolonKeyword_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getImportCSAccess().getSemicolonKeyword_4()); }
 )
@@ -10347,7 +10347,7 @@
 (
 { before(grammarAccess.getImportCSAccess().getColonKeyword_1_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getImportCSAccess().getColonKeyword_1_1()); }
 )
@@ -10382,7 +10382,7 @@
 (
 { before(grammarAccess.getModelElementRefCSAccess().getReferenceKeyword_0()); }
 
-	'reference' 
+	'reference'
 
 { after(grammarAccess.getModelElementRefCSAccess().getReferenceKeyword_0()); }
 )
@@ -10441,7 +10441,7 @@
 (
 { before(grammarAccess.getModelElementRefCSAccess().getSemicolonKeyword_2()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getModelElementRefCSAccess().getSemicolonKeyword_2()); }
 )
@@ -10507,7 +10507,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getOperationKeyword_1()); }
 
-	'operation' 
+	'operation'
 
 { after(grammarAccess.getOperationCSAccess().getOperationKeyword_1()); }
 )
@@ -10596,7 +10596,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getLeftParenthesisKeyword_4()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getOperationCSAccess().getLeftParenthesisKeyword_4()); }
 )
@@ -10656,7 +10656,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getRightParenthesisKeyword_6()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getOperationCSAccess().getRightParenthesisKeyword_6()); }
 )
@@ -11007,7 +11007,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getCommaKeyword_5_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getOperationCSAccess().getCommaKeyword_5_1_0()); }
 )
@@ -11070,7 +11070,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getColonKeyword_7_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getOperationCSAccess().getColonKeyword_7_0()); }
 )
@@ -11133,7 +11133,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getThrowsKeyword_8_0()); }
 
-	'throws' 
+	'throws'
 
 { after(grammarAccess.getOperationCSAccess().getThrowsKeyword_8_0()); }
 )
@@ -11227,7 +11227,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getCommaKeyword_8_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getOperationCSAccess().getCommaKeyword_8_2_0()); }
 )
@@ -11290,7 +11290,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_9_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_9_0()); }
 )
@@ -11356,7 +11356,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_9_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_9_2()); }
 )
@@ -11421,7 +11421,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getCommaKeyword_9_1_1()); }
 (
-	',' 
+	','
 )?
 { after(grammarAccess.getOperationCSAccess().getCommaKeyword_9_1_1()); }
 )
@@ -11456,7 +11456,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_10_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_10_0_0()); }
 )
@@ -11515,7 +11515,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_10_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_10_0_2()); }
 )
@@ -11552,7 +11552,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getBodyKeyword_10_0_1_2_0()); }
 
-	'body' 
+	'body'
 
 { after(grammarAccess.getOperationCSAccess().getBodyKeyword_10_0_1_2_0()); }
 )
@@ -11612,7 +11612,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getColonKeyword_10_0_1_2_2()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getOperationCSAccess().getColonKeyword_10_0_1_2_2()); }
 )
@@ -11671,7 +11671,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_0_1_2_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_0_1_2_4()); }
 )
@@ -11712,7 +11712,7 @@
 (
 { before(grammarAccess.getPackageCSAccess().getPackageKeyword_0()); }
 
-	'package' 
+	'package'
 
 { after(grammarAccess.getPackageCSAccess().getPackageKeyword_0()); }
 )
@@ -11868,7 +11868,7 @@
 (
 { before(grammarAccess.getPackageCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getPackageCSAccess().getColonKeyword_2_0()); }
 )
@@ -11931,7 +11931,7 @@
 (
 { before(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_3_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_3_0()); }
 )
@@ -11994,7 +11994,7 @@
 (
 { before(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_4_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_4_0_0()); }
 )
@@ -12053,7 +12053,7 @@
 (
 { before(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_4_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_4_0_2()); }
 )
@@ -12213,7 +12213,7 @@
 (
 { before(grammarAccess.getParameterCSAccess().getColonKeyword_1_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getParameterCSAccess().getColonKeyword_1_0()); }
 )
@@ -12276,7 +12276,7 @@
 (
 { before(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_2_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_2_0()); }
 )
@@ -12342,7 +12342,7 @@
 (
 { before(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_2_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_2_2()); }
 )
@@ -12407,7 +12407,7 @@
 (
 { before(grammarAccess.getParameterCSAccess().getCommaKeyword_2_1_1()); }
 (
-	',' 
+	','
 )?
 { after(grammarAccess.getParameterCSAccess().getCommaKeyword_2_1_1()); }
 )
@@ -12442,7 +12442,7 @@
 (
 { before(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_3_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_3_0()); }
 )
@@ -12501,7 +12501,7 @@
 (
 { before(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_3_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_3_2()); }
 )
@@ -12567,7 +12567,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getPropertyKeyword_1()); }
 
-	'property' 
+	'property'
 
 { after(grammarAccess.getReferenceCSAccess().getPropertyKeyword_1()); }
 )
@@ -12909,7 +12909,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getNumberSignKeyword_3_0()); }
 
-	'#' 
+	'#'
 
 { after(grammarAccess.getReferenceCSAccess().getNumberSignKeyword_3_0()); }
 )
@@ -12972,7 +12972,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getColonKeyword_4_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getReferenceCSAccess().getColonKeyword_4_0()); }
 )
@@ -13035,7 +13035,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getEqualsSignKeyword_5_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getReferenceCSAccess().getEqualsSignKeyword_5_0()); }
 )
@@ -13098,7 +13098,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_6_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_6_0()); }
 )
@@ -13164,7 +13164,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_6_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_6_2()); }
 )
@@ -13229,7 +13229,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getCommaKeyword_6_1_1()); }
 (
-	',' 
+	','
 )?
 { after(grammarAccess.getReferenceCSAccess().getCommaKeyword_6_1_1()); }
 )
@@ -13264,7 +13264,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_7_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_7_0_0()); }
 )
@@ -13323,7 +13323,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_7_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_7_0_2()); }
 )
@@ -13360,7 +13360,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getKeyKeyword_7_0_1_1_0()); }
 
-	'key' 
+	'key'
 
 { after(grammarAccess.getReferenceCSAccess().getKeyKeyword_7_0_1_1_0()); }
 )
@@ -13448,7 +13448,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_1_3()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_1_3()); }
 )
@@ -13487,7 +13487,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getCommaKeyword_7_0_1_1_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getReferenceCSAccess().getCommaKeyword_7_0_1_1_2_0()); }
 )
@@ -13550,7 +13550,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getInitialKeyword_7_0_1_2_0()); }
 
-	'initial' 
+	'initial'
 
 { after(grammarAccess.getReferenceCSAccess().getInitialKeyword_7_0_1_2_0()); }
 )
@@ -13610,7 +13610,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_2_2()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_2_2()); }
 )
@@ -13669,7 +13669,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_2_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_2_4()); }
 )
@@ -13710,7 +13710,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getDerivationKeyword_7_0_1_3_0()); }
 
-	'derivation' 
+	'derivation'
 
 { after(grammarAccess.getReferenceCSAccess().getDerivationKeyword_7_0_1_3_0()); }
 )
@@ -13770,7 +13770,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_3_2()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_3_2()); }
 )
@@ -13829,7 +13829,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_3_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_3_4()); }
 )
@@ -13899,7 +13899,7 @@
 (
 { before(grammarAccess.getStructuredClassCSAccess().getClassKeyword_1()); }
 
-	'class' 
+	'class'
 
 { after(grammarAccess.getStructuredClassCSAccess().getClassKeyword_1()); }
 )
@@ -14119,7 +14119,7 @@
 (
 { before(grammarAccess.getStructuredClassCSAccess().getExtendsKeyword_4_0()); }
 
-	'extends' 
+	'extends'
 
 { after(grammarAccess.getStructuredClassCSAccess().getExtendsKeyword_4_0()); }
 )
@@ -14213,7 +14213,7 @@
 (
 { before(grammarAccess.getStructuredClassCSAccess().getCommaKeyword_4_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getStructuredClassCSAccess().getCommaKeyword_4_2_0()); }
 )
@@ -14276,7 +14276,7 @@
 (
 { before(grammarAccess.getStructuredClassCSAccess().getColonKeyword_5_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getStructuredClassCSAccess().getColonKeyword_5_0()); }
 )
@@ -14339,7 +14339,7 @@
 (
 { before(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_6_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_6_0()); }
 )
@@ -14398,7 +14398,7 @@
 (
 { before(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_6_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_6_2()); }
 )
@@ -14435,7 +14435,7 @@
 (
 { before(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_7_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_7_0_0()); }
 )
@@ -14494,7 +14494,7 @@
 (
 { before(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_7_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_7_0_2()); }
 )
@@ -14562,7 +14562,7 @@
 (
 { before(grammarAccess.getSysMLCSAccess().getSysmlKeyword_1()); }
 
-	'sysml' 
+	'sysml'
 
 { after(grammarAccess.getSysMLCSAccess().getSysmlKeyword_1()); }
 )
@@ -14655,7 +14655,7 @@
 (
 { before(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_0_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_0_1()); }
 )
@@ -14690,7 +14690,7 @@
 (
 { before(grammarAccess.getSysMLCSAccess().getLeftCurlyBracketKeyword_2_1_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getSysMLCSAccess().getLeftCurlyBracketKeyword_2_1_0()); }
 )
@@ -14749,7 +14749,7 @@
 (
 { before(grammarAccess.getSysMLCSAccess().getRightCurlyBracketKeyword_2_1_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getSysMLCSAccess().getRightCurlyBracketKeyword_2_1_2()); }
 )
@@ -14814,7 +14814,7 @@
 (
 { before(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_1_1_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_1_1_1()); }
 )
@@ -14910,7 +14910,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0()); }
 )
@@ -14998,7 +14998,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3()); }
 )
@@ -15037,7 +15037,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0()); }
 )
@@ -15100,7 +15100,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0()); }
 
-	'<' 
+	'<'
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0()); }
 )
@@ -15188,7 +15188,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3()); }
 
-	'>' 
+	'>'
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3()); }
 )
@@ -15227,7 +15227,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0()); }
 )
@@ -15351,7 +15351,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0_0()); }
 )
@@ -15410,7 +15410,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_0_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_0_2()); }
 )
@@ -15447,7 +15447,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getLessThanSignKeyword_1_1_0()); }
 
-	'<' 
+	'<'
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getLessThanSignKeyword_1_1_0()); }
 )
@@ -15506,7 +15506,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getGreaterThanSignKeyword_1_1_2()); }
 
-	'>' 
+	'>'
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getGreaterThanSignKeyword_1_1_2()); }
 )
@@ -15604,7 +15604,7 @@
 (
 { before(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0()); }
 
-	'::' 
+	'::'
 
 { after(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0()); }
 )
@@ -15791,7 +15791,7 @@
 (
 { before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -15850,7 +15850,7 @@
 (
 { before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 )
@@ -15948,7 +15948,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -16008,7 +16008,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); }
 )
@@ -16067,7 +16067,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); }
 )
@@ -16169,7 +16169,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -16228,7 +16228,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 )
@@ -16326,7 +16326,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); }
 )
@@ -16418,7 +16418,7 @@
 (
 { before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); }
 )
@@ -16512,7 +16512,7 @@
 (
 { before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -16571,7 +16571,7 @@
 (
 { before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -16671,7 +16671,7 @@
 (
 { before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 )
@@ -16795,7 +16795,7 @@
 (
 { before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); }
 
-	'..' 
+	'..'
 
 { after(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); }
 )
@@ -16887,7 +16887,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -16946,7 +16946,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -17077,7 +17077,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); }
 )
@@ -17140,7 +17140,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); }
 
-	'++' 
+	'++'
 
 { after(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); }
 )
@@ -17232,7 +17232,7 @@
 (
 { before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); }
 )
@@ -17326,7 +17326,7 @@
 (
 { before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); }
 )
@@ -17391,7 +17391,7 @@
 (
 { before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); }
 
-	'Lambda' 
+	'Lambda'
 
 { after(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); }
 )
@@ -17422,7 +17422,7 @@
 (
 { before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -17481,7 +17481,7 @@
 (
 { before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -17549,7 +17549,7 @@
 (
 { before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -17608,7 +17608,7 @@
 (
 { before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -17708,7 +17708,7 @@
 (
 { before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 )
@@ -17800,7 +17800,7 @@
 (
 { before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); }
 
-	'<-' 
+	'<-'
 
 { after(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); }
 )
@@ -17865,7 +17865,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); }
 
-	'Tuple' 
+	'Tuple'
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); }
 )
@@ -17896,7 +17896,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -17984,7 +17984,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); }
 )
@@ -18025,7 +18025,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); }
 )
@@ -18146,7 +18146,7 @@
 (
 { before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); }
 )
@@ -18213,7 +18213,7 @@
 (
 { before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); }
 )
@@ -18306,7 +18306,7 @@
 (
 { before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); }
 )
@@ -18371,7 +18371,7 @@
 (
 { before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); }
 
-	'invalid' 
+	'invalid'
 
 { after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); }
 )
@@ -18436,7 +18436,7 @@
 (
 { before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); }
 
-	'null' 
+	'null'
 
 { after(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); }
 )
@@ -18654,7 +18654,7 @@
 (
 { before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); }
 )
@@ -18713,7 +18713,7 @@
 (
 { before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); }
 )
@@ -19336,7 +19336,7 @@
 (
 { before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); }
 
-	'pre' 
+	'pre'
 
 { after(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); }
 )
@@ -19402,7 +19402,7 @@
 (
 { before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -19461,7 +19461,7 @@
 (
 { before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -19561,7 +19561,7 @@
 (
 { before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); }
 )
@@ -19655,7 +19655,7 @@
 (
 { before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); }
 )
@@ -19714,7 +19714,7 @@
 (
 { before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); }
 )
@@ -19998,7 +19998,7 @@
 (
 { before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); }
 )
@@ -20086,7 +20086,7 @@
 (
 { before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); }
 )
@@ -20125,7 +20125,7 @@
 (
 { before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); }
 )
@@ -20249,7 +20249,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); }
 )
@@ -20343,7 +20343,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); }
 )
@@ -20406,7 +20406,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); }
 
-	'in' 
+	'in'
 
 { after(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); }
 )
@@ -20469,7 +20469,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); }
 )
@@ -20624,7 +20624,7 @@
 (
 { before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); }
 )
@@ -20718,7 +20718,7 @@
 (
 { before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 )
@@ -20873,7 +20873,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); }
 )
@@ -20967,7 +20967,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); }
 )
@@ -21030,7 +21030,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); }
 
-	'in' 
+	'in'
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); }
 )
@@ -21185,7 +21185,7 @@
 (
 { before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); }
 )
@@ -21279,7 +21279,7 @@
 (
 { before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 )
@@ -21342,7 +21342,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); }
 
-	'if' 
+	'if'
 
 { after(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); }
 )
@@ -21402,7 +21402,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); }
 
-	'then' 
+	'then'
 
 { after(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); }
 )
@@ -21491,7 +21491,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); }
 
-	'else' 
+	'else'
 
 { after(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); }
 )
@@ -21550,7 +21550,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); }
 
-	'endif' 
+	'endif'
 
 { after(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); }
 )
@@ -21597,7 +21597,7 @@
 (
 { before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); }
 
-	'elseif' 
+	'elseif'
 
 { after(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); }
 )
@@ -21657,7 +21657,7 @@
 (
 { before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); }
 
-	'then' 
+	'then'
 
 { after(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); }
 )
@@ -21724,7 +21724,7 @@
 (
 { before(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); }
 
-	'let' 
+	'let'
 
 { after(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); }
 )
@@ -21813,7 +21813,7 @@
 (
 { before(grammarAccess.getLetExpCSAccess().getInKeyword_3()); }
 
-	'in' 
+	'in'
 
 { after(grammarAccess.getLetExpCSAccess().getInKeyword_3()); }
 )
@@ -21882,7 +21882,7 @@
 (
 { before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); }
 )
@@ -22032,7 +22032,7 @@
 (
 { before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); }
 )
@@ -22101,7 +22101,7 @@
 (
 { before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); }
 )
@@ -22164,7 +22164,7 @@
 (
 { before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); }
 )
@@ -22223,7 +22223,7 @@
 (
 { before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); }
 )
@@ -22290,7 +22290,7 @@
 (
 { before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); }
 
-	'self' 
+	'self'
 
 { after(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); }
 )
@@ -22386,7 +22386,7 @@
 (
 { before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); }
 
-	'..' 
+	'..'
 
 { after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); }
 )
@@ -22449,7 +22449,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); }
 )
@@ -22537,7 +22537,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); }
 )
@@ -22637,7 +22637,7 @@
 (
 { before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); }
 
-	'::' 
+	'::'
 
 { after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); }
 )
@@ -22792,7 +22792,7 @@
 (
 { before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); }
 )
@@ -22916,7 +22916,7 @@
 (
 { before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); }
 
-	'extends' 
+	'extends'
 
 { after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); }
 )
@@ -23010,7 +23010,7 @@
 (
 { before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); }
 
-	'&&' 
+	'&&'
 
 { after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); }
 )
@@ -23104,7 +23104,7 @@
 (
 { before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); }
 
-	'?' 
+	'?'
 
 { after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); }
 )
@@ -23169,7 +23169,7 @@
 (
 { before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); }
 
-	'extends' 
+	'extends'
 
 { after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); }
 )
@@ -23253,7 +23253,7 @@
 (
 { before(grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0()); }
 
-	'callable' 
+	'callable'
 
 { after(grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0()); }
 )
@@ -23276,7 +23276,7 @@
 (
 { before(grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0()); }
 
-	'invariant' 
+	'invariant'
 
 { after(grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0()); }
 )
@@ -23344,7 +23344,7 @@
 (
 { before(grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0()); }
 
-	'postcondition' 
+	'postcondition'
 
 { after(grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0()); }
 )
@@ -23412,7 +23412,7 @@
 (
 { before(grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0()); }
 
-	'precondition' 
+	'precondition'
 
 { after(grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0()); }
 )
@@ -23571,7 +23571,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0()); }
 
-	'static' 
+	'static'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0()); }
 )
@@ -23594,7 +23594,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); }
 
-	'definition' 
+	'definition'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); }
 )
@@ -23617,7 +23617,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); }
 
-	'definition' 
+	'definition'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); }
 )
@@ -23640,7 +23640,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0()); }
 
-	'static' 
+	'static'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0()); }
 )
@@ -23708,7 +23708,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0()); }
 
-	'derived' 
+	'derived'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0()); }
 )
@@ -23731,7 +23731,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0()); }
 
-	'!derived' 
+	'!derived'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0()); }
 )
@@ -23754,7 +23754,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0()); }
 
-	'id' 
+	'id'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0()); }
 )
@@ -23777,7 +23777,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0()); }
 
-	'!id' 
+	'!id'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0()); }
 )
@@ -23800,7 +23800,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0()); }
 
-	'ordered' 
+	'ordered'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0()); }
 )
@@ -23823,7 +23823,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0()); }
 
-	'!ordered' 
+	'!ordered'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0()); }
 )
@@ -23846,7 +23846,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0()); }
 
-	'readonly' 
+	'readonly'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0()); }
 )
@@ -23869,7 +23869,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0()); }
 
-	'!readonly' 
+	'!readonly'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0()); }
 )
@@ -23892,7 +23892,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0()); }
 
-	'transient' 
+	'transient'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0()); }
 )
@@ -23915,7 +23915,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0()); }
 
-	'!transient' 
+	'!transient'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0()); }
 )
@@ -23938,7 +23938,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0()); }
 
-	'unique' 
+	'unique'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0()); }
 )
@@ -23961,7 +23961,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0()); }
 
-	'!unique' 
+	'!unique'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0()); }
 )
@@ -23984,7 +23984,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0()); }
 
-	'unsettable' 
+	'unsettable'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0()); }
 )
@@ -24007,7 +24007,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0()); }
 
-	'!unsettable' 
+	'!unsettable'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0()); }
 )
@@ -24030,7 +24030,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0()); }
 
-	'volatile' 
+	'volatile'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0()); }
 )
@@ -24053,7 +24053,7 @@
 (
 { before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0()); }
 
-	'!volatile' 
+	'!volatile'
 
 { after(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0()); }
 )
@@ -24121,7 +24121,7 @@
 (
 { before(grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0()); }
 
-	'primitive' 
+	'primitive'
 
 { after(grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0()); }
 )
@@ -24189,7 +24189,7 @@
 (
 { before(grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0()); }
 
-	'serializable' 
+	'serializable'
 
 { after(grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0()); }
 )
@@ -24364,7 +24364,7 @@
 (
 { before(grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0()); }
 
-	'serializable' 
+	'serializable'
 
 { after(grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0()); }
 )
@@ -24522,7 +24522,7 @@
 (
 { before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); }
 
-	'::*' 
+	'::*'
 
 { after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); }
 )
@@ -24560,7 +24560,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0()); }
 
-	'static' 
+	'static'
 
 { after(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0()); }
 )
@@ -24583,7 +24583,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); }
 
-	'definition' 
+	'definition'
 
 { after(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); }
 )
@@ -24606,7 +24606,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); }
 
-	'definition' 
+	'definition'
 
 { after(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); }
 )
@@ -24629,7 +24629,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0()); }
 
-	'static' 
+	'static'
 
 { after(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0()); }
 )
@@ -24757,7 +24757,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0()); }
 
-	'derived' 
+	'derived'
 
 { after(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0()); }
 )
@@ -24780,7 +24780,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0()); }
 
-	'!derived' 
+	'!derived'
 
 { after(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0()); }
 )
@@ -24803,7 +24803,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0()); }
 
-	'ordered' 
+	'ordered'
 
 { after(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0()); }
 )
@@ -24826,7 +24826,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0()); }
 
-	'!ordered' 
+	'!ordered'
 
 { after(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0()); }
 )
@@ -24849,7 +24849,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0()); }
 
-	'transient' 
+	'transient'
 
 { after(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0()); }
 )
@@ -24872,7 +24872,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0()); }
 
-	'!transient' 
+	'!transient'
 
 { after(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0()); }
 )
@@ -24895,7 +24895,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0()); }
 
-	'unique' 
+	'unique'
 
 { after(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0()); }
 )
@@ -24918,7 +24918,7 @@
 (
 { before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0()); }
 
-	'!unique' 
+	'!unique'
 
 { after(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0()); }
 )
@@ -25121,7 +25121,7 @@
 (
 { before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0()); }
 
-	'ordered' 
+	'ordered'
 
 { after(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0()); }
 )
@@ -25144,7 +25144,7 @@
 (
 { before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0()); }
 
-	'!ordered' 
+	'!ordered'
 
 { after(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0()); }
 )
@@ -25167,7 +25167,7 @@
 (
 { before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0()); }
 
-	'unique' 
+	'unique'
 
 { after(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0()); }
 )
@@ -25190,7 +25190,7 @@
 (
 { before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0()); }
 
-	'!unique' 
+	'!unique'
 
 { after(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0()); }
 )
@@ -25228,7 +25228,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0()); }
 
-	'static' 
+	'static'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0()); }
 )
@@ -25251,7 +25251,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); }
 
-	'definition' 
+	'definition'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); }
 )
@@ -25274,7 +25274,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); }
 
-	'definition' 
+	'definition'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); }
 )
@@ -25297,7 +25297,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0()); }
 
-	'static' 
+	'static'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0()); }
 )
@@ -25384,7 +25384,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0()); }
 
-	'composes' 
+	'composes'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0()); }
 )
@@ -25407,7 +25407,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0()); }
 
-	'!composes' 
+	'!composes'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0()); }
 )
@@ -25430,7 +25430,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0()); }
 
-	'derived' 
+	'derived'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0()); }
 )
@@ -25453,7 +25453,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0()); }
 
-	'!derived' 
+	'!derived'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0()); }
 )
@@ -25476,7 +25476,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0()); }
 
-	'ordered' 
+	'ordered'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0()); }
 )
@@ -25499,7 +25499,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0()); }
 
-	'!ordered' 
+	'!ordered'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0()); }
 )
@@ -25522,7 +25522,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0()); }
 
-	'readonly' 
+	'readonly'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0()); }
 )
@@ -25545,7 +25545,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0()); }
 
-	'!readonly' 
+	'!readonly'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0()); }
 )
@@ -25568,7 +25568,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0()); }
 
-	'resolve' 
+	'resolve'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0()); }
 )
@@ -25591,7 +25591,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0()); }
 
-	'!resolve' 
+	'!resolve'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0()); }
 )
@@ -25614,7 +25614,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0()); }
 
-	'transient' 
+	'transient'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0()); }
 )
@@ -25637,7 +25637,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0()); }
 
-	'!transient' 
+	'!transient'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0()); }
 )
@@ -25660,7 +25660,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0()); }
 
-	'unique' 
+	'unique'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0()); }
 )
@@ -25683,7 +25683,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0()); }
 
-	'!unique' 
+	'!unique'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0()); }
 )
@@ -25706,7 +25706,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0()); }
 
-	'unsettable' 
+	'unsettable'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0()); }
 )
@@ -25729,7 +25729,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0()); }
 
-	'!unsettable' 
+	'!unsettable'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0()); }
 )
@@ -25752,7 +25752,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0()); }
 
-	'volatile' 
+	'volatile'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0()); }
 )
@@ -25775,7 +25775,7 @@
 (
 { before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0()); }
 
-	'!volatile' 
+	'!volatile'
 
 { after(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0()); }
 )
@@ -25911,7 +25911,7 @@
 (
 { before(grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0()); }
 
-	'abstract' 
+	'abstract'
 
 { after(grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0()); }
 )
@@ -26009,7 +26009,7 @@
 (
 { before(grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0()); }
 
-	'interface' 
+	'interface'
 
 { after(grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0()); }
 )
@@ -26356,7 +26356,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); }
 
-	'Map' 
+	'Map'
 
 { after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); }
 )
@@ -26409,7 +26409,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); }
 
-	'Tuple' 
+	'Tuple'
 
 { after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); }
 )
@@ -26902,7 +26902,7 @@
 (
 { before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); }
 
-	'true' 
+	'true'
 
 { after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); }
 )
@@ -26925,7 +26925,7 @@
 (
 { before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); }
 
-	'false' 
+	'false'
 
 { after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); }
 )
@@ -27188,7 +27188,7 @@
 (
 { before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); }
 
-	'@' 
+	'@'
 
 { after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); }
 )
@@ -27451,7 +27451,7 @@
 (
 { before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); }
 
-	'|' 
+	'|'
 
 { after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); }
 )
@@ -27519,7 +27519,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); }
 )
@@ -27602,7 +27602,7 @@
 (
 { before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); }
 )
@@ -27911,7 +27911,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); }
 
-	'|1' 
+	'|1'
 
 { after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); }
 )
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 9d8ec6e..187ef07 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
@@ -1,6 +1,6 @@
 package org.eclipse.ocl.xtext.oclinecore.ui.contentassist.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
 
@@ -151,7 +151,7 @@
     // delegates
     // delegators
 
-    public InternalOCLinEcoreLexer() {;} 
+    public InternalOCLinEcoreLexer() {;}
     public InternalOCLinEcoreLexer(CharStream input) {
         this(input, new RecognizerSharedState());
     }
@@ -169,7 +169,7 @@
             // InternalOCLinEcore.g:11:7: ( 'abstract' )
             // InternalOCLinEcore.g:11:9: 'abstract'
             {
-            match("abstract"); 
+            match("abstract");
 
 
             }
@@ -190,7 +190,7 @@
             // InternalOCLinEcore.g:12:7: ( 'attribute' )
             // InternalOCLinEcore.g:12:9: 'attribute'
             {
-            match("attribute"); 
+            match("attribute");
 
 
             }
@@ -211,7 +211,7 @@
             // InternalOCLinEcore.g:13:7: ( 'body' )
             // InternalOCLinEcore.g:13:9: 'body'
             {
-            match("body"); 
+            match("body");
 
 
             }
@@ -232,7 +232,7 @@
             // InternalOCLinEcore.g:14:7: ( 'callable' )
             // InternalOCLinEcore.g:14:9: 'callable'
             {
-            match("callable"); 
+            match("callable");
 
 
             }
@@ -253,7 +253,7 @@
             // InternalOCLinEcore.g:15:7: ( 'class' )
             // InternalOCLinEcore.g:15:9: 'class'
             {
-            match("class"); 
+            match("class");
 
 
             }
@@ -274,7 +274,7 @@
             // InternalOCLinEcore.g:16:7: ( 'composes' )
             // InternalOCLinEcore.g:16:9: 'composes'
             {
-            match("composes"); 
+            match("composes");
 
 
             }
@@ -295,7 +295,7 @@
             // InternalOCLinEcore.g:17:7: ( 'datatype' )
             // InternalOCLinEcore.g:17:9: 'datatype'
             {
-            match("datatype"); 
+            match("datatype");
 
 
             }
@@ -316,7 +316,7 @@
             // InternalOCLinEcore.g:18:7: ( 'definition' )
             // InternalOCLinEcore.g:18:9: 'definition'
             {
-            match("definition"); 
+            match("definition");
 
 
             }
@@ -337,7 +337,7 @@
             // InternalOCLinEcore.g:19:7: ( 'derivation' )
             // InternalOCLinEcore.g:19:9: 'derivation'
             {
-            match("derivation"); 
+            match("derivation");
 
 
             }
@@ -358,7 +358,7 @@
             // InternalOCLinEcore.g:20:7: ( 'derived' )
             // InternalOCLinEcore.g:20:9: 'derived'
             {
-            match("derived"); 
+            match("derived");
 
 
             }
@@ -379,7 +379,7 @@
             // InternalOCLinEcore.g:21:7: ( 'enum' )
             // InternalOCLinEcore.g:21:9: 'enum'
             {
-            match("enum"); 
+            match("enum");
 
 
             }
@@ -400,7 +400,7 @@
             // InternalOCLinEcore.g:22:7: ( 'extends' )
             // InternalOCLinEcore.g:22:9: 'extends'
             {
-            match("extends"); 
+            match("extends");
 
 
             }
@@ -421,7 +421,7 @@
             // InternalOCLinEcore.g:23:7: ( 'id' )
             // InternalOCLinEcore.g:23:9: 'id'
             {
-            match("id"); 
+            match("id");
 
 
             }
@@ -442,7 +442,7 @@
             // InternalOCLinEcore.g:24:7: ( 'import' )
             // InternalOCLinEcore.g:24:9: 'import'
             {
-            match("import"); 
+            match("import");
 
 
             }
@@ -463,7 +463,7 @@
             // InternalOCLinEcore.g:25:7: ( 'initial' )
             // InternalOCLinEcore.g:25:9: 'initial'
             {
-            match("initial"); 
+            match("initial");
 
 
             }
@@ -484,7 +484,7 @@
             // InternalOCLinEcore.g:26:7: ( 'interface' )
             // InternalOCLinEcore.g:26:9: 'interface'
             {
-            match("interface"); 
+            match("interface");
 
 
             }
@@ -505,7 +505,7 @@
             // InternalOCLinEcore.g:27:7: ( 'key' )
             // InternalOCLinEcore.g:27:9: 'key'
             {
-            match("key"); 
+            match("key");
 
 
             }
@@ -526,7 +526,7 @@
             // InternalOCLinEcore.g:28:7: ( 'library' )
             // InternalOCLinEcore.g:28:9: 'library'
             {
-            match("library"); 
+            match("library");
 
 
             }
@@ -547,7 +547,7 @@
             // InternalOCLinEcore.g:29:7: ( 'module' )
             // InternalOCLinEcore.g:29:9: 'module'
             {
-            match("module"); 
+            match("module");
 
 
             }
@@ -568,7 +568,7 @@
             // InternalOCLinEcore.g:30:7: ( 'operation' )
             // InternalOCLinEcore.g:30:9: 'operation'
             {
-            match("operation"); 
+            match("operation");
 
 
             }
@@ -589,7 +589,7 @@
             // InternalOCLinEcore.g:31:7: ( 'ordered' )
             // InternalOCLinEcore.g:31:9: 'ordered'
             {
-            match("ordered"); 
+            match("ordered");
 
 
             }
@@ -610,7 +610,7 @@
             // InternalOCLinEcore.g:32:7: ( 'package' )
             // InternalOCLinEcore.g:32:9: 'package'
             {
-            match("package"); 
+            match("package");
 
 
             }
@@ -631,7 +631,7 @@
             // InternalOCLinEcore.g:33:7: ( 'postcondition' )
             // InternalOCLinEcore.g:33:9: 'postcondition'
             {
-            match("postcondition"); 
+            match("postcondition");
 
 
             }
@@ -652,7 +652,7 @@
             // InternalOCLinEcore.g:34:7: ( 'precondition' )
             // InternalOCLinEcore.g:34:9: 'precondition'
             {
-            match("precondition"); 
+            match("precondition");
 
 
             }
@@ -673,7 +673,7 @@
             // InternalOCLinEcore.g:35:7: ( 'primitive' )
             // InternalOCLinEcore.g:35:9: 'primitive'
             {
-            match("primitive"); 
+            match("primitive");
 
 
             }
@@ -694,7 +694,7 @@
             // InternalOCLinEcore.g:36:7: ( 'property' )
             // InternalOCLinEcore.g:36:9: 'property'
             {
-            match("property"); 
+            match("property");
 
 
             }
@@ -715,7 +715,7 @@
             // InternalOCLinEcore.g:37:7: ( 'readonly' )
             // InternalOCLinEcore.g:37:9: 'readonly'
             {
-            match("readonly"); 
+            match("readonly");
 
 
             }
@@ -736,7 +736,7 @@
             // InternalOCLinEcore.g:38:7: ( 'reference' )
             // InternalOCLinEcore.g:38:9: 'reference'
             {
-            match("reference"); 
+            match("reference");
 
 
             }
@@ -757,7 +757,7 @@
             // InternalOCLinEcore.g:39:7: ( 'resolve' )
             // InternalOCLinEcore.g:39:9: 'resolve'
             {
-            match("resolve"); 
+            match("resolve");
 
 
             }
@@ -778,7 +778,7 @@
             // InternalOCLinEcore.g:40:7: ( 'static' )
             // InternalOCLinEcore.g:40:9: 'static'
             {
-            match("static"); 
+            match("static");
 
 
             }
@@ -799,7 +799,7 @@
             // InternalOCLinEcore.g:41:7: ( 'throws' )
             // InternalOCLinEcore.g:41:9: 'throws'
             {
-            match("throws"); 
+            match("throws");
 
 
             }
@@ -820,7 +820,7 @@
             // InternalOCLinEcore.g:42:7: ( 'transient' )
             // InternalOCLinEcore.g:42:9: 'transient'
             {
-            match("transient"); 
+            match("transient");
 
 
             }
@@ -841,7 +841,7 @@
             // InternalOCLinEcore.g:43:7: ( 'unique' )
             // InternalOCLinEcore.g:43:9: 'unique'
             {
-            match("unique"); 
+            match("unique");
 
 
             }
@@ -862,7 +862,7 @@
             // InternalOCLinEcore.g:44:7: ( 'unsettable' )
             // InternalOCLinEcore.g:44:9: 'unsettable'
             {
-            match("unsettable"); 
+            match("unsettable");
 
 
             }
@@ -883,7 +883,7 @@
             // InternalOCLinEcore.g:45:7: ( 'volatile' )
             // InternalOCLinEcore.g:45:9: 'volatile'
             {
-            match("volatile"); 
+            match("volatile");
 
 
             }
@@ -904,7 +904,7 @@
             // InternalOCLinEcore.g:46:7: ( ';' )
             // InternalOCLinEcore.g:46:9: ';'
             {
-            match(';'); 
+            match(';');
 
             }
 
@@ -924,7 +924,7 @@
             // InternalOCLinEcore.g:47:7: ( '!serializable' )
             // InternalOCLinEcore.g:47:9: '!serializable'
             {
-            match("!serializable"); 
+            match("!serializable");
 
 
             }
@@ -945,7 +945,7 @@
             // InternalOCLinEcore.g:48:7: ( 'annotation' )
             // InternalOCLinEcore.g:48:9: 'annotation'
             {
-            match("annotation"); 
+            match("annotation");
 
 
             }
@@ -966,7 +966,7 @@
             // InternalOCLinEcore.g:49:7: ( 'documentation' )
             // InternalOCLinEcore.g:49:9: 'documentation'
             {
-            match("documentation"); 
+            match("documentation");
 
 
             }
@@ -987,7 +987,7 @@
             // InternalOCLinEcore.g:50:7: ( 'invariant' )
             // InternalOCLinEcore.g:50:9: 'invariant'
             {
-            match("invariant"); 
+            match("invariant");
 
 
             }
@@ -1008,7 +1008,7 @@
             // InternalOCLinEcore.g:51:7: ( 'literal' )
             // InternalOCLinEcore.g:51:9: 'literal'
             {
-            match("literal"); 
+            match("literal");
 
 
             }
@@ -1029,7 +1029,7 @@
             // InternalOCLinEcore.g:52:7: ( 'serializable' )
             // InternalOCLinEcore.g:52:9: 'serializable'
             {
-            match("serializable"); 
+            match("serializable");
 
 
             }
@@ -1050,7 +1050,7 @@
             // InternalOCLinEcore.g:53:7: ( 'sysml' )
             // InternalOCLinEcore.g:53:9: 'sysml'
             {
-            match("sysml"); 
+            match("sysml");
 
 
             }
@@ -1071,7 +1071,7 @@
             // InternalOCLinEcore.g:54:7: ( '-' )
             // InternalOCLinEcore.g:54:9: '-'
             {
-            match('-'); 
+            match('-');
 
             }
 
@@ -1091,7 +1091,7 @@
             // InternalOCLinEcore.g:55:7: ( 'not' )
             // InternalOCLinEcore.g:55:9: 'not'
             {
-            match("not"); 
+            match("not");
 
 
             }
@@ -1112,7 +1112,7 @@
             // InternalOCLinEcore.g:56:7: ( '*' )
             // InternalOCLinEcore.g:56:9: '*'
             {
-            match('*'); 
+            match('*');
 
             }
 
@@ -1132,7 +1132,7 @@
             // InternalOCLinEcore.g:57:7: ( '/' )
             // InternalOCLinEcore.g:57:9: '/'
             {
-            match('/'); 
+            match('/');
 
             }
 
@@ -1152,7 +1152,7 @@
             // InternalOCLinEcore.g:58:7: ( '+' )
             // InternalOCLinEcore.g:58:9: '+'
             {
-            match('+'); 
+            match('+');
 
             }
 
@@ -1172,7 +1172,7 @@
             // InternalOCLinEcore.g:59:7: ( '>' )
             // InternalOCLinEcore.g:59:9: '>'
             {
-            match('>'); 
+            match('>');
 
             }
 
@@ -1192,7 +1192,7 @@
             // InternalOCLinEcore.g:60:7: ( '<' )
             // InternalOCLinEcore.g:60:9: '<'
             {
-            match('<'); 
+            match('<');
 
             }
 
@@ -1212,7 +1212,7 @@
             // InternalOCLinEcore.g:61:7: ( '>=' )
             // InternalOCLinEcore.g:61:9: '>='
             {
-            match(">="); 
+            match(">=");
 
 
             }
@@ -1233,7 +1233,7 @@
             // InternalOCLinEcore.g:62:7: ( '<=' )
             // InternalOCLinEcore.g:62:9: '<='
             {
-            match("<="); 
+            match("<=");
 
 
             }
@@ -1254,7 +1254,7 @@
             // InternalOCLinEcore.g:63:7: ( '=' )
             // InternalOCLinEcore.g:63:9: '='
             {
-            match('='); 
+            match('=');
 
             }
 
@@ -1274,7 +1274,7 @@
             // InternalOCLinEcore.g:64:7: ( '<>' )
             // InternalOCLinEcore.g:64:9: '<>'
             {
-            match("<>"); 
+            match("<>");
 
 
             }
@@ -1295,7 +1295,7 @@
             // InternalOCLinEcore.g:65:7: ( 'and' )
             // InternalOCLinEcore.g:65:9: 'and'
             {
-            match("and"); 
+            match("and");
 
 
             }
@@ -1316,7 +1316,7 @@
             // InternalOCLinEcore.g:66:7: ( 'or' )
             // InternalOCLinEcore.g:66:9: 'or'
             {
-            match("or"); 
+            match("or");
 
 
             }
@@ -1337,7 +1337,7 @@
             // InternalOCLinEcore.g:67:7: ( 'xor' )
             // InternalOCLinEcore.g:67:9: 'xor'
             {
-            match("xor"); 
+            match("xor");
 
 
             }
@@ -1358,7 +1358,7 @@
             // InternalOCLinEcore.g:68:7: ( 'implies' )
             // InternalOCLinEcore.g:68:9: 'implies'
             {
-            match("implies"); 
+            match("implies");
 
 
             }
@@ -1379,7 +1379,7 @@
             // InternalOCLinEcore.g:69:7: ( '.' )
             // InternalOCLinEcore.g:69:9: '.'
             {
-            match('.'); 
+            match('.');
 
             }
 
@@ -1399,7 +1399,7 @@
             // InternalOCLinEcore.g:70:7: ( '->' )
             // InternalOCLinEcore.g:70:9: '->'
             {
-            match("->"); 
+            match("->");
 
 
             }
@@ -1420,7 +1420,7 @@
             // InternalOCLinEcore.g:71:7: ( '?.' )
             // InternalOCLinEcore.g:71:9: '?.'
             {
-            match("?."); 
+            match("?.");
 
 
             }
@@ -1441,7 +1441,7 @@
             // InternalOCLinEcore.g:72:7: ( '?->' )
             // InternalOCLinEcore.g:72:9: '?->'
             {
-            match("?->"); 
+            match("?->");
 
 
             }
@@ -1462,7 +1462,7 @@
             // InternalOCLinEcore.g:73:7: ( 'Map' )
             // InternalOCLinEcore.g:73:9: 'Map'
             {
-            match("Map"); 
+            match("Map");
 
 
             }
@@ -1483,7 +1483,7 @@
             // InternalOCLinEcore.g:74:7: ( 'Tuple' )
             // InternalOCLinEcore.g:74:9: 'Tuple'
             {
-            match("Tuple"); 
+            match("Tuple");
 
 
             }
@@ -1504,7 +1504,7 @@
             // InternalOCLinEcore.g:75:7: ( 'Boolean' )
             // InternalOCLinEcore.g:75:9: 'Boolean'
             {
-            match("Boolean"); 
+            match("Boolean");
 
 
             }
@@ -1525,7 +1525,7 @@
             // InternalOCLinEcore.g:76:7: ( 'Integer' )
             // InternalOCLinEcore.g:76:9: 'Integer'
             {
-            match("Integer"); 
+            match("Integer");
 
 
             }
@@ -1546,7 +1546,7 @@
             // InternalOCLinEcore.g:77:7: ( 'Real' )
             // InternalOCLinEcore.g:77:9: 'Real'
             {
-            match("Real"); 
+            match("Real");
 
 
             }
@@ -1567,7 +1567,7 @@
             // InternalOCLinEcore.g:78:7: ( 'String' )
             // InternalOCLinEcore.g:78:9: 'String'
             {
-            match("String"); 
+            match("String");
 
 
             }
@@ -1588,7 +1588,7 @@
             // InternalOCLinEcore.g:79:7: ( 'UnlimitedNatural' )
             // InternalOCLinEcore.g:79:9: 'UnlimitedNatural'
             {
-            match("UnlimitedNatural"); 
+            match("UnlimitedNatural");
 
 
             }
@@ -1609,7 +1609,7 @@
             // InternalOCLinEcore.g:80:7: ( 'OclAny' )
             // InternalOCLinEcore.g:80:9: 'OclAny'
             {
-            match("OclAny"); 
+            match("OclAny");
 
 
             }
@@ -1630,7 +1630,7 @@
             // InternalOCLinEcore.g:81:7: ( 'OclInvalid' )
             // InternalOCLinEcore.g:81:9: 'OclInvalid'
             {
-            match("OclInvalid"); 
+            match("OclInvalid");
 
 
             }
@@ -1651,7 +1651,7 @@
             // InternalOCLinEcore.g:82:7: ( 'OclVoid' )
             // InternalOCLinEcore.g:82:9: 'OclVoid'
             {
-            match("OclVoid"); 
+            match("OclVoid");
 
 
             }
@@ -1672,7 +1672,7 @@
             // InternalOCLinEcore.g:83:7: ( 'Set' )
             // InternalOCLinEcore.g:83:9: 'Set'
             {
-            match("Set"); 
+            match("Set");
 
 
             }
@@ -1693,7 +1693,7 @@
             // InternalOCLinEcore.g:84:7: ( 'Bag' )
             // InternalOCLinEcore.g:84:9: 'Bag'
             {
-            match("Bag"); 
+            match("Bag");
 
 
             }
@@ -1714,7 +1714,7 @@
             // InternalOCLinEcore.g:85:7: ( 'Sequence' )
             // InternalOCLinEcore.g:85:9: 'Sequence'
             {
-            match("Sequence"); 
+            match("Sequence");
 
 
             }
@@ -1735,7 +1735,7 @@
             // InternalOCLinEcore.g:86:7: ( 'Collection' )
             // InternalOCLinEcore.g:86:9: 'Collection'
             {
-            match("Collection"); 
+            match("Collection");
 
 
             }
@@ -1756,7 +1756,7 @@
             // InternalOCLinEcore.g:87:7: ( 'OrderedSet' )
             // InternalOCLinEcore.g:87:9: 'OrderedSet'
             {
-            match("OrderedSet"); 
+            match("OrderedSet");
 
 
             }
@@ -1777,7 +1777,7 @@
             // InternalOCLinEcore.g:88:7: ( '|?' )
             // InternalOCLinEcore.g:88:9: '|?'
             {
-            match("|?"); 
+            match("|?");
 
 
             }
@@ -1798,7 +1798,7 @@
             // InternalOCLinEcore.g:89:7: ( '?' )
             // InternalOCLinEcore.g:89:9: '?'
             {
-            match('?'); 
+            match('?');
 
             }
 
@@ -1818,7 +1818,7 @@
             // InternalOCLinEcore.g:90:7: ( '(' )
             // InternalOCLinEcore.g:90:9: '('
             {
-            match('('); 
+            match('(');
 
             }
 
@@ -1838,7 +1838,7 @@
             // InternalOCLinEcore.g:91:7: ( ')' )
             // InternalOCLinEcore.g:91:9: ')'
             {
-            match(')'); 
+            match(')');
 
             }
 
@@ -1858,7 +1858,7 @@
             // InternalOCLinEcore.g:92:7: ( ':' )
             // InternalOCLinEcore.g:92:9: ':'
             {
-            match(':'); 
+            match(':');
 
             }
 
@@ -1878,7 +1878,7 @@
             // InternalOCLinEcore.g:93:7: ( ',' )
             // InternalOCLinEcore.g:93:9: ','
             {
-            match(','); 
+            match(',');
 
             }
 
@@ -1898,7 +1898,7 @@
             // InternalOCLinEcore.g:94:8: ( '{' )
             // InternalOCLinEcore.g:94:10: '{'
             {
-            match('{'); 
+            match('{');
 
             }
 
@@ -1918,7 +1918,7 @@
             // InternalOCLinEcore.g:95:8: ( '}' )
             // InternalOCLinEcore.g:95:10: '}'
             {
-            match('}'); 
+            match('}');
 
             }
 
@@ -1938,7 +1938,7 @@
             // InternalOCLinEcore.g:96:8: ( '#' )
             // InternalOCLinEcore.g:96:10: '#'
             {
-            match('#'); 
+            match('#');
 
             }
 
@@ -1958,7 +1958,7 @@
             // InternalOCLinEcore.g:97:8: ( '::' )
             // InternalOCLinEcore.g:97:10: '::'
             {
-            match("::"); 
+            match("::");
 
 
             }
@@ -1979,7 +1979,7 @@
             // InternalOCLinEcore.g:98:8: ( '..' )
             // InternalOCLinEcore.g:98:10: '..'
             {
-            match(".."); 
+            match("..");
 
 
             }
@@ -2000,7 +2000,7 @@
             // InternalOCLinEcore.g:99:8: ( '++' )
             // InternalOCLinEcore.g:99:10: '++'
             {
-            match("++"); 
+            match("++");
 
 
             }
@@ -2021,7 +2021,7 @@
             // InternalOCLinEcore.g:100:8: ( 'Lambda' )
             // InternalOCLinEcore.g:100:10: 'Lambda'
             {
-            match("Lambda"); 
+            match("Lambda");
 
 
             }
@@ -2042,7 +2042,7 @@
             // InternalOCLinEcore.g:101:8: ( '<-' )
             // InternalOCLinEcore.g:101:10: '<-'
             {
-            match("<-"); 
+            match("<-");
 
 
             }
@@ -2063,7 +2063,7 @@
             // InternalOCLinEcore.g:102:8: ( 'invalid' )
             // InternalOCLinEcore.g:102:10: 'invalid'
             {
-            match("invalid"); 
+            match("invalid");
 
 
             }
@@ -2084,7 +2084,7 @@
             // InternalOCLinEcore.g:103:8: ( 'null' )
             // InternalOCLinEcore.g:103:10: 'null'
             {
-            match("null"); 
+            match("null");
 
 
             }
@@ -2105,7 +2105,7 @@
             // InternalOCLinEcore.g:104:8: ( 'pre' )
             // InternalOCLinEcore.g:104:10: 'pre'
             {
-            match("pre"); 
+            match("pre");
 
 
             }
@@ -2126,7 +2126,7 @@
             // InternalOCLinEcore.g:105:8: ( '[' )
             // InternalOCLinEcore.g:105:10: '['
             {
-            match('['); 
+            match('[');
 
             }
 
@@ -2146,7 +2146,7 @@
             // InternalOCLinEcore.g:106:8: ( ']' )
             // InternalOCLinEcore.g:106:10: ']'
             {
-            match(']'); 
+            match(']');
 
             }
 
@@ -2166,7 +2166,7 @@
             // InternalOCLinEcore.g:107:8: ( 'in' )
             // InternalOCLinEcore.g:107:10: 'in'
             {
-            match("in"); 
+            match("in");
 
 
             }
@@ -2187,7 +2187,7 @@
             // InternalOCLinEcore.g:108:8: ( 'if' )
             // InternalOCLinEcore.g:108:10: 'if'
             {
-            match("if"); 
+            match("if");
 
 
             }
@@ -2208,7 +2208,7 @@
             // InternalOCLinEcore.g:109:8: ( 'then' )
             // InternalOCLinEcore.g:109:10: 'then'
             {
-            match("then"); 
+            match("then");
 
 
             }
@@ -2229,7 +2229,7 @@
             // InternalOCLinEcore.g:110:8: ( 'else' )
             // InternalOCLinEcore.g:110:10: 'else'
             {
-            match("else"); 
+            match("else");
 
 
             }
@@ -2250,7 +2250,7 @@
             // InternalOCLinEcore.g:111:8: ( 'endif' )
             // InternalOCLinEcore.g:111:10: 'endif'
             {
-            match("endif"); 
+            match("endif");
 
 
             }
@@ -2271,7 +2271,7 @@
             // InternalOCLinEcore.g:112:8: ( 'elseif' )
             // InternalOCLinEcore.g:112:10: 'elseif'
             {
-            match("elseif"); 
+            match("elseif");
 
 
             }
@@ -2292,7 +2292,7 @@
             // InternalOCLinEcore.g:113:8: ( 'let' )
             // InternalOCLinEcore.g:113:10: 'let'
             {
-            match("let"); 
+            match("let");
 
 
             }
@@ -2313,7 +2313,7 @@
             // InternalOCLinEcore.g:114:8: ( 'self' )
             // InternalOCLinEcore.g:114:10: 'self'
             {
-            match("self"); 
+            match("self");
 
 
             }
@@ -2334,7 +2334,7 @@
             // InternalOCLinEcore.g:115:8: ( '&&' )
             // InternalOCLinEcore.g:115:10: '&&'
             {
-            match("&&"); 
+            match("&&");
 
 
             }
@@ -2355,7 +2355,7 @@
             // InternalOCLinEcore.g:116:8: ( '!derived' )
             // InternalOCLinEcore.g:116:10: '!derived'
             {
-            match("!derived"); 
+            match("!derived");
 
 
             }
@@ -2376,7 +2376,7 @@
             // InternalOCLinEcore.g:117:8: ( '!id' )
             // InternalOCLinEcore.g:117:10: '!id'
             {
-            match("!id"); 
+            match("!id");
 
 
             }
@@ -2397,7 +2397,7 @@
             // InternalOCLinEcore.g:118:8: ( '!ordered' )
             // InternalOCLinEcore.g:118:10: '!ordered'
             {
-            match("!ordered"); 
+            match("!ordered");
 
 
             }
@@ -2418,7 +2418,7 @@
             // InternalOCLinEcore.g:119:8: ( '!readonly' )
             // InternalOCLinEcore.g:119:10: '!readonly'
             {
-            match("!readonly"); 
+            match("!readonly");
 
 
             }
@@ -2439,7 +2439,7 @@
             // InternalOCLinEcore.g:120:8: ( '!transient' )
             // InternalOCLinEcore.g:120:10: '!transient'
             {
-            match("!transient"); 
+            match("!transient");
 
 
             }
@@ -2460,7 +2460,7 @@
             // InternalOCLinEcore.g:121:8: ( '!unique' )
             // InternalOCLinEcore.g:121:10: '!unique'
             {
-            match("!unique"); 
+            match("!unique");
 
 
             }
@@ -2481,7 +2481,7 @@
             // InternalOCLinEcore.g:122:8: ( '!unsettable' )
             // InternalOCLinEcore.g:122:10: '!unsettable'
             {
-            match("!unsettable"); 
+            match("!unsettable");
 
 
             }
@@ -2502,7 +2502,7 @@
             // InternalOCLinEcore.g:123:8: ( '!volatile' )
             // InternalOCLinEcore.g:123:10: '!volatile'
             {
-            match("!volatile"); 
+            match("!volatile");
 
 
             }
@@ -2523,7 +2523,7 @@
             // InternalOCLinEcore.g:124:8: ( '::*' )
             // InternalOCLinEcore.g:124:10: '::*'
             {
-            match("::*"); 
+            match("::*");
 
 
             }
@@ -2544,7 +2544,7 @@
             // InternalOCLinEcore.g:125:8: ( '!composes' )
             // InternalOCLinEcore.g:125:10: '!composes'
             {
-            match("!composes"); 
+            match("!composes");
 
 
             }
@@ -2565,7 +2565,7 @@
             // InternalOCLinEcore.g:126:8: ( '!resolve' )
             // InternalOCLinEcore.g:126:10: '!resolve'
             {
-            match("!resolve"); 
+            match("!resolve");
 
 
             }
@@ -2586,7 +2586,7 @@
             // InternalOCLinEcore.g:127:8: ( 'true' )
             // InternalOCLinEcore.g:127:10: 'true'
             {
-            match("true"); 
+            match("true");
 
 
             }
@@ -2607,7 +2607,7 @@
             // InternalOCLinEcore.g:128:8: ( 'false' )
             // InternalOCLinEcore.g:128:10: 'false'
             {
-            match("false"); 
+            match("false");
 
 
             }
@@ -2628,7 +2628,7 @@
             // InternalOCLinEcore.g:129:8: ( '@' )
             // InternalOCLinEcore.g:129:10: '@'
             {
-            match('@'); 
+            match('@');
 
             }
 
@@ -2648,7 +2648,7 @@
             // InternalOCLinEcore.g:130:8: ( '|' )
             // InternalOCLinEcore.g:130:10: '|'
             {
-            match('|'); 
+            match('|');
 
             }
 
@@ -2668,7 +2668,7 @@
             // InternalOCLinEcore.g:131:8: ( '|1' )
             // InternalOCLinEcore.g:131:10: '|1'
             {
-            match("|1"); 
+            match("|1");
 
 
             }
@@ -2689,7 +2689,7 @@
             // InternalOCLinEcore.g:28132:22: ( '\\u00A3$%^\\u00A3$%^' )
             // InternalOCLinEcore.g:28132:24: '\\u00A3$%^\\u00A3$%^'
             {
-            match("\u00A3$%^\u00A3$%^"); 
+            match("\u00A3$%^\u00A3$%^");
 
 
             }
@@ -2708,7 +2708,7 @@
             // InternalOCLinEcore.g:28134:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
             // InternalOCLinEcore.g:28134:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
-            match('\\'); 
+            match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
                 input.consume();
 
@@ -2759,7 +2759,7 @@
             // InternalOCLinEcore.g:28138:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
             // InternalOCLinEcore.g:28138:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
-            match('\"'); 
+            match('\"');
             // InternalOCLinEcore.g:28138:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
@@ -2778,7 +2778,7 @@
             	case 1 :
             	    // InternalOCLinEcore.g:28138:34: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -2803,7 +2803,7 @@
                 }
             } while (true);
 
-            match('\"'); 
+            match('\"');
 
             }
 
@@ -2823,7 +2823,7 @@
             // InternalOCLinEcore.g:28140:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             // InternalOCLinEcore.g:28140:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
-            match('\''); 
+            match('\'');
             // InternalOCLinEcore.g:28140:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
@@ -2842,7 +2842,7 @@
             	case 1 :
             	    // InternalOCLinEcore.g:28140:35: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -2867,7 +2867,7 @@
                 }
             } while (true);
 
-            match('\''); 
+            match('\'');
 
             }
 
@@ -2887,7 +2887,7 @@
             // InternalOCLinEcore.g:28142:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
             // InternalOCLinEcore.g:28142:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
-            match("/'"); 
+            match("/'");
 
             // InternalOCLinEcore.g:28142:38: ( options {greedy=false; } : . )*
             loop3:
@@ -2916,7 +2916,7 @@
             	case 1 :
             	    // InternalOCLinEcore.g:28142:66: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -2926,7 +2926,7 @@
                 }
             } while (true);
 
-            match("'/"); 
+            match("'/");
 
 
             }
@@ -2947,7 +2947,7 @@
             // InternalOCLinEcore.g:28144:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
             // InternalOCLinEcore.g:28144:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
-            mRULE_LETTER_CHARACTER(); 
+            mRULE_LETTER_CHARACTER();
             // InternalOCLinEcore.g:28144:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
@@ -3000,8 +3000,8 @@
             // InternalOCLinEcore.g:28146:17: ( '_' RULE_SINGLE_QUOTED_STRING )
             // InternalOCLinEcore.g:28146:19: '_' RULE_SINGLE_QUOTED_STRING
             {
-            match('_'); 
-            mRULE_SINGLE_QUOTED_STRING(); 
+            match('_');
+            mRULE_SINGLE_QUOTED_STRING();
 
             }
 
@@ -3037,7 +3037,7 @@
             	case 1 :
             	    // InternalOCLinEcore.g:28148:13: '0' .. '9'
             	    {
-            	    matchRange('0','9'); 
+            	    matchRange('0','9');
 
             	    }
             	    break;
@@ -3070,7 +3070,7 @@
             // InternalOCLinEcore.g:28150:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
             // InternalOCLinEcore.g:28150:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
-            match("/*"); 
+            match("/*");
 
             // InternalOCLinEcore.g:28150:24: ( options {greedy=false; } : . )*
             loop6:
@@ -3099,7 +3099,7 @@
             	case 1 :
             	    // InternalOCLinEcore.g:28150:52: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -3109,7 +3109,7 @@
                 }
             } while (true);
 
-            match("*/"); 
+            match("*/");
 
 
             }
@@ -3130,7 +3130,7 @@
             // InternalOCLinEcore.g:28152:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
             // InternalOCLinEcore.g:28152:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
-            match("--"); 
+            match("--");
 
             // InternalOCLinEcore.g:28152:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
@@ -3187,14 +3187,14 @@
                         case 1 :
                             // InternalOCLinEcore.g:28152:41: '\\r'
                             {
-                            match('\r'); 
+                            match('\r');
 
                             }
                             break;
 
                     }
 
-                    match('\n'); 
+                    match('\n');
 
                     }
                     break;
@@ -3277,7 +3277,7 @@
             // InternalOCLinEcore.g:28156:16: ( . )
             // InternalOCLinEcore.g:28156:18: .
             {
-            matchAny(); 
+            matchAny();
 
             }
 
@@ -3297,924 +3297,924 @@
             case 1 :
                 // InternalOCLinEcore.g:1:10: T__17
                 {
-                mT__17(); 
+                mT__17();
 
                 }
                 break;
             case 2 :
                 // InternalOCLinEcore.g:1:16: T__18
                 {
-                mT__18(); 
+                mT__18();
 
                 }
                 break;
             case 3 :
                 // InternalOCLinEcore.g:1:22: T__19
                 {
-                mT__19(); 
+                mT__19();
 
                 }
                 break;
             case 4 :
                 // InternalOCLinEcore.g:1:28: T__20
                 {
-                mT__20(); 
+                mT__20();
 
                 }
                 break;
             case 5 :
                 // InternalOCLinEcore.g:1:34: T__21
                 {
-                mT__21(); 
+                mT__21();
 
                 }
                 break;
             case 6 :
                 // InternalOCLinEcore.g:1:40: T__22
                 {
-                mT__22(); 
+                mT__22();
 
                 }
                 break;
             case 7 :
                 // InternalOCLinEcore.g:1:46: T__23
                 {
-                mT__23(); 
+                mT__23();
 
                 }
                 break;
             case 8 :
                 // InternalOCLinEcore.g:1:52: T__24
                 {
-                mT__24(); 
+                mT__24();
 
                 }
                 break;
             case 9 :
                 // InternalOCLinEcore.g:1:58: T__25
                 {
-                mT__25(); 
+                mT__25();
 
                 }
                 break;
             case 10 :
                 // InternalOCLinEcore.g:1:64: T__26
                 {
-                mT__26(); 
+                mT__26();
 
                 }
                 break;
             case 11 :
                 // InternalOCLinEcore.g:1:70: T__27
                 {
-                mT__27(); 
+                mT__27();
 
                 }
                 break;
             case 12 :
                 // InternalOCLinEcore.g:1:76: T__28
                 {
-                mT__28(); 
+                mT__28();
 
                 }
                 break;
             case 13 :
                 // InternalOCLinEcore.g:1:82: T__29
                 {
-                mT__29(); 
+                mT__29();
 
                 }
                 break;
             case 14 :
                 // InternalOCLinEcore.g:1:88: T__30
                 {
-                mT__30(); 
+                mT__30();
 
                 }
                 break;
             case 15 :
                 // InternalOCLinEcore.g:1:94: T__31
                 {
-                mT__31(); 
+                mT__31();
 
                 }
                 break;
             case 16 :
                 // InternalOCLinEcore.g:1:100: T__32
                 {
-                mT__32(); 
+                mT__32();
 
                 }
                 break;
             case 17 :
                 // InternalOCLinEcore.g:1:106: T__33
                 {
-                mT__33(); 
+                mT__33();
 
                 }
                 break;
             case 18 :
                 // InternalOCLinEcore.g:1:112: T__34
                 {
-                mT__34(); 
+                mT__34();
 
                 }
                 break;
             case 19 :
                 // InternalOCLinEcore.g:1:118: T__35
                 {
-                mT__35(); 
+                mT__35();
 
                 }
                 break;
             case 20 :
                 // InternalOCLinEcore.g:1:124: T__36
                 {
-                mT__36(); 
+                mT__36();
 
                 }
                 break;
             case 21 :
                 // InternalOCLinEcore.g:1:130: T__37
                 {
-                mT__37(); 
+                mT__37();
 
                 }
                 break;
             case 22 :
                 // InternalOCLinEcore.g:1:136: T__38
                 {
-                mT__38(); 
+                mT__38();
 
                 }
                 break;
             case 23 :
                 // InternalOCLinEcore.g:1:142: T__39
                 {
-                mT__39(); 
+                mT__39();
 
                 }
                 break;
             case 24 :
                 // InternalOCLinEcore.g:1:148: T__40
                 {
-                mT__40(); 
+                mT__40();
 
                 }
                 break;
             case 25 :
                 // InternalOCLinEcore.g:1:154: T__41
                 {
-                mT__41(); 
+                mT__41();
 
                 }
                 break;
             case 26 :
                 // InternalOCLinEcore.g:1:160: T__42
                 {
-                mT__42(); 
+                mT__42();
 
                 }
                 break;
             case 27 :
                 // InternalOCLinEcore.g:1:166: T__43
                 {
-                mT__43(); 
+                mT__43();
 
                 }
                 break;
             case 28 :
                 // InternalOCLinEcore.g:1:172: T__44
                 {
-                mT__44(); 
+                mT__44();
 
                 }
                 break;
             case 29 :
                 // InternalOCLinEcore.g:1:178: T__45
                 {
-                mT__45(); 
+                mT__45();
 
                 }
                 break;
             case 30 :
                 // InternalOCLinEcore.g:1:184: T__46
                 {
-                mT__46(); 
+                mT__46();
 
                 }
                 break;
             case 31 :
                 // InternalOCLinEcore.g:1:190: T__47
                 {
-                mT__47(); 
+                mT__47();
 
                 }
                 break;
             case 32 :
                 // InternalOCLinEcore.g:1:196: T__48
                 {
-                mT__48(); 
+                mT__48();
 
                 }
                 break;
             case 33 :
                 // InternalOCLinEcore.g:1:202: T__49
                 {
-                mT__49(); 
+                mT__49();
 
                 }
                 break;
             case 34 :
                 // InternalOCLinEcore.g:1:208: T__50
                 {
-                mT__50(); 
+                mT__50();
 
                 }
                 break;
             case 35 :
                 // InternalOCLinEcore.g:1:214: T__51
                 {
-                mT__51(); 
+                mT__51();
 
                 }
                 break;
             case 36 :
                 // InternalOCLinEcore.g:1:220: T__52
                 {
-                mT__52(); 
+                mT__52();
 
                 }
                 break;
             case 37 :
                 // InternalOCLinEcore.g:1:226: T__53
                 {
-                mT__53(); 
+                mT__53();
 
                 }
                 break;
             case 38 :
                 // InternalOCLinEcore.g:1:232: T__54
                 {
-                mT__54(); 
+                mT__54();
 
                 }
                 break;
             case 39 :
                 // InternalOCLinEcore.g:1:238: T__55
                 {
-                mT__55(); 
+                mT__55();
 
                 }
                 break;
             case 40 :
                 // InternalOCLinEcore.g:1:244: T__56
                 {
-                mT__56(); 
+                mT__56();
 
                 }
                 break;
             case 41 :
                 // InternalOCLinEcore.g:1:250: T__57
                 {
-                mT__57(); 
+                mT__57();
 
                 }
                 break;
             case 42 :
                 // InternalOCLinEcore.g:1:256: T__58
                 {
-                mT__58(); 
+                mT__58();
 
                 }
                 break;
             case 43 :
                 // InternalOCLinEcore.g:1:262: T__59
                 {
-                mT__59(); 
+                mT__59();
 
                 }
                 break;
             case 44 :
                 // InternalOCLinEcore.g:1:268: T__60
                 {
-                mT__60(); 
+                mT__60();
 
                 }
                 break;
             case 45 :
                 // InternalOCLinEcore.g:1:274: T__61
                 {
-                mT__61(); 
+                mT__61();
 
                 }
                 break;
             case 46 :
                 // InternalOCLinEcore.g:1:280: T__62
                 {
-                mT__62(); 
+                mT__62();
 
                 }
                 break;
             case 47 :
                 // InternalOCLinEcore.g:1:286: T__63
                 {
-                mT__63(); 
+                mT__63();
 
                 }
                 break;
             case 48 :
                 // InternalOCLinEcore.g:1:292: T__64
                 {
-                mT__64(); 
+                mT__64();
 
                 }
                 break;
             case 49 :
                 // InternalOCLinEcore.g:1:298: T__65
                 {
-                mT__65(); 
+                mT__65();
 
                 }
                 break;
             case 50 :
                 // InternalOCLinEcore.g:1:304: T__66
                 {
-                mT__66(); 
+                mT__66();
 
                 }
                 break;
             case 51 :
                 // InternalOCLinEcore.g:1:310: T__67
                 {
-                mT__67(); 
+                mT__67();
 
                 }
                 break;
             case 52 :
                 // InternalOCLinEcore.g:1:316: T__68
                 {
-                mT__68(); 
+                mT__68();
 
                 }
                 break;
             case 53 :
                 // InternalOCLinEcore.g:1:322: T__69
                 {
-                mT__69(); 
+                mT__69();
 
                 }
                 break;
             case 54 :
                 // InternalOCLinEcore.g:1:328: T__70
                 {
-                mT__70(); 
+                mT__70();
 
                 }
                 break;
             case 55 :
                 // InternalOCLinEcore.g:1:334: T__71
                 {
-                mT__71(); 
+                mT__71();
 
                 }
                 break;
             case 56 :
                 // InternalOCLinEcore.g:1:340: T__72
                 {
-                mT__72(); 
+                mT__72();
 
                 }
                 break;
             case 57 :
                 // InternalOCLinEcore.g:1:346: T__73
                 {
-                mT__73(); 
+                mT__73();
 
                 }
                 break;
             case 58 :
                 // InternalOCLinEcore.g:1:352: T__74
                 {
-                mT__74(); 
+                mT__74();
 
                 }
                 break;
             case 59 :
                 // InternalOCLinEcore.g:1:358: T__75
                 {
-                mT__75(); 
+                mT__75();
 
                 }
                 break;
             case 60 :
                 // InternalOCLinEcore.g:1:364: T__76
                 {
-                mT__76(); 
+                mT__76();
 
                 }
                 break;
             case 61 :
                 // InternalOCLinEcore.g:1:370: T__77
                 {
-                mT__77(); 
+                mT__77();
 
                 }
                 break;
             case 62 :
                 // InternalOCLinEcore.g:1:376: T__78
                 {
-                mT__78(); 
+                mT__78();
 
                 }
                 break;
             case 63 :
                 // InternalOCLinEcore.g:1:382: T__79
                 {
-                mT__79(); 
+                mT__79();
 
                 }
                 break;
             case 64 :
                 // InternalOCLinEcore.g:1:388: T__80
                 {
-                mT__80(); 
+                mT__80();
 
                 }
                 break;
             case 65 :
                 // InternalOCLinEcore.g:1:394: T__81
                 {
-                mT__81(); 
+                mT__81();
 
                 }
                 break;
             case 66 :
                 // InternalOCLinEcore.g:1:400: T__82
                 {
-                mT__82(); 
+                mT__82();
 
                 }
                 break;
             case 67 :
                 // InternalOCLinEcore.g:1:406: T__83
                 {
-                mT__83(); 
+                mT__83();
 
                 }
                 break;
             case 68 :
                 // InternalOCLinEcore.g:1:412: T__84
                 {
-                mT__84(); 
+                mT__84();
 
                 }
                 break;
             case 69 :
                 // InternalOCLinEcore.g:1:418: T__85
                 {
-                mT__85(); 
+                mT__85();
 
                 }
                 break;
             case 70 :
                 // InternalOCLinEcore.g:1:424: T__86
                 {
-                mT__86(); 
+                mT__86();
 
                 }
                 break;
             case 71 :
                 // InternalOCLinEcore.g:1:430: T__87
                 {
-                mT__87(); 
+                mT__87();
 
                 }
                 break;
             case 72 :
                 // InternalOCLinEcore.g:1:436: T__88
                 {
-                mT__88(); 
+                mT__88();
 
                 }
                 break;
             case 73 :
                 // InternalOCLinEcore.g:1:442: T__89
                 {
-                mT__89(); 
+                mT__89();
 
                 }
                 break;
             case 74 :
                 // InternalOCLinEcore.g:1:448: T__90
                 {
-                mT__90(); 
+                mT__90();
 
                 }
                 break;
             case 75 :
                 // InternalOCLinEcore.g:1:454: T__91
                 {
-                mT__91(); 
+                mT__91();
 
                 }
                 break;
             case 76 :
                 // InternalOCLinEcore.g:1:460: T__92
                 {
-                mT__92(); 
+                mT__92();
 
                 }
                 break;
             case 77 :
                 // InternalOCLinEcore.g:1:466: T__93
                 {
-                mT__93(); 
+                mT__93();
 
                 }
                 break;
             case 78 :
                 // InternalOCLinEcore.g:1:472: T__94
                 {
-                mT__94(); 
+                mT__94();
 
                 }
                 break;
             case 79 :
                 // InternalOCLinEcore.g:1:478: T__95
                 {
-                mT__95(); 
+                mT__95();
 
                 }
                 break;
             case 80 :
                 // InternalOCLinEcore.g:1:484: T__96
                 {
-                mT__96(); 
+                mT__96();
 
                 }
                 break;
             case 81 :
                 // InternalOCLinEcore.g:1:490: T__97
                 {
-                mT__97(); 
+                mT__97();
 
                 }
                 break;
             case 82 :
                 // InternalOCLinEcore.g:1:496: T__98
                 {
-                mT__98(); 
+                mT__98();
 
                 }
                 break;
             case 83 :
                 // InternalOCLinEcore.g:1:502: T__99
                 {
-                mT__99(); 
+                mT__99();
 
                 }
                 break;
             case 84 :
                 // InternalOCLinEcore.g:1:508: T__100
                 {
-                mT__100(); 
+                mT__100();
 
                 }
                 break;
             case 85 :
                 // InternalOCLinEcore.g:1:515: T__101
                 {
-                mT__101(); 
+                mT__101();
 
                 }
                 break;
             case 86 :
                 // InternalOCLinEcore.g:1:522: T__102
                 {
-                mT__102(); 
+                mT__102();
 
                 }
                 break;
             case 87 :
                 // InternalOCLinEcore.g:1:529: T__103
                 {
-                mT__103(); 
+                mT__103();
 
                 }
                 break;
             case 88 :
                 // InternalOCLinEcore.g:1:536: T__104
                 {
-                mT__104(); 
+                mT__104();
 
                 }
                 break;
             case 89 :
                 // InternalOCLinEcore.g:1:543: T__105
                 {
-                mT__105(); 
+                mT__105();
 
                 }
                 break;
             case 90 :
                 // InternalOCLinEcore.g:1:550: T__106
                 {
-                mT__106(); 
+                mT__106();
 
                 }
                 break;
             case 91 :
                 // InternalOCLinEcore.g:1:557: T__107
                 {
-                mT__107(); 
+                mT__107();
 
                 }
                 break;
             case 92 :
                 // InternalOCLinEcore.g:1:564: T__108
                 {
-                mT__108(); 
+                mT__108();
 
                 }
                 break;
             case 93 :
                 // InternalOCLinEcore.g:1:571: T__109
                 {
-                mT__109(); 
+                mT__109();
 
                 }
                 break;
             case 94 :
                 // InternalOCLinEcore.g:1:578: T__110
                 {
-                mT__110(); 
+                mT__110();
 
                 }
                 break;
             case 95 :
                 // InternalOCLinEcore.g:1:585: T__111
                 {
-                mT__111(); 
+                mT__111();
 
                 }
                 break;
             case 96 :
                 // InternalOCLinEcore.g:1:592: T__112
                 {
-                mT__112(); 
+                mT__112();
 
                 }
                 break;
             case 97 :
                 // InternalOCLinEcore.g:1:599: T__113
                 {
-                mT__113(); 
+                mT__113();
 
                 }
                 break;
             case 98 :
                 // InternalOCLinEcore.g:1:606: T__114
                 {
-                mT__114(); 
+                mT__114();
 
                 }
                 break;
             case 99 :
                 // InternalOCLinEcore.g:1:613: T__115
                 {
-                mT__115(); 
+                mT__115();
 
                 }
                 break;
             case 100 :
                 // InternalOCLinEcore.g:1:620: T__116
                 {
-                mT__116(); 
+                mT__116();
 
                 }
                 break;
             case 101 :
                 // InternalOCLinEcore.g:1:627: T__117
                 {
-                mT__117(); 
+                mT__117();
 
                 }
                 break;
             case 102 :
                 // InternalOCLinEcore.g:1:634: T__118
                 {
-                mT__118(); 
+                mT__118();
 
                 }
                 break;
             case 103 :
                 // InternalOCLinEcore.g:1:641: T__119
                 {
-                mT__119(); 
+                mT__119();
 
                 }
                 break;
             case 104 :
                 // InternalOCLinEcore.g:1:648: T__120
                 {
-                mT__120(); 
+                mT__120();
 
                 }
                 break;
             case 105 :
                 // InternalOCLinEcore.g:1:655: T__121
                 {
-                mT__121(); 
+                mT__121();
 
                 }
                 break;
             case 106 :
                 // InternalOCLinEcore.g:1:662: T__122
                 {
-                mT__122(); 
+                mT__122();
 
                 }
                 break;
             case 107 :
                 // InternalOCLinEcore.g:1:669: T__123
                 {
-                mT__123(); 
+                mT__123();
 
                 }
                 break;
             case 108 :
                 // InternalOCLinEcore.g:1:676: T__124
                 {
-                mT__124(); 
+                mT__124();
 
                 }
                 break;
             case 109 :
                 // InternalOCLinEcore.g:1:683: T__125
                 {
-                mT__125(); 
+                mT__125();
 
                 }
                 break;
             case 110 :
                 // InternalOCLinEcore.g:1:690: T__126
                 {
-                mT__126(); 
+                mT__126();
 
                 }
                 break;
             case 111 :
                 // InternalOCLinEcore.g:1:697: T__127
                 {
-                mT__127(); 
+                mT__127();
 
                 }
                 break;
             case 112 :
                 // InternalOCLinEcore.g:1:704: T__128
                 {
-                mT__128(); 
+                mT__128();
 
                 }
                 break;
             case 113 :
                 // InternalOCLinEcore.g:1:711: T__129
                 {
-                mT__129(); 
+                mT__129();
 
                 }
                 break;
             case 114 :
                 // InternalOCLinEcore.g:1:718: T__130
                 {
-                mT__130(); 
+                mT__130();
 
                 }
                 break;
             case 115 :
                 // InternalOCLinEcore.g:1:725: T__131
                 {
-                mT__131(); 
+                mT__131();
 
                 }
                 break;
             case 116 :
                 // InternalOCLinEcore.g:1:732: T__132
                 {
-                mT__132(); 
+                mT__132();
 
                 }
                 break;
             case 117 :
                 // InternalOCLinEcore.g:1:739: T__133
                 {
-                mT__133(); 
+                mT__133();
 
                 }
                 break;
             case 118 :
                 // InternalOCLinEcore.g:1:746: T__134
                 {
-                mT__134(); 
+                mT__134();
 
                 }
                 break;
             case 119 :
                 // InternalOCLinEcore.g:1:753: T__135
                 {
-                mT__135(); 
+                mT__135();
 
                 }
                 break;
             case 120 :
                 // InternalOCLinEcore.g:1:760: T__136
                 {
-                mT__136(); 
+                mT__136();
 
                 }
                 break;
             case 121 :
                 // InternalOCLinEcore.g:1:767: T__137
                 {
-                mT__137(); 
+                mT__137();
 
                 }
                 break;
             case 122 :
                 // InternalOCLinEcore.g:1:774: RULE_UNQUOTED_STRING
                 {
-                mRULE_UNQUOTED_STRING(); 
+                mRULE_UNQUOTED_STRING();
 
                 }
                 break;
             case 123 :
                 // InternalOCLinEcore.g:1:795: RULE_DOUBLE_QUOTED_STRING
                 {
-                mRULE_DOUBLE_QUOTED_STRING(); 
+                mRULE_DOUBLE_QUOTED_STRING();
 
                 }
                 break;
             case 124 :
                 // InternalOCLinEcore.g:1:821: RULE_SINGLE_QUOTED_STRING
                 {
-                mRULE_SINGLE_QUOTED_STRING(); 
+                mRULE_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 125 :
                 // InternalOCLinEcore.g:1:847: RULE_ML_SINGLE_QUOTED_STRING
                 {
-                mRULE_ML_SINGLE_QUOTED_STRING(); 
+                mRULE_ML_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 126 :
                 // InternalOCLinEcore.g:1:876: RULE_SIMPLE_ID
                 {
-                mRULE_SIMPLE_ID(); 
+                mRULE_SIMPLE_ID();
 
                 }
                 break;
             case 127 :
                 // InternalOCLinEcore.g:1:891: RULE_ESCAPED_ID
                 {
-                mRULE_ESCAPED_ID(); 
+                mRULE_ESCAPED_ID();
 
                 }
                 break;
             case 128 :
                 // InternalOCLinEcore.g:1:907: RULE_INT
                 {
-                mRULE_INT(); 
+                mRULE_INT();
 
                 }
                 break;
             case 129 :
                 // InternalOCLinEcore.g:1:916: RULE_ML_COMMENT
                 {
-                mRULE_ML_COMMENT(); 
+                mRULE_ML_COMMENT();
 
                 }
                 break;
             case 130 :
                 // InternalOCLinEcore.g:1:932: RULE_SL_COMMENT
                 {
-                mRULE_SL_COMMENT(); 
+                mRULE_SL_COMMENT();
 
                 }
                 break;
             case 131 :
                 // InternalOCLinEcore.g:1:948: RULE_WS
                 {
-                mRULE_WS(); 
+                mRULE_WS();
 
                 }
                 break;
             case 132 :
                 // InternalOCLinEcore.g:1:956: RULE_ANY_OTHER
                 {
-                mRULE_ANY_OTHER(); 
+                mRULE_ANY_OTHER();
 
                 }
                 break;
@@ -4863,7 +4863,7 @@
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA11_0 = input.LA(1);
 
                         s = -1;
@@ -4989,7 +4989,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA11_54 = input.LA(1);
 
                         s = -1;
@@ -4999,7 +4999,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA11_55 = input.LA(1);
 
                         s = -1;
@@ -5016,6 +5016,6 @@
             throw nvae;
         }
     }
- 
+
 
 }
\ No newline at end of file
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 0372235..c084c71 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
@@ -1,4 +1,4 @@
-package org.eclipse.ocl.xtext.oclinecore.ui.contentassist.antlr.internal; 
+package org.eclipse.ocl.xtext.oclinecore.ui.contentassist.antlr.internal;
 
 import java.io.InputStream;
 import org.eclipse.xtext.*;
@@ -180,26 +180,26 @@
         }
         public InternalOCLinEcoreParser(TokenStream input, RecognizerSharedState state) {
             super(input, state);
-             
+
         }
-        
+
 
     public String[] getTokenNames() { return InternalOCLinEcoreParser.tokenNames; }
     public String getGrammarFileName() { return "InternalOCLinEcore.g"; }
 
 
-     
+
      	private OCLinEcoreGrammarAccess grammarAccess;
-     	
+
         public void setGrammarAccess(OCLinEcoreGrammarAccess grammarAccess) {
         	this.grammarAccess = grammarAccess;
         }
-        
+
         @Override
         protected Grammar getGrammar() {
         	return grammarAccess.getGrammar();
         }
-        
+
         @Override
         protected String getValueForTokenName(String tokenName) {
         	return tokenName;
@@ -216,7 +216,7 @@
             // InternalOCLinEcore.g:70:1: ruleTopLevelCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTopLevelCSRule()); 
+               before(grammarAccess.getTopLevelCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTopLevelCS();
@@ -224,7 +224,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTopLevelCSRule()); 
+               after(grammarAccess.getTopLevelCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -247,7 +247,7 @@
     public final void ruleTopLevelCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:81:2: ( ( ( rule__TopLevelCS__Group__0 ) ) )
             // InternalOCLinEcore.g:82:1: ( ( rule__TopLevelCS__Group__0 ) )
@@ -256,7 +256,7 @@
             // InternalOCLinEcore.g:83:1: ( rule__TopLevelCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTopLevelCSAccess().getGroup()); 
+               before(grammarAccess.getTopLevelCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:84:1: ( rule__TopLevelCS__Group__0 )
             // InternalOCLinEcore.g:84:2: rule__TopLevelCS__Group__0
@@ -270,7 +270,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTopLevelCSAccess().getGroup()); 
+               after(grammarAccess.getTopLevelCSAccess().getGroup());
             }
 
             }
@@ -301,7 +301,7 @@
             // InternalOCLinEcore.g:100:1: ruleSIGNED EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSIGNEDRule()); 
+               before(grammarAccess.getSIGNEDRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleSIGNED();
@@ -309,7 +309,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSIGNEDRule()); 
+               after(grammarAccess.getSIGNEDRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -332,7 +332,7 @@
     public final void ruleSIGNED() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:111:2: ( ( ( rule__SIGNED__Group__0 ) ) )
             // InternalOCLinEcore.g:112:1: ( ( rule__SIGNED__Group__0 ) )
@@ -341,7 +341,7 @@
             // InternalOCLinEcore.g:113:1: ( rule__SIGNED__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSIGNEDAccess().getGroup()); 
+               before(grammarAccess.getSIGNEDAccess().getGroup());
             }
             // InternalOCLinEcore.g:114:1: ( rule__SIGNED__Group__0 )
             // InternalOCLinEcore.g:114:2: rule__SIGNED__Group__0
@@ -355,7 +355,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSIGNEDAccess().getGroup()); 
+               after(grammarAccess.getSIGNEDAccess().getGroup());
             }
 
             }
@@ -386,7 +386,7 @@
             // InternalOCLinEcore.g:128:1: ruleEnumerationLiteralName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralNameRule()); 
+               before(grammarAccess.getEnumerationLiteralNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEnumerationLiteralName();
@@ -394,7 +394,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralNameRule()); 
+               after(grammarAccess.getEnumerationLiteralNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -417,7 +417,7 @@
     public final void ruleEnumerationLiteralName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:139:2: ( ( ( rule__EnumerationLiteralName__Alternatives ) ) )
             // InternalOCLinEcore.g:140:1: ( ( rule__EnumerationLiteralName__Alternatives ) )
@@ -426,7 +426,7 @@
             // InternalOCLinEcore.g:141:1: ( rule__EnumerationLiteralName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralNameAccess().getAlternatives()); 
+               before(grammarAccess.getEnumerationLiteralNameAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:142:1: ( rule__EnumerationLiteralName__Alternatives )
             // InternalOCLinEcore.g:142:2: rule__EnumerationLiteralName__Alternatives
@@ -440,7 +440,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralNameAccess().getAlternatives()); 
+               after(grammarAccess.getEnumerationLiteralNameAccess().getAlternatives());
             }
 
             }
@@ -471,7 +471,7 @@
             // InternalOCLinEcore.g:156:1: ruleInvariantConstraintCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSRule()); 
+               before(grammarAccess.getInvariantConstraintCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleInvariantConstraintCS();
@@ -479,7 +479,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSRule()); 
+               after(grammarAccess.getInvariantConstraintCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -502,7 +502,7 @@
     public final void ruleInvariantConstraintCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:167:2: ( ( ( rule__InvariantConstraintCS__Group__0 ) ) )
             // InternalOCLinEcore.g:168:1: ( ( rule__InvariantConstraintCS__Group__0 ) )
@@ -511,7 +511,7 @@
             // InternalOCLinEcore.g:169:1: ( rule__InvariantConstraintCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getGroup()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:170:1: ( rule__InvariantConstraintCS__Group__0 )
             // InternalOCLinEcore.g:170:2: rule__InvariantConstraintCS__Group__0
@@ -525,7 +525,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getGroup()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getGroup());
             }
 
             }
@@ -556,7 +556,7 @@
             // InternalOCLinEcore.g:184:1: rulePostconditionConstraintCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSRule()); 
+               before(grammarAccess.getPostconditionConstraintCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePostconditionConstraintCS();
@@ -564,7 +564,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSRule()); 
+               after(grammarAccess.getPostconditionConstraintCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -587,7 +587,7 @@
     public final void rulePostconditionConstraintCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:195:2: ( ( ( rule__PostconditionConstraintCS__Group__0 ) ) )
             // InternalOCLinEcore.g:196:1: ( ( rule__PostconditionConstraintCS__Group__0 ) )
@@ -596,7 +596,7 @@
             // InternalOCLinEcore.g:197:1: ( rule__PostconditionConstraintCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getGroup()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:198:1: ( rule__PostconditionConstraintCS__Group__0 )
             // InternalOCLinEcore.g:198:2: rule__PostconditionConstraintCS__Group__0
@@ -610,7 +610,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getGroup()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getGroup());
             }
 
             }
@@ -641,7 +641,7 @@
             // InternalOCLinEcore.g:212:1: rulePreconditionConstraintCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSRule()); 
+               before(grammarAccess.getPreconditionConstraintCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePreconditionConstraintCS();
@@ -649,7 +649,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSRule()); 
+               after(grammarAccess.getPreconditionConstraintCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -672,7 +672,7 @@
     public final void rulePreconditionConstraintCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:223:2: ( ( ( rule__PreconditionConstraintCS__Group__0 ) ) )
             // InternalOCLinEcore.g:224:1: ( ( rule__PreconditionConstraintCS__Group__0 ) )
@@ -681,7 +681,7 @@
             // InternalOCLinEcore.g:225:1: ( rule__PreconditionConstraintCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getGroup()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:226:1: ( rule__PreconditionConstraintCS__Group__0 )
             // InternalOCLinEcore.g:226:2: rule__PreconditionConstraintCS__Group__0
@@ -695,7 +695,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getGroup()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getGroup());
             }
 
             }
@@ -726,7 +726,7 @@
             // InternalOCLinEcore.g:240:1: ruleAnnotationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSRule()); 
+               before(grammarAccess.getAnnotationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleAnnotationCS();
@@ -734,7 +734,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSRule()); 
+               after(grammarAccess.getAnnotationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -757,7 +757,7 @@
     public final void ruleAnnotationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:251:2: ( ( ( rule__AnnotationCS__Group__0 ) ) )
             // InternalOCLinEcore.g:252:1: ( ( rule__AnnotationCS__Group__0 ) )
@@ -766,7 +766,7 @@
             // InternalOCLinEcore.g:253:1: ( rule__AnnotationCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getGroup()); 
+               before(grammarAccess.getAnnotationCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:254:1: ( rule__AnnotationCS__Group__0 )
             // InternalOCLinEcore.g:254:2: rule__AnnotationCS__Group__0
@@ -780,7 +780,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getGroup()); 
+               after(grammarAccess.getAnnotationCSAccess().getGroup());
             }
 
             }
@@ -811,7 +811,7 @@
             // InternalOCLinEcore.g:268:1: ruleAnnotationElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationElementCSRule()); 
+               before(grammarAccess.getAnnotationElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleAnnotationElementCS();
@@ -819,7 +819,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationElementCSRule()); 
+               after(grammarAccess.getAnnotationElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -842,7 +842,7 @@
     public final void ruleAnnotationElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:279:2: ( ( ( rule__AnnotationElementCS__Alternatives ) ) )
             // InternalOCLinEcore.g:280:1: ( ( rule__AnnotationElementCS__Alternatives ) )
@@ -851,7 +851,7 @@
             // InternalOCLinEcore.g:281:1: ( rule__AnnotationElementCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationElementCSAccess().getAlternatives()); 
+               before(grammarAccess.getAnnotationElementCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:282:1: ( rule__AnnotationElementCS__Alternatives )
             // InternalOCLinEcore.g:282:2: rule__AnnotationElementCS__Alternatives
@@ -865,7 +865,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationElementCSAccess().getAlternatives()); 
+               after(grammarAccess.getAnnotationElementCSAccess().getAlternatives());
             }
 
             }
@@ -896,7 +896,7 @@
             // InternalOCLinEcore.g:296:1: ruleAttributeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSRule()); 
+               before(grammarAccess.getAttributeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleAttributeCS();
@@ -904,7 +904,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSRule()); 
+               after(grammarAccess.getAttributeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -927,7 +927,7 @@
     public final void ruleAttributeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:307:2: ( ( ( rule__AttributeCS__Group__0 ) ) )
             // InternalOCLinEcore.g:308:1: ( ( rule__AttributeCS__Group__0 ) )
@@ -936,7 +936,7 @@
             // InternalOCLinEcore.g:309:1: ( rule__AttributeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getGroup()); 
+               before(grammarAccess.getAttributeCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:310:1: ( rule__AttributeCS__Group__0 )
             // InternalOCLinEcore.g:310:2: rule__AttributeCS__Group__0
@@ -950,7 +950,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getGroup()); 
+               after(grammarAccess.getAttributeCSAccess().getGroup());
             }
 
             }
@@ -981,7 +981,7 @@
             // InternalOCLinEcore.g:324:1: ruleClassCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassCSRule()); 
+               before(grammarAccess.getClassCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleClassCS();
@@ -989,7 +989,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassCSRule()); 
+               after(grammarAccess.getClassCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1012,7 +1012,7 @@
     public final void ruleClassCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:335:2: ( ( ( rule__ClassCS__Alternatives ) ) )
             // InternalOCLinEcore.g:336:1: ( ( rule__ClassCS__Alternatives ) )
@@ -1021,7 +1021,7 @@
             // InternalOCLinEcore.g:337:1: ( rule__ClassCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassCSAccess().getAlternatives()); 
+               before(grammarAccess.getClassCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:338:1: ( rule__ClassCS__Alternatives )
             // InternalOCLinEcore.g:338:2: rule__ClassCS__Alternatives
@@ -1035,7 +1035,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassCSAccess().getAlternatives()); 
+               after(grammarAccess.getClassCSAccess().getAlternatives());
             }
 
             }
@@ -1066,7 +1066,7 @@
             // InternalOCLinEcore.g:352:1: ruleDataTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSRule()); 
+               before(grammarAccess.getDataTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleDataTypeCS();
@@ -1074,7 +1074,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSRule()); 
+               after(grammarAccess.getDataTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1097,7 +1097,7 @@
     public final void ruleDataTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:363:2: ( ( ( rule__DataTypeCS__Group__0 ) ) )
             // InternalOCLinEcore.g:364:1: ( ( rule__DataTypeCS__Group__0 ) )
@@ -1106,7 +1106,7 @@
             // InternalOCLinEcore.g:365:1: ( rule__DataTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getGroup()); 
+               before(grammarAccess.getDataTypeCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:366:1: ( rule__DataTypeCS__Group__0 )
             // InternalOCLinEcore.g:366:2: rule__DataTypeCS__Group__0
@@ -1120,7 +1120,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getGroup()); 
+               after(grammarAccess.getDataTypeCSAccess().getGroup());
             }
 
             }
@@ -1151,7 +1151,7 @@
             // InternalOCLinEcore.g:380:1: ruleDetailCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSRule()); 
+               before(grammarAccess.getDetailCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleDetailCS();
@@ -1159,7 +1159,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSRule()); 
+               after(grammarAccess.getDetailCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1182,7 +1182,7 @@
     public final void ruleDetailCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:391:2: ( ( ( rule__DetailCS__Group__0 ) ) )
             // InternalOCLinEcore.g:392:1: ( ( rule__DetailCS__Group__0 ) )
@@ -1191,7 +1191,7 @@
             // InternalOCLinEcore.g:393:1: ( rule__DetailCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSAccess().getGroup()); 
+               before(grammarAccess.getDetailCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:394:1: ( rule__DetailCS__Group__0 )
             // InternalOCLinEcore.g:394:2: rule__DetailCS__Group__0
@@ -1205,7 +1205,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSAccess().getGroup()); 
+               after(grammarAccess.getDetailCSAccess().getGroup());
             }
 
             }
@@ -1236,7 +1236,7 @@
             // InternalOCLinEcore.g:408:1: ruleDocumentationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSRule()); 
+               before(grammarAccess.getDocumentationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleDocumentationCS();
@@ -1244,7 +1244,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSRule()); 
+               after(grammarAccess.getDocumentationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1267,7 +1267,7 @@
     public final void ruleDocumentationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:419:2: ( ( ( rule__DocumentationCS__Group__0 ) ) )
             // InternalOCLinEcore.g:420:1: ( ( rule__DocumentationCS__Group__0 ) )
@@ -1276,7 +1276,7 @@
             // InternalOCLinEcore.g:421:1: ( rule__DocumentationCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getGroup()); 
+               before(grammarAccess.getDocumentationCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:422:1: ( rule__DocumentationCS__Group__0 )
             // InternalOCLinEcore.g:422:2: rule__DocumentationCS__Group__0
@@ -1290,7 +1290,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getGroup()); 
+               after(grammarAccess.getDocumentationCSAccess().getGroup());
             }
 
             }
@@ -1321,7 +1321,7 @@
             // InternalOCLinEcore.g:436:1: ruleEnumerationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSRule()); 
+               before(grammarAccess.getEnumerationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEnumerationCS();
@@ -1329,7 +1329,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSRule()); 
+               after(grammarAccess.getEnumerationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1352,7 +1352,7 @@
     public final void ruleEnumerationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:447:2: ( ( ( rule__EnumerationCS__Group__0 ) ) )
             // InternalOCLinEcore.g:448:1: ( ( rule__EnumerationCS__Group__0 ) )
@@ -1361,7 +1361,7 @@
             // InternalOCLinEcore.g:449:1: ( rule__EnumerationCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getGroup()); 
+               before(grammarAccess.getEnumerationCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:450:1: ( rule__EnumerationCS__Group__0 )
             // InternalOCLinEcore.g:450:2: rule__EnumerationCS__Group__0
@@ -1375,7 +1375,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getGroup()); 
+               after(grammarAccess.getEnumerationCSAccess().getGroup());
             }
 
             }
@@ -1406,7 +1406,7 @@
             // InternalOCLinEcore.g:464:1: ruleEnumerationLiteralCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSRule()); 
+               before(grammarAccess.getEnumerationLiteralCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEnumerationLiteralCS();
@@ -1414,7 +1414,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSRule()); 
+               after(grammarAccess.getEnumerationLiteralCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1437,7 +1437,7 @@
     public final void ruleEnumerationLiteralCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:475:2: ( ( ( rule__EnumerationLiteralCS__Group__0 ) ) )
             // InternalOCLinEcore.g:476:1: ( ( rule__EnumerationLiteralCS__Group__0 ) )
@@ -1446,7 +1446,7 @@
             // InternalOCLinEcore.g:477:1: ( rule__EnumerationLiteralCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getGroup()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:478:1: ( rule__EnumerationLiteralCS__Group__0 )
             // InternalOCLinEcore.g:478:2: rule__EnumerationLiteralCS__Group__0
@@ -1460,7 +1460,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getGroup()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getGroup());
             }
 
             }
@@ -1491,7 +1491,7 @@
             // InternalOCLinEcore.g:492:1: ruleImportCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSRule()); 
+               before(grammarAccess.getImportCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleImportCS();
@@ -1499,7 +1499,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSRule()); 
+               after(grammarAccess.getImportCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1522,7 +1522,7 @@
     public final void ruleImportCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:503:2: ( ( ( rule__ImportCS__Group__0 ) ) )
             // InternalOCLinEcore.g:504:1: ( ( rule__ImportCS__Group__0 ) )
@@ -1531,7 +1531,7 @@
             // InternalOCLinEcore.g:505:1: ( rule__ImportCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getGroup()); 
+               before(grammarAccess.getImportCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:506:1: ( rule__ImportCS__Group__0 )
             // InternalOCLinEcore.g:506:2: rule__ImportCS__Group__0
@@ -1545,7 +1545,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getGroup()); 
+               after(grammarAccess.getImportCSAccess().getGroup());
             }
 
             }
@@ -1576,7 +1576,7 @@
             // InternalOCLinEcore.g:520:1: ruleModelElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getModelElementCSRule()); 
+               before(grammarAccess.getModelElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleModelElementCS();
@@ -1584,7 +1584,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getModelElementCSRule()); 
+               after(grammarAccess.getModelElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1607,7 +1607,7 @@
     public final void ruleModelElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:531:2: ( ( ( rule__ModelElementCS__Alternatives ) ) )
             // InternalOCLinEcore.g:532:1: ( ( rule__ModelElementCS__Alternatives ) )
@@ -1616,7 +1616,7 @@
             // InternalOCLinEcore.g:533:1: ( rule__ModelElementCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getModelElementCSAccess().getAlternatives()); 
+               before(grammarAccess.getModelElementCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:534:1: ( rule__ModelElementCS__Alternatives )
             // InternalOCLinEcore.g:534:2: rule__ModelElementCS__Alternatives
@@ -1630,7 +1630,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getModelElementCSAccess().getAlternatives()); 
+               after(grammarAccess.getModelElementCSAccess().getAlternatives());
             }
 
             }
@@ -1661,7 +1661,7 @@
             // InternalOCLinEcore.g:548:1: ruleModelElementRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getModelElementRefCSRule()); 
+               before(grammarAccess.getModelElementRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleModelElementRefCS();
@@ -1669,7 +1669,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getModelElementRefCSRule()); 
+               after(grammarAccess.getModelElementRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1692,7 +1692,7 @@
     public final void ruleModelElementRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:559:2: ( ( ( rule__ModelElementRefCS__Group__0 ) ) )
             // InternalOCLinEcore.g:560:1: ( ( rule__ModelElementRefCS__Group__0 ) )
@@ -1701,7 +1701,7 @@
             // InternalOCLinEcore.g:561:1: ( rule__ModelElementRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getModelElementRefCSAccess().getGroup()); 
+               before(grammarAccess.getModelElementRefCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:562:1: ( rule__ModelElementRefCS__Group__0 )
             // InternalOCLinEcore.g:562:2: rule__ModelElementRefCS__Group__0
@@ -1715,7 +1715,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getModelElementRefCSAccess().getGroup()); 
+               after(grammarAccess.getModelElementRefCSAccess().getGroup());
             }
 
             }
@@ -1746,7 +1746,7 @@
             // InternalOCLinEcore.g:576:1: ruleOperationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSRule()); 
+               before(grammarAccess.getOperationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleOperationCS();
@@ -1754,7 +1754,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSRule()); 
+               after(grammarAccess.getOperationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1777,7 +1777,7 @@
     public final void ruleOperationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:587:2: ( ( ( rule__OperationCS__Group__0 ) ) )
             // InternalOCLinEcore.g:588:1: ( ( rule__OperationCS__Group__0 ) )
@@ -1786,7 +1786,7 @@
             // InternalOCLinEcore.g:589:1: ( rule__OperationCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getGroup()); 
+               before(grammarAccess.getOperationCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:590:1: ( rule__OperationCS__Group__0 )
             // InternalOCLinEcore.g:590:2: rule__OperationCS__Group__0
@@ -1800,7 +1800,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getGroup()); 
+               after(grammarAccess.getOperationCSAccess().getGroup());
             }
 
             }
@@ -1831,7 +1831,7 @@
             // InternalOCLinEcore.g:604:1: rulePackageCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSRule()); 
+               before(grammarAccess.getPackageCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePackageCS();
@@ -1839,7 +1839,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSRule()); 
+               after(grammarAccess.getPackageCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1862,7 +1862,7 @@
     public final void rulePackageCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:615:2: ( ( ( rule__PackageCS__Group__0 ) ) )
             // InternalOCLinEcore.g:616:1: ( ( rule__PackageCS__Group__0 ) )
@@ -1871,7 +1871,7 @@
             // InternalOCLinEcore.g:617:1: ( rule__PackageCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getGroup()); 
+               before(grammarAccess.getPackageCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:618:1: ( rule__PackageCS__Group__0 )
             // InternalOCLinEcore.g:618:2: rule__PackageCS__Group__0
@@ -1885,7 +1885,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getGroup()); 
+               after(grammarAccess.getPackageCSAccess().getGroup());
             }
 
             }
@@ -1916,7 +1916,7 @@
             // InternalOCLinEcore.g:632:1: ruleParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSRule()); 
+               before(grammarAccess.getParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleParameterCS();
@@ -1924,7 +1924,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSRule()); 
+               after(grammarAccess.getParameterCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1947,7 +1947,7 @@
     public final void ruleParameterCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:643:2: ( ( ( rule__ParameterCS__Group__0 ) ) )
             // InternalOCLinEcore.g:644:1: ( ( rule__ParameterCS__Group__0 ) )
@@ -1956,7 +1956,7 @@
             // InternalOCLinEcore.g:645:1: ( rule__ParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getGroup()); 
+               before(grammarAccess.getParameterCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:646:1: ( rule__ParameterCS__Group__0 )
             // InternalOCLinEcore.g:646:2: rule__ParameterCS__Group__0
@@ -1970,7 +1970,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getGroup()); 
+               after(grammarAccess.getParameterCSAccess().getGroup());
             }
 
             }
@@ -2001,7 +2001,7 @@
             // InternalOCLinEcore.g:660:1: ruleReferenceCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSRule()); 
+               before(grammarAccess.getReferenceCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleReferenceCS();
@@ -2009,7 +2009,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSRule()); 
+               after(grammarAccess.getReferenceCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2032,7 +2032,7 @@
     public final void ruleReferenceCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:671:2: ( ( ( rule__ReferenceCS__Group__0 ) ) )
             // InternalOCLinEcore.g:672:1: ( ( rule__ReferenceCS__Group__0 ) )
@@ -2041,7 +2041,7 @@
             // InternalOCLinEcore.g:673:1: ( rule__ReferenceCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getGroup()); 
+               before(grammarAccess.getReferenceCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:674:1: ( rule__ReferenceCS__Group__0 )
             // InternalOCLinEcore.g:674:2: rule__ReferenceCS__Group__0
@@ -2055,7 +2055,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getGroup()); 
+               after(grammarAccess.getReferenceCSAccess().getGroup());
             }
 
             }
@@ -2086,7 +2086,7 @@
             // InternalOCLinEcore.g:688:1: ruleSpecificationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSpecificationCSRule()); 
+               before(grammarAccess.getSpecificationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleSpecificationCS();
@@ -2094,7 +2094,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSpecificationCSRule()); 
+               after(grammarAccess.getSpecificationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2117,7 +2117,7 @@
     public final void ruleSpecificationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:699:2: ( ( ( rule__SpecificationCS__Alternatives ) ) )
             // InternalOCLinEcore.g:700:1: ( ( rule__SpecificationCS__Alternatives ) )
@@ -2126,7 +2126,7 @@
             // InternalOCLinEcore.g:701:1: ( rule__SpecificationCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSpecificationCSAccess().getAlternatives()); 
+               before(grammarAccess.getSpecificationCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:702:1: ( rule__SpecificationCS__Alternatives )
             // InternalOCLinEcore.g:702:2: rule__SpecificationCS__Alternatives
@@ -2140,7 +2140,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSpecificationCSAccess().getAlternatives()); 
+               after(grammarAccess.getSpecificationCSAccess().getAlternatives());
             }
 
             }
@@ -2171,7 +2171,7 @@
             // InternalOCLinEcore.g:716:1: ruleStructuredClassCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSRule()); 
+               before(grammarAccess.getStructuredClassCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleStructuredClassCS();
@@ -2179,7 +2179,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSRule()); 
+               after(grammarAccess.getStructuredClassCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2202,7 +2202,7 @@
     public final void ruleStructuredClassCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:727:2: ( ( ( rule__StructuredClassCS__Group__0 ) ) )
             // InternalOCLinEcore.g:728:1: ( ( rule__StructuredClassCS__Group__0 ) )
@@ -2211,7 +2211,7 @@
             // InternalOCLinEcore.g:729:1: ( rule__StructuredClassCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getGroup()); 
+               before(grammarAccess.getStructuredClassCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:730:1: ( rule__StructuredClassCS__Group__0 )
             // InternalOCLinEcore.g:730:2: rule__StructuredClassCS__Group__0
@@ -2225,7 +2225,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getGroup()); 
+               after(grammarAccess.getStructuredClassCSAccess().getGroup());
             }
 
             }
@@ -2256,7 +2256,7 @@
             // InternalOCLinEcore.g:744:1: ruleStructuralFeatureCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuralFeatureCSRule()); 
+               before(grammarAccess.getStructuralFeatureCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleStructuralFeatureCS();
@@ -2264,7 +2264,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuralFeatureCSRule()); 
+               after(grammarAccess.getStructuralFeatureCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2287,7 +2287,7 @@
     public final void ruleStructuralFeatureCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:755:2: ( ( ( rule__StructuralFeatureCS__Alternatives ) ) )
             // InternalOCLinEcore.g:756:1: ( ( rule__StructuralFeatureCS__Alternatives ) )
@@ -2296,7 +2296,7 @@
             // InternalOCLinEcore.g:757:1: ( rule__StructuralFeatureCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuralFeatureCSAccess().getAlternatives()); 
+               before(grammarAccess.getStructuralFeatureCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:758:1: ( rule__StructuralFeatureCS__Alternatives )
             // InternalOCLinEcore.g:758:2: rule__StructuralFeatureCS__Alternatives
@@ -2310,7 +2310,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuralFeatureCSAccess().getAlternatives()); 
+               after(grammarAccess.getStructuralFeatureCSAccess().getAlternatives());
             }
 
             }
@@ -2341,7 +2341,7 @@
             // InternalOCLinEcore.g:772:1: ruleSysMLCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSRule()); 
+               before(grammarAccess.getSysMLCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleSysMLCS();
@@ -2349,7 +2349,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSRule()); 
+               after(grammarAccess.getSysMLCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2372,7 +2372,7 @@
     public final void ruleSysMLCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:783:2: ( ( ( rule__SysMLCS__Group__0 ) ) )
             // InternalOCLinEcore.g:784:1: ( ( rule__SysMLCS__Group__0 ) )
@@ -2381,7 +2381,7 @@
             // InternalOCLinEcore.g:785:1: ( rule__SysMLCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSAccess().getGroup()); 
+               before(grammarAccess.getSysMLCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:786:1: ( rule__SysMLCS__Group__0 )
             // InternalOCLinEcore.g:786:2: rule__SysMLCS__Group__0
@@ -2395,7 +2395,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSAccess().getGroup()); 
+               after(grammarAccess.getSysMLCSAccess().getGroup());
             }
 
             }
@@ -2426,7 +2426,7 @@
             // InternalOCLinEcore.g:802:1: ruleTypedMultiplicityRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedMultiplicityRefCSRule()); 
+               before(grammarAccess.getTypedMultiplicityRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypedMultiplicityRefCS();
@@ -2434,7 +2434,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedMultiplicityRefCSRule()); 
+               after(grammarAccess.getTypedMultiplicityRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2457,7 +2457,7 @@
     public final void ruleTypedMultiplicityRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:813:2: ( ( ( rule__TypedMultiplicityRefCS__Group__0 ) ) )
             // InternalOCLinEcore.g:814:1: ( ( rule__TypedMultiplicityRefCS__Group__0 ) )
@@ -2466,7 +2466,7 @@
             // InternalOCLinEcore.g:815:1: ( rule__TypedMultiplicityRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedMultiplicityRefCSAccess().getGroup()); 
+               before(grammarAccess.getTypedMultiplicityRefCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:816:1: ( rule__TypedMultiplicityRefCS__Group__0 )
             // InternalOCLinEcore.g:816:2: rule__TypedMultiplicityRefCS__Group__0
@@ -2480,7 +2480,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedMultiplicityRefCSAccess().getGroup()); 
+               after(grammarAccess.getTypedMultiplicityRefCSAccess().getGroup());
             }
 
             }
@@ -2511,7 +2511,7 @@
             // InternalOCLinEcore.g:830:1: ruleTemplateSignatureCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSRule()); 
+               before(grammarAccess.getTemplateSignatureCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTemplateSignatureCS();
@@ -2519,7 +2519,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSRule()); 
+               after(grammarAccess.getTemplateSignatureCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2542,7 +2542,7 @@
     public final void ruleTemplateSignatureCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:841:2: ( ( ( rule__TemplateSignatureCS__Alternatives ) ) )
             // InternalOCLinEcore.g:842:1: ( ( rule__TemplateSignatureCS__Alternatives ) )
@@ -2551,7 +2551,7 @@
             // InternalOCLinEcore.g:843:1: ( rule__TemplateSignatureCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getAlternatives()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:844:1: ( rule__TemplateSignatureCS__Alternatives )
             // InternalOCLinEcore.g:844:2: rule__TemplateSignatureCS__Alternatives
@@ -2565,7 +2565,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getAlternatives()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getAlternatives());
             }
 
             }
@@ -2596,7 +2596,7 @@
             // InternalOCLinEcore.g:858:1: ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedRefCSRule()); 
+               before(grammarAccess.getTypedRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypedRefCS();
@@ -2604,7 +2604,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedRefCSRule()); 
+               after(grammarAccess.getTypedRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2627,7 +2627,7 @@
     public final void ruleTypedRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:869:2: ( ( ( rule__TypedRefCS__Alternatives ) ) )
             // InternalOCLinEcore.g:870:1: ( ( rule__TypedRefCS__Alternatives ) )
@@ -2636,7 +2636,7 @@
             // InternalOCLinEcore.g:871:1: ( rule__TypedRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedRefCSAccess().getAlternatives()); 
+               before(grammarAccess.getTypedRefCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:872:1: ( rule__TypedRefCS__Alternatives )
             // InternalOCLinEcore.g:872:2: rule__TypedRefCS__Alternatives
@@ -2650,7 +2650,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedRefCSAccess().getAlternatives()); 
+               after(grammarAccess.getTypedRefCSAccess().getAlternatives());
             }
 
             }
@@ -2681,7 +2681,7 @@
             // InternalOCLinEcore.g:886:1: ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSRule()); 
+               before(grammarAccess.getTypedTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypedTypeRefCS();
@@ -2689,7 +2689,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSRule()); 
+               after(grammarAccess.getTypedTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2712,7 +2712,7 @@
     public final void ruleTypedTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:897:2: ( ( ( rule__TypedTypeRefCS__Group__0 ) ) )
             // InternalOCLinEcore.g:898:1: ( ( rule__TypedTypeRefCS__Group__0 ) )
@@ -2721,7 +2721,7 @@
             // InternalOCLinEcore.g:899:1: ( rule__TypedTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getGroup()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:900:1: ( rule__TypedTypeRefCS__Group__0 )
             // InternalOCLinEcore.g:900:2: rule__TypedTypeRefCS__Group__0
@@ -2735,7 +2735,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getGroup()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getGroup());
             }
 
             }
@@ -2766,7 +2766,7 @@
             // InternalOCLinEcore.g:914:1: ruleUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnrestrictedNameRule()); 
+               before(grammarAccess.getUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnrestrictedName();
@@ -2774,7 +2774,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnrestrictedNameRule()); 
+               after(grammarAccess.getUnrestrictedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2797,7 +2797,7 @@
     public final void ruleUnrestrictedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:925:2: ( ( ( rule__UnrestrictedName__Alternatives ) ) )
             // InternalOCLinEcore.g:926:1: ( ( rule__UnrestrictedName__Alternatives ) )
@@ -2806,7 +2806,7 @@
             // InternalOCLinEcore.g:927:1: ( rule__UnrestrictedName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnrestrictedNameAccess().getAlternatives()); 
+               before(grammarAccess.getUnrestrictedNameAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:928:1: ( rule__UnrestrictedName__Alternatives )
             // InternalOCLinEcore.g:928:2: rule__UnrestrictedName__Alternatives
@@ -2820,7 +2820,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnrestrictedNameAccess().getAlternatives()); 
+               after(grammarAccess.getUnrestrictedNameAccess().getAlternatives());
             }
 
             }
@@ -2851,7 +2851,7 @@
             // InternalOCLinEcore.g:946:1: ruleEssentialOCLUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); 
+               before(grammarAccess.getEssentialOCLUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLUnaryOperatorName();
@@ -2859,7 +2859,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); 
+               after(grammarAccess.getEssentialOCLUnaryOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2882,7 +2882,7 @@
     public final void ruleEssentialOCLUnaryOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:957:2: ( ( ( rule__EssentialOCLUnaryOperatorName__Alternatives ) ) )
             // InternalOCLinEcore.g:958:1: ( ( rule__EssentialOCLUnaryOperatorName__Alternatives ) )
@@ -2891,7 +2891,7 @@
             // InternalOCLinEcore.g:959:1: ( rule__EssentialOCLUnaryOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:960:1: ( rule__EssentialOCLUnaryOperatorName__Alternatives )
             // InternalOCLinEcore.g:960:2: rule__EssentialOCLUnaryOperatorName__Alternatives
@@ -2905,7 +2905,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -2936,7 +2936,7 @@
             // InternalOCLinEcore.g:974:1: ruleEssentialOCLInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLInfixOperatorNameRule()); 
+               before(grammarAccess.getEssentialOCLInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLInfixOperatorName();
@@ -2944,7 +2944,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLInfixOperatorNameRule()); 
+               after(grammarAccess.getEssentialOCLInfixOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2967,7 +2967,7 @@
     public final void ruleEssentialOCLInfixOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:985:2: ( ( ( rule__EssentialOCLInfixOperatorName__Alternatives ) ) )
             // InternalOCLinEcore.g:986:1: ( ( rule__EssentialOCLInfixOperatorName__Alternatives ) )
@@ -2976,7 +2976,7 @@
             // InternalOCLinEcore.g:987:1: ( rule__EssentialOCLInfixOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:988:1: ( rule__EssentialOCLInfixOperatorName__Alternatives )
             // InternalOCLinEcore.g:988:2: rule__EssentialOCLInfixOperatorName__Alternatives
@@ -2990,7 +2990,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -3021,7 +3021,7 @@
             // InternalOCLinEcore.g:1002:1: ruleEssentialOCLNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); 
+               before(grammarAccess.getEssentialOCLNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLNavigationOperatorName();
@@ -3029,7 +3029,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); 
+               after(grammarAccess.getEssentialOCLNavigationOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3052,7 +3052,7 @@
     public final void ruleEssentialOCLNavigationOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1013:2: ( ( ( rule__EssentialOCLNavigationOperatorName__Alternatives ) ) )
             // InternalOCLinEcore.g:1014:1: ( ( rule__EssentialOCLNavigationOperatorName__Alternatives ) )
@@ -3061,7 +3061,7 @@
             // InternalOCLinEcore.g:1015:1: ( rule__EssentialOCLNavigationOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:1016:1: ( rule__EssentialOCLNavigationOperatorName__Alternatives )
             // InternalOCLinEcore.g:1016:2: rule__EssentialOCLNavigationOperatorName__Alternatives
@@ -3075,7 +3075,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -3106,7 +3106,7 @@
             // InternalOCLinEcore.g:1030:1: ruleBinaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBinaryOperatorNameRule()); 
+               before(grammarAccess.getBinaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleBinaryOperatorName();
@@ -3114,7 +3114,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBinaryOperatorNameRule()); 
+               after(grammarAccess.getBinaryOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3137,7 +3137,7 @@
     public final void ruleBinaryOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1041:2: ( ( ( rule__BinaryOperatorName__Alternatives ) ) )
             // InternalOCLinEcore.g:1042:1: ( ( rule__BinaryOperatorName__Alternatives ) )
@@ -3146,7 +3146,7 @@
             // InternalOCLinEcore.g:1043:1: ( rule__BinaryOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBinaryOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getBinaryOperatorNameAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:1044:1: ( rule__BinaryOperatorName__Alternatives )
             // InternalOCLinEcore.g:1044:2: rule__BinaryOperatorName__Alternatives
@@ -3160,7 +3160,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBinaryOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getBinaryOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -3191,7 +3191,7 @@
             // InternalOCLinEcore.g:1058:1: ruleInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInfixOperatorNameRule()); 
+               before(grammarAccess.getInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleInfixOperatorName();
@@ -3199,7 +3199,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInfixOperatorNameRule()); 
+               after(grammarAccess.getInfixOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3222,7 +3222,7 @@
     public final void ruleInfixOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1069:2: ( ( ruleEssentialOCLInfixOperatorName ) )
             // InternalOCLinEcore.g:1070:1: ( ruleEssentialOCLInfixOperatorName )
@@ -3231,7 +3231,7 @@
             // InternalOCLinEcore.g:1071:1: ruleEssentialOCLInfixOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
+               before(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLInfixOperatorName();
@@ -3239,7 +3239,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
+               after(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
             }
 
             }
@@ -3270,7 +3270,7 @@
             // InternalOCLinEcore.g:1086:1: ruleNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigationOperatorNameRule()); 
+               before(grammarAccess.getNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigationOperatorName();
@@ -3278,7 +3278,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigationOperatorNameRule()); 
+               after(grammarAccess.getNavigationOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3301,7 +3301,7 @@
     public final void ruleNavigationOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1097:2: ( ( ruleEssentialOCLNavigationOperatorName ) )
             // InternalOCLinEcore.g:1098:1: ( ruleEssentialOCLNavigationOperatorName )
@@ -3310,7 +3310,7 @@
             // InternalOCLinEcore.g:1099:1: ruleEssentialOCLNavigationOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall()); 
+               before(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLNavigationOperatorName();
@@ -3318,7 +3318,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall()); 
+               after(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall());
             }
 
             }
@@ -3349,7 +3349,7 @@
             // InternalOCLinEcore.g:1114:1: ruleUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnaryOperatorNameRule()); 
+               before(grammarAccess.getUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnaryOperatorName();
@@ -3357,7 +3357,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnaryOperatorNameRule()); 
+               after(grammarAccess.getUnaryOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3380,7 +3380,7 @@
     public final void ruleUnaryOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1125:2: ( ( ruleEssentialOCLUnaryOperatorName ) )
             // InternalOCLinEcore.g:1126:1: ( ruleEssentialOCLUnaryOperatorName )
@@ -3389,7 +3389,7 @@
             // InternalOCLinEcore.g:1127:1: ruleEssentialOCLUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
+               before(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLUnaryOperatorName();
@@ -3397,7 +3397,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
+               after(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
             }
 
             }
@@ -3428,7 +3428,7 @@
             // InternalOCLinEcore.g:1142:1: ruleEssentialOCLUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnrestrictedNameRule()); 
+               before(grammarAccess.getEssentialOCLUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLUnrestrictedName();
@@ -3436,7 +3436,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnrestrictedNameRule()); 
+               after(grammarAccess.getEssentialOCLUnrestrictedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3459,7 +3459,7 @@
     public final void ruleEssentialOCLUnrestrictedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1153:2: ( ( ruleIdentifier ) )
             // InternalOCLinEcore.g:1154:1: ( ruleIdentifier )
@@ -3468,7 +3468,7 @@
             // InternalOCLinEcore.g:1155:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+               before(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -3476,7 +3476,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+               after(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
             }
 
             }
@@ -3507,7 +3507,7 @@
             // InternalOCLinEcore.g:1170:1: ruleEssentialOCLUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnreservedNameRule()); 
+               before(grammarAccess.getEssentialOCLUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLUnreservedName();
@@ -3515,7 +3515,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnreservedNameRule()); 
+               after(grammarAccess.getEssentialOCLUnreservedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3538,7 +3538,7 @@
     public final void ruleEssentialOCLUnreservedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1181:2: ( ( ( rule__EssentialOCLUnreservedName__Alternatives ) ) )
             // InternalOCLinEcore.g:1182:1: ( ( rule__EssentialOCLUnreservedName__Alternatives ) )
@@ -3547,7 +3547,7 @@
             // InternalOCLinEcore.g:1183:1: ( rule__EssentialOCLUnreservedName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:1184:1: ( rule__EssentialOCLUnreservedName__Alternatives )
             // InternalOCLinEcore.g:1184:2: rule__EssentialOCLUnreservedName__Alternatives
@@ -3561,7 +3561,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives());
             }
 
             }
@@ -3592,7 +3592,7 @@
             // InternalOCLinEcore.g:1198:1: ruleUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnreservedNameRule()); 
+               before(grammarAccess.getUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnreservedName();
@@ -3600,7 +3600,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnreservedNameRule()); 
+               after(grammarAccess.getUnreservedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3623,7 +3623,7 @@
     public final void ruleUnreservedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1209:2: ( ( ruleEssentialOCLUnreservedName ) )
             // InternalOCLinEcore.g:1210:1: ( ruleEssentialOCLUnreservedName )
@@ -3632,7 +3632,7 @@
             // InternalOCLinEcore.g:1211:1: ruleEssentialOCLUnreservedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
+               before(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLUnreservedName();
@@ -3640,7 +3640,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
+               after(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
             }
 
             }
@@ -3671,7 +3671,7 @@
             // InternalOCLinEcore.g:1226:1: ruleURIPathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSRule()); 
+               before(grammarAccess.getURIPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleURIPathNameCS();
@@ -3679,7 +3679,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSRule()); 
+               after(grammarAccess.getURIPathNameCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3702,7 +3702,7 @@
     public final void ruleURIPathNameCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1237:2: ( ( ( rule__URIPathNameCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1238:1: ( ( rule__URIPathNameCS__Group__0 ) )
@@ -3711,7 +3711,7 @@
             // InternalOCLinEcore.g:1239:1: ( rule__URIPathNameCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getGroup()); 
+               before(grammarAccess.getURIPathNameCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1240:1: ( rule__URIPathNameCS__Group__0 )
             // InternalOCLinEcore.g:1240:2: rule__URIPathNameCS__Group__0
@@ -3725,7 +3725,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getGroup()); 
+               after(grammarAccess.getURIPathNameCSAccess().getGroup());
             }
 
             }
@@ -3756,7 +3756,7 @@
             // InternalOCLinEcore.g:1254:1: ruleURIFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSRule()); 
+               before(grammarAccess.getURIFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleURIFirstPathElementCS();
@@ -3764,7 +3764,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSRule()); 
+               after(grammarAccess.getURIFirstPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3787,7 +3787,7 @@
     public final void ruleURIFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1265:2: ( ( ( rule__URIFirstPathElementCS__Alternatives ) ) )
             // InternalOCLinEcore.g:1266:1: ( ( rule__URIFirstPathElementCS__Alternatives ) )
@@ -3796,7 +3796,7 @@
             // InternalOCLinEcore.g:1267:1: ( rule__URIFirstPathElementCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:1268:1: ( rule__URIFirstPathElementCS__Alternatives )
             // InternalOCLinEcore.g:1268:2: rule__URIFirstPathElementCS__Alternatives
@@ -3810,7 +3810,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives());
             }
 
             }
@@ -3841,7 +3841,7 @@
             // InternalOCLinEcore.g:1282:1: rulePrimitiveTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeIdentifierRule()); 
+               before(grammarAccess.getPrimitiveTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimitiveTypeIdentifier();
@@ -3849,7 +3849,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeIdentifierRule()); 
+               after(grammarAccess.getPrimitiveTypeIdentifierRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3872,7 +3872,7 @@
     public final void rulePrimitiveTypeIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1293:2: ( ( ( rule__PrimitiveTypeIdentifier__Alternatives ) ) )
             // InternalOCLinEcore.g:1294:1: ( ( rule__PrimitiveTypeIdentifier__Alternatives ) )
@@ -3881,7 +3881,7 @@
             // InternalOCLinEcore.g:1295:1: ( rule__PrimitiveTypeIdentifier__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives()); 
+               before(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:1296:1: ( rule__PrimitiveTypeIdentifier__Alternatives )
             // InternalOCLinEcore.g:1296:2: rule__PrimitiveTypeIdentifier__Alternatives
@@ -3895,7 +3895,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives()); 
+               after(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives());
             }
 
             }
@@ -3926,7 +3926,7 @@
             // InternalOCLinEcore.g:1310:1: rulePrimitiveTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeCSRule()); 
+               before(grammarAccess.getPrimitiveTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimitiveTypeCS();
@@ -3934,7 +3934,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeCSRule()); 
+               after(grammarAccess.getPrimitiveTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3957,7 +3957,7 @@
     public final void rulePrimitiveTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1321:2: ( ( ( rule__PrimitiveTypeCS__NameAssignment ) ) )
             // InternalOCLinEcore.g:1322:1: ( ( rule__PrimitiveTypeCS__NameAssignment ) )
@@ -3966,7 +3966,7 @@
             // InternalOCLinEcore.g:1323:1: ( rule__PrimitiveTypeCS__NameAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment()); 
+               before(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment());
             }
             // InternalOCLinEcore.g:1324:1: ( rule__PrimitiveTypeCS__NameAssignment )
             // InternalOCLinEcore.g:1324:2: rule__PrimitiveTypeCS__NameAssignment
@@ -3980,7 +3980,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment()); 
+               after(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment());
             }
 
             }
@@ -4011,7 +4011,7 @@
             // InternalOCLinEcore.g:1338:1: ruleCollectionTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeIdentifierRule()); 
+               before(grammarAccess.getCollectionTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionTypeIdentifier();
@@ -4019,7 +4019,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeIdentifierRule()); 
+               after(grammarAccess.getCollectionTypeIdentifierRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4042,7 +4042,7 @@
     public final void ruleCollectionTypeIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1349:2: ( ( ( rule__CollectionTypeIdentifier__Alternatives ) ) )
             // InternalOCLinEcore.g:1350:1: ( ( rule__CollectionTypeIdentifier__Alternatives ) )
@@ -4051,7 +4051,7 @@
             // InternalOCLinEcore.g:1351:1: ( rule__CollectionTypeIdentifier__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives()); 
+               before(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:1352:1: ( rule__CollectionTypeIdentifier__Alternatives )
             // InternalOCLinEcore.g:1352:2: rule__CollectionTypeIdentifier__Alternatives
@@ -4065,7 +4065,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives()); 
+               after(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives());
             }
 
             }
@@ -4096,7 +4096,7 @@
             // InternalOCLinEcore.g:1366:1: ruleCollectionTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSRule()); 
+               before(grammarAccess.getCollectionTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionTypeCS();
@@ -4104,7 +4104,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSRule()); 
+               after(grammarAccess.getCollectionTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4127,7 +4127,7 @@
     public final void ruleCollectionTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1377:2: ( ( ( rule__CollectionTypeCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1378:1: ( ( rule__CollectionTypeCS__Group__0 ) )
@@ -4136,7 +4136,7 @@
             // InternalOCLinEcore.g:1379:1: ( rule__CollectionTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getGroup()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1380:1: ( rule__CollectionTypeCS__Group__0 )
             // InternalOCLinEcore.g:1380:2: rule__CollectionTypeCS__Group__0
@@ -4150,7 +4150,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getGroup()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getGroup());
             }
 
             }
@@ -4181,7 +4181,7 @@
             // InternalOCLinEcore.g:1394:1: ruleMapTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSRule()); 
+               before(grammarAccess.getMapTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMapTypeCS();
@@ -4189,7 +4189,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSRule()); 
+               after(grammarAccess.getMapTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4212,7 +4212,7 @@
     public final void ruleMapTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1405:2: ( ( ( rule__MapTypeCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1406:1: ( ( rule__MapTypeCS__Group__0 ) )
@@ -4221,7 +4221,7 @@
             // InternalOCLinEcore.g:1407:1: ( rule__MapTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getGroup()); 
+               before(grammarAccess.getMapTypeCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1408:1: ( rule__MapTypeCS__Group__0 )
             // InternalOCLinEcore.g:1408:2: rule__MapTypeCS__Group__0
@@ -4235,7 +4235,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getGroup()); 
+               after(grammarAccess.getMapTypeCSAccess().getGroup());
             }
 
             }
@@ -4266,7 +4266,7 @@
             // InternalOCLinEcore.g:1422:1: ruleTupleTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSRule()); 
+               before(grammarAccess.getTupleTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTupleTypeCS();
@@ -4274,7 +4274,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSRule()); 
+               after(grammarAccess.getTupleTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4297,7 +4297,7 @@
     public final void ruleTupleTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1433:2: ( ( ( rule__TupleTypeCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1434:1: ( ( rule__TupleTypeCS__Group__0 ) )
@@ -4306,7 +4306,7 @@
             // InternalOCLinEcore.g:1435:1: ( rule__TupleTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1436:1: ( rule__TupleTypeCS__Group__0 )
             // InternalOCLinEcore.g:1436:2: rule__TupleTypeCS__Group__0
@@ -4320,7 +4320,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup());
             }
 
             }
@@ -4351,7 +4351,7 @@
             // InternalOCLinEcore.g:1450:1: ruleTuplePartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSRule()); 
+               before(grammarAccess.getTuplePartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTuplePartCS();
@@ -4359,7 +4359,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSRule()); 
+               after(grammarAccess.getTuplePartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4382,7 +4382,7 @@
     public final void ruleTuplePartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1461:2: ( ( ( rule__TuplePartCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1462:1: ( ( rule__TuplePartCS__Group__0 ) )
@@ -4391,7 +4391,7 @@
             // InternalOCLinEcore.g:1463:1: ( rule__TuplePartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getGroup()); 
+               before(grammarAccess.getTuplePartCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1464:1: ( rule__TuplePartCS__Group__0 )
             // InternalOCLinEcore.g:1464:2: rule__TuplePartCS__Group__0
@@ -4405,7 +4405,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getGroup()); 
+               after(grammarAccess.getTuplePartCSAccess().getGroup());
             }
 
             }
@@ -4436,7 +4436,7 @@
             // InternalOCLinEcore.g:1478:1: ruleCollectionLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSRule()); 
+               before(grammarAccess.getCollectionLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionLiteralExpCS();
@@ -4444,7 +4444,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSRule()); 
+               after(grammarAccess.getCollectionLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4467,7 +4467,7 @@
     public final void ruleCollectionLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1489:2: ( ( ( rule__CollectionLiteralExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1490:1: ( ( rule__CollectionLiteralExpCS__Group__0 ) )
@@ -4476,7 +4476,7 @@
             // InternalOCLinEcore.g:1491:1: ( rule__CollectionLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1492:1: ( rule__CollectionLiteralExpCS__Group__0 )
             // InternalOCLinEcore.g:1492:2: rule__CollectionLiteralExpCS__Group__0
@@ -4490,7 +4490,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -4521,7 +4521,7 @@
             // InternalOCLinEcore.g:1506:1: ruleCollectionLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSRule()); 
+               before(grammarAccess.getCollectionLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionLiteralPartCS();
@@ -4529,7 +4529,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSRule()); 
+               after(grammarAccess.getCollectionLiteralPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4552,7 +4552,7 @@
     public final void ruleCollectionLiteralPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1517:2: ( ( ( rule__CollectionLiteralPartCS__Alternatives ) ) )
             // InternalOCLinEcore.g:1518:1: ( ( rule__CollectionLiteralPartCS__Alternatives ) )
@@ -4561,7 +4561,7 @@
             // InternalOCLinEcore.g:1519:1: ( rule__CollectionLiteralPartCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:1520:1: ( rule__CollectionLiteralPartCS__Alternatives )
             // InternalOCLinEcore.g:1520:2: rule__CollectionLiteralPartCS__Alternatives
@@ -4575,7 +4575,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives());
             }
 
             }
@@ -4606,7 +4606,7 @@
             // InternalOCLinEcore.g:1534:1: ruleCollectionPatternCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSRule()); 
+               before(grammarAccess.getCollectionPatternCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionPatternCS();
@@ -4614,7 +4614,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSRule()); 
+               after(grammarAccess.getCollectionPatternCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4637,7 +4637,7 @@
     public final void ruleCollectionPatternCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1545:2: ( ( ( rule__CollectionPatternCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1546:1: ( ( rule__CollectionPatternCS__Group__0 ) )
@@ -4646,7 +4646,7 @@
             // InternalOCLinEcore.g:1547:1: ( rule__CollectionPatternCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1548:1: ( rule__CollectionPatternCS__Group__0 )
             // InternalOCLinEcore.g:1548:2: rule__CollectionPatternCS__Group__0
@@ -4660,7 +4660,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup());
             }
 
             }
@@ -4691,7 +4691,7 @@
             // InternalOCLinEcore.g:1562:1: ruleShadowPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSRule()); 
+               before(grammarAccess.getShadowPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleShadowPartCS();
@@ -4699,7 +4699,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSRule()); 
+               after(grammarAccess.getShadowPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4722,7 +4722,7 @@
     public final void ruleShadowPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1573:2: ( ( ( rule__ShadowPartCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1574:1: ( ( rule__ShadowPartCS__Group__0 ) )
@@ -4731,7 +4731,7 @@
             // InternalOCLinEcore.g:1575:1: ( rule__ShadowPartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getGroup()); 
+               before(grammarAccess.getShadowPartCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1576:1: ( rule__ShadowPartCS__Group__0 )
             // InternalOCLinEcore.g:1576:2: rule__ShadowPartCS__Group__0
@@ -4745,7 +4745,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getGroup()); 
+               after(grammarAccess.getShadowPartCSAccess().getGroup());
             }
 
             }
@@ -4776,7 +4776,7 @@
             // InternalOCLinEcore.g:1590:1: rulePatternExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSRule()); 
+               before(grammarAccess.getPatternExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePatternExpCS();
@@ -4784,7 +4784,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSRule()); 
+               after(grammarAccess.getPatternExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4807,7 +4807,7 @@
     public final void rulePatternExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1601:2: ( ( ( rule__PatternExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1602:1: ( ( rule__PatternExpCS__Group__0 ) )
@@ -4816,7 +4816,7 @@
             // InternalOCLinEcore.g:1603:1: ( rule__PatternExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getGroup()); 
+               before(grammarAccess.getPatternExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1604:1: ( rule__PatternExpCS__Group__0 )
             // InternalOCLinEcore.g:1604:2: rule__PatternExpCS__Group__0
@@ -4830,7 +4830,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getGroup()); 
+               after(grammarAccess.getPatternExpCSAccess().getGroup());
             }
 
             }
@@ -4861,7 +4861,7 @@
             // InternalOCLinEcore.g:1618:1: ruleLambdaLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSRule()); 
+               before(grammarAccess.getLambdaLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLambdaLiteralExpCS();
@@ -4869,7 +4869,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSRule()); 
+               after(grammarAccess.getLambdaLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4892,7 +4892,7 @@
     public final void ruleLambdaLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1629:2: ( ( ( rule__LambdaLiteralExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1630:1: ( ( rule__LambdaLiteralExpCS__Group__0 ) )
@@ -4901,7 +4901,7 @@
             // InternalOCLinEcore.g:1631:1: ( rule__LambdaLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1632:1: ( rule__LambdaLiteralExpCS__Group__0 )
             // InternalOCLinEcore.g:1632:2: rule__LambdaLiteralExpCS__Group__0
@@ -4915,7 +4915,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -4946,7 +4946,7 @@
             // InternalOCLinEcore.g:1646:1: ruleMapLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSRule()); 
+               before(grammarAccess.getMapLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMapLiteralExpCS();
@@ -4954,7 +4954,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSRule()); 
+               after(grammarAccess.getMapLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4977,7 +4977,7 @@
     public final void ruleMapLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1657:2: ( ( ( rule__MapLiteralExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1658:1: ( ( rule__MapLiteralExpCS__Group__0 ) )
@@ -4986,7 +4986,7 @@
             // InternalOCLinEcore.g:1659:1: ( rule__MapLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1660:1: ( rule__MapLiteralExpCS__Group__0 )
             // InternalOCLinEcore.g:1660:2: rule__MapLiteralExpCS__Group__0
@@ -5000,7 +5000,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -5031,7 +5031,7 @@
             // InternalOCLinEcore.g:1674:1: ruleMapLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSRule()); 
+               before(grammarAccess.getMapLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMapLiteralPartCS();
@@ -5039,7 +5039,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSRule()); 
+               after(grammarAccess.getMapLiteralPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5062,7 +5062,7 @@
     public final void ruleMapLiteralPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1685:2: ( ( ( rule__MapLiteralPartCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1686:1: ( ( rule__MapLiteralPartCS__Group__0 ) )
@@ -5071,7 +5071,7 @@
             // InternalOCLinEcore.g:1687:1: ( rule__MapLiteralPartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getGroup()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1688:1: ( rule__MapLiteralPartCS__Group__0 )
             // InternalOCLinEcore.g:1688:2: rule__MapLiteralPartCS__Group__0
@@ -5085,7 +5085,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getGroup()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getGroup());
             }
 
             }
@@ -5116,7 +5116,7 @@
             // InternalOCLinEcore.g:1702:1: rulePrimitiveLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveLiteralExpCSRule()); 
+               before(grammarAccess.getPrimitiveLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimitiveLiteralExpCS();
@@ -5124,7 +5124,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveLiteralExpCSRule()); 
+               after(grammarAccess.getPrimitiveLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5147,7 +5147,7 @@
     public final void rulePrimitiveLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1713:2: ( ( ( rule__PrimitiveLiteralExpCS__Alternatives ) ) )
             // InternalOCLinEcore.g:1714:1: ( ( rule__PrimitiveLiteralExpCS__Alternatives ) )
@@ -5156,7 +5156,7 @@
             // InternalOCLinEcore.g:1715:1: ( rule__PrimitiveLiteralExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:1716:1: ( rule__PrimitiveLiteralExpCS__Alternatives )
             // InternalOCLinEcore.g:1716:2: rule__PrimitiveLiteralExpCS__Alternatives
@@ -5170,7 +5170,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives());
             }
 
             }
@@ -5201,7 +5201,7 @@
             // InternalOCLinEcore.g:1730:1: ruleTupleLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSRule()); 
+               before(grammarAccess.getTupleLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTupleLiteralExpCS();
@@ -5209,7 +5209,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSRule()); 
+               after(grammarAccess.getTupleLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5232,7 +5232,7 @@
     public final void ruleTupleLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1741:2: ( ( ( rule__TupleLiteralExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1742:1: ( ( rule__TupleLiteralExpCS__Group__0 ) )
@@ -5241,7 +5241,7 @@
             // InternalOCLinEcore.g:1743:1: ( rule__TupleLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1744:1: ( rule__TupleLiteralExpCS__Group__0 )
             // InternalOCLinEcore.g:1744:2: rule__TupleLiteralExpCS__Group__0
@@ -5255,7 +5255,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -5286,7 +5286,7 @@
             // InternalOCLinEcore.g:1758:1: ruleTupleLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSRule()); 
+               before(grammarAccess.getTupleLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTupleLiteralPartCS();
@@ -5294,7 +5294,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSRule()); 
+               after(grammarAccess.getTupleLiteralPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5317,7 +5317,7 @@
     public final void ruleTupleLiteralPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1769:2: ( ( ( rule__TupleLiteralPartCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1770:1: ( ( rule__TupleLiteralPartCS__Group__0 ) )
@@ -5326,7 +5326,7 @@
             // InternalOCLinEcore.g:1771:1: ( rule__TupleLiteralPartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1772:1: ( rule__TupleLiteralPartCS__Group__0 )
             // InternalOCLinEcore.g:1772:2: rule__TupleLiteralPartCS__Group__0
@@ -5340,7 +5340,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup());
             }
 
             }
@@ -5371,7 +5371,7 @@
             // InternalOCLinEcore.g:1786:1: ruleNumberLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNumberLiteralExpCSRule()); 
+               before(grammarAccess.getNumberLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNumberLiteralExpCS();
@@ -5379,7 +5379,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNumberLiteralExpCSRule()); 
+               after(grammarAccess.getNumberLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5402,7 +5402,7 @@
     public final void ruleNumberLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1797:2: ( ( ( rule__NumberLiteralExpCS__SymbolAssignment ) ) )
             // InternalOCLinEcore.g:1798:1: ( ( rule__NumberLiteralExpCS__SymbolAssignment ) )
@@ -5411,7 +5411,7 @@
             // InternalOCLinEcore.g:1799:1: ( rule__NumberLiteralExpCS__SymbolAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment()); 
+               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment());
             }
             // InternalOCLinEcore.g:1800:1: ( rule__NumberLiteralExpCS__SymbolAssignment )
             // InternalOCLinEcore.g:1800:2: rule__NumberLiteralExpCS__SymbolAssignment
@@ -5425,7 +5425,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment()); 
+               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment());
             }
 
             }
@@ -5456,7 +5456,7 @@
             // InternalOCLinEcore.g:1814:1: ruleStringLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSRule()); 
+               before(grammarAccess.getStringLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleStringLiteralExpCS();
@@ -5464,7 +5464,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSRule()); 
+               after(grammarAccess.getStringLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5487,7 +5487,7 @@
     public final void ruleStringLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1825:2: ( ( ( ( rule__StringLiteralExpCS__SegmentsAssignment ) ) ( ( rule__StringLiteralExpCS__SegmentsAssignment )* ) ) )
             // InternalOCLinEcore.g:1826:1: ( ( ( rule__StringLiteralExpCS__SegmentsAssignment ) ) ( ( rule__StringLiteralExpCS__SegmentsAssignment )* ) )
@@ -5499,7 +5499,7 @@
             // InternalOCLinEcore.g:1828:1: ( rule__StringLiteralExpCS__SegmentsAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
             // InternalOCLinEcore.g:1829:1: ( rule__StringLiteralExpCS__SegmentsAssignment )
             // InternalOCLinEcore.g:1829:2: rule__StringLiteralExpCS__SegmentsAssignment
@@ -5513,7 +5513,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
 
             }
@@ -5522,7 +5522,7 @@
             // InternalOCLinEcore.g:1833:1: ( rule__StringLiteralExpCS__SegmentsAssignment )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
             // InternalOCLinEcore.g:1834:1: ( rule__StringLiteralExpCS__SegmentsAssignment )*
             loop1:
@@ -5554,7 +5554,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
 
             }
@@ -5588,7 +5588,7 @@
             // InternalOCLinEcore.g:1849:1: ruleBooleanLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSRule()); 
+               before(grammarAccess.getBooleanLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleBooleanLiteralExpCS();
@@ -5596,7 +5596,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSRule()); 
+               after(grammarAccess.getBooleanLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5619,7 +5619,7 @@
     public final void ruleBooleanLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1860:2: ( ( ( rule__BooleanLiteralExpCS__Alternatives ) ) )
             // InternalOCLinEcore.g:1861:1: ( ( rule__BooleanLiteralExpCS__Alternatives ) )
@@ -5628,7 +5628,7 @@
             // InternalOCLinEcore.g:1862:1: ( rule__BooleanLiteralExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:1863:1: ( rule__BooleanLiteralExpCS__Alternatives )
             // InternalOCLinEcore.g:1863:2: rule__BooleanLiteralExpCS__Alternatives
@@ -5642,7 +5642,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives());
             }
 
             }
@@ -5673,7 +5673,7 @@
             // InternalOCLinEcore.g:1877:1: ruleUnlimitedNaturalLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnlimitedNaturalLiteralExpCS();
@@ -5681,7 +5681,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5704,7 +5704,7 @@
     public final void ruleUnlimitedNaturalLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1888:2: ( ( ( rule__UnlimitedNaturalLiteralExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1889:1: ( ( rule__UnlimitedNaturalLiteralExpCS__Group__0 ) )
@@ -5713,7 +5713,7 @@
             // InternalOCLinEcore.g:1890:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1891:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0 )
             // InternalOCLinEcore.g:1891:2: rule__UnlimitedNaturalLiteralExpCS__Group__0
@@ -5727,7 +5727,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -5758,7 +5758,7 @@
             // InternalOCLinEcore.g:1905:1: ruleInvalidLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSRule()); 
+               before(grammarAccess.getInvalidLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleInvalidLiteralExpCS();
@@ -5766,7 +5766,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSRule()); 
+               after(grammarAccess.getInvalidLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5789,7 +5789,7 @@
     public final void ruleInvalidLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1916:2: ( ( ( rule__InvalidLiteralExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1917:1: ( ( rule__InvalidLiteralExpCS__Group__0 ) )
@@ -5798,7 +5798,7 @@
             // InternalOCLinEcore.g:1918:1: ( rule__InvalidLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getInvalidLiteralExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1919:1: ( rule__InvalidLiteralExpCS__Group__0 )
             // InternalOCLinEcore.g:1919:2: rule__InvalidLiteralExpCS__Group__0
@@ -5812,7 +5812,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getInvalidLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -5843,7 +5843,7 @@
             // InternalOCLinEcore.g:1933:1: ruleNullLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSRule()); 
+               before(grammarAccess.getNullLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNullLiteralExpCS();
@@ -5851,7 +5851,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSRule()); 
+               after(grammarAccess.getNullLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5874,7 +5874,7 @@
     public final void ruleNullLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1944:2: ( ( ( rule__NullLiteralExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:1945:1: ( ( rule__NullLiteralExpCS__Group__0 ) )
@@ -5883,7 +5883,7 @@
             // InternalOCLinEcore.g:1946:1: ( rule__NullLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getNullLiteralExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:1947:1: ( rule__NullLiteralExpCS__Group__0 )
             // InternalOCLinEcore.g:1947:2: rule__NullLiteralExpCS__Group__0
@@ -5897,7 +5897,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getNullLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -5928,7 +5928,7 @@
             // InternalOCLinEcore.g:1961:1: ruleTypeLiteralCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralCSRule()); 
+               before(grammarAccess.getTypeLiteralCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeLiteralCS();
@@ -5936,7 +5936,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralCSRule()); 
+               after(grammarAccess.getTypeLiteralCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5959,7 +5959,7 @@
     public final void ruleTypeLiteralCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:1972:2: ( ( ( rule__TypeLiteralCS__Alternatives ) ) )
             // InternalOCLinEcore.g:1973:1: ( ( rule__TypeLiteralCS__Alternatives ) )
@@ -5968,7 +5968,7 @@
             // InternalOCLinEcore.g:1974:1: ( rule__TypeLiteralCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralCSAccess().getAlternatives()); 
+               before(grammarAccess.getTypeLiteralCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:1975:1: ( rule__TypeLiteralCS__Alternatives )
             // InternalOCLinEcore.g:1975:2: rule__TypeLiteralCS__Alternatives
@@ -5982,7 +5982,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralCSAccess().getAlternatives()); 
+               after(grammarAccess.getTypeLiteralCSAccess().getAlternatives());
             }
 
             }
@@ -6013,7 +6013,7 @@
             // InternalOCLinEcore.g:1989:1: ruleTypeLiteralWithMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeLiteralWithMultiplicityCS();
@@ -6021,7 +6021,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6044,7 +6044,7 @@
     public final void ruleTypeLiteralWithMultiplicityCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2000:2: ( ( ( rule__TypeLiteralWithMultiplicityCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2001:1: ( ( rule__TypeLiteralWithMultiplicityCS__Group__0 ) )
@@ -6053,7 +6053,7 @@
             // InternalOCLinEcore.g:2002:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2003:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0 )
             // InternalOCLinEcore.g:2003:2: rule__TypeLiteralWithMultiplicityCS__Group__0
@@ -6067,7 +6067,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup());
             }
 
             }
@@ -6098,7 +6098,7 @@
             // InternalOCLinEcore.g:2017:1: ruleTypeLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralExpCSRule()); 
+               before(grammarAccess.getTypeLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeLiteralExpCS();
@@ -6106,7 +6106,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralExpCSRule()); 
+               after(grammarAccess.getTypeLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6129,7 +6129,7 @@
     public final void ruleTypeLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2028:2: ( ( ( rule__TypeLiteralExpCS__OwnedTypeAssignment ) ) )
             // InternalOCLinEcore.g:2029:1: ( ( rule__TypeLiteralExpCS__OwnedTypeAssignment ) )
@@ -6138,7 +6138,7 @@
             // InternalOCLinEcore.g:2030:1: ( rule__TypeLiteralExpCS__OwnedTypeAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment()); 
+               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment());
             }
             // InternalOCLinEcore.g:2031:1: ( rule__TypeLiteralExpCS__OwnedTypeAssignment )
             // InternalOCLinEcore.g:2031:2: rule__TypeLiteralExpCS__OwnedTypeAssignment
@@ -6152,7 +6152,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment()); 
+               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment());
             }
 
             }
@@ -6183,7 +6183,7 @@
             // InternalOCLinEcore.g:2045:1: ruleTypeNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSRule()); 
+               before(grammarAccess.getTypeNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeNameExpCS();
@@ -6191,7 +6191,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSRule()); 
+               after(grammarAccess.getTypeNameExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6214,7 +6214,7 @@
     public final void ruleTypeNameExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2056:2: ( ( ( rule__TypeNameExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2057:1: ( ( rule__TypeNameExpCS__Group__0 ) )
@@ -6223,7 +6223,7 @@
             // InternalOCLinEcore.g:2058:1: ( rule__TypeNameExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getGroup()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2059:1: ( rule__TypeNameExpCS__Group__0 )
             // InternalOCLinEcore.g:2059:2: rule__TypeNameExpCS__Group__0
@@ -6237,7 +6237,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getGroup()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getGroup());
             }
 
             }
@@ -6268,7 +6268,7 @@
             // InternalOCLinEcore.g:2073:1: ruleTypeExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSRule()); 
+               before(grammarAccess.getTypeExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeExpCS();
@@ -6276,7 +6276,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSRule()); 
+               after(grammarAccess.getTypeExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6299,7 +6299,7 @@
     public final void ruleTypeExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2084:2: ( ( ( rule__TypeExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2085:1: ( ( rule__TypeExpCS__Group__0 ) )
@@ -6308,7 +6308,7 @@
             // InternalOCLinEcore.g:2086:1: ( rule__TypeExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getGroup()); 
+               before(grammarAccess.getTypeExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2087:1: ( rule__TypeExpCS__Group__0 )
             // InternalOCLinEcore.g:2087:2: rule__TypeExpCS__Group__0
@@ -6322,7 +6322,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getGroup()); 
+               after(grammarAccess.getTypeExpCSAccess().getGroup());
             }
 
             }
@@ -6353,7 +6353,7 @@
             // InternalOCLinEcore.g:2101:1: ruleExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSRule()); 
+               before(grammarAccess.getExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleExpCS();
@@ -6361,7 +6361,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSRule()); 
+               after(grammarAccess.getExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6384,7 +6384,7 @@
     public final void ruleExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2112:2: ( ( ( rule__ExpCS__Alternatives ) ) )
             // InternalOCLinEcore.g:2113:1: ( ( rule__ExpCS__Alternatives ) )
@@ -6393,7 +6393,7 @@
             // InternalOCLinEcore.g:2114:1: ( rule__ExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getExpCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:2115:1: ( rule__ExpCS__Alternatives )
             // InternalOCLinEcore.g:2115:2: rule__ExpCS__Alternatives
@@ -6407,7 +6407,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getExpCSAccess().getAlternatives());
             }
 
             }
@@ -6438,7 +6438,7 @@
             // InternalOCLinEcore.g:2129:1: rulePrefixedLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSRule()); 
+               before(grammarAccess.getPrefixedLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrefixedLetExpCS();
@@ -6446,7 +6446,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSRule()); 
+               after(grammarAccess.getPrefixedLetExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6469,7 +6469,7 @@
     public final void rulePrefixedLetExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2140:2: ( ( ( rule__PrefixedLetExpCS__Alternatives ) ) )
             // InternalOCLinEcore.g:2141:1: ( ( rule__PrefixedLetExpCS__Alternatives ) )
@@ -6478,7 +6478,7 @@
             // InternalOCLinEcore.g:2142:1: ( rule__PrefixedLetExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:2143:1: ( rule__PrefixedLetExpCS__Alternatives )
             // InternalOCLinEcore.g:2143:2: rule__PrefixedLetExpCS__Alternatives
@@ -6492,7 +6492,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives());
             }
 
             }
@@ -6523,7 +6523,7 @@
             // InternalOCLinEcore.g:2157:1: rulePrefixedPrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSRule()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrefixedPrimaryExpCS();
@@ -6531,7 +6531,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSRule()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6554,7 +6554,7 @@
     public final void rulePrefixedPrimaryExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2168:2: ( ( ( rule__PrefixedPrimaryExpCS__Alternatives ) ) )
             // InternalOCLinEcore.g:2169:1: ( ( rule__PrefixedPrimaryExpCS__Alternatives ) )
@@ -6563,7 +6563,7 @@
             // InternalOCLinEcore.g:2170:1: ( rule__PrefixedPrimaryExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:2171:1: ( rule__PrefixedPrimaryExpCS__Alternatives )
             // InternalOCLinEcore.g:2171:2: rule__PrefixedPrimaryExpCS__Alternatives
@@ -6577,7 +6577,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives());
             }
 
             }
@@ -6608,7 +6608,7 @@
             // InternalOCLinEcore.g:2185:1: rulePrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimaryExpCSRule()); 
+               before(grammarAccess.getPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimaryExpCS();
@@ -6616,7 +6616,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimaryExpCSRule()); 
+               after(grammarAccess.getPrimaryExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6639,7 +6639,7 @@
     public final void rulePrimaryExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2196:2: ( ( ( rule__PrimaryExpCS__Alternatives ) ) )
             // InternalOCLinEcore.g:2197:1: ( ( rule__PrimaryExpCS__Alternatives ) )
@@ -6648,7 +6648,7 @@
             // InternalOCLinEcore.g:2198:1: ( rule__PrimaryExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimaryExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrimaryExpCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:2199:1: ( rule__PrimaryExpCS__Alternatives )
             // InternalOCLinEcore.g:2199:2: rule__PrimaryExpCS__Alternatives
@@ -6662,7 +6662,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimaryExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrimaryExpCSAccess().getAlternatives());
             }
 
             }
@@ -6693,7 +6693,7 @@
             // InternalOCLinEcore.g:2213:1: ruleNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSRule()); 
+               before(grammarAccess.getNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNameExpCS();
@@ -6701,7 +6701,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSRule()); 
+               after(grammarAccess.getNameExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6724,7 +6724,7 @@
     public final void ruleNameExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2224:2: ( ( ( rule__NameExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2225:1: ( ( rule__NameExpCS__Group__0 ) )
@@ -6733,7 +6733,7 @@
             // InternalOCLinEcore.g:2226:1: ( rule__NameExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getGroup()); 
+               before(grammarAccess.getNameExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2227:1: ( rule__NameExpCS__Group__0 )
             // InternalOCLinEcore.g:2227:2: rule__NameExpCS__Group__0
@@ -6747,7 +6747,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getGroup()); 
+               after(grammarAccess.getNameExpCSAccess().getGroup());
             }
 
             }
@@ -6778,7 +6778,7 @@
             // InternalOCLinEcore.g:2241:1: ruleCurlyBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSRule()); 
+               before(grammarAccess.getCurlyBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCurlyBracketedClauseCS();
@@ -6786,7 +6786,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSRule()); 
+               after(grammarAccess.getCurlyBracketedClauseCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6809,7 +6809,7 @@
     public final void ruleCurlyBracketedClauseCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2252:2: ( ( ( rule__CurlyBracketedClauseCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2253:1: ( ( rule__CurlyBracketedClauseCS__Group__0 ) )
@@ -6818,7 +6818,7 @@
             // InternalOCLinEcore.g:2254:1: ( rule__CurlyBracketedClauseCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2255:1: ( rule__CurlyBracketedClauseCS__Group__0 )
             // InternalOCLinEcore.g:2255:2: rule__CurlyBracketedClauseCS__Group__0
@@ -6832,7 +6832,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup());
             }
 
             }
@@ -6863,7 +6863,7 @@
             // InternalOCLinEcore.g:2269:1: ruleRoundBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSRule()); 
+               before(grammarAccess.getRoundBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleRoundBracketedClauseCS();
@@ -6871,7 +6871,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSRule()); 
+               after(grammarAccess.getRoundBracketedClauseCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6894,7 +6894,7 @@
     public final void ruleRoundBracketedClauseCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2280:2: ( ( ( rule__RoundBracketedClauseCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2281:1: ( ( rule__RoundBracketedClauseCS__Group__0 ) )
@@ -6903,7 +6903,7 @@
             // InternalOCLinEcore.g:2282:1: ( rule__RoundBracketedClauseCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2283:1: ( rule__RoundBracketedClauseCS__Group__0 )
             // InternalOCLinEcore.g:2283:2: rule__RoundBracketedClauseCS__Group__0
@@ -6917,7 +6917,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup());
             }
 
             }
@@ -6948,7 +6948,7 @@
             // InternalOCLinEcore.g:2297:1: ruleSquareBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSRule()); 
+               before(grammarAccess.getSquareBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleSquareBracketedClauseCS();
@@ -6956,7 +6956,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSRule()); 
+               after(grammarAccess.getSquareBracketedClauseCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6979,7 +6979,7 @@
     public final void ruleSquareBracketedClauseCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2308:2: ( ( ( rule__SquareBracketedClauseCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2309:1: ( ( rule__SquareBracketedClauseCS__Group__0 ) )
@@ -6988,7 +6988,7 @@
             // InternalOCLinEcore.g:2310:1: ( rule__SquareBracketedClauseCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2311:1: ( rule__SquareBracketedClauseCS__Group__0 )
             // InternalOCLinEcore.g:2311:2: rule__SquareBracketedClauseCS__Group__0
@@ -7002,7 +7002,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup());
             }
 
             }
@@ -7033,7 +7033,7 @@
             // InternalOCLinEcore.g:2325:1: ruleNavigatingArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSRule()); 
+               before(grammarAccess.getNavigatingArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingArgCS();
@@ -7041,7 +7041,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSRule()); 
+               after(grammarAccess.getNavigatingArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7064,7 +7064,7 @@
     public final void ruleNavigatingArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2336:2: ( ( ( rule__NavigatingArgCS__Alternatives ) ) )
             // InternalOCLinEcore.g:2337:1: ( ( rule__NavigatingArgCS__Alternatives ) )
@@ -7073,7 +7073,7 @@
             // InternalOCLinEcore.g:2338:1: ( rule__NavigatingArgCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:2339:1: ( rule__NavigatingArgCS__Alternatives )
             // InternalOCLinEcore.g:2339:2: rule__NavigatingArgCS__Alternatives
@@ -7087,7 +7087,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives());
             }
 
             }
@@ -7118,7 +7118,7 @@
             // InternalOCLinEcore.g:2353:1: ruleNavigatingBarArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSRule()); 
+               before(grammarAccess.getNavigatingBarArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingBarArgCS();
@@ -7126,7 +7126,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSRule()); 
+               after(grammarAccess.getNavigatingBarArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7149,7 +7149,7 @@
     public final void ruleNavigatingBarArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2364:2: ( ( ( rule__NavigatingBarArgCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2365:1: ( ( rule__NavigatingBarArgCS__Group__0 ) )
@@ -7158,7 +7158,7 @@
             // InternalOCLinEcore.g:2366:1: ( rule__NavigatingBarArgCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2367:1: ( rule__NavigatingBarArgCS__Group__0 )
             // InternalOCLinEcore.g:2367:2: rule__NavigatingBarArgCS__Group__0
@@ -7172,7 +7172,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup());
             }
 
             }
@@ -7203,7 +7203,7 @@
             // InternalOCLinEcore.g:2381:1: ruleNavigatingCommaArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSRule()); 
+               before(grammarAccess.getNavigatingCommaArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingCommaArgCS();
@@ -7211,7 +7211,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSRule()); 
+               after(grammarAccess.getNavigatingCommaArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7234,7 +7234,7 @@
     public final void ruleNavigatingCommaArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2392:2: ( ( ( rule__NavigatingCommaArgCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2393:1: ( ( rule__NavigatingCommaArgCS__Group__0 ) )
@@ -7243,7 +7243,7 @@
             // InternalOCLinEcore.g:2394:1: ( rule__NavigatingCommaArgCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2395:1: ( rule__NavigatingCommaArgCS__Group__0 )
             // InternalOCLinEcore.g:2395:2: rule__NavigatingCommaArgCS__Group__0
@@ -7257,7 +7257,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup());
             }
 
             }
@@ -7288,7 +7288,7 @@
             // InternalOCLinEcore.g:2409:1: ruleNavigatingSemiArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSRule()); 
+               before(grammarAccess.getNavigatingSemiArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingSemiArgCS();
@@ -7296,7 +7296,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSRule()); 
+               after(grammarAccess.getNavigatingSemiArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7319,7 +7319,7 @@
     public final void ruleNavigatingSemiArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2420:2: ( ( ( rule__NavigatingSemiArgCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2421:1: ( ( rule__NavigatingSemiArgCS__Group__0 ) )
@@ -7328,7 +7328,7 @@
             // InternalOCLinEcore.g:2422:1: ( rule__NavigatingSemiArgCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2423:1: ( rule__NavigatingSemiArgCS__Group__0 )
             // InternalOCLinEcore.g:2423:2: rule__NavigatingSemiArgCS__Group__0
@@ -7342,7 +7342,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup());
             }
 
             }
@@ -7373,7 +7373,7 @@
             // InternalOCLinEcore.g:2437:1: ruleNavigatingArgExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgExpCSRule()); 
+               before(grammarAccess.getNavigatingArgExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingArgExpCS();
@@ -7381,7 +7381,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgExpCSRule()); 
+               after(grammarAccess.getNavigatingArgExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7404,7 +7404,7 @@
     public final void ruleNavigatingArgExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2448:2: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:2449:1: ( ruleExpCS )
@@ -7413,7 +7413,7 @@
             // InternalOCLinEcore.g:2450:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall()); 
+               before(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -7421,7 +7421,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall()); 
+               after(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall());
             }
 
             }
@@ -7452,7 +7452,7 @@
             // InternalOCLinEcore.g:2465:1: ruleIfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSRule()); 
+               before(grammarAccess.getIfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleIfExpCS();
@@ -7460,7 +7460,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSRule()); 
+               after(grammarAccess.getIfExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7483,7 +7483,7 @@
     public final void ruleIfExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2476:2: ( ( ( rule__IfExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2477:1: ( ( rule__IfExpCS__Group__0 ) )
@@ -7492,7 +7492,7 @@
             // InternalOCLinEcore.g:2478:1: ( rule__IfExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getGroup()); 
+               before(grammarAccess.getIfExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2479:1: ( rule__IfExpCS__Group__0 )
             // InternalOCLinEcore.g:2479:2: rule__IfExpCS__Group__0
@@ -7506,7 +7506,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getGroup()); 
+               after(grammarAccess.getIfExpCSAccess().getGroup());
             }
 
             }
@@ -7537,7 +7537,7 @@
             // InternalOCLinEcore.g:2493:1: ruleElseIfThenExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSRule()); 
+               before(grammarAccess.getElseIfThenExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleElseIfThenExpCS();
@@ -7545,7 +7545,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSRule()); 
+               after(grammarAccess.getElseIfThenExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7568,7 +7568,7 @@
     public final void ruleElseIfThenExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2504:2: ( ( ( rule__ElseIfThenExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2505:1: ( ( rule__ElseIfThenExpCS__Group__0 ) )
@@ -7577,7 +7577,7 @@
             // InternalOCLinEcore.g:2506:1: ( rule__ElseIfThenExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getGroup()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2507:1: ( rule__ElseIfThenExpCS__Group__0 )
             // InternalOCLinEcore.g:2507:2: rule__ElseIfThenExpCS__Group__0
@@ -7591,7 +7591,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getGroup()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getGroup());
             }
 
             }
@@ -7622,7 +7622,7 @@
             // InternalOCLinEcore.g:2521:1: ruleLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSRule()); 
+               before(grammarAccess.getLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLetExpCS();
@@ -7630,7 +7630,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSRule()); 
+               after(grammarAccess.getLetExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7653,7 +7653,7 @@
     public final void ruleLetExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2532:2: ( ( ( rule__LetExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2533:1: ( ( rule__LetExpCS__Group__0 ) )
@@ -7662,7 +7662,7 @@
             // InternalOCLinEcore.g:2534:1: ( rule__LetExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getGroup()); 
+               before(grammarAccess.getLetExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2535:1: ( rule__LetExpCS__Group__0 )
             // InternalOCLinEcore.g:2535:2: rule__LetExpCS__Group__0
@@ -7676,7 +7676,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getGroup()); 
+               after(grammarAccess.getLetExpCSAccess().getGroup());
             }
 
             }
@@ -7707,7 +7707,7 @@
             // InternalOCLinEcore.g:2549:1: ruleLetVariableCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSRule()); 
+               before(grammarAccess.getLetVariableCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLetVariableCS();
@@ -7715,7 +7715,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSRule()); 
+               after(grammarAccess.getLetVariableCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7738,7 +7738,7 @@
     public final void ruleLetVariableCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2560:2: ( ( ( rule__LetVariableCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2561:1: ( ( rule__LetVariableCS__Group__0 ) )
@@ -7747,7 +7747,7 @@
             // InternalOCLinEcore.g:2562:1: ( rule__LetVariableCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getGroup()); 
+               before(grammarAccess.getLetVariableCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2563:1: ( rule__LetVariableCS__Group__0 )
             // InternalOCLinEcore.g:2563:2: rule__LetVariableCS__Group__0
@@ -7761,7 +7761,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getGroup()); 
+               after(grammarAccess.getLetVariableCSAccess().getGroup());
             }
 
             }
@@ -7792,7 +7792,7 @@
             // InternalOCLinEcore.g:2577:1: ruleNestedExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSRule()); 
+               before(grammarAccess.getNestedExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNestedExpCS();
@@ -7800,7 +7800,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSRule()); 
+               after(grammarAccess.getNestedExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7823,7 +7823,7 @@
     public final void ruleNestedExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2588:2: ( ( ( rule__NestedExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2589:1: ( ( rule__NestedExpCS__Group__0 ) )
@@ -7832,7 +7832,7 @@
             // InternalOCLinEcore.g:2590:1: ( rule__NestedExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getGroup()); 
+               before(grammarAccess.getNestedExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2591:1: ( rule__NestedExpCS__Group__0 )
             // InternalOCLinEcore.g:2591:2: rule__NestedExpCS__Group__0
@@ -7846,7 +7846,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getGroup()); 
+               after(grammarAccess.getNestedExpCSAccess().getGroup());
             }
 
             }
@@ -7877,7 +7877,7 @@
             // InternalOCLinEcore.g:2605:1: ruleSelfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSRule()); 
+               before(grammarAccess.getSelfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleSelfExpCS();
@@ -7885,7 +7885,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSRule()); 
+               after(grammarAccess.getSelfExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7908,7 +7908,7 @@
     public final void ruleSelfExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2616:2: ( ( ( rule__SelfExpCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2617:1: ( ( rule__SelfExpCS__Group__0 ) )
@@ -7917,7 +7917,7 @@
             // InternalOCLinEcore.g:2618:1: ( rule__SelfExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSAccess().getGroup()); 
+               before(grammarAccess.getSelfExpCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2619:1: ( rule__SelfExpCS__Group__0 )
             // InternalOCLinEcore.g:2619:2: rule__SelfExpCS__Group__0
@@ -7931,7 +7931,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSAccess().getGroup()); 
+               after(grammarAccess.getSelfExpCSAccess().getGroup());
             }
 
             }
@@ -7962,7 +7962,7 @@
             // InternalOCLinEcore.g:2633:1: ruleMultiplicityBoundsCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSRule()); 
+               before(grammarAccess.getMultiplicityBoundsCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityBoundsCS();
@@ -7970,7 +7970,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSRule()); 
+               after(grammarAccess.getMultiplicityBoundsCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7993,7 +7993,7 @@
     public final void ruleMultiplicityBoundsCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2644:2: ( ( ( rule__MultiplicityBoundsCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2645:1: ( ( rule__MultiplicityBoundsCS__Group__0 ) )
@@ -8002,7 +8002,7 @@
             // InternalOCLinEcore.g:2646:1: ( rule__MultiplicityBoundsCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2647:1: ( rule__MultiplicityBoundsCS__Group__0 )
             // InternalOCLinEcore.g:2647:2: rule__MultiplicityBoundsCS__Group__0
@@ -8016,7 +8016,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup());
             }
 
             }
@@ -8047,7 +8047,7 @@
             // InternalOCLinEcore.g:2661:1: ruleMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSRule()); 
+               before(grammarAccess.getMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityCS();
@@ -8055,7 +8055,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSRule()); 
+               after(grammarAccess.getMultiplicityCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8078,7 +8078,7 @@
     public final void ruleMultiplicityCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2672:2: ( ( ( rule__MultiplicityCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2673:1: ( ( rule__MultiplicityCS__Group__0 ) )
@@ -8087,7 +8087,7 @@
             // InternalOCLinEcore.g:2674:1: ( rule__MultiplicityCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getGroup()); 
+               before(grammarAccess.getMultiplicityCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2675:1: ( rule__MultiplicityCS__Group__0 )
             // InternalOCLinEcore.g:2675:2: rule__MultiplicityCS__Group__0
@@ -8101,7 +8101,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getGroup()); 
+               after(grammarAccess.getMultiplicityCSAccess().getGroup());
             }
 
             }
@@ -8132,7 +8132,7 @@
             // InternalOCLinEcore.g:2689:1: ruleMultiplicityStringCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSRule()); 
+               before(grammarAccess.getMultiplicityStringCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityStringCS();
@@ -8140,7 +8140,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSRule()); 
+               after(grammarAccess.getMultiplicityStringCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8163,7 +8163,7 @@
     public final void ruleMultiplicityStringCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2700:2: ( ( ( rule__MultiplicityStringCS__StringBoundsAssignment ) ) )
             // InternalOCLinEcore.g:2701:1: ( ( rule__MultiplicityStringCS__StringBoundsAssignment ) )
@@ -8172,7 +8172,7 @@
             // InternalOCLinEcore.g:2702:1: ( rule__MultiplicityStringCS__StringBoundsAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment()); 
+               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment());
             }
             // InternalOCLinEcore.g:2703:1: ( rule__MultiplicityStringCS__StringBoundsAssignment )
             // InternalOCLinEcore.g:2703:2: rule__MultiplicityStringCS__StringBoundsAssignment
@@ -8186,7 +8186,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment()); 
+               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment());
             }
 
             }
@@ -8217,7 +8217,7 @@
             // InternalOCLinEcore.g:2717:1: rulePathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSRule()); 
+               before(grammarAccess.getPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePathNameCS();
@@ -8225,7 +8225,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSRule()); 
+               after(grammarAccess.getPathNameCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8248,7 +8248,7 @@
     public final void rulePathNameCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2728:2: ( ( ( rule__PathNameCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2729:1: ( ( rule__PathNameCS__Group__0 ) )
@@ -8257,7 +8257,7 @@
             // InternalOCLinEcore.g:2730:1: ( rule__PathNameCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getGroup()); 
+               before(grammarAccess.getPathNameCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2731:1: ( rule__PathNameCS__Group__0 )
             // InternalOCLinEcore.g:2731:2: rule__PathNameCS__Group__0
@@ -8271,7 +8271,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getGroup()); 
+               after(grammarAccess.getPathNameCSAccess().getGroup());
             }
 
             }
@@ -8302,7 +8302,7 @@
             // InternalOCLinEcore.g:2745:1: ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSRule()); 
+               before(grammarAccess.getFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleFirstPathElementCS();
@@ -8310,7 +8310,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSRule()); 
+               after(grammarAccess.getFirstPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8333,7 +8333,7 @@
     public final void ruleFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2756:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
             // InternalOCLinEcore.g:2757:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
@@ -8342,7 +8342,7 @@
             // InternalOCLinEcore.g:2758:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
             // InternalOCLinEcore.g:2759:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             // InternalOCLinEcore.g:2759:2: rule__FirstPathElementCS__ReferredElementAssignment
@@ -8356,7 +8356,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
 
             }
@@ -8387,7 +8387,7 @@
             // InternalOCLinEcore.g:2773:1: ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSRule()); 
+               before(grammarAccess.getNextPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNextPathElementCS();
@@ -8395,7 +8395,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSRule()); 
+               after(grammarAccess.getNextPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8418,7 +8418,7 @@
     public final void ruleNextPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2784:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
             // InternalOCLinEcore.g:2785:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
@@ -8427,7 +8427,7 @@
             // InternalOCLinEcore.g:2786:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
             // InternalOCLinEcore.g:2787:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             // InternalOCLinEcore.g:2787:2: rule__NextPathElementCS__ReferredElementAssignment
@@ -8441,7 +8441,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
 
             }
@@ -8472,7 +8472,7 @@
             // InternalOCLinEcore.g:2801:1: ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSRule()); 
+               before(grammarAccess.getTemplateBindingCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTemplateBindingCS();
@@ -8480,7 +8480,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSRule()); 
+               after(grammarAccess.getTemplateBindingCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8503,7 +8503,7 @@
     public final void ruleTemplateBindingCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2812:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2813:1: ( ( rule__TemplateBindingCS__Group__0 ) )
@@ -8512,7 +8512,7 @@
             // InternalOCLinEcore.g:2814:1: ( rule__TemplateBindingCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getGroup()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2815:1: ( rule__TemplateBindingCS__Group__0 )
             // InternalOCLinEcore.g:2815:2: rule__TemplateBindingCS__Group__0
@@ -8526,7 +8526,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getGroup()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
 
             }
@@ -8557,7 +8557,7 @@
             // InternalOCLinEcore.g:2829:1: ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTemplateParameterSubstitutionCS();
@@ -8565,7 +8565,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8588,7 +8588,7 @@
     public final void ruleTemplateParameterSubstitutionCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2840:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
             // InternalOCLinEcore.g:2841:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
@@ -8597,7 +8597,7 @@
             // InternalOCLinEcore.g:2842:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
             // InternalOCLinEcore.g:2843:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             // InternalOCLinEcore.g:2843:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
@@ -8611,7 +8611,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
 
             }
@@ -8642,7 +8642,7 @@
             // InternalOCLinEcore.g:2857:1: ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSRule()); 
+               before(grammarAccess.getTypeParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeParameterCS();
@@ -8650,7 +8650,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSRule()); 
+               after(grammarAccess.getTypeParameterCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8673,7 +8673,7 @@
     public final void ruleTypeParameterCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2868:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2869:1: ( ( rule__TypeParameterCS__Group__0 ) )
@@ -8682,7 +8682,7 @@
             // InternalOCLinEcore.g:2870:1: ( rule__TypeParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2871:1: ( rule__TypeParameterCS__Group__0 )
             // InternalOCLinEcore.g:2871:2: rule__TypeParameterCS__Group__0
@@ -8696,7 +8696,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
 
             }
@@ -8727,7 +8727,7 @@
             // InternalOCLinEcore.g:2885:1: ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeRefCSRule()); 
+               before(grammarAccess.getTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeRefCS();
@@ -8735,7 +8735,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeRefCSRule()); 
+               after(grammarAccess.getTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8758,7 +8758,7 @@
     public final void ruleTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2896:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
             // InternalOCLinEcore.g:2897:1: ( ( rule__TypeRefCS__Alternatives ) )
@@ -8767,7 +8767,7 @@
             // InternalOCLinEcore.g:2898:1: ( rule__TypeRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeRefCSAccess().getAlternatives()); 
+               before(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:2899:1: ( rule__TypeRefCS__Alternatives )
             // InternalOCLinEcore.g:2899:2: rule__TypeRefCS__Alternatives
@@ -8781,7 +8781,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeRefCSAccess().getAlternatives()); 
+               after(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
 
             }
@@ -8812,7 +8812,7 @@
             // InternalOCLinEcore.g:2913:1: ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSRule()); 
+               before(grammarAccess.getWildcardTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleWildcardTypeRefCS();
@@ -8820,7 +8820,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSRule()); 
+               after(grammarAccess.getWildcardTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8843,7 +8843,7 @@
     public final void ruleWildcardTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2924:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
             // InternalOCLinEcore.g:2925:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
@@ -8852,7 +8852,7 @@
             // InternalOCLinEcore.g:2926:1: ( rule__WildcardTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
             // InternalOCLinEcore.g:2927:1: ( rule__WildcardTypeRefCS__Group__0 )
             // InternalOCLinEcore.g:2927:2: rule__WildcardTypeRefCS__Group__0
@@ -8866,7 +8866,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
 
             }
@@ -8897,7 +8897,7 @@
             // InternalOCLinEcore.g:2941:1: ruleID EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIDRule()); 
+               before(grammarAccess.getIDRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleID();
@@ -8905,7 +8905,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIDRule()); 
+               after(grammarAccess.getIDRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8928,7 +8928,7 @@
     public final void ruleID() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2952:2: ( ( ( rule__ID__Alternatives ) ) )
             // InternalOCLinEcore.g:2953:1: ( ( rule__ID__Alternatives ) )
@@ -8937,7 +8937,7 @@
             // InternalOCLinEcore.g:2954:1: ( rule__ID__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIDAccess().getAlternatives()); 
+               before(grammarAccess.getIDAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:2955:1: ( rule__ID__Alternatives )
             // InternalOCLinEcore.g:2955:2: rule__ID__Alternatives
@@ -8951,7 +8951,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIDAccess().getAlternatives()); 
+               after(grammarAccess.getIDAccess().getAlternatives());
             }
 
             }
@@ -8982,7 +8982,7 @@
             // InternalOCLinEcore.g:2969:1: ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIdentifierRule()); 
+               before(grammarAccess.getIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleIdentifier();
@@ -8990,7 +8990,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIdentifierRule()); 
+               after(grammarAccess.getIdentifierRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9013,7 +9013,7 @@
     public final void ruleIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:2980:2: ( ( ruleID ) )
             // InternalOCLinEcore.g:2981:1: ( ruleID )
@@ -9022,7 +9022,7 @@
             // InternalOCLinEcore.g:2982:1: ruleID
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
+               before(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleID();
@@ -9030,7 +9030,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
+               after(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
             }
 
             }
@@ -9061,7 +9061,7 @@
             // InternalOCLinEcore.g:2997:1: ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLOWERRule()); 
+               before(grammarAccess.getLOWERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLOWER();
@@ -9069,7 +9069,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLOWERRule()); 
+               after(grammarAccess.getLOWERRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9092,7 +9092,7 @@
     public final void ruleLOWER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3008:2: ( ( RULE_INT ) )
             // InternalOCLinEcore.g:3009:1: ( RULE_INT )
@@ -9101,11 +9101,11 @@
             // InternalOCLinEcore.g:3010:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+               before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+               after(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
             }
 
             }
@@ -9136,7 +9136,7 @@
             // InternalOCLinEcore.g:3025:1: ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNUMBER_LITERALRule()); 
+               before(grammarAccess.getNUMBER_LITERALRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNUMBER_LITERAL();
@@ -9144,7 +9144,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNUMBER_LITERALRule()); 
+               after(grammarAccess.getNUMBER_LITERALRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9167,7 +9167,7 @@
     public final void ruleNUMBER_LITERAL() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3036:2: ( ( RULE_INT ) )
             // InternalOCLinEcore.g:3037:1: ( RULE_INT )
@@ -9176,11 +9176,11 @@
             // InternalOCLinEcore.g:3038:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
+               before(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
+               after(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
             }
 
             }
@@ -9211,7 +9211,7 @@
             // InternalOCLinEcore.g:3053:1: ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralRule()); 
+               before(grammarAccess.getStringLiteralRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleStringLiteral();
@@ -9219,7 +9219,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralRule()); 
+               after(grammarAccess.getStringLiteralRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9242,7 +9242,7 @@
     public final void ruleStringLiteral() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3064:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalOCLinEcore.g:3065:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -9251,11 +9251,11 @@
             // InternalOCLinEcore.g:3066:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               before(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               after(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
 
             }
@@ -9286,7 +9286,7 @@
             // InternalOCLinEcore.g:3081:1: ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUPPERRule()); 
+               before(grammarAccess.getUPPERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUPPER();
@@ -9294,7 +9294,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUPPERRule()); 
+               after(grammarAccess.getUPPERRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9317,7 +9317,7 @@
     public final void ruleUPPER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3092:2: ( ( ( rule__UPPER__Alternatives ) ) )
             // InternalOCLinEcore.g:3093:1: ( ( rule__UPPER__Alternatives ) )
@@ -9326,7 +9326,7 @@
             // InternalOCLinEcore.g:3094:1: ( rule__UPPER__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUPPERAccess().getAlternatives()); 
+               before(grammarAccess.getUPPERAccess().getAlternatives());
             }
             // InternalOCLinEcore.g:3095:1: ( rule__UPPER__Alternatives )
             // InternalOCLinEcore.g:3095:2: rule__UPPER__Alternatives
@@ -9340,7 +9340,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUPPERAccess().getAlternatives()); 
+               after(grammarAccess.getUPPERAccess().getAlternatives());
             }
 
             }
@@ -9371,7 +9371,7 @@
             // InternalOCLinEcore.g:3109:1: ruleURI EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIRule()); 
+               before(grammarAccess.getURIRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleURI();
@@ -9379,7 +9379,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIRule()); 
+               after(grammarAccess.getURIRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9402,7 +9402,7 @@
     public final void ruleURI() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3120:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalOCLinEcore.g:3121:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -9411,11 +9411,11 @@
             // InternalOCLinEcore.g:3122:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               before(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               after(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
 
             }
@@ -9443,7 +9443,7 @@
     public final void rule__EnumerationLiteralName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3139: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;
@@ -9645,7 +9645,7 @@
                     // InternalOCLinEcore.g:3141:1: ruleEssentialOCLUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleEssentialOCLUnrestrictedName();
@@ -9653,7 +9653,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0());
                     }
 
                     }
@@ -9668,11 +9668,11 @@
                     // InternalOCLinEcore.g:3147:1: 'abstract'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getAbstractKeyword_1()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getAbstractKeyword_1());
                     }
                     match(input,17,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getAbstractKeyword_1()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getAbstractKeyword_1());
                     }
 
                     }
@@ -9687,11 +9687,11 @@
                     // InternalOCLinEcore.g:3155:1: 'attribute'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getAttributeKeyword_2()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getAttributeKeyword_2());
                     }
                     match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getAttributeKeyword_2()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getAttributeKeyword_2());
                     }
 
                     }
@@ -9706,11 +9706,11 @@
                     // InternalOCLinEcore.g:3163:1: 'body'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getBodyKeyword_3()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getBodyKeyword_3());
                     }
                     match(input,19,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getBodyKeyword_3()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getBodyKeyword_3());
                     }
 
                     }
@@ -9725,11 +9725,11 @@
                     // InternalOCLinEcore.g:3171:1: 'callable'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getCallableKeyword_4()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getCallableKeyword_4());
                     }
                     match(input,20,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getCallableKeyword_4()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getCallableKeyword_4());
                     }
 
                     }
@@ -9744,11 +9744,11 @@
                     // InternalOCLinEcore.g:3179:1: 'class'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getClassKeyword_5()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getClassKeyword_5());
                     }
                     match(input,21,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getClassKeyword_5()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getClassKeyword_5());
                     }
 
                     }
@@ -9763,11 +9763,11 @@
                     // InternalOCLinEcore.g:3187:1: 'composes'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getComposesKeyword_6()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getComposesKeyword_6());
                     }
                     match(input,22,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getComposesKeyword_6()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getComposesKeyword_6());
                     }
 
                     }
@@ -9782,11 +9782,11 @@
                     // InternalOCLinEcore.g:3195:1: 'datatype'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getDatatypeKeyword_7()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getDatatypeKeyword_7());
                     }
                     match(input,23,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getDatatypeKeyword_7()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getDatatypeKeyword_7());
                     }
 
                     }
@@ -9801,11 +9801,11 @@
                     // InternalOCLinEcore.g:3203:1: 'definition'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getDefinitionKeyword_8()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getDefinitionKeyword_8());
                     }
                     match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getDefinitionKeyword_8()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getDefinitionKeyword_8());
                     }
 
                     }
@@ -9820,11 +9820,11 @@
                     // InternalOCLinEcore.g:3211:1: 'derivation'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getDerivationKeyword_9()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getDerivationKeyword_9());
                     }
                     match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getDerivationKeyword_9()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getDerivationKeyword_9());
                     }
 
                     }
@@ -9839,11 +9839,11 @@
                     // InternalOCLinEcore.g:3219:1: 'derived'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getDerivedKeyword_10()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getDerivedKeyword_10());
                     }
                     match(input,26,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getDerivedKeyword_10()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getDerivedKeyword_10());
                     }
 
                     }
@@ -9858,11 +9858,11 @@
                     // InternalOCLinEcore.g:3227:1: 'enum'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getEnumKeyword_11()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getEnumKeyword_11());
                     }
                     match(input,27,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getEnumKeyword_11()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getEnumKeyword_11());
                     }
 
                     }
@@ -9877,11 +9877,11 @@
                     // InternalOCLinEcore.g:3235:1: 'extends'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getExtendsKeyword_12()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getExtendsKeyword_12());
                     }
                     match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getExtendsKeyword_12()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getExtendsKeyword_12());
                     }
 
                     }
@@ -9896,11 +9896,11 @@
                     // InternalOCLinEcore.g:3243:1: 'id'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getIdKeyword_13()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getIdKeyword_13());
                     }
                     match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getIdKeyword_13()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getIdKeyword_13());
                     }
 
                     }
@@ -9915,11 +9915,11 @@
                     // InternalOCLinEcore.g:3251:1: 'import'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getImportKeyword_14()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getImportKeyword_14());
                     }
                     match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getImportKeyword_14()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getImportKeyword_14());
                     }
 
                     }
@@ -9934,11 +9934,11 @@
                     // InternalOCLinEcore.g:3259:1: 'initial'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getInitialKeyword_15()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getInitialKeyword_15());
                     }
                     match(input,31,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getInitialKeyword_15()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getInitialKeyword_15());
                     }
 
                     }
@@ -9953,11 +9953,11 @@
                     // InternalOCLinEcore.g:3267:1: 'interface'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getInterfaceKeyword_16()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getInterfaceKeyword_16());
                     }
                     match(input,32,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getInterfaceKeyword_16()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getInterfaceKeyword_16());
                     }
 
                     }
@@ -9972,11 +9972,11 @@
                     // InternalOCLinEcore.g:3275:1: 'key'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getKeyKeyword_17()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getKeyKeyword_17());
                     }
                     match(input,33,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getKeyKeyword_17()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getKeyKeyword_17());
                     }
 
                     }
@@ -9991,11 +9991,11 @@
                     // InternalOCLinEcore.g:3283:1: 'library'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getLibraryKeyword_18()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getLibraryKeyword_18());
                     }
                     match(input,34,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getLibraryKeyword_18()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getLibraryKeyword_18());
                     }
 
                     }
@@ -10010,11 +10010,11 @@
                     // InternalOCLinEcore.g:3291:1: 'module'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getModuleKeyword_19()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getModuleKeyword_19());
                     }
                     match(input,35,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getModuleKeyword_19()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getModuleKeyword_19());
                     }
 
                     }
@@ -10029,11 +10029,11 @@
                     // InternalOCLinEcore.g:3299:1: 'operation'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getOperationKeyword_20()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getOperationKeyword_20());
                     }
                     match(input,36,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getOperationKeyword_20()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getOperationKeyword_20());
                     }
 
                     }
@@ -10048,11 +10048,11 @@
                     // InternalOCLinEcore.g:3307:1: 'ordered'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getOrderedKeyword_21()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getOrderedKeyword_21());
                     }
                     match(input,37,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getOrderedKeyword_21()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getOrderedKeyword_21());
                     }
 
                     }
@@ -10067,11 +10067,11 @@
                     // InternalOCLinEcore.g:3315:1: 'package'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getPackageKeyword_22()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getPackageKeyword_22());
                     }
                     match(input,38,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getPackageKeyword_22()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getPackageKeyword_22());
                     }
 
                     }
@@ -10086,11 +10086,11 @@
                     // InternalOCLinEcore.g:3323:1: 'postcondition'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getPostconditionKeyword_23()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getPostconditionKeyword_23());
                     }
                     match(input,39,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getPostconditionKeyword_23()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getPostconditionKeyword_23());
                     }
 
                     }
@@ -10105,11 +10105,11 @@
                     // InternalOCLinEcore.g:3331:1: 'precondition'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getPreconditionKeyword_24()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getPreconditionKeyword_24());
                     }
                     match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getPreconditionKeyword_24()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getPreconditionKeyword_24());
                     }
 
                     }
@@ -10124,11 +10124,11 @@
                     // InternalOCLinEcore.g:3339:1: 'primitive'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getPrimitiveKeyword_25()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getPrimitiveKeyword_25());
                     }
                     match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getPrimitiveKeyword_25()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getPrimitiveKeyword_25());
                     }
 
                     }
@@ -10143,11 +10143,11 @@
                     // InternalOCLinEcore.g:3347:1: 'property'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getPropertyKeyword_26()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getPropertyKeyword_26());
                     }
                     match(input,42,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getPropertyKeyword_26()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getPropertyKeyword_26());
                     }
 
                     }
@@ -10162,11 +10162,11 @@
                     // InternalOCLinEcore.g:3355:1: 'readonly'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getReadonlyKeyword_27()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getReadonlyKeyword_27());
                     }
                     match(input,43,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getReadonlyKeyword_27()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getReadonlyKeyword_27());
                     }
 
                     }
@@ -10181,11 +10181,11 @@
                     // InternalOCLinEcore.g:3363:1: 'reference'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getReferenceKeyword_28()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getReferenceKeyword_28());
                     }
                     match(input,44,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getReferenceKeyword_28()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getReferenceKeyword_28());
                     }
 
                     }
@@ -10200,11 +10200,11 @@
                     // InternalOCLinEcore.g:3371:1: 'resolve'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getResolveKeyword_29()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getResolveKeyword_29());
                     }
                     match(input,45,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getResolveKeyword_29()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getResolveKeyword_29());
                     }
 
                     }
@@ -10219,11 +10219,11 @@
                     // InternalOCLinEcore.g:3379:1: 'static'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getStaticKeyword_30()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getStaticKeyword_30());
                     }
                     match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getStaticKeyword_30()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getStaticKeyword_30());
                     }
 
                     }
@@ -10238,11 +10238,11 @@
                     // InternalOCLinEcore.g:3387:1: 'throws'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getThrowsKeyword_31()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getThrowsKeyword_31());
                     }
                     match(input,47,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getThrowsKeyword_31()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getThrowsKeyword_31());
                     }
 
                     }
@@ -10257,11 +10257,11 @@
                     // InternalOCLinEcore.g:3395:1: 'transient'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getTransientKeyword_32()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getTransientKeyword_32());
                     }
                     match(input,48,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getTransientKeyword_32()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getTransientKeyword_32());
                     }
 
                     }
@@ -10276,11 +10276,11 @@
                     // InternalOCLinEcore.g:3403:1: 'unique'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getUniqueKeyword_33()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getUniqueKeyword_33());
                     }
                     match(input,49,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getUniqueKeyword_33()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getUniqueKeyword_33());
                     }
 
                     }
@@ -10295,11 +10295,11 @@
                     // InternalOCLinEcore.g:3411:1: 'unsettable'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getUnsettableKeyword_34()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getUnsettableKeyword_34());
                     }
                     match(input,50,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getUnsettableKeyword_34()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getUnsettableKeyword_34());
                     }
 
                     }
@@ -10314,11 +10314,11 @@
                     // InternalOCLinEcore.g:3419:1: 'volatile'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralNameAccess().getVolatileKeyword_35()); 
+                       before(grammarAccess.getEnumerationLiteralNameAccess().getVolatileKeyword_35());
                     }
                     match(input,51,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralNameAccess().getVolatileKeyword_35()); 
+                       after(grammarAccess.getEnumerationLiteralNameAccess().getVolatileKeyword_35());
                     }
 
                     }
@@ -10348,7 +10348,7 @@
     public final void rule__InvariantConstraintCS__Alternatives_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3435:1: ( ( ( rule__InvariantConstraintCS__Group_3_0__0 ) ) | ( ';' ) )
             int alt3=2;
@@ -10375,7 +10375,7 @@
                     // InternalOCLinEcore.g:3437:1: ( rule__InvariantConstraintCS__Group_3_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getInvariantConstraintCSAccess().getGroup_3_0()); 
+                       before(grammarAccess.getInvariantConstraintCSAccess().getGroup_3_0());
                     }
                     // InternalOCLinEcore.g:3438:1: ( rule__InvariantConstraintCS__Group_3_0__0 )
                     // InternalOCLinEcore.g:3438:2: rule__InvariantConstraintCS__Group_3_0__0
@@ -10389,7 +10389,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getInvariantConstraintCSAccess().getGroup_3_0()); 
+                       after(grammarAccess.getInvariantConstraintCSAccess().getGroup_3_0());
                     }
 
                     }
@@ -10404,11 +10404,11 @@
                     // InternalOCLinEcore.g:3443:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_1()); 
+                       before(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_1());
                     }
                     match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_1()); 
+                       after(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_1());
                     }
 
                     }
@@ -10438,7 +10438,7 @@
     public final void rule__AnnotationCS__NameAlternatives_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3459:1: ( ( ruleUnrestrictedName ) | ( RULE_SINGLE_QUOTED_STRING ) )
             int alt4=2;
@@ -10465,7 +10465,7 @@
                     // InternalOCLinEcore.g:3461:1: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0()); 
+                       before(grammarAccess.getAnnotationCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -10473,7 +10473,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0()); 
+                       after(grammarAccess.getAnnotationCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0());
                     }
 
                     }
@@ -10488,11 +10488,11 @@
                     // InternalOCLinEcore.g:3467:1: RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); 
+                       before(grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
                     }
                     match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); 
+                       after(grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
                     }
 
                     }
@@ -10522,7 +10522,7 @@
     public final void rule__AnnotationCS__Alternatives_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3481:1: ( ( ( rule__AnnotationCS__Group_4_0__0 ) ) | ( ';' ) )
             int alt5=2;
@@ -10549,7 +10549,7 @@
                     // InternalOCLinEcore.g:3483:1: ( rule__AnnotationCS__Group_4_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationCSAccess().getGroup_4_0()); 
+                       before(grammarAccess.getAnnotationCSAccess().getGroup_4_0());
                     }
                     // InternalOCLinEcore.g:3484:1: ( rule__AnnotationCS__Group_4_0__0 )
                     // InternalOCLinEcore.g:3484:2: rule__AnnotationCS__Group_4_0__0
@@ -10563,7 +10563,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationCSAccess().getGroup_4_0()); 
+                       after(grammarAccess.getAnnotationCSAccess().getGroup_4_0());
                     }
 
                     }
@@ -10578,11 +10578,11 @@
                     // InternalOCLinEcore.g:3489:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_4_1()); 
+                       before(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_4_1());
                     }
                     match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_4_1()); 
+                       after(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_4_1());
                     }
 
                     }
@@ -10612,7 +10612,7 @@
     public final void rule__AnnotationCS__Alternatives_4_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3505: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;
@@ -10700,7 +10700,7 @@
                     // InternalOCLinEcore.g:3507:1: ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAssignment_4_0_1_0()); 
+                       before(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAssignment_4_0_1_0());
                     }
                     // InternalOCLinEcore.g:3508:1: ( rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0 )
                     // InternalOCLinEcore.g:3508:2: rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0
@@ -10714,7 +10714,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAssignment_4_0_1_0()); 
+                       after(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAssignment_4_0_1_0());
                     }
 
                     }
@@ -10729,7 +10729,7 @@
                     // InternalOCLinEcore.g:3513:1: ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationCSAccess().getOwnedContentsAssignment_4_0_1_1()); 
+                       before(grammarAccess.getAnnotationCSAccess().getOwnedContentsAssignment_4_0_1_1());
                     }
                     // InternalOCLinEcore.g:3514:1: ( rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1 )
                     // InternalOCLinEcore.g:3514:2: rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1
@@ -10743,7 +10743,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationCSAccess().getOwnedContentsAssignment_4_0_1_1()); 
+                       after(grammarAccess.getAnnotationCSAccess().getOwnedContentsAssignment_4_0_1_1());
                     }
 
                     }
@@ -10758,7 +10758,7 @@
                     // InternalOCLinEcore.g:3519:1: ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationCSAccess().getOwnedReferencesAssignment_4_0_1_2()); 
+                       before(grammarAccess.getAnnotationCSAccess().getOwnedReferencesAssignment_4_0_1_2());
                     }
                     // InternalOCLinEcore.g:3520:1: ( rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2 )
                     // InternalOCLinEcore.g:3520:2: rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2
@@ -10772,7 +10772,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationCSAccess().getOwnedReferencesAssignment_4_0_1_2()); 
+                       after(grammarAccess.getAnnotationCSAccess().getOwnedReferencesAssignment_4_0_1_2());
                     }
 
                     }
@@ -10802,7 +10802,7 @@
     public final void rule__AnnotationElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3533:1: ( ( ruleAnnotationCS ) | ( ruleDocumentationCS ) | ( ruleSysMLCS ) )
             int alt7=3;
@@ -10838,7 +10838,7 @@
                     // InternalOCLinEcore.g:3535:1: ruleAnnotationCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0()); 
+                       before(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleAnnotationCS();
@@ -10846,7 +10846,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0()); 
+                       after(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0());
                     }
 
                     }
@@ -10861,7 +10861,7 @@
                     // InternalOCLinEcore.g:3541:1: ruleDocumentationCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1()); 
+                       before(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleDocumentationCS();
@@ -10869,7 +10869,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1()); 
+                       after(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1());
                     }
 
                     }
@@ -10884,7 +10884,7 @@
                     // InternalOCLinEcore.g:3547:1: ruleSysMLCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationElementCSAccess().getSysMLCSParserRuleCall_2()); 
+                       before(grammarAccess.getAnnotationElementCSAccess().getSysMLCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleSysMLCS();
@@ -10892,7 +10892,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationElementCSAccess().getSysMLCSParserRuleCall_2()); 
+                       after(grammarAccess.getAnnotationElementCSAccess().getSysMLCSParserRuleCall_2());
                     }
 
                     }
@@ -10922,7 +10922,7 @@
     public final void rule__AttributeCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3561:1: ( ( ( rule__AttributeCS__Group_0_0__0 ) ) | ( ( rule__AttributeCS__Group_0_1__0 ) ) )
             int alt8=2;
@@ -10949,7 +10949,7 @@
                     // InternalOCLinEcore.g:3563:1: ( rule__AttributeCS__Group_0_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getGroup_0_0()); 
+                       before(grammarAccess.getAttributeCSAccess().getGroup_0_0());
                     }
                     // InternalOCLinEcore.g:3564:1: ( rule__AttributeCS__Group_0_0__0 )
                     // InternalOCLinEcore.g:3564:2: rule__AttributeCS__Group_0_0__0
@@ -10963,7 +10963,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getGroup_0_0()); 
+                       after(grammarAccess.getAttributeCSAccess().getGroup_0_0());
                     }
 
                     }
@@ -10978,7 +10978,7 @@
                     // InternalOCLinEcore.g:3569:1: ( rule__AttributeCS__Group_0_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getGroup_0_1()); 
+                       before(grammarAccess.getAttributeCSAccess().getGroup_0_1());
                     }
                     // InternalOCLinEcore.g:3570:1: ( rule__AttributeCS__Group_0_1__0 )
                     // InternalOCLinEcore.g:3570:2: rule__AttributeCS__Group_0_1__0
@@ -10992,7 +10992,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getGroup_0_1()); 
+                       after(grammarAccess.getAttributeCSAccess().getGroup_0_1());
                     }
 
                     }
@@ -11022,7 +11022,7 @@
     public final void rule__AttributeCS__Alternatives_5_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3583: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;
@@ -11123,7 +11123,7 @@
                     // InternalOCLinEcore.g:3585:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_0()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_0());
                     }
                     // InternalOCLinEcore.g:3586:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_0 )
                     // InternalOCLinEcore.g:3586:2: rule__AttributeCS__QualifiersAssignment_5_1_0_0
@@ -11137,7 +11137,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_0()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_0());
                     }
 
                     }
@@ -11152,7 +11152,7 @@
                     // InternalOCLinEcore.g:3591:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_1()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_1());
                     }
                     // InternalOCLinEcore.g:3592:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_1 )
                     // InternalOCLinEcore.g:3592:2: rule__AttributeCS__QualifiersAssignment_5_1_0_1
@@ -11166,7 +11166,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_1()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_1());
                     }
 
                     }
@@ -11181,7 +11181,7 @@
                     // InternalOCLinEcore.g:3597:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_2()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_2());
                     }
                     // InternalOCLinEcore.g:3598:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_2 )
                     // InternalOCLinEcore.g:3598:2: rule__AttributeCS__QualifiersAssignment_5_1_0_2
@@ -11195,7 +11195,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_2()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_2());
                     }
 
                     }
@@ -11210,7 +11210,7 @@
                     // InternalOCLinEcore.g:3603:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_3()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_3());
                     }
                     // InternalOCLinEcore.g:3604:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_3 )
                     // InternalOCLinEcore.g:3604:2: rule__AttributeCS__QualifiersAssignment_5_1_0_3
@@ -11224,7 +11224,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_3()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_3());
                     }
 
                     }
@@ -11239,7 +11239,7 @@
                     // InternalOCLinEcore.g:3609:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_4()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_4());
                     }
                     // InternalOCLinEcore.g:3610:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_4 )
                     // InternalOCLinEcore.g:3610:2: rule__AttributeCS__QualifiersAssignment_5_1_0_4
@@ -11253,7 +11253,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_4()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_4());
                     }
 
                     }
@@ -11268,7 +11268,7 @@
                     // InternalOCLinEcore.g:3615:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_5()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_5());
                     }
                     // InternalOCLinEcore.g:3616:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_5 )
                     // InternalOCLinEcore.g:3616:2: rule__AttributeCS__QualifiersAssignment_5_1_0_5
@@ -11282,7 +11282,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_5()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_5());
                     }
 
                     }
@@ -11297,7 +11297,7 @@
                     // InternalOCLinEcore.g:3621:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_6()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_6());
                     }
                     // InternalOCLinEcore.g:3622:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_6 )
                     // InternalOCLinEcore.g:3622:2: rule__AttributeCS__QualifiersAssignment_5_1_0_6
@@ -11311,7 +11311,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_6()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_6());
                     }
 
                     }
@@ -11326,7 +11326,7 @@
                     // InternalOCLinEcore.g:3627:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_7()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_7());
                     }
                     // InternalOCLinEcore.g:3628:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_7 )
                     // InternalOCLinEcore.g:3628:2: rule__AttributeCS__QualifiersAssignment_5_1_0_7
@@ -11340,7 +11340,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_7()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_7());
                     }
 
                     }
@@ -11355,7 +11355,7 @@
                     // InternalOCLinEcore.g:3633:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_8()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_8());
                     }
                     // InternalOCLinEcore.g:3634:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_8 )
                     // InternalOCLinEcore.g:3634:2: rule__AttributeCS__QualifiersAssignment_5_1_0_8
@@ -11369,7 +11369,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_8()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_8());
                     }
 
                     }
@@ -11384,7 +11384,7 @@
                     // InternalOCLinEcore.g:3639:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_9()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_9());
                     }
                     // InternalOCLinEcore.g:3640:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_9 )
                     // InternalOCLinEcore.g:3640:2: rule__AttributeCS__QualifiersAssignment_5_1_0_9
@@ -11398,7 +11398,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_9()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_9());
                     }
 
                     }
@@ -11413,7 +11413,7 @@
                     // InternalOCLinEcore.g:3645:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_10()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_10());
                     }
                     // InternalOCLinEcore.g:3646:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_10 )
                     // InternalOCLinEcore.g:3646:2: rule__AttributeCS__QualifiersAssignment_5_1_0_10
@@ -11427,7 +11427,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_10()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_10());
                     }
 
                     }
@@ -11442,7 +11442,7 @@
                     // InternalOCLinEcore.g:3651:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_11()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_11());
                     }
                     // InternalOCLinEcore.g:3652:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_11 )
                     // InternalOCLinEcore.g:3652:2: rule__AttributeCS__QualifiersAssignment_5_1_0_11
@@ -11456,7 +11456,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_11()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_11());
                     }
 
                     }
@@ -11471,7 +11471,7 @@
                     // InternalOCLinEcore.g:3657:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_12()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_12());
                     }
                     // InternalOCLinEcore.g:3658:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_12 )
                     // InternalOCLinEcore.g:3658:2: rule__AttributeCS__QualifiersAssignment_5_1_0_12
@@ -11485,7 +11485,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_12()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_12());
                     }
 
                     }
@@ -11500,7 +11500,7 @@
                     // InternalOCLinEcore.g:3663:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_13()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_13());
                     }
                     // InternalOCLinEcore.g:3664:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_13 )
                     // InternalOCLinEcore.g:3664:2: rule__AttributeCS__QualifiersAssignment_5_1_0_13
@@ -11514,7 +11514,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_13()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_13());
                     }
 
                     }
@@ -11529,7 +11529,7 @@
                     // InternalOCLinEcore.g:3669:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_14()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_14());
                     }
                     // InternalOCLinEcore.g:3670:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_14 )
                     // InternalOCLinEcore.g:3670:2: rule__AttributeCS__QualifiersAssignment_5_1_0_14
@@ -11543,7 +11543,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_14()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_14());
                     }
 
                     }
@@ -11558,7 +11558,7 @@
                     // InternalOCLinEcore.g:3675:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_15()); 
+                       before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_15());
                     }
                     // InternalOCLinEcore.g:3676:1: ( rule__AttributeCS__QualifiersAssignment_5_1_0_15 )
                     // InternalOCLinEcore.g:3676:2: rule__AttributeCS__QualifiersAssignment_5_1_0_15
@@ -11572,7 +11572,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_15()); 
+                       after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_5_1_0_15());
                     }
 
                     }
@@ -11602,7 +11602,7 @@
     public final void rule__AttributeCS__Alternatives_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3689:1: ( ( ( rule__AttributeCS__Group_6_0__0 ) ) | ( ';' ) )
             int alt10=2;
@@ -11629,7 +11629,7 @@
                     // InternalOCLinEcore.g:3691:1: ( rule__AttributeCS__Group_6_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getGroup_6_0()); 
+                       before(grammarAccess.getAttributeCSAccess().getGroup_6_0());
                     }
                     // InternalOCLinEcore.g:3692:1: ( rule__AttributeCS__Group_6_0__0 )
                     // InternalOCLinEcore.g:3692:2: rule__AttributeCS__Group_6_0__0
@@ -11643,7 +11643,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getGroup_6_0()); 
+                       after(grammarAccess.getAttributeCSAccess().getGroup_6_0());
                     }
 
                     }
@@ -11658,11 +11658,11 @@
                     // InternalOCLinEcore.g:3697:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_1()); 
+                       before(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_1());
                     }
                     match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_1()); 
+                       after(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_1());
                     }
 
                     }
@@ -11692,7 +11692,7 @@
     public final void rule__AttributeCS__Alternatives_6_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3713: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;
@@ -11730,7 +11730,7 @@
                     // InternalOCLinEcore.g:3715:1: ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAssignment_6_0_1_0()); 
+                       before(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAssignment_6_0_1_0());
                     }
                     // InternalOCLinEcore.g:3716:1: ( rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0 )
                     // InternalOCLinEcore.g:3716:2: rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0
@@ -11744,7 +11744,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAssignment_6_0_1_0()); 
+                       after(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAssignment_6_0_1_0());
                     }
 
                     }
@@ -11759,7 +11759,7 @@
                     // InternalOCLinEcore.g:3721:1: ( rule__AttributeCS__Group_6_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getGroup_6_0_1_1()); 
+                       before(grammarAccess.getAttributeCSAccess().getGroup_6_0_1_1());
                     }
                     // InternalOCLinEcore.g:3722:1: ( rule__AttributeCS__Group_6_0_1_1__0 )
                     // InternalOCLinEcore.g:3722:2: rule__AttributeCS__Group_6_0_1_1__0
@@ -11773,7 +11773,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getGroup_6_0_1_1()); 
+                       after(grammarAccess.getAttributeCSAccess().getGroup_6_0_1_1());
                     }
 
                     }
@@ -11788,7 +11788,7 @@
                     // InternalOCLinEcore.g:3727:1: ( rule__AttributeCS__Group_6_0_1_2__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAttributeCSAccess().getGroup_6_0_1_2()); 
+                       before(grammarAccess.getAttributeCSAccess().getGroup_6_0_1_2());
                     }
                     // InternalOCLinEcore.g:3728:1: ( rule__AttributeCS__Group_6_0_1_2__0 )
                     // InternalOCLinEcore.g:3728:2: rule__AttributeCS__Group_6_0_1_2__0
@@ -11802,7 +11802,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAttributeCSAccess().getGroup_6_0_1_2()); 
+                       after(grammarAccess.getAttributeCSAccess().getGroup_6_0_1_2());
                     }
 
                     }
@@ -11832,7 +11832,7 @@
     public final void rule__ClassCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3741:1: ( ( ruleStructuredClassCS ) | ( ruleDataTypeCS ) | ( ruleEnumerationCS ) )
             int alt12=3;
@@ -11870,7 +11870,7 @@
                     // InternalOCLinEcore.g:3743:1: ruleStructuredClassCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getClassCSAccess().getStructuredClassCSParserRuleCall_0()); 
+                       before(grammarAccess.getClassCSAccess().getStructuredClassCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleStructuredClassCS();
@@ -11878,7 +11878,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getClassCSAccess().getStructuredClassCSParserRuleCall_0()); 
+                       after(grammarAccess.getClassCSAccess().getStructuredClassCSParserRuleCall_0());
                     }
 
                     }
@@ -11893,7 +11893,7 @@
                     // InternalOCLinEcore.g:3749:1: ruleDataTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getClassCSAccess().getDataTypeCSParserRuleCall_1()); 
+                       before(grammarAccess.getClassCSAccess().getDataTypeCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleDataTypeCS();
@@ -11901,7 +11901,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getClassCSAccess().getDataTypeCSParserRuleCall_1()); 
+                       after(grammarAccess.getClassCSAccess().getDataTypeCSParserRuleCall_1());
                     }
 
                     }
@@ -11916,7 +11916,7 @@
                     // InternalOCLinEcore.g:3755:1: ruleEnumerationCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getClassCSAccess().getEnumerationCSParserRuleCall_2()); 
+                       before(grammarAccess.getClassCSAccess().getEnumerationCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleEnumerationCS();
@@ -11924,7 +11924,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getClassCSAccess().getEnumerationCSParserRuleCall_2()); 
+                       after(grammarAccess.getClassCSAccess().getEnumerationCSParserRuleCall_2());
                     }
 
                     }
@@ -11954,7 +11954,7 @@
     public final void rule__DataTypeCS__Alternatives_5_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3769:1: ( ( ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 ) ) | ( '!serializable' ) )
             int alt13=2;
@@ -11981,7 +11981,7 @@
                     // InternalOCLinEcore.g:3771:1: ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDataTypeCSAccess().getIsSerializableAssignment_5_1_0()); 
+                       before(grammarAccess.getDataTypeCSAccess().getIsSerializableAssignment_5_1_0());
                     }
                     // InternalOCLinEcore.g:3772:1: ( rule__DataTypeCS__IsSerializableAssignment_5_1_0 )
                     // InternalOCLinEcore.g:3772:2: rule__DataTypeCS__IsSerializableAssignment_5_1_0
@@ -11995,7 +11995,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDataTypeCSAccess().getIsSerializableAssignment_5_1_0()); 
+                       after(grammarAccess.getDataTypeCSAccess().getIsSerializableAssignment_5_1_0());
                     }
 
                     }
@@ -12010,11 +12010,11 @@
                     // InternalOCLinEcore.g:3777:1: '!serializable'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDataTypeCSAccess().getSerializableKeyword_5_1_1()); 
+                       before(grammarAccess.getDataTypeCSAccess().getSerializableKeyword_5_1_1());
                     }
                     match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDataTypeCSAccess().getSerializableKeyword_5_1_1()); 
+                       after(grammarAccess.getDataTypeCSAccess().getSerializableKeyword_5_1_1());
                     }
 
                     }
@@ -12044,7 +12044,7 @@
     public final void rule__DataTypeCS__Alternatives_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3793:1: ( ( ( rule__DataTypeCS__Group_6_0__0 ) ) | ( ';' ) )
             int alt14=2;
@@ -12071,7 +12071,7 @@
                     // InternalOCLinEcore.g:3795:1: ( rule__DataTypeCS__Group_6_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDataTypeCSAccess().getGroup_6_0()); 
+                       before(grammarAccess.getDataTypeCSAccess().getGroup_6_0());
                     }
                     // InternalOCLinEcore.g:3796:1: ( rule__DataTypeCS__Group_6_0__0 )
                     // InternalOCLinEcore.g:3796:2: rule__DataTypeCS__Group_6_0__0
@@ -12085,7 +12085,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDataTypeCSAccess().getGroup_6_0()); 
+                       after(grammarAccess.getDataTypeCSAccess().getGroup_6_0());
                     }
 
                     }
@@ -12100,11 +12100,11 @@
                     // InternalOCLinEcore.g:3801:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDataTypeCSAccess().getSemicolonKeyword_6_1()); 
+                       before(grammarAccess.getDataTypeCSAccess().getSemicolonKeyword_6_1());
                     }
                     match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDataTypeCSAccess().getSemicolonKeyword_6_1()); 
+                       after(grammarAccess.getDataTypeCSAccess().getSemicolonKeyword_6_1());
                     }
 
                     }
@@ -12134,7 +12134,7 @@
     public final void rule__DataTypeCS__Alternatives_6_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3817:1: ( ( ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 ) ) | ( ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 ) ) )
             int alt15=2;
@@ -12161,7 +12161,7 @@
                     // InternalOCLinEcore.g:3819:1: ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAssignment_6_0_1_0()); 
+                       before(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAssignment_6_0_1_0());
                     }
                     // InternalOCLinEcore.g:3820:1: ( rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0 )
                     // InternalOCLinEcore.g:3820:2: rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0
@@ -12175,7 +12175,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAssignment_6_0_1_0()); 
+                       after(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAssignment_6_0_1_0());
                     }
 
                     }
@@ -12190,7 +12190,7 @@
                     // InternalOCLinEcore.g:3825:1: ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsAssignment_6_0_1_1()); 
+                       before(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsAssignment_6_0_1_1());
                     }
                     // InternalOCLinEcore.g:3826:1: ( rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1 )
                     // InternalOCLinEcore.g:3826:2: rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1
@@ -12204,7 +12204,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsAssignment_6_0_1_1()); 
+                       after(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsAssignment_6_0_1_1());
                     }
 
                     }
@@ -12234,7 +12234,7 @@
     public final void rule__DetailCS__NameAlternatives_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3839:1: ( ( ruleUnrestrictedName ) | ( RULE_SINGLE_QUOTED_STRING ) )
             int alt16=2;
@@ -12261,7 +12261,7 @@
                     // InternalOCLinEcore.g:3841:1: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDetailCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0()); 
+                       before(grammarAccess.getDetailCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -12269,7 +12269,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDetailCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0()); 
+                       after(grammarAccess.getDetailCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
                     }
 
                     }
@@ -12284,11 +12284,11 @@
                     // InternalOCLinEcore.g:3847:1: RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1()); 
+                       before(grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1());
                     }
                     match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1()); 
+                       after(grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1());
                     }
 
                     }
@@ -12318,7 +12318,7 @@
     public final void rule__DetailCS__ValuesAlternatives_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3861:1: ( ( RULE_SINGLE_QUOTED_STRING ) | ( RULE_ML_SINGLE_QUOTED_STRING ) )
             int alt17=2;
@@ -12345,11 +12345,11 @@
                     // InternalOCLinEcore.g:3863:1: RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0()); 
+                       before(grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0());
                     }
                     match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0()); 
+                       after(grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0());
                     }
 
                     }
@@ -12364,11 +12364,11 @@
                     // InternalOCLinEcore.g:3869:1: RULE_ML_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); 
+                       before(grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
                     }
                     match(input,RULE_ML_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); 
+                       after(grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
                     }
 
                     }
@@ -12398,7 +12398,7 @@
     public final void rule__EnumerationCS__Alternatives_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3883:1: ( ( ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 ) ) | ( '!serializable' ) )
             int alt18=2;
@@ -12425,7 +12425,7 @@
                     // InternalOCLinEcore.g:3885:1: ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationCSAccess().getIsSerializableAssignment_4_1_0()); 
+                       before(grammarAccess.getEnumerationCSAccess().getIsSerializableAssignment_4_1_0());
                     }
                     // InternalOCLinEcore.g:3886:1: ( rule__EnumerationCS__IsSerializableAssignment_4_1_0 )
                     // InternalOCLinEcore.g:3886:2: rule__EnumerationCS__IsSerializableAssignment_4_1_0
@@ -12439,7 +12439,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationCSAccess().getIsSerializableAssignment_4_1_0()); 
+                       after(grammarAccess.getEnumerationCSAccess().getIsSerializableAssignment_4_1_0());
                     }
 
                     }
@@ -12454,11 +12454,11 @@
                     // InternalOCLinEcore.g:3891:1: '!serializable'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationCSAccess().getSerializableKeyword_4_1_1()); 
+                       before(grammarAccess.getEnumerationCSAccess().getSerializableKeyword_4_1_1());
                     }
                     match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationCSAccess().getSerializableKeyword_4_1_1()); 
+                       after(grammarAccess.getEnumerationCSAccess().getSerializableKeyword_4_1_1());
                     }
 
                     }
@@ -12488,7 +12488,7 @@
     public final void rule__EnumerationCS__Alternatives_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3907:1: ( ( ( rule__EnumerationCS__Group_5_0__0 ) ) | ( ';' ) )
             int alt19=2;
@@ -12515,7 +12515,7 @@
                     // InternalOCLinEcore.g:3909:1: ( rule__EnumerationCS__Group_5_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationCSAccess().getGroup_5_0()); 
+                       before(grammarAccess.getEnumerationCSAccess().getGroup_5_0());
                     }
                     // InternalOCLinEcore.g:3910:1: ( rule__EnumerationCS__Group_5_0__0 )
                     // InternalOCLinEcore.g:3910:2: rule__EnumerationCS__Group_5_0__0
@@ -12529,7 +12529,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationCSAccess().getGroup_5_0()); 
+                       after(grammarAccess.getEnumerationCSAccess().getGroup_5_0());
                     }
 
                     }
@@ -12544,11 +12544,11 @@
                     // InternalOCLinEcore.g:3915:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationCSAccess().getSemicolonKeyword_5_1()); 
+                       before(grammarAccess.getEnumerationCSAccess().getSemicolonKeyword_5_1());
                     }
                     match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationCSAccess().getSemicolonKeyword_5_1()); 
+                       after(grammarAccess.getEnumerationCSAccess().getSemicolonKeyword_5_1());
                     }
 
                     }
@@ -12578,7 +12578,7 @@
     public final void rule__EnumerationCS__Alternatives_5_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3931: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;
@@ -12671,7 +12671,7 @@
                     // InternalOCLinEcore.g:3933:1: ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAssignment_5_0_1_0()); 
+                       before(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAssignment_5_0_1_0());
                     }
                     // InternalOCLinEcore.g:3934:1: ( rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0 )
                     // InternalOCLinEcore.g:3934:2: rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0
@@ -12685,7 +12685,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAssignment_5_0_1_0()); 
+                       after(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAssignment_5_0_1_0());
                     }
 
                     }
@@ -12700,7 +12700,7 @@
                     // InternalOCLinEcore.g:3939:1: ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsAssignment_5_0_1_1()); 
+                       before(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsAssignment_5_0_1_1());
                     }
                     // InternalOCLinEcore.g:3940:1: ( rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1 )
                     // InternalOCLinEcore.g:3940:2: rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1
@@ -12714,7 +12714,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsAssignment_5_0_1_1()); 
+                       after(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsAssignment_5_0_1_1());
                     }
 
                     }
@@ -12729,7 +12729,7 @@
                     // InternalOCLinEcore.g:3945:1: ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsAssignment_5_0_1_2()); 
+                       before(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsAssignment_5_0_1_2());
                     }
                     // InternalOCLinEcore.g:3946:1: ( rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2 )
                     // InternalOCLinEcore.g:3946:2: rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2
@@ -12743,7 +12743,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsAssignment_5_0_1_2()); 
+                       after(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsAssignment_5_0_1_2());
                     }
 
                     }
@@ -12773,7 +12773,7 @@
     public final void rule__EnumerationLiteralCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3959:1: ( ( ( rule__EnumerationLiteralCS__Group_0_0__0 ) ) | ( ( rule__EnumerationLiteralCS__NameAssignment_0_1 ) ) )
             int alt21=2;
@@ -12800,7 +12800,7 @@
                     // InternalOCLinEcore.g:3961:1: ( rule__EnumerationLiteralCS__Group_0_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralCSAccess().getGroup_0_0()); 
+                       before(grammarAccess.getEnumerationLiteralCSAccess().getGroup_0_0());
                     }
                     // InternalOCLinEcore.g:3962:1: ( rule__EnumerationLiteralCS__Group_0_0__0 )
                     // InternalOCLinEcore.g:3962:2: rule__EnumerationLiteralCS__Group_0_0__0
@@ -12814,7 +12814,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralCSAccess().getGroup_0_0()); 
+                       after(grammarAccess.getEnumerationLiteralCSAccess().getGroup_0_0());
                     }
 
                     }
@@ -12829,7 +12829,7 @@
                     // InternalOCLinEcore.g:3967:1: ( rule__EnumerationLiteralCS__NameAssignment_0_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralCSAccess().getNameAssignment_0_1()); 
+                       before(grammarAccess.getEnumerationLiteralCSAccess().getNameAssignment_0_1());
                     }
                     // InternalOCLinEcore.g:3968:1: ( rule__EnumerationLiteralCS__NameAssignment_0_1 )
                     // InternalOCLinEcore.g:3968:2: rule__EnumerationLiteralCS__NameAssignment_0_1
@@ -12843,7 +12843,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralCSAccess().getNameAssignment_0_1()); 
+                       after(grammarAccess.getEnumerationLiteralCSAccess().getNameAssignment_0_1());
                     }
 
                     }
@@ -12873,7 +12873,7 @@
     public final void rule__EnumerationLiteralCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:3981:1: ( ( ( rule__EnumerationLiteralCS__Group_2_0__0 ) ) | ( ';' ) )
             int alt22=2;
@@ -12900,7 +12900,7 @@
                     // InternalOCLinEcore.g:3983:1: ( rule__EnumerationLiteralCS__Group_2_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralCSAccess().getGroup_2_0()); 
+                       before(grammarAccess.getEnumerationLiteralCSAccess().getGroup_2_0());
                     }
                     // InternalOCLinEcore.g:3984:1: ( rule__EnumerationLiteralCS__Group_2_0__0 )
                     // InternalOCLinEcore.g:3984:2: rule__EnumerationLiteralCS__Group_2_0__0
@@ -12914,7 +12914,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralCSAccess().getGroup_2_0()); 
+                       after(grammarAccess.getEnumerationLiteralCSAccess().getGroup_2_0());
                     }
 
                     }
@@ -12929,11 +12929,11 @@
                     // InternalOCLinEcore.g:3989:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEnumerationLiteralCSAccess().getSemicolonKeyword_2_1()); 
+                       before(grammarAccess.getEnumerationLiteralCSAccess().getSemicolonKeyword_2_1());
                     }
                     match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEnumerationLiteralCSAccess().getSemicolonKeyword_2_1()); 
+                       after(grammarAccess.getEnumerationLiteralCSAccess().getSemicolonKeyword_2_1());
                     }
 
                     }
@@ -12963,7 +12963,7 @@
     public final void rule__ImportCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4005:1: ( ( 'import' ) | ( 'library' ) )
             int alt23=2;
@@ -12990,11 +12990,11 @@
                     // InternalOCLinEcore.g:4007:1: 'import'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getImportCSAccess().getImportKeyword_0_0()); 
+                       before(grammarAccess.getImportCSAccess().getImportKeyword_0_0());
                     }
                     match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getImportCSAccess().getImportKeyword_0_0()); 
+                       after(grammarAccess.getImportCSAccess().getImportKeyword_0_0());
                     }
 
                     }
@@ -13009,11 +13009,11 @@
                     // InternalOCLinEcore.g:4015:1: 'library'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getImportCSAccess().getLibraryKeyword_0_1()); 
+                       before(grammarAccess.getImportCSAccess().getLibraryKeyword_0_1());
                     }
                     match(input,34,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getImportCSAccess().getLibraryKeyword_0_1()); 
+                       after(grammarAccess.getImportCSAccess().getLibraryKeyword_0_1());
                     }
 
                     }
@@ -13043,7 +13043,7 @@
     public final void rule__ModelElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4031:1: ( ( ruleClassCS ) | ( ruleEnumerationLiteralCS ) | ( ruleOperationCS ) | ( rulePackageCS ) | ( ruleStructuralFeatureCS ) )
             int alt24=5;
@@ -13056,7 +13056,7 @@
                     // InternalOCLinEcore.g:4033:1: ruleClassCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getModelElementCSAccess().getClassCSParserRuleCall_0()); 
+                       before(grammarAccess.getModelElementCSAccess().getClassCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleClassCS();
@@ -13064,7 +13064,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getModelElementCSAccess().getClassCSParserRuleCall_0()); 
+                       after(grammarAccess.getModelElementCSAccess().getClassCSParserRuleCall_0());
                     }
 
                     }
@@ -13079,7 +13079,7 @@
                     // InternalOCLinEcore.g:4039:1: ruleEnumerationLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getModelElementCSAccess().getEnumerationLiteralCSParserRuleCall_1()); 
+                       before(grammarAccess.getModelElementCSAccess().getEnumerationLiteralCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleEnumerationLiteralCS();
@@ -13087,7 +13087,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getModelElementCSAccess().getEnumerationLiteralCSParserRuleCall_1()); 
+                       after(grammarAccess.getModelElementCSAccess().getEnumerationLiteralCSParserRuleCall_1());
                     }
 
                     }
@@ -13102,7 +13102,7 @@
                     // InternalOCLinEcore.g:4045:1: ruleOperationCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getModelElementCSAccess().getOperationCSParserRuleCall_2()); 
+                       before(grammarAccess.getModelElementCSAccess().getOperationCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleOperationCS();
@@ -13110,7 +13110,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getModelElementCSAccess().getOperationCSParserRuleCall_2()); 
+                       after(grammarAccess.getModelElementCSAccess().getOperationCSParserRuleCall_2());
                     }
 
                     }
@@ -13125,7 +13125,7 @@
                     // InternalOCLinEcore.g:4051:1: rulePackageCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getModelElementCSAccess().getPackageCSParserRuleCall_3()); 
+                       before(grammarAccess.getModelElementCSAccess().getPackageCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePackageCS();
@@ -13133,7 +13133,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getModelElementCSAccess().getPackageCSParserRuleCall_3()); 
+                       after(grammarAccess.getModelElementCSAccess().getPackageCSParserRuleCall_3());
                     }
 
                     }
@@ -13148,7 +13148,7 @@
                     // InternalOCLinEcore.g:4057:1: ruleStructuralFeatureCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getModelElementCSAccess().getStructuralFeatureCSParserRuleCall_4()); 
+                       before(grammarAccess.getModelElementCSAccess().getStructuralFeatureCSParserRuleCall_4());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleStructuralFeatureCS();
@@ -13156,7 +13156,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getModelElementCSAccess().getStructuralFeatureCSParserRuleCall_4()); 
+                       after(grammarAccess.getModelElementCSAccess().getStructuralFeatureCSParserRuleCall_4());
                     }
 
                     }
@@ -13186,7 +13186,7 @@
     public final void rule__OperationCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4071:1: ( ( ( rule__OperationCS__Group_0_0__0 ) ) | ( ( rule__OperationCS__Group_0_1__0 ) ) )
             int alt25=2;
@@ -13213,7 +13213,7 @@
                     // InternalOCLinEcore.g:4073:1: ( rule__OperationCS__Group_0_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getGroup_0_0()); 
+                       before(grammarAccess.getOperationCSAccess().getGroup_0_0());
                     }
                     // InternalOCLinEcore.g:4074:1: ( rule__OperationCS__Group_0_0__0 )
                     // InternalOCLinEcore.g:4074:2: rule__OperationCS__Group_0_0__0
@@ -13227,7 +13227,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getGroup_0_0()); 
+                       after(grammarAccess.getOperationCSAccess().getGroup_0_0());
                     }
 
                     }
@@ -13242,7 +13242,7 @@
                     // InternalOCLinEcore.g:4079:1: ( rule__OperationCS__Group_0_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getGroup_0_1()); 
+                       before(grammarAccess.getOperationCSAccess().getGroup_0_1());
                     }
                     // InternalOCLinEcore.g:4080:1: ( rule__OperationCS__Group_0_1__0 )
                     // InternalOCLinEcore.g:4080:2: rule__OperationCS__Group_0_1__0
@@ -13256,7 +13256,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getGroup_0_1()); 
+                       after(grammarAccess.getOperationCSAccess().getGroup_0_1());
                     }
 
                     }
@@ -13286,7 +13286,7 @@
     public final void rule__OperationCS__Alternatives_9_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4093: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;
@@ -13347,7 +13347,7 @@
                     // InternalOCLinEcore.g:4095:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_0()); 
+                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_0());
                     }
                     // InternalOCLinEcore.g:4096:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_0 )
                     // InternalOCLinEcore.g:4096:2: rule__OperationCS__QualifiersAssignment_9_1_0_0
@@ -13361,7 +13361,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_0()); 
+                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_0());
                     }
 
                     }
@@ -13376,7 +13376,7 @@
                     // InternalOCLinEcore.g:4101:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_1()); 
+                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_1());
                     }
                     // InternalOCLinEcore.g:4102:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_1 )
                     // InternalOCLinEcore.g:4102:2: rule__OperationCS__QualifiersAssignment_9_1_0_1
@@ -13390,7 +13390,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_1()); 
+                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_1());
                     }
 
                     }
@@ -13405,7 +13405,7 @@
                     // InternalOCLinEcore.g:4107:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_2()); 
+                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_2());
                     }
                     // InternalOCLinEcore.g:4108:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_2 )
                     // InternalOCLinEcore.g:4108:2: rule__OperationCS__QualifiersAssignment_9_1_0_2
@@ -13419,7 +13419,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_2()); 
+                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_2());
                     }
 
                     }
@@ -13434,7 +13434,7 @@
                     // InternalOCLinEcore.g:4113:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_3 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_3()); 
+                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_3());
                     }
                     // InternalOCLinEcore.g:4114:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_3 )
                     // InternalOCLinEcore.g:4114:2: rule__OperationCS__QualifiersAssignment_9_1_0_3
@@ -13448,7 +13448,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_3()); 
+                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_3());
                     }
 
                     }
@@ -13463,7 +13463,7 @@
                     // InternalOCLinEcore.g:4119:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_4 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_4()); 
+                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_4());
                     }
                     // InternalOCLinEcore.g:4120:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_4 )
                     // InternalOCLinEcore.g:4120:2: rule__OperationCS__QualifiersAssignment_9_1_0_4
@@ -13477,7 +13477,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_4()); 
+                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_4());
                     }
 
                     }
@@ -13492,7 +13492,7 @@
                     // InternalOCLinEcore.g:4125:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_5 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_5()); 
+                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_5());
                     }
                     // InternalOCLinEcore.g:4126:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_5 )
                     // InternalOCLinEcore.g:4126:2: rule__OperationCS__QualifiersAssignment_9_1_0_5
@@ -13506,7 +13506,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_5()); 
+                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_5());
                     }
 
                     }
@@ -13521,7 +13521,7 @@
                     // InternalOCLinEcore.g:4131:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_6 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_6()); 
+                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_6());
                     }
                     // InternalOCLinEcore.g:4132:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_6 )
                     // InternalOCLinEcore.g:4132:2: rule__OperationCS__QualifiersAssignment_9_1_0_6
@@ -13535,7 +13535,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_6()); 
+                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_6());
                     }
 
                     }
@@ -13550,7 +13550,7 @@
                     // InternalOCLinEcore.g:4137:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_7 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_7()); 
+                       before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_7());
                     }
                     // InternalOCLinEcore.g:4138:1: ( rule__OperationCS__QualifiersAssignment_9_1_0_7 )
                     // InternalOCLinEcore.g:4138:2: rule__OperationCS__QualifiersAssignment_9_1_0_7
@@ -13564,7 +13564,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_7()); 
+                       after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_9_1_0_7());
                     }
 
                     }
@@ -13594,7 +13594,7 @@
     public final void rule__OperationCS__Alternatives_10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4151:1: ( ( ( rule__OperationCS__Group_10_0__0 ) ) | ( ';' ) )
             int alt27=2;
@@ -13621,7 +13621,7 @@
                     // InternalOCLinEcore.g:4153:1: ( rule__OperationCS__Group_10_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getGroup_10_0()); 
+                       before(grammarAccess.getOperationCSAccess().getGroup_10_0());
                     }
                     // InternalOCLinEcore.g:4154:1: ( rule__OperationCS__Group_10_0__0 )
                     // InternalOCLinEcore.g:4154:2: rule__OperationCS__Group_10_0__0
@@ -13635,7 +13635,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getGroup_10_0()); 
+                       after(grammarAccess.getOperationCSAccess().getGroup_10_0());
                     }
 
                     }
@@ -13650,11 +13650,11 @@
                     // InternalOCLinEcore.g:4159:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_1()); 
+                       before(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_1());
                     }
                     match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_1()); 
+                       after(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_1());
                     }
 
                     }
@@ -13684,7 +13684,7 @@
     public final void rule__OperationCS__Alternatives_10_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4175: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;
@@ -13727,7 +13727,7 @@
                     // InternalOCLinEcore.g:4177:1: ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAssignment_10_0_1_0()); 
+                       before(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAssignment_10_0_1_0());
                     }
                     // InternalOCLinEcore.g:4178:1: ( rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0 )
                     // InternalOCLinEcore.g:4178:2: rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0
@@ -13741,7 +13741,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAssignment_10_0_1_0()); 
+                       after(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAssignment_10_0_1_0());
                     }
 
                     }
@@ -13756,7 +13756,7 @@
                     // InternalOCLinEcore.g:4183:1: ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getOwnedPreconditionsAssignment_10_0_1_1()); 
+                       before(grammarAccess.getOperationCSAccess().getOwnedPreconditionsAssignment_10_0_1_1());
                     }
                     // InternalOCLinEcore.g:4184:1: ( rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1 )
                     // InternalOCLinEcore.g:4184:2: rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1
@@ -13770,7 +13770,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getOwnedPreconditionsAssignment_10_0_1_1()); 
+                       after(grammarAccess.getOperationCSAccess().getOwnedPreconditionsAssignment_10_0_1_1());
                     }
 
                     }
@@ -13785,7 +13785,7 @@
                     // InternalOCLinEcore.g:4189:1: ( rule__OperationCS__Group_10_0_1_2__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getGroup_10_0_1_2()); 
+                       before(grammarAccess.getOperationCSAccess().getGroup_10_0_1_2());
                     }
                     // InternalOCLinEcore.g:4190:1: ( rule__OperationCS__Group_10_0_1_2__0 )
                     // InternalOCLinEcore.g:4190:2: rule__OperationCS__Group_10_0_1_2__0
@@ -13799,7 +13799,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getGroup_10_0_1_2()); 
+                       after(grammarAccess.getOperationCSAccess().getGroup_10_0_1_2());
                     }
 
                     }
@@ -13814,7 +13814,7 @@
                     // InternalOCLinEcore.g:4195:1: ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getOwnedPostconditionsAssignment_10_0_1_3()); 
+                       before(grammarAccess.getOperationCSAccess().getOwnedPostconditionsAssignment_10_0_1_3());
                     }
                     // InternalOCLinEcore.g:4196:1: ( rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3 )
                     // InternalOCLinEcore.g:4196:2: rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3
@@ -13828,7 +13828,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getOwnedPostconditionsAssignment_10_0_1_3()); 
+                       after(grammarAccess.getOperationCSAccess().getOwnedPostconditionsAssignment_10_0_1_3());
                     }
 
                     }
@@ -13858,7 +13858,7 @@
     public final void rule__PackageCS__Alternatives_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4209:1: ( ( ( rule__PackageCS__Group_4_0__0 ) ) | ( ';' ) )
             int alt29=2;
@@ -13885,7 +13885,7 @@
                     // InternalOCLinEcore.g:4211:1: ( rule__PackageCS__Group_4_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPackageCSAccess().getGroup_4_0()); 
+                       before(grammarAccess.getPackageCSAccess().getGroup_4_0());
                     }
                     // InternalOCLinEcore.g:4212:1: ( rule__PackageCS__Group_4_0__0 )
                     // InternalOCLinEcore.g:4212:2: rule__PackageCS__Group_4_0__0
@@ -13899,7 +13899,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPackageCSAccess().getGroup_4_0()); 
+                       after(grammarAccess.getPackageCSAccess().getGroup_4_0());
                     }
 
                     }
@@ -13914,11 +13914,11 @@
                     // InternalOCLinEcore.g:4217:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPackageCSAccess().getSemicolonKeyword_4_1()); 
+                       before(grammarAccess.getPackageCSAccess().getSemicolonKeyword_4_1());
                     }
                     match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPackageCSAccess().getSemicolonKeyword_4_1()); 
+                       after(grammarAccess.getPackageCSAccess().getSemicolonKeyword_4_1());
                     }
 
                     }
@@ -13948,7 +13948,7 @@
     public final void rule__PackageCS__Alternatives_4_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4233: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;
@@ -13990,7 +13990,7 @@
                     // InternalOCLinEcore.g:4235:1: ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAssignment_4_0_1_0()); 
+                       before(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAssignment_4_0_1_0());
                     }
                     // InternalOCLinEcore.g:4236:1: ( rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0 )
                     // InternalOCLinEcore.g:4236:2: rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0
@@ -14004,7 +14004,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAssignment_4_0_1_0()); 
+                       after(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAssignment_4_0_1_0());
                     }
 
                     }
@@ -14019,7 +14019,7 @@
                     // InternalOCLinEcore.g:4241:1: ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPackageCSAccess().getOwnedPackagesAssignment_4_0_1_1()); 
+                       before(grammarAccess.getPackageCSAccess().getOwnedPackagesAssignment_4_0_1_1());
                     }
                     // InternalOCLinEcore.g:4242:1: ( rule__PackageCS__OwnedPackagesAssignment_4_0_1_1 )
                     // InternalOCLinEcore.g:4242:2: rule__PackageCS__OwnedPackagesAssignment_4_0_1_1
@@ -14033,7 +14033,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPackageCSAccess().getOwnedPackagesAssignment_4_0_1_1()); 
+                       after(grammarAccess.getPackageCSAccess().getOwnedPackagesAssignment_4_0_1_1());
                     }
 
                     }
@@ -14048,7 +14048,7 @@
                     // InternalOCLinEcore.g:4247:1: ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPackageCSAccess().getOwnedClassesAssignment_4_0_1_2()); 
+                       before(grammarAccess.getPackageCSAccess().getOwnedClassesAssignment_4_0_1_2());
                     }
                     // InternalOCLinEcore.g:4248:1: ( rule__PackageCS__OwnedClassesAssignment_4_0_1_2 )
                     // InternalOCLinEcore.g:4248:2: rule__PackageCS__OwnedClassesAssignment_4_0_1_2
@@ -14062,7 +14062,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPackageCSAccess().getOwnedClassesAssignment_4_0_1_2()); 
+                       after(grammarAccess.getPackageCSAccess().getOwnedClassesAssignment_4_0_1_2());
                     }
 
                     }
@@ -14092,7 +14092,7 @@
     public final void rule__ParameterCS__Alternatives_2_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4261: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;
@@ -14133,7 +14133,7 @@
                     // InternalOCLinEcore.g:4263:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_0()); 
+                       before(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_0());
                     }
                     // InternalOCLinEcore.g:4264:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_0 )
                     // InternalOCLinEcore.g:4264:2: rule__ParameterCS__QualifiersAssignment_2_1_0_0
@@ -14147,7 +14147,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_0()); 
+                       after(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_0());
                     }
 
                     }
@@ -14162,7 +14162,7 @@
                     // InternalOCLinEcore.g:4269:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_1()); 
+                       before(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_1());
                     }
                     // InternalOCLinEcore.g:4270:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_1 )
                     // InternalOCLinEcore.g:4270:2: rule__ParameterCS__QualifiersAssignment_2_1_0_1
@@ -14176,7 +14176,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_1()); 
+                       after(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_1());
                     }
 
                     }
@@ -14191,7 +14191,7 @@
                     // InternalOCLinEcore.g:4275:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_2()); 
+                       before(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_2());
                     }
                     // InternalOCLinEcore.g:4276:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_2 )
                     // InternalOCLinEcore.g:4276:2: rule__ParameterCS__QualifiersAssignment_2_1_0_2
@@ -14205,7 +14205,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_2()); 
+                       after(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_2());
                     }
 
                     }
@@ -14220,7 +14220,7 @@
                     // InternalOCLinEcore.g:4281:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_3()); 
+                       before(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_3());
                     }
                     // InternalOCLinEcore.g:4282:1: ( rule__ParameterCS__QualifiersAssignment_2_1_0_3 )
                     // InternalOCLinEcore.g:4282:2: rule__ParameterCS__QualifiersAssignment_2_1_0_3
@@ -14234,7 +14234,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_3()); 
+                       after(grammarAccess.getParameterCSAccess().getQualifiersAssignment_2_1_0_3());
                     }
 
                     }
@@ -14264,7 +14264,7 @@
     public final void rule__ReferenceCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4295:1: ( ( ( rule__ReferenceCS__Group_0_0__0 ) ) | ( ( rule__ReferenceCS__Group_0_1__0 ) ) )
             int alt32=2;
@@ -14291,7 +14291,7 @@
                     // InternalOCLinEcore.g:4297:1: ( rule__ReferenceCS__Group_0_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getGroup_0_0()); 
+                       before(grammarAccess.getReferenceCSAccess().getGroup_0_0());
                     }
                     // InternalOCLinEcore.g:4298:1: ( rule__ReferenceCS__Group_0_0__0 )
                     // InternalOCLinEcore.g:4298:2: rule__ReferenceCS__Group_0_0__0
@@ -14305,7 +14305,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getGroup_0_0()); 
+                       after(grammarAccess.getReferenceCSAccess().getGroup_0_0());
                     }
 
                     }
@@ -14320,7 +14320,7 @@
                     // InternalOCLinEcore.g:4303:1: ( rule__ReferenceCS__Group_0_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getGroup_0_1()); 
+                       before(grammarAccess.getReferenceCSAccess().getGroup_0_1());
                     }
                     // InternalOCLinEcore.g:4304:1: ( rule__ReferenceCS__Group_0_1__0 )
                     // InternalOCLinEcore.g:4304:2: rule__ReferenceCS__Group_0_1__0
@@ -14334,7 +14334,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getGroup_0_1()); 
+                       after(grammarAccess.getReferenceCSAccess().getGroup_0_1());
                     }
 
                     }
@@ -14364,7 +14364,7 @@
     public final void rule__ReferenceCS__Alternatives_6_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4317: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 alt33=18;
@@ -14475,7 +14475,7 @@
                     // InternalOCLinEcore.g:4319:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_0()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_0());
                     }
                     // InternalOCLinEcore.g:4320:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_0 )
                     // InternalOCLinEcore.g:4320:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_0
@@ -14489,7 +14489,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_0()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_0());
                     }
 
                     }
@@ -14504,7 +14504,7 @@
                     // InternalOCLinEcore.g:4325:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_1()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_1());
                     }
                     // InternalOCLinEcore.g:4326:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_1 )
                     // InternalOCLinEcore.g:4326:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_1
@@ -14518,7 +14518,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_1()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_1());
                     }
 
                     }
@@ -14533,7 +14533,7 @@
                     // InternalOCLinEcore.g:4331:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_2()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_2());
                     }
                     // InternalOCLinEcore.g:4332:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_2 )
                     // InternalOCLinEcore.g:4332:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_2
@@ -14547,7 +14547,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_2()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_2());
                     }
 
                     }
@@ -14562,7 +14562,7 @@
                     // InternalOCLinEcore.g:4337:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_3()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_3());
                     }
                     // InternalOCLinEcore.g:4338:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_3 )
                     // InternalOCLinEcore.g:4338:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_3
@@ -14576,7 +14576,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_3()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_3());
                     }
 
                     }
@@ -14591,7 +14591,7 @@
                     // InternalOCLinEcore.g:4343:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_4()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_4());
                     }
                     // InternalOCLinEcore.g:4344:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_4 )
                     // InternalOCLinEcore.g:4344:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_4
@@ -14605,7 +14605,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_4()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_4());
                     }
 
                     }
@@ -14620,7 +14620,7 @@
                     // InternalOCLinEcore.g:4349:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_5()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_5());
                     }
                     // InternalOCLinEcore.g:4350:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_5 )
                     // InternalOCLinEcore.g:4350:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_5
@@ -14634,7 +14634,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_5()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_5());
                     }
 
                     }
@@ -14649,7 +14649,7 @@
                     // InternalOCLinEcore.g:4355:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_6()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_6());
                     }
                     // InternalOCLinEcore.g:4356:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_6 )
                     // InternalOCLinEcore.g:4356:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_6
@@ -14663,7 +14663,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_6()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_6());
                     }
 
                     }
@@ -14678,7 +14678,7 @@
                     // InternalOCLinEcore.g:4361:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_7()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_7());
                     }
                     // InternalOCLinEcore.g:4362:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_7 )
                     // InternalOCLinEcore.g:4362:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_7
@@ -14692,7 +14692,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_7()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_7());
                     }
 
                     }
@@ -14707,7 +14707,7 @@
                     // InternalOCLinEcore.g:4367:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_8()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_8());
                     }
                     // InternalOCLinEcore.g:4368:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_8 )
                     // InternalOCLinEcore.g:4368:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_8
@@ -14721,7 +14721,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_8()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_8());
                     }
 
                     }
@@ -14736,7 +14736,7 @@
                     // InternalOCLinEcore.g:4373:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_9()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_9());
                     }
                     // InternalOCLinEcore.g:4374:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_9 )
                     // InternalOCLinEcore.g:4374:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_9
@@ -14750,7 +14750,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_9()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_9());
                     }
 
                     }
@@ -14765,7 +14765,7 @@
                     // InternalOCLinEcore.g:4379:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_10()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_10());
                     }
                     // InternalOCLinEcore.g:4380:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_10 )
                     // InternalOCLinEcore.g:4380:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_10
@@ -14779,7 +14779,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_10()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_10());
                     }
 
                     }
@@ -14794,7 +14794,7 @@
                     // InternalOCLinEcore.g:4385:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_11()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_11());
                     }
                     // InternalOCLinEcore.g:4386:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_11 )
                     // InternalOCLinEcore.g:4386:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_11
@@ -14808,7 +14808,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_11()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_11());
                     }
 
                     }
@@ -14823,7 +14823,7 @@
                     // InternalOCLinEcore.g:4391:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_12()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_12());
                     }
                     // InternalOCLinEcore.g:4392:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_12 )
                     // InternalOCLinEcore.g:4392:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_12
@@ -14837,7 +14837,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_12()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_12());
                     }
 
                     }
@@ -14852,7 +14852,7 @@
                     // InternalOCLinEcore.g:4397:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_13()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_13());
                     }
                     // InternalOCLinEcore.g:4398:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_13 )
                     // InternalOCLinEcore.g:4398:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_13
@@ -14866,7 +14866,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_13()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_13());
                     }
 
                     }
@@ -14881,7 +14881,7 @@
                     // InternalOCLinEcore.g:4403:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_14()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_14());
                     }
                     // InternalOCLinEcore.g:4404:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_14 )
                     // InternalOCLinEcore.g:4404:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_14
@@ -14895,7 +14895,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_14()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_14());
                     }
 
                     }
@@ -14910,7 +14910,7 @@
                     // InternalOCLinEcore.g:4409:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_15()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_15());
                     }
                     // InternalOCLinEcore.g:4410:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_15 )
                     // InternalOCLinEcore.g:4410:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_15
@@ -14924,7 +14924,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_15()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_15());
                     }
 
                     }
@@ -14939,7 +14939,7 @@
                     // InternalOCLinEcore.g:4415:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_16()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_16());
                     }
                     // InternalOCLinEcore.g:4416:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_16 )
                     // InternalOCLinEcore.g:4416:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_16
@@ -14953,7 +14953,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_16()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_16());
                     }
 
                     }
@@ -14968,7 +14968,7 @@
                     // InternalOCLinEcore.g:4421:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_17()); 
+                       before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_17());
                     }
                     // InternalOCLinEcore.g:4422:1: ( rule__ReferenceCS__QualifiersAssignment_6_1_0_17 )
                     // InternalOCLinEcore.g:4422:2: rule__ReferenceCS__QualifiersAssignment_6_1_0_17
@@ -14982,7 +14982,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_17()); 
+                       after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_6_1_0_17());
                     }
 
                     }
@@ -15012,7 +15012,7 @@
     public final void rule__ReferenceCS__Alternatives_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4435:1: ( ( ( rule__ReferenceCS__Group_7_0__0 ) ) | ( ';' ) )
             int alt34=2;
@@ -15039,7 +15039,7 @@
                     // InternalOCLinEcore.g:4437:1: ( rule__ReferenceCS__Group_7_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getGroup_7_0()); 
+                       before(grammarAccess.getReferenceCSAccess().getGroup_7_0());
                     }
                     // InternalOCLinEcore.g:4438:1: ( rule__ReferenceCS__Group_7_0__0 )
                     // InternalOCLinEcore.g:4438:2: rule__ReferenceCS__Group_7_0__0
@@ -15053,7 +15053,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getGroup_7_0()); 
+                       after(grammarAccess.getReferenceCSAccess().getGroup_7_0());
                     }
 
                     }
@@ -15068,11 +15068,11 @@
                     // InternalOCLinEcore.g:4443:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_1()); 
+                       before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_1());
                     }
                     match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_1()); 
+                       after(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_1());
                     }
 
                     }
@@ -15102,7 +15102,7 @@
     public final void rule__ReferenceCS__Alternatives_7_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4459: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 ) ) )
             int alt35=4;
@@ -15145,7 +15145,7 @@
                     // InternalOCLinEcore.g:4461:1: ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAssignment_7_0_1_0()); 
+                       before(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAssignment_7_0_1_0());
                     }
                     // InternalOCLinEcore.g:4462:1: ( rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0 )
                     // InternalOCLinEcore.g:4462:2: rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0
@@ -15159,7 +15159,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAssignment_7_0_1_0()); 
+                       after(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAssignment_7_0_1_0());
                     }
 
                     }
@@ -15174,7 +15174,7 @@
                     // InternalOCLinEcore.g:4467:1: ( rule__ReferenceCS__Group_7_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_1()); 
+                       before(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_1());
                     }
                     // InternalOCLinEcore.g:4468:1: ( rule__ReferenceCS__Group_7_0_1_1__0 )
                     // InternalOCLinEcore.g:4468:2: rule__ReferenceCS__Group_7_0_1_1__0
@@ -15188,7 +15188,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_1()); 
+                       after(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_1());
                     }
 
                     }
@@ -15203,7 +15203,7 @@
                     // InternalOCLinEcore.g:4473:1: ( rule__ReferenceCS__Group_7_0_1_2__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_2()); 
+                       before(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_2());
                     }
                     // InternalOCLinEcore.g:4474:1: ( rule__ReferenceCS__Group_7_0_1_2__0 )
                     // InternalOCLinEcore.g:4474:2: rule__ReferenceCS__Group_7_0_1_2__0
@@ -15217,7 +15217,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_2()); 
+                       after(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_2());
                     }
 
                     }
@@ -15232,7 +15232,7 @@
                     // InternalOCLinEcore.g:4479:1: ( rule__ReferenceCS__Group_7_0_1_3__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_3()); 
+                       before(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_3());
                     }
                     // InternalOCLinEcore.g:4480:1: ( rule__ReferenceCS__Group_7_0_1_3__0 )
                     // InternalOCLinEcore.g:4480:2: rule__ReferenceCS__Group_7_0_1_3__0
@@ -15246,7 +15246,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_3()); 
+                       after(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_3());
                     }
 
                     }
@@ -15276,7 +15276,7 @@
     public final void rule__SpecificationCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4493:1: ( ( ( rule__SpecificationCS__OwnedExpressionAssignment_0 ) ) | ( ( rule__SpecificationCS__ExprStringAssignment_1 ) ) )
             int alt36=2;
@@ -15303,7 +15303,7 @@
                     // InternalOCLinEcore.g:4495:1: ( rule__SpecificationCS__OwnedExpressionAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment_0()); 
+                       before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment_0());
                     }
                     // InternalOCLinEcore.g:4496:1: ( rule__SpecificationCS__OwnedExpressionAssignment_0 )
                     // InternalOCLinEcore.g:4496:2: rule__SpecificationCS__OwnedExpressionAssignment_0
@@ -15317,7 +15317,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment_0()); 
+                       after(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment_0());
                     }
 
                     }
@@ -15332,7 +15332,7 @@
                     // InternalOCLinEcore.g:4501:1: ( rule__SpecificationCS__ExprStringAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getSpecificationCSAccess().getExprStringAssignment_1()); 
+                       before(grammarAccess.getSpecificationCSAccess().getExprStringAssignment_1());
                     }
                     // InternalOCLinEcore.g:4502:1: ( rule__SpecificationCS__ExprStringAssignment_1 )
                     // InternalOCLinEcore.g:4502:2: rule__SpecificationCS__ExprStringAssignment_1
@@ -15346,7 +15346,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getSpecificationCSAccess().getExprStringAssignment_1()); 
+                       after(grammarAccess.getSpecificationCSAccess().getExprStringAssignment_1());
                     }
 
                     }
@@ -15376,7 +15376,7 @@
     public final void rule__StructuredClassCS__Alternatives_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4515:1: ( ( ( rule__StructuredClassCS__Group_7_0__0 ) ) | ( ';' ) )
             int alt37=2;
@@ -15403,7 +15403,7 @@
                     // InternalOCLinEcore.g:4517:1: ( rule__StructuredClassCS__Group_7_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getStructuredClassCSAccess().getGroup_7_0()); 
+                       before(grammarAccess.getStructuredClassCSAccess().getGroup_7_0());
                     }
                     // InternalOCLinEcore.g:4518:1: ( rule__StructuredClassCS__Group_7_0__0 )
                     // InternalOCLinEcore.g:4518:2: rule__StructuredClassCS__Group_7_0__0
@@ -15417,7 +15417,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getStructuredClassCSAccess().getGroup_7_0()); 
+                       after(grammarAccess.getStructuredClassCSAccess().getGroup_7_0());
                     }
 
                     }
@@ -15432,11 +15432,11 @@
                     // InternalOCLinEcore.g:4523:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getStructuredClassCSAccess().getSemicolonKeyword_7_1()); 
+                       before(grammarAccess.getStructuredClassCSAccess().getSemicolonKeyword_7_1());
                     }
                     match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getStructuredClassCSAccess().getSemicolonKeyword_7_1()); 
+                       after(grammarAccess.getStructuredClassCSAccess().getSemicolonKeyword_7_1());
                     }
 
                     }
@@ -15466,7 +15466,7 @@
     public final void rule__StructuredClassCS__Alternatives_7_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4539: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 alt38=4;
@@ -15597,7 +15597,7 @@
                     // InternalOCLinEcore.g:4541:1: ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAssignment_7_0_1_0()); 
+                       before(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAssignment_7_0_1_0());
                     }
                     // InternalOCLinEcore.g:4542:1: ( rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0 )
                     // InternalOCLinEcore.g:4542:2: rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0
@@ -15611,7 +15611,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAssignment_7_0_1_0()); 
+                       after(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAssignment_7_0_1_0());
                     }
 
                     }
@@ -15626,7 +15626,7 @@
                     // InternalOCLinEcore.g:4547:1: ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsAssignment_7_0_1_1()); 
+                       before(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsAssignment_7_0_1_1());
                     }
                     // InternalOCLinEcore.g:4548:1: ( rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1 )
                     // InternalOCLinEcore.g:4548:2: rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1
@@ -15640,7 +15640,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsAssignment_7_0_1_1()); 
+                       after(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsAssignment_7_0_1_1());
                     }
 
                     }
@@ -15655,7 +15655,7 @@
                     // InternalOCLinEcore.g:4553:1: ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesAssignment_7_0_1_2()); 
+                       before(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesAssignment_7_0_1_2());
                     }
                     // InternalOCLinEcore.g:4554:1: ( rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2 )
                     // InternalOCLinEcore.g:4554:2: rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2
@@ -15669,7 +15669,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesAssignment_7_0_1_2()); 
+                       after(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesAssignment_7_0_1_2());
                     }
 
                     }
@@ -15684,7 +15684,7 @@
                     // InternalOCLinEcore.g:4559:1: ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsAssignment_7_0_1_3()); 
+                       before(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsAssignment_7_0_1_3());
                     }
                     // InternalOCLinEcore.g:4560:1: ( rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3 )
                     // InternalOCLinEcore.g:4560:2: rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3
@@ -15698,7 +15698,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsAssignment_7_0_1_3()); 
+                       after(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsAssignment_7_0_1_3());
                     }
 
                     }
@@ -15728,7 +15728,7 @@
     public final void rule__StructuralFeatureCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4573:1: ( ( ruleAttributeCS ) | ( ruleReferenceCS ) )
             int alt39=2;
@@ -15843,7 +15843,7 @@
                     // InternalOCLinEcore.g:4575:1: ruleAttributeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getStructuralFeatureCSAccess().getAttributeCSParserRuleCall_0()); 
+                       before(grammarAccess.getStructuralFeatureCSAccess().getAttributeCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleAttributeCS();
@@ -15851,7 +15851,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getStructuralFeatureCSAccess().getAttributeCSParserRuleCall_0()); 
+                       after(grammarAccess.getStructuralFeatureCSAccess().getAttributeCSParserRuleCall_0());
                     }
 
                     }
@@ -15866,7 +15866,7 @@
                     // InternalOCLinEcore.g:4581:1: ruleReferenceCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getStructuralFeatureCSAccess().getReferenceCSParserRuleCall_1()); 
+                       before(grammarAccess.getStructuralFeatureCSAccess().getReferenceCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleReferenceCS();
@@ -15874,7 +15874,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getStructuralFeatureCSAccess().getReferenceCSParserRuleCall_1()); 
+                       after(grammarAccess.getStructuralFeatureCSAccess().getReferenceCSParserRuleCall_1());
                     }
 
                     }
@@ -15904,7 +15904,7 @@
     public final void rule__SysMLCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4595:1: ( ( ( rule__SysMLCS__Group_2_0__0 ) ) | ( ( rule__SysMLCS__Group_2_1__0 ) ) )
             int alt40=2;
@@ -15931,7 +15931,7 @@
                     // InternalOCLinEcore.g:4597:1: ( rule__SysMLCS__Group_2_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getSysMLCSAccess().getGroup_2_0()); 
+                       before(grammarAccess.getSysMLCSAccess().getGroup_2_0());
                     }
                     // InternalOCLinEcore.g:4598:1: ( rule__SysMLCS__Group_2_0__0 )
                     // InternalOCLinEcore.g:4598:2: rule__SysMLCS__Group_2_0__0
@@ -15945,7 +15945,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getSysMLCSAccess().getGroup_2_0()); 
+                       after(grammarAccess.getSysMLCSAccess().getGroup_2_0());
                     }
 
                     }
@@ -15960,7 +15960,7 @@
                     // InternalOCLinEcore.g:4603:1: ( rule__SysMLCS__Group_2_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getSysMLCSAccess().getGroup_2_1()); 
+                       before(grammarAccess.getSysMLCSAccess().getGroup_2_1());
                     }
                     // InternalOCLinEcore.g:4604:1: ( rule__SysMLCS__Group_2_1__0 )
                     // InternalOCLinEcore.g:4604:2: rule__SysMLCS__Group_2_1__0
@@ -15974,7 +15974,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getSysMLCSAccess().getGroup_2_1()); 
+                       after(grammarAccess.getSysMLCSAccess().getGroup_2_1());
                     }
 
                     }
@@ -16004,7 +16004,7 @@
     public final void rule__TemplateSignatureCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4618:1: ( ( ( rule__TemplateSignatureCS__Group_0__0 ) ) | ( ( rule__TemplateSignatureCS__Group_1__0 ) ) )
             int alt41=2;
@@ -16031,7 +16031,7 @@
                     // InternalOCLinEcore.g:4620:1: ( rule__TemplateSignatureCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTemplateSignatureCSAccess().getGroup_0()); 
+                       before(grammarAccess.getTemplateSignatureCSAccess().getGroup_0());
                     }
                     // InternalOCLinEcore.g:4621:1: ( rule__TemplateSignatureCS__Group_0__0 )
                     // InternalOCLinEcore.g:4621:2: rule__TemplateSignatureCS__Group_0__0
@@ -16045,7 +16045,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTemplateSignatureCSAccess().getGroup_0()); 
+                       after(grammarAccess.getTemplateSignatureCSAccess().getGroup_0());
                     }
 
                     }
@@ -16060,7 +16060,7 @@
                     // InternalOCLinEcore.g:4626:1: ( rule__TemplateSignatureCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTemplateSignatureCSAccess().getGroup_1()); 
+                       before(grammarAccess.getTemplateSignatureCSAccess().getGroup_1());
                     }
                     // InternalOCLinEcore.g:4627:1: ( rule__TemplateSignatureCS__Group_1__0 )
                     // InternalOCLinEcore.g:4627:2: rule__TemplateSignatureCS__Group_1__0
@@ -16074,7 +16074,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTemplateSignatureCSAccess().getGroup_1()); 
+                       after(grammarAccess.getTemplateSignatureCSAccess().getGroup_1());
                     }
 
                     }
@@ -16104,7 +16104,7 @@
     public final void rule__TypedRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4640:1: ( ( ruleTypeLiteralCS ) | ( ruleTypedTypeRefCS ) )
             int alt42=2;
@@ -16131,7 +16131,7 @@
                     // InternalOCLinEcore.g:4642:1: ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+                       before(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeLiteralCS();
@@ -16139,7 +16139,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+                       after(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0());
                     }
 
                     }
@@ -16154,7 +16154,7 @@
                     // InternalOCLinEcore.g:4648:1: ruleTypedTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1()); 
+                       before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypedTypeRefCS();
@@ -16162,7 +16162,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1()); 
+                       after(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1());
                     }
 
                     }
@@ -16192,7 +16192,7 @@
     public final void rule__TypedTypeRefCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4662:1: ( ( ( rule__TypedTypeRefCS__Group_1_0__0 ) ) | ( ( rule__TypedTypeRefCS__Group_1_1__0 ) ) )
             int alt43=2;
@@ -16219,7 +16219,7 @@
                     // InternalOCLinEcore.g:4664:1: ( rule__TypedTypeRefCS__Group_1_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_0()); 
+                       before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_0());
                     }
                     // InternalOCLinEcore.g:4665:1: ( rule__TypedTypeRefCS__Group_1_0__0 )
                     // InternalOCLinEcore.g:4665:2: rule__TypedTypeRefCS__Group_1_0__0
@@ -16233,7 +16233,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_0()); 
+                       after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_0());
                     }
 
                     }
@@ -16248,7 +16248,7 @@
                     // InternalOCLinEcore.g:4670:1: ( rule__TypedTypeRefCS__Group_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_1()); 
+                       before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_1());
                     }
                     // InternalOCLinEcore.g:4671:1: ( rule__TypedTypeRefCS__Group_1_1__0 )
                     // InternalOCLinEcore.g:4671:2: rule__TypedTypeRefCS__Group_1_1__0
@@ -16262,7 +16262,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_1()); 
+                       after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_1());
                     }
 
                     }
@@ -16292,7 +16292,7 @@
     public final void rule__UnrestrictedName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4684:1: ( ( ruleEnumerationLiteralName ) | ( 'annotation' ) | ( 'documentation' ) | ( 'invariant' ) | ( 'literal' ) | ( 'serializable' ) | ( 'sysml' ) )
             int alt44=7;
@@ -16384,7 +16384,7 @@
                     // InternalOCLinEcore.g:4686:1: ruleEnumerationLiteralName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUnrestrictedNameAccess().getEnumerationLiteralNameParserRuleCall_0()); 
+                       before(grammarAccess.getUnrestrictedNameAccess().getEnumerationLiteralNameParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleEnumerationLiteralName();
@@ -16392,7 +16392,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUnrestrictedNameAccess().getEnumerationLiteralNameParserRuleCall_0()); 
+                       after(grammarAccess.getUnrestrictedNameAccess().getEnumerationLiteralNameParserRuleCall_0());
                     }
 
                     }
@@ -16407,11 +16407,11 @@
                     // InternalOCLinEcore.g:4692:1: 'annotation'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUnrestrictedNameAccess().getAnnotationKeyword_1()); 
+                       before(grammarAccess.getUnrestrictedNameAccess().getAnnotationKeyword_1());
                     }
                     match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUnrestrictedNameAccess().getAnnotationKeyword_1()); 
+                       after(grammarAccess.getUnrestrictedNameAccess().getAnnotationKeyword_1());
                     }
 
                     }
@@ -16426,11 +16426,11 @@
                     // InternalOCLinEcore.g:4700:1: 'documentation'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUnrestrictedNameAccess().getDocumentationKeyword_2()); 
+                       before(grammarAccess.getUnrestrictedNameAccess().getDocumentationKeyword_2());
                     }
                     match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUnrestrictedNameAccess().getDocumentationKeyword_2()); 
+                       after(grammarAccess.getUnrestrictedNameAccess().getDocumentationKeyword_2());
                     }
 
                     }
@@ -16445,11 +16445,11 @@
                     // InternalOCLinEcore.g:4708:1: 'invariant'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUnrestrictedNameAccess().getInvariantKeyword_3()); 
+                       before(grammarAccess.getUnrestrictedNameAccess().getInvariantKeyword_3());
                     }
                     match(input,56,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUnrestrictedNameAccess().getInvariantKeyword_3()); 
+                       after(grammarAccess.getUnrestrictedNameAccess().getInvariantKeyword_3());
                     }
 
                     }
@@ -16464,11 +16464,11 @@
                     // InternalOCLinEcore.g:4716:1: 'literal'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUnrestrictedNameAccess().getLiteralKeyword_4()); 
+                       before(grammarAccess.getUnrestrictedNameAccess().getLiteralKeyword_4());
                     }
                     match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUnrestrictedNameAccess().getLiteralKeyword_4()); 
+                       after(grammarAccess.getUnrestrictedNameAccess().getLiteralKeyword_4());
                     }
 
                     }
@@ -16483,11 +16483,11 @@
                     // InternalOCLinEcore.g:4724:1: 'serializable'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUnrestrictedNameAccess().getSerializableKeyword_5()); 
+                       before(grammarAccess.getUnrestrictedNameAccess().getSerializableKeyword_5());
                     }
                     match(input,58,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUnrestrictedNameAccess().getSerializableKeyword_5()); 
+                       after(grammarAccess.getUnrestrictedNameAccess().getSerializableKeyword_5());
                     }
 
                     }
@@ -16502,11 +16502,11 @@
                     // InternalOCLinEcore.g:4732:1: 'sysml'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUnrestrictedNameAccess().getSysmlKeyword_6()); 
+                       before(grammarAccess.getUnrestrictedNameAccess().getSysmlKeyword_6());
                     }
                     match(input,59,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUnrestrictedNameAccess().getSysmlKeyword_6()); 
+                       after(grammarAccess.getUnrestrictedNameAccess().getSysmlKeyword_6());
                     }
 
                     }
@@ -16536,7 +16536,7 @@
     public final void rule__EssentialOCLUnaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4749:1: ( ( '-' ) | ( 'not' ) )
             int alt45=2;
@@ -16563,11 +16563,11 @@
                     // InternalOCLinEcore.g:4751:1: '-'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
+                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
                     }
                     match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
+                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
                     }
 
                     }
@@ -16582,11 +16582,11 @@
                     // InternalOCLinEcore.g:4759:1: 'not'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
+                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
                     }
                     match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
+                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
                     }
 
                     }
@@ -16616,7 +16616,7 @@
     public final void rule__EssentialOCLInfixOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4775:1: ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'or' ) | ( 'xor' ) | ( 'implies' ) )
             int alt46=14;
@@ -16707,11 +16707,11 @@
                     // InternalOCLinEcore.g:4777:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
                     }
                     match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
                     }
 
                     }
@@ -16726,11 +16726,11 @@
                     // InternalOCLinEcore.g:4785:1: '/'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
                     }
                     match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
                     }
 
                     }
@@ -16745,11 +16745,11 @@
                     // InternalOCLinEcore.g:4793:1: '+'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
                     }
                     match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
                     }
 
                     }
@@ -16764,11 +16764,11 @@
                     // InternalOCLinEcore.g:4801:1: '-'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
                     }
                     match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
                     }
 
                     }
@@ -16783,11 +16783,11 @@
                     // InternalOCLinEcore.g:4809:1: '>'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
                     }
                     match(input,65,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
                     }
 
                     }
@@ -16802,11 +16802,11 @@
                     // InternalOCLinEcore.g:4817:1: '<'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
                     }
                     match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
                     }
 
                     }
@@ -16821,11 +16821,11 @@
                     // InternalOCLinEcore.g:4825:1: '>='
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
                     }
                     match(input,67,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
                     }
 
                     }
@@ -16840,11 +16840,11 @@
                     // InternalOCLinEcore.g:4833:1: '<='
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
                     }
                     match(input,68,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
                     }
 
                     }
@@ -16859,11 +16859,11 @@
                     // InternalOCLinEcore.g:4841:1: '='
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
                     }
                     match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
                     }
 
                     }
@@ -16878,11 +16878,11 @@
                     // InternalOCLinEcore.g:4849:1: '<>'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
                     }
                     match(input,70,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
                     }
 
                     }
@@ -16897,11 +16897,11 @@
                     // InternalOCLinEcore.g:4857:1: 'and'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
                     }
                     match(input,71,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
                     }
 
                     }
@@ -16916,11 +16916,11 @@
                     // InternalOCLinEcore.g:4865:1: 'or'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
                     }
                     match(input,72,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
                     }
 
                     }
@@ -16935,11 +16935,11 @@
                     // InternalOCLinEcore.g:4873:1: 'xor'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
                     }
                     match(input,73,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
                     }
 
                     }
@@ -16954,11 +16954,11 @@
                     // InternalOCLinEcore.g:4881:1: 'implies'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
                     }
                     match(input,74,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
                     }
 
                     }
@@ -16988,7 +16988,7 @@
     public final void rule__EssentialOCLNavigationOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4897:1: ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) )
             int alt47=4;
@@ -17029,11 +17029,11 @@
                     // InternalOCLinEcore.g:4899:1: '.'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
                     }
                     match(input,75,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
                     }
 
                     }
@@ -17048,11 +17048,11 @@
                     // InternalOCLinEcore.g:4907:1: '->'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
                     }
                     match(input,76,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
                     }
 
                     }
@@ -17067,11 +17067,11 @@
                     // InternalOCLinEcore.g:4915:1: '?.'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
                     }
                     match(input,77,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
                     }
 
                     }
@@ -17086,11 +17086,11 @@
                     // InternalOCLinEcore.g:4923:1: '?->'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
                     }
                     match(input,78,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
                     }
 
                     }
@@ -17120,7 +17120,7 @@
     public final void rule__BinaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4939:1: ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) )
             int alt48=2;
@@ -17147,7 +17147,7 @@
                     // InternalOCLinEcore.g:4941:1: ruleInfixOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
+                       before(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleInfixOperatorName();
@@ -17155,7 +17155,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
+                       after(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
                     }
 
                     }
@@ -17170,7 +17170,7 @@
                     // InternalOCLinEcore.g:4947:1: ruleNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
+                       before(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNavigationOperatorName();
@@ -17178,7 +17178,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
+                       after(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
                     }
 
                     }
@@ -17208,7 +17208,7 @@
     public final void rule__EssentialOCLUnreservedName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:4961:1: ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) )
             int alt49=5;
@@ -17307,7 +17307,7 @@
                     // InternalOCLinEcore.g:4963:1: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -17315,7 +17315,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
                     }
 
                     }
@@ -17330,7 +17330,7 @@
                     // InternalOCLinEcore.g:4969:1: ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionTypeIdentifier();
@@ -17338,7 +17338,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
                     }
 
                     }
@@ -17353,7 +17353,7 @@
                     // InternalOCLinEcore.g:4975:1: rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimitiveTypeIdentifier();
@@ -17361,7 +17361,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
                     }
 
                     }
@@ -17376,11 +17376,11 @@
                     // InternalOCLinEcore.g:4981:1: 'Map'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
                     }
                     match(input,79,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
                     }
 
                     }
@@ -17395,11 +17395,11 @@
                     // InternalOCLinEcore.g:4989:1: 'Tuple'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
                     }
                     match(input,80,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
                     }
 
                     }
@@ -17429,7 +17429,7 @@
     public final void rule__URIFirstPathElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5005:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) )
             int alt50=2;
@@ -17456,7 +17456,7 @@
                     // InternalOCLinEcore.g:5007:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0()); 
+                       before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0());
                     }
                     // InternalOCLinEcore.g:5008:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
                     // InternalOCLinEcore.g:5008:2: rule__URIFirstPathElementCS__ReferredElementAssignment_0
@@ -17470,7 +17470,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0()); 
+                       after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0());
                     }
 
                     }
@@ -17485,7 +17485,7 @@
                     // InternalOCLinEcore.g:5013:1: ( rule__URIFirstPathElementCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1()); 
+                       before(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1());
                     }
                     // InternalOCLinEcore.g:5014:1: ( rule__URIFirstPathElementCS__Group_1__0 )
                     // InternalOCLinEcore.g:5014:2: rule__URIFirstPathElementCS__Group_1__0
@@ -17499,7 +17499,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1()); 
+                       after(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1());
                     }
 
                     }
@@ -17529,7 +17529,7 @@
     public final void rule__PrimitiveTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5027:1: ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) )
             int alt51=8;
@@ -17590,11 +17590,11 @@
                     // InternalOCLinEcore.g:5029:1: 'Boolean'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
                     }
                     match(input,81,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
                     }
 
                     }
@@ -17609,11 +17609,11 @@
                     // InternalOCLinEcore.g:5037:1: 'Integer'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
                     }
                     match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
                     }
 
                     }
@@ -17628,11 +17628,11 @@
                     // InternalOCLinEcore.g:5045:1: 'Real'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
                     }
                     match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
                     }
 
                     }
@@ -17647,11 +17647,11 @@
                     // InternalOCLinEcore.g:5053:1: 'String'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
                     }
                     match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
                     }
 
                     }
@@ -17666,11 +17666,11 @@
                     // InternalOCLinEcore.g:5061:1: 'UnlimitedNatural'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
                     }
                     match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
                     }
 
                     }
@@ -17685,11 +17685,11 @@
                     // InternalOCLinEcore.g:5069:1: 'OclAny'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
                     }
                     match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
                     }
 
                     }
@@ -17704,11 +17704,11 @@
                     // InternalOCLinEcore.g:5077:1: 'OclInvalid'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
                     }
                     match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
                     }
 
                     }
@@ -17723,11 +17723,11 @@
                     // InternalOCLinEcore.g:5085:1: 'OclVoid'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
                     }
                     match(input,88,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
                     }
 
                     }
@@ -17757,7 +17757,7 @@
     public final void rule__CollectionTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5101:1: ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) )
             int alt52=5;
@@ -17803,11 +17803,11 @@
                     // InternalOCLinEcore.g:5103:1: 'Set'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
                     }
                     match(input,89,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
                     }
 
                     }
@@ -17822,11 +17822,11 @@
                     // InternalOCLinEcore.g:5111:1: 'Bag'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
                     }
                     match(input,90,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
                     }
 
                     }
@@ -17841,11 +17841,11 @@
                     // InternalOCLinEcore.g:5119:1: 'Sequence'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
                     }
                     match(input,91,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
                     }
 
                     }
@@ -17860,11 +17860,11 @@
                     // InternalOCLinEcore.g:5127:1: 'Collection'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
                     }
                     match(input,92,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
                     }
 
                     }
@@ -17879,11 +17879,11 @@
                     // InternalOCLinEcore.g:5135:1: 'OrderedSet'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
                     }
                     match(input,93,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
                     }
 
                     }
@@ -17913,7 +17913,7 @@
     public final void rule__CollectionLiteralPartCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5151:1: ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) )
             int alt53=2;
@@ -17926,7 +17926,7 @@
                     // InternalOCLinEcore.g:5153:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0()); 
+                       before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0());
                     }
                     // InternalOCLinEcore.g:5154:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
                     // InternalOCLinEcore.g:5154:2: rule__CollectionLiteralPartCS__Group_0__0
@@ -17940,7 +17940,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0()); 
+                       after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0());
                     }
 
                     }
@@ -17955,7 +17955,7 @@
                     // InternalOCLinEcore.g:5159:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1()); 
+                       before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1());
                     }
                     // InternalOCLinEcore.g:5160:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
                     // InternalOCLinEcore.g:5160:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1
@@ -17969,7 +17969,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1()); 
+                       after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1());
                     }
 
                     }
@@ -17999,7 +17999,7 @@
     public final void rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5173:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt54=2;
@@ -18012,7 +18012,7 @@
                     // InternalOCLinEcore.g:5175:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
+                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleExpCS();
@@ -18020,7 +18020,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
+                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
                     }
 
                     }
@@ -18035,7 +18035,7 @@
                     // InternalOCLinEcore.g:5181:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
+                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePatternExpCS();
@@ -18043,7 +18043,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
+                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
                     }
 
                     }
@@ -18073,7 +18073,7 @@
     public final void rule__PrimitiveLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5195:1: ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) )
             int alt55=6;
@@ -18125,7 +18125,7 @@
                     // InternalOCLinEcore.g:5197:1: ruleNumberLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNumberLiteralExpCS();
@@ -18133,7 +18133,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
                     }
 
                     }
@@ -18148,7 +18148,7 @@
                     // InternalOCLinEcore.g:5203:1: ruleStringLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleStringLiteralExpCS();
@@ -18156,7 +18156,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
                     }
 
                     }
@@ -18171,7 +18171,7 @@
                     // InternalOCLinEcore.g:5209:1: ruleBooleanLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleBooleanLiteralExpCS();
@@ -18179,7 +18179,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
                     }
 
                     }
@@ -18194,7 +18194,7 @@
                     // InternalOCLinEcore.g:5215:1: ruleUnlimitedNaturalLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnlimitedNaturalLiteralExpCS();
@@ -18202,7 +18202,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
                     }
 
                     }
@@ -18217,7 +18217,7 @@
                     // InternalOCLinEcore.g:5221:1: ruleInvalidLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleInvalidLiteralExpCS();
@@ -18225,7 +18225,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
                     }
 
                     }
@@ -18240,7 +18240,7 @@
                     // InternalOCLinEcore.g:5227:1: ruleNullLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNullLiteralExpCS();
@@ -18248,7 +18248,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
                     }
 
                     }
@@ -18278,7 +18278,7 @@
     public final void rule__BooleanLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5241:1: ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) )
             int alt56=2;
@@ -18305,7 +18305,7 @@
                     // InternalOCLinEcore.g:5243:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0()); 
+                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0());
                     }
                     // InternalOCLinEcore.g:5244:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
                     // InternalOCLinEcore.g:5244:2: rule__BooleanLiteralExpCS__SymbolAssignment_0
@@ -18319,7 +18319,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0()); 
+                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0());
                     }
 
                     }
@@ -18334,7 +18334,7 @@
                     // InternalOCLinEcore.g:5249:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1()); 
+                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1());
                     }
                     // InternalOCLinEcore.g:5250:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
                     // InternalOCLinEcore.g:5250:2: rule__BooleanLiteralExpCS__SymbolAssignment_1
@@ -18348,7 +18348,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1()); 
+                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1());
                     }
 
                     }
@@ -18378,7 +18378,7 @@
     public final void rule__TypeLiteralCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5263:1: ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) )
             int alt57=4;
@@ -18430,7 +18430,7 @@
                     // InternalOCLinEcore.g:5265:1: rulePrimitiveTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimitiveTypeCS();
@@ -18438,7 +18438,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
                     }
 
                     }
@@ -18453,7 +18453,7 @@
                     // InternalOCLinEcore.g:5271:1: ruleCollectionTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionTypeCS();
@@ -18461,7 +18461,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
                     }
 
                     }
@@ -18476,7 +18476,7 @@
                     // InternalOCLinEcore.g:5277:1: ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMapTypeCS();
@@ -18484,7 +18484,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
                     }
 
                     }
@@ -18499,7 +18499,7 @@
                     // InternalOCLinEcore.g:5283:1: ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTupleTypeCS();
@@ -18507,7 +18507,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
                     }
 
                     }
@@ -18537,7 +18537,7 @@
     public final void rule__TypeExpCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5297:1: ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) )
             int alt58=3;
@@ -18550,7 +18550,7 @@
                     // InternalOCLinEcore.g:5299:1: ruleTypeNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
+                       before(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeNameExpCS();
@@ -18558,7 +18558,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
+                       after(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
                     }
 
                     }
@@ -18573,7 +18573,7 @@
                     // InternalOCLinEcore.g:5305:1: ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+                       before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeLiteralCS();
@@ -18581,7 +18581,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+                       after(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
                     }
 
                     }
@@ -18596,7 +18596,7 @@
                     // InternalOCLinEcore.g:5311:1: ruleCollectionPatternCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
+                       before(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionPatternCS();
@@ -18604,7 +18604,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
+                       after(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
                     }
 
                     }
@@ -18634,7 +18634,7 @@
     public final void rule__ExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5325:1: ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) )
             int alt59=2;
@@ -18647,7 +18647,7 @@
                     // InternalOCLinEcore.g:5327:1: ( rule__ExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getExpCSAccess().getGroup_0()); 
+                       before(grammarAccess.getExpCSAccess().getGroup_0());
                     }
                     // InternalOCLinEcore.g:5328:1: ( rule__ExpCS__Group_0__0 )
                     // InternalOCLinEcore.g:5328:2: rule__ExpCS__Group_0__0
@@ -18661,7 +18661,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getExpCSAccess().getGroup_0()); 
+                       after(grammarAccess.getExpCSAccess().getGroup_0());
                     }
 
                     }
@@ -18676,7 +18676,7 @@
                     // InternalOCLinEcore.g:5333:1: rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrefixedLetExpCS();
@@ -18684,7 +18684,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
                     }
 
                     }
@@ -18714,7 +18714,7 @@
     public final void rule__PrefixedLetExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5347:1: ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) )
             int alt60=2;
@@ -18741,7 +18741,7 @@
                     // InternalOCLinEcore.g:5349:1: ( rule__PrefixedLetExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0()); 
+                       before(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0());
                     }
                     // InternalOCLinEcore.g:5350:1: ( rule__PrefixedLetExpCS__Group_0__0 )
                     // InternalOCLinEcore.g:5350:2: rule__PrefixedLetExpCS__Group_0__0
@@ -18755,7 +18755,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0()); 
+                       after(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0());
                     }
 
                     }
@@ -18770,7 +18770,7 @@
                     // InternalOCLinEcore.g:5355:1: ruleLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleLetExpCS();
@@ -18778,7 +18778,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
                     }
 
                     }
@@ -18808,7 +18808,7 @@
     public final void rule__PrefixedPrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5369:1: ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) )
             int alt61=2;
@@ -18835,7 +18835,7 @@
                     // InternalOCLinEcore.g:5371:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0()); 
+                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0());
                     }
                     // InternalOCLinEcore.g:5372:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
                     // InternalOCLinEcore.g:5372:2: rule__PrefixedPrimaryExpCS__Group_0__0
@@ -18849,7 +18849,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0()); 
+                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0());
                     }
 
                     }
@@ -18864,7 +18864,7 @@
                     // InternalOCLinEcore.g:5377:1: rulePrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimaryExpCS();
@@ -18872,7 +18872,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
                     }
 
                     }
@@ -18902,7 +18902,7 @@
     public final void rule__PrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5391:1: ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) )
             int alt62=10;
@@ -18915,7 +18915,7 @@
                     // InternalOCLinEcore.g:5393:1: ruleNestedExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNestedExpCS();
@@ -18923,7 +18923,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
                     }
 
                     }
@@ -18938,7 +18938,7 @@
                     // InternalOCLinEcore.g:5399:1: ruleIfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleIfExpCS();
@@ -18946,7 +18946,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
                     }
 
                     }
@@ -18961,7 +18961,7 @@
                     // InternalOCLinEcore.g:5405:1: ruleSelfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleSelfExpCS();
@@ -18969,7 +18969,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
                     }
 
                     }
@@ -18984,7 +18984,7 @@
                     // InternalOCLinEcore.g:5411:1: rulePrimitiveLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimitiveLiteralExpCS();
@@ -18992,7 +18992,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
                     }
 
                     }
@@ -19007,7 +19007,7 @@
                     // InternalOCLinEcore.g:5417:1: ruleTupleLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTupleLiteralExpCS();
@@ -19015,7 +19015,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
                     }
 
                     }
@@ -19030,7 +19030,7 @@
                     // InternalOCLinEcore.g:5423:1: ruleMapLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMapLiteralExpCS();
@@ -19038,7 +19038,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
                     }
 
                     }
@@ -19053,7 +19053,7 @@
                     // InternalOCLinEcore.g:5429:1: ruleCollectionLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionLiteralExpCS();
@@ -19061,7 +19061,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
                     }
 
                     }
@@ -19076,7 +19076,7 @@
                     // InternalOCLinEcore.g:5435:1: ruleLambdaLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleLambdaLiteralExpCS();
@@ -19084,7 +19084,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
                     }
 
                     }
@@ -19099,7 +19099,7 @@
                     // InternalOCLinEcore.g:5441:1: ruleTypeLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeLiteralExpCS();
@@ -19107,7 +19107,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
                     }
 
                     }
@@ -19122,7 +19122,7 @@
                     // InternalOCLinEcore.g:5447:1: ruleNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNameExpCS();
@@ -19130,7 +19130,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
                     }
 
                     }
@@ -19160,7 +19160,7 @@
     public final void rule__CurlyBracketedClauseCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5461:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_0__0 )? ) | ( ( rule__CurlyBracketedClauseCS__ValueAssignment_2_1 ) ) )
             int alt64=2;
@@ -19187,7 +19187,7 @@
                     // InternalOCLinEcore.g:5463:1: ( rule__CurlyBracketedClauseCS__Group_2_0__0 )?
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0()); 
+                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0());
                     }
                     // InternalOCLinEcore.g:5464:1: ( rule__CurlyBracketedClauseCS__Group_2_0__0 )?
                     int alt63=2;
@@ -19212,7 +19212,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0()); 
+                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0());
                     }
 
                     }
@@ -19227,7 +19227,7 @@
                     // InternalOCLinEcore.g:5469:1: ( rule__CurlyBracketedClauseCS__ValueAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1()); 
+                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1());
                     }
                     // InternalOCLinEcore.g:5470:1: ( rule__CurlyBracketedClauseCS__ValueAssignment_2_1 )
                     // InternalOCLinEcore.g:5470:2: rule__CurlyBracketedClauseCS__ValueAssignment_2_1
@@ -19241,7 +19241,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1()); 
+                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1());
                     }
 
                     }
@@ -19271,7 +19271,7 @@
     public final void rule__NavigatingArgCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5483:1: ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) )
             int alt65=2;
@@ -19298,7 +19298,7 @@
                     // InternalOCLinEcore.g:5485:1: ( rule__NavigatingArgCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0());
                     }
                     // InternalOCLinEcore.g:5486:1: ( rule__NavigatingArgCS__Group_0__0 )
                     // InternalOCLinEcore.g:5486:2: rule__NavigatingArgCS__Group_0__0
@@ -19312,7 +19312,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0());
                     }
 
                     }
@@ -19327,7 +19327,7 @@
                     // InternalOCLinEcore.g:5491:1: ( rule__NavigatingArgCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_1()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_1());
                     }
                     // InternalOCLinEcore.g:5492:1: ( rule__NavigatingArgCS__Group_1__0 )
                     // InternalOCLinEcore.g:5492:2: rule__NavigatingArgCS__Group_1__0
@@ -19341,7 +19341,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_1()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_1());
                     }
 
                     }
@@ -19371,7 +19371,7 @@
     public final void rule__NavigatingArgCS__Alternatives_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5505:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) )
             int alt66=2;
@@ -19398,7 +19398,7 @@
                     // InternalOCLinEcore.g:5507:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
                     }
                     // InternalOCLinEcore.g:5508:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
                     // InternalOCLinEcore.g:5508:2: rule__NavigatingArgCS__Group_0_1_0__0
@@ -19412,7 +19412,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
                     }
 
                     }
@@ -19427,7 +19427,7 @@
                     // InternalOCLinEcore.g:5513:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
                     }
                     // InternalOCLinEcore.g:5514:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
                     // InternalOCLinEcore.g:5514:2: rule__NavigatingArgCS__Group_0_1_1__0
@@ -19441,7 +19441,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
                     }
 
                     }
@@ -19471,7 +19471,7 @@
     public final void rule__NavigatingCommaArgCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5527:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) )
             int alt67=2;
@@ -19498,7 +19498,7 @@
                     // InternalOCLinEcore.g:5529:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0()); 
+                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
                     }
                     // InternalOCLinEcore.g:5530:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
                     // InternalOCLinEcore.g:5530:2: rule__NavigatingCommaArgCS__Group_2_0__0
@@ -19512,7 +19512,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0()); 
+                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
                     }
 
                     }
@@ -19527,7 +19527,7 @@
                     // InternalOCLinEcore.g:5535:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1()); 
+                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
                     }
                     // InternalOCLinEcore.g:5536:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
                     // InternalOCLinEcore.g:5536:2: rule__NavigatingCommaArgCS__Group_2_1__0
@@ -19541,7 +19541,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1()); 
+                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
                     }
 
                     }
@@ -19571,7 +19571,7 @@
     public final void rule__IfExpCS__OwnedConditionAlternatives_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5549:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt68=2;
@@ -19584,7 +19584,7 @@
                     // InternalOCLinEcore.g:5551:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
+                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleExpCS();
@@ -19592,7 +19592,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
+                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
                     }
 
                     }
@@ -19607,7 +19607,7 @@
                     // InternalOCLinEcore.g:5557:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
+                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePatternExpCS();
@@ -19615,7 +19615,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
+                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
                     }
 
                     }
@@ -19645,7 +19645,7 @@
     public final void rule__MultiplicityCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5571:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
             int alt69=2;
@@ -19672,7 +19672,7 @@
                     // InternalOCLinEcore.g:5573:1: ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMultiplicityBoundsCS();
@@ -19680,7 +19680,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
                     }
 
                     }
@@ -19695,7 +19695,7 @@
                     // InternalOCLinEcore.g:5579:1: ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMultiplicityStringCS();
@@ -19703,7 +19703,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
                     }
 
                     }
@@ -19733,7 +19733,7 @@
     public final void rule__MultiplicityCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5593:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
             int alt70=2;
@@ -19760,11 +19760,11 @@
                     // InternalOCLinEcore.g:5595:1: '|?'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
                     }
                     match(input,94,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
                     }
 
                     }
@@ -19779,7 +19779,7 @@
                     // InternalOCLinEcore.g:5603:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
                     // InternalOCLinEcore.g:5604:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     // InternalOCLinEcore.g:5604:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
@@ -19793,7 +19793,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
 
                     }
@@ -19823,7 +19823,7 @@
     public final void rule__MultiplicityStringCS__StringBoundsAlternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5617:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
             int alt71=3;
@@ -19859,11 +19859,11 @@
                     // InternalOCLinEcore.g:5619:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
                     }
                     match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
                     }
 
                     }
@@ -19878,11 +19878,11 @@
                     // InternalOCLinEcore.g:5627:1: '+'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
                     }
                     match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
                     }
 
                     }
@@ -19897,11 +19897,11 @@
                     // InternalOCLinEcore.g:5635:1: '?'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
                     }
                     match(input,95,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
                     }
 
                     }
@@ -19931,7 +19931,7 @@
     public final void rule__TypeRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5651:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
             int alt72=2;
@@ -19958,7 +19958,7 @@
                     // InternalOCLinEcore.g:5653:1: ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+                       before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypedRefCS();
@@ -19966,7 +19966,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+                       after(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
                     }
 
                     }
@@ -19981,7 +19981,7 @@
                     // InternalOCLinEcore.g:5659:1: ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+                       before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleWildcardTypeRefCS();
@@ -19989,7 +19989,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+                       after(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
                     }
 
                     }
@@ -20019,7 +20019,7 @@
     public final void rule__ID__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5673:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
             int alt73=2;
@@ -20046,11 +20046,11 @@
                     // InternalOCLinEcore.g:5675:1: RULE_SIMPLE_ID
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+                       before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
                     }
                     match(input,RULE_SIMPLE_ID,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+                       after(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
                     }
 
                     }
@@ -20065,11 +20065,11 @@
                     // InternalOCLinEcore.g:5681:1: RULE_ESCAPED_ID
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+                       before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
                     }
                     match(input,RULE_ESCAPED_ID,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+                       after(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
                     }
 
                     }
@@ -20099,7 +20099,7 @@
     public final void rule__UPPER__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5695:1: ( ( RULE_INT ) | ( '*' ) )
             int alt74=2;
@@ -20126,11 +20126,11 @@
                     // InternalOCLinEcore.g:5697:1: RULE_INT
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+                       before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
                     }
                     match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+                       after(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
                     }
 
                     }
@@ -20145,11 +20145,11 @@
                     // InternalOCLinEcore.g:5703:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+                       before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
                     }
                     match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+                       after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
                     }
 
                     }
@@ -20179,7 +20179,7 @@
     public final void rule__TopLevelCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5721:1: ( rule__TopLevelCS__Group__0__Impl rule__TopLevelCS__Group__1 )
             // InternalOCLinEcore.g:5722:2: rule__TopLevelCS__Group__0__Impl rule__TopLevelCS__Group__1
@@ -20217,7 +20217,7 @@
     public final void rule__TopLevelCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5733:1: ( ( () ) )
             // InternalOCLinEcore.g:5734:1: ( () )
@@ -20226,15 +20226,15 @@
             // InternalOCLinEcore.g:5735:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTopLevelCSAccess().getTopLevelCSAction_0()); 
+               before(grammarAccess.getTopLevelCSAccess().getTopLevelCSAction_0());
             }
             // InternalOCLinEcore.g:5736:1: ()
-            // InternalOCLinEcore.g:5738:1: 
+            // InternalOCLinEcore.g:5738:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTopLevelCSAccess().getTopLevelCSAction_0()); 
+               after(grammarAccess.getTopLevelCSAccess().getTopLevelCSAction_0());
             }
 
             }
@@ -20258,7 +20258,7 @@
     public final void rule__TopLevelCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5752:1: ( rule__TopLevelCS__Group__1__Impl rule__TopLevelCS__Group__2 )
             // InternalOCLinEcore.g:5753:2: rule__TopLevelCS__Group__1__Impl rule__TopLevelCS__Group__2
@@ -20296,7 +20296,7 @@
     public final void rule__TopLevelCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5764:1: ( ( ( rule__TopLevelCS__Group_1__0 )? ) )
             // InternalOCLinEcore.g:5765:1: ( ( rule__TopLevelCS__Group_1__0 )? )
@@ -20305,7 +20305,7 @@
             // InternalOCLinEcore.g:5766:1: ( rule__TopLevelCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTopLevelCSAccess().getGroup_1()); 
+               before(grammarAccess.getTopLevelCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:5767:1: ( rule__TopLevelCS__Group_1__0 )?
             int alt75=2;
@@ -20330,7 +20330,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTopLevelCSAccess().getGroup_1()); 
+               after(grammarAccess.getTopLevelCSAccess().getGroup_1());
             }
 
             }
@@ -20358,7 +20358,7 @@
     public final void rule__TopLevelCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5781:1: ( rule__TopLevelCS__Group__2__Impl rule__TopLevelCS__Group__3 )
             // InternalOCLinEcore.g:5782:2: rule__TopLevelCS__Group__2__Impl rule__TopLevelCS__Group__3
@@ -20396,7 +20396,7 @@
     public final void rule__TopLevelCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5793:1: ( ( ( rule__TopLevelCS__OwnedImportsAssignment_2 )* ) )
             // InternalOCLinEcore.g:5794:1: ( ( rule__TopLevelCS__OwnedImportsAssignment_2 )* )
@@ -20405,7 +20405,7 @@
             // InternalOCLinEcore.g:5795:1: ( rule__TopLevelCS__OwnedImportsAssignment_2 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTopLevelCSAccess().getOwnedImportsAssignment_2()); 
+               before(grammarAccess.getTopLevelCSAccess().getOwnedImportsAssignment_2());
             }
             // InternalOCLinEcore.g:5796:1: ( rule__TopLevelCS__OwnedImportsAssignment_2 )*
             loop76:
@@ -20437,7 +20437,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTopLevelCSAccess().getOwnedImportsAssignment_2()); 
+               after(grammarAccess.getTopLevelCSAccess().getOwnedImportsAssignment_2());
             }
 
             }
@@ -20465,7 +20465,7 @@
     public final void rule__TopLevelCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5810:1: ( rule__TopLevelCS__Group__3__Impl )
             // InternalOCLinEcore.g:5811:2: rule__TopLevelCS__Group__3__Impl
@@ -20498,7 +20498,7 @@
     public final void rule__TopLevelCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5821:1: ( ( ( rule__TopLevelCS__OwnedPackagesAssignment_3 )* ) )
             // InternalOCLinEcore.g:5822:1: ( ( rule__TopLevelCS__OwnedPackagesAssignment_3 )* )
@@ -20507,7 +20507,7 @@
             // InternalOCLinEcore.g:5823:1: ( rule__TopLevelCS__OwnedPackagesAssignment_3 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTopLevelCSAccess().getOwnedPackagesAssignment_3()); 
+               before(grammarAccess.getTopLevelCSAccess().getOwnedPackagesAssignment_3());
             }
             // InternalOCLinEcore.g:5824:1: ( rule__TopLevelCS__OwnedPackagesAssignment_3 )*
             loop77:
@@ -20539,7 +20539,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTopLevelCSAccess().getOwnedPackagesAssignment_3()); 
+               after(grammarAccess.getTopLevelCSAccess().getOwnedPackagesAssignment_3());
             }
 
             }
@@ -20567,7 +20567,7 @@
     public final void rule__TopLevelCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5846:1: ( rule__TopLevelCS__Group_1__0__Impl rule__TopLevelCS__Group_1__1 )
             // InternalOCLinEcore.g:5847:2: rule__TopLevelCS__Group_1__0__Impl rule__TopLevelCS__Group_1__1
@@ -20605,7 +20605,7 @@
     public final void rule__TopLevelCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5858:1: ( ( 'module' ) )
             // InternalOCLinEcore.g:5859:1: ( 'module' )
@@ -20614,11 +20614,11 @@
             // InternalOCLinEcore.g:5860:1: 'module'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTopLevelCSAccess().getModuleKeyword_1_0()); 
+               before(grammarAccess.getTopLevelCSAccess().getModuleKeyword_1_0());
             }
             match(input,35,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTopLevelCSAccess().getModuleKeyword_1_0()); 
+               after(grammarAccess.getTopLevelCSAccess().getModuleKeyword_1_0());
             }
 
             }
@@ -20646,7 +20646,7 @@
     public final void rule__TopLevelCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5877:1: ( rule__TopLevelCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:5878:2: rule__TopLevelCS__Group_1__1__Impl
@@ -20679,7 +20679,7 @@
     public final void rule__TopLevelCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5888:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:5889:1: ( ruleUnrestrictedName )
@@ -20688,7 +20688,7 @@
             // InternalOCLinEcore.g:5890:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTopLevelCSAccess().getUnrestrictedNameParserRuleCall_1_1()); 
+               before(grammarAccess.getTopLevelCSAccess().getUnrestrictedNameParserRuleCall_1_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -20696,7 +20696,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTopLevelCSAccess().getUnrestrictedNameParserRuleCall_1_1()); 
+               after(grammarAccess.getTopLevelCSAccess().getUnrestrictedNameParserRuleCall_1_1());
             }
 
             }
@@ -20724,7 +20724,7 @@
     public final void rule__SIGNED__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5909:1: ( rule__SIGNED__Group__0__Impl rule__SIGNED__Group__1 )
             // InternalOCLinEcore.g:5910:2: rule__SIGNED__Group__0__Impl rule__SIGNED__Group__1
@@ -20762,7 +20762,7 @@
     public final void rule__SIGNED__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5921:1: ( ( ( '-' )? ) )
             // InternalOCLinEcore.g:5922:1: ( ( '-' )? )
@@ -20771,7 +20771,7 @@
             // InternalOCLinEcore.g:5923:1: ( '-' )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSIGNEDAccess().getHyphenMinusKeyword_0()); 
+               before(grammarAccess.getSIGNEDAccess().getHyphenMinusKeyword_0());
             }
             // InternalOCLinEcore.g:5924:1: ( '-' )?
             int alt78=2;
@@ -20792,7 +20792,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSIGNEDAccess().getHyphenMinusKeyword_0()); 
+               after(grammarAccess.getSIGNEDAccess().getHyphenMinusKeyword_0());
             }
 
             }
@@ -20820,7 +20820,7 @@
     public final void rule__SIGNED__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5940:1: ( rule__SIGNED__Group__1__Impl )
             // InternalOCLinEcore.g:5941:2: rule__SIGNED__Group__1__Impl
@@ -20853,7 +20853,7 @@
     public final void rule__SIGNED__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5951:1: ( ( RULE_INT ) )
             // InternalOCLinEcore.g:5952:1: ( RULE_INT )
@@ -20862,11 +20862,11 @@
             // InternalOCLinEcore.g:5953:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSIGNEDAccess().getINTTerminalRuleCall_1()); 
+               before(grammarAccess.getSIGNEDAccess().getINTTerminalRuleCall_1());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSIGNEDAccess().getINTTerminalRuleCall_1()); 
+               after(grammarAccess.getSIGNEDAccess().getINTTerminalRuleCall_1());
             }
 
             }
@@ -20894,7 +20894,7 @@
     public final void rule__InvariantConstraintCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5972:1: ( rule__InvariantConstraintCS__Group__0__Impl rule__InvariantConstraintCS__Group__1 )
             // InternalOCLinEcore.g:5973:2: rule__InvariantConstraintCS__Group__0__Impl rule__InvariantConstraintCS__Group__1
@@ -20932,7 +20932,7 @@
     public final void rule__InvariantConstraintCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:5984:1: ( ( ( rule__InvariantConstraintCS__IsCallableAssignment_0 )? ) )
             // InternalOCLinEcore.g:5985:1: ( ( rule__InvariantConstraintCS__IsCallableAssignment_0 )? )
@@ -20941,7 +20941,7 @@
             // InternalOCLinEcore.g:5986:1: ( rule__InvariantConstraintCS__IsCallableAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getIsCallableAssignment_0()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getIsCallableAssignment_0());
             }
             // InternalOCLinEcore.g:5987:1: ( rule__InvariantConstraintCS__IsCallableAssignment_0 )?
             int alt79=2;
@@ -20966,7 +20966,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getIsCallableAssignment_0()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getIsCallableAssignment_0());
             }
 
             }
@@ -20994,7 +20994,7 @@
     public final void rule__InvariantConstraintCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6001:1: ( rule__InvariantConstraintCS__Group__1__Impl rule__InvariantConstraintCS__Group__2 )
             // InternalOCLinEcore.g:6002:2: rule__InvariantConstraintCS__Group__1__Impl rule__InvariantConstraintCS__Group__2
@@ -21032,7 +21032,7 @@
     public final void rule__InvariantConstraintCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6013:1: ( ( ( rule__InvariantConstraintCS__StereotypeAssignment_1 ) ) )
             // InternalOCLinEcore.g:6014:1: ( ( rule__InvariantConstraintCS__StereotypeAssignment_1 ) )
@@ -21041,7 +21041,7 @@
             // InternalOCLinEcore.g:6015:1: ( rule__InvariantConstraintCS__StereotypeAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getStereotypeAssignment_1()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getStereotypeAssignment_1());
             }
             // InternalOCLinEcore.g:6016:1: ( rule__InvariantConstraintCS__StereotypeAssignment_1 )
             // InternalOCLinEcore.g:6016:2: rule__InvariantConstraintCS__StereotypeAssignment_1
@@ -21055,7 +21055,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getStereotypeAssignment_1()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getStereotypeAssignment_1());
             }
 
             }
@@ -21083,7 +21083,7 @@
     public final void rule__InvariantConstraintCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6030:1: ( rule__InvariantConstraintCS__Group__2__Impl rule__InvariantConstraintCS__Group__3 )
             // InternalOCLinEcore.g:6031:2: rule__InvariantConstraintCS__Group__2__Impl rule__InvariantConstraintCS__Group__3
@@ -21121,7 +21121,7 @@
     public final void rule__InvariantConstraintCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6042:1: ( ( ( rule__InvariantConstraintCS__Group_2__0 )? ) )
             // InternalOCLinEcore.g:6043:1: ( ( rule__InvariantConstraintCS__Group_2__0 )? )
@@ -21130,7 +21130,7 @@
             // InternalOCLinEcore.g:6044:1: ( rule__InvariantConstraintCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getGroup_2()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getGroup_2());
             }
             // InternalOCLinEcore.g:6045:1: ( rule__InvariantConstraintCS__Group_2__0 )?
             int alt80=2;
@@ -21155,7 +21155,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getGroup_2()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getGroup_2());
             }
 
             }
@@ -21183,7 +21183,7 @@
     public final void rule__InvariantConstraintCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6059:1: ( rule__InvariantConstraintCS__Group__3__Impl )
             // InternalOCLinEcore.g:6060:2: rule__InvariantConstraintCS__Group__3__Impl
@@ -21216,7 +21216,7 @@
     public final void rule__InvariantConstraintCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6070:1: ( ( ( rule__InvariantConstraintCS__Alternatives_3 ) ) )
             // InternalOCLinEcore.g:6071:1: ( ( rule__InvariantConstraintCS__Alternatives_3 ) )
@@ -21225,7 +21225,7 @@
             // InternalOCLinEcore.g:6072:1: ( rule__InvariantConstraintCS__Alternatives_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getAlternatives_3()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getAlternatives_3());
             }
             // InternalOCLinEcore.g:6073:1: ( rule__InvariantConstraintCS__Alternatives_3 )
             // InternalOCLinEcore.g:6073:2: rule__InvariantConstraintCS__Alternatives_3
@@ -21239,7 +21239,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getAlternatives_3()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getAlternatives_3());
             }
 
             }
@@ -21267,7 +21267,7 @@
     public final void rule__InvariantConstraintCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6095:1: ( rule__InvariantConstraintCS__Group_2__0__Impl rule__InvariantConstraintCS__Group_2__1 )
             // InternalOCLinEcore.g:6096:2: rule__InvariantConstraintCS__Group_2__0__Impl rule__InvariantConstraintCS__Group_2__1
@@ -21305,7 +21305,7 @@
     public final void rule__InvariantConstraintCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6107:1: ( ( ( rule__InvariantConstraintCS__NameAssignment_2_0 ) ) )
             // InternalOCLinEcore.g:6108:1: ( ( rule__InvariantConstraintCS__NameAssignment_2_0 ) )
@@ -21314,7 +21314,7 @@
             // InternalOCLinEcore.g:6109:1: ( rule__InvariantConstraintCS__NameAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getNameAssignment_2_0()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getNameAssignment_2_0());
             }
             // InternalOCLinEcore.g:6110:1: ( rule__InvariantConstraintCS__NameAssignment_2_0 )
             // InternalOCLinEcore.g:6110:2: rule__InvariantConstraintCS__NameAssignment_2_0
@@ -21328,7 +21328,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getNameAssignment_2_0()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getNameAssignment_2_0());
             }
 
             }
@@ -21356,7 +21356,7 @@
     public final void rule__InvariantConstraintCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6124:1: ( rule__InvariantConstraintCS__Group_2__1__Impl )
             // InternalOCLinEcore.g:6125:2: rule__InvariantConstraintCS__Group_2__1__Impl
@@ -21389,7 +21389,7 @@
     public final void rule__InvariantConstraintCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6135:1: ( ( ( rule__InvariantConstraintCS__Group_2_1__0 )? ) )
             // InternalOCLinEcore.g:6136:1: ( ( rule__InvariantConstraintCS__Group_2_1__0 )? )
@@ -21398,7 +21398,7 @@
             // InternalOCLinEcore.g:6137:1: ( rule__InvariantConstraintCS__Group_2_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getGroup_2_1());
             }
             // InternalOCLinEcore.g:6138:1: ( rule__InvariantConstraintCS__Group_2_1__0 )?
             int alt81=2;
@@ -21423,7 +21423,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getGroup_2_1());
             }
 
             }
@@ -21451,7 +21451,7 @@
     public final void rule__InvariantConstraintCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6156:1: ( rule__InvariantConstraintCS__Group_2_1__0__Impl rule__InvariantConstraintCS__Group_2_1__1 )
             // InternalOCLinEcore.g:6157:2: rule__InvariantConstraintCS__Group_2_1__0__Impl rule__InvariantConstraintCS__Group_2_1__1
@@ -21489,7 +21489,7 @@
     public final void rule__InvariantConstraintCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6168:1: ( ( '(' ) )
             // InternalOCLinEcore.g:6169:1: ( '(' )
@@ -21498,11 +21498,11 @@
             // InternalOCLinEcore.g:6170:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getLeftParenthesisKeyword_2_1_0()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getLeftParenthesisKeyword_2_1_0());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getLeftParenthesisKeyword_2_1_0()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getLeftParenthesisKeyword_2_1_0());
             }
 
             }
@@ -21530,7 +21530,7 @@
     public final void rule__InvariantConstraintCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6187:1: ( rule__InvariantConstraintCS__Group_2_1__1__Impl rule__InvariantConstraintCS__Group_2_1__2 )
             // InternalOCLinEcore.g:6188:2: rule__InvariantConstraintCS__Group_2_1__1__Impl rule__InvariantConstraintCS__Group_2_1__2
@@ -21568,7 +21568,7 @@
     public final void rule__InvariantConstraintCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6199:1: ( ( ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 ) ) )
             // InternalOCLinEcore.g:6200:1: ( ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 ) )
@@ -21577,7 +21577,7 @@
             // InternalOCLinEcore.g:6201:1: ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationAssignment_2_1_1()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationAssignment_2_1_1());
             }
             // InternalOCLinEcore.g:6202:1: ( rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1 )
             // InternalOCLinEcore.g:6202:2: rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1
@@ -21591,7 +21591,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationAssignment_2_1_1()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationAssignment_2_1_1());
             }
 
             }
@@ -21619,7 +21619,7 @@
     public final void rule__InvariantConstraintCS__Group_2_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6216:1: ( rule__InvariantConstraintCS__Group_2_1__2__Impl )
             // InternalOCLinEcore.g:6217:2: rule__InvariantConstraintCS__Group_2_1__2__Impl
@@ -21652,7 +21652,7 @@
     public final void rule__InvariantConstraintCS__Group_2_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6227:1: ( ( ')' ) )
             // InternalOCLinEcore.g:6228:1: ( ')' )
@@ -21661,11 +21661,11 @@
             // InternalOCLinEcore.g:6229:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getRightParenthesisKeyword_2_1_2()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getRightParenthesisKeyword_2_1_2());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getRightParenthesisKeyword_2_1_2()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getRightParenthesisKeyword_2_1_2());
             }
 
             }
@@ -21693,7 +21693,7 @@
     public final void rule__InvariantConstraintCS__Group_3_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6252:1: ( rule__InvariantConstraintCS__Group_3_0__0__Impl rule__InvariantConstraintCS__Group_3_0__1 )
             // InternalOCLinEcore.g:6253:2: rule__InvariantConstraintCS__Group_3_0__0__Impl rule__InvariantConstraintCS__Group_3_0__1
@@ -21731,7 +21731,7 @@
     public final void rule__InvariantConstraintCS__Group_3_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6264:1: ( ( ':' ) )
             // InternalOCLinEcore.g:6265:1: ( ':' )
@@ -21740,11 +21740,11 @@
             // InternalOCLinEcore.g:6266:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getColonKeyword_3_0_0()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getColonKeyword_3_0_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getColonKeyword_3_0_0()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getColonKeyword_3_0_0());
             }
 
             }
@@ -21772,7 +21772,7 @@
     public final void rule__InvariantConstraintCS__Group_3_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6283:1: ( rule__InvariantConstraintCS__Group_3_0__1__Impl rule__InvariantConstraintCS__Group_3_0__2 )
             // InternalOCLinEcore.g:6284:2: rule__InvariantConstraintCS__Group_3_0__1__Impl rule__InvariantConstraintCS__Group_3_0__2
@@ -21810,7 +21810,7 @@
     public final void rule__InvariantConstraintCS__Group_3_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6295:1: ( ( ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )? ) )
             // InternalOCLinEcore.g:6296:1: ( ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )? )
@@ -21819,7 +21819,7 @@
             // InternalOCLinEcore.g:6297:1: ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationAssignment_3_0_1()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationAssignment_3_0_1());
             }
             // InternalOCLinEcore.g:6298:1: ( rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1 )?
             int alt82=2;
@@ -21844,7 +21844,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationAssignment_3_0_1()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationAssignment_3_0_1());
             }
 
             }
@@ -21872,7 +21872,7 @@
     public final void rule__InvariantConstraintCS__Group_3_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6312:1: ( rule__InvariantConstraintCS__Group_3_0__2__Impl )
             // InternalOCLinEcore.g:6313:2: rule__InvariantConstraintCS__Group_3_0__2__Impl
@@ -21905,7 +21905,7 @@
     public final void rule__InvariantConstraintCS__Group_3_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6323:1: ( ( ';' ) )
             // InternalOCLinEcore.g:6324:1: ( ';' )
@@ -21914,11 +21914,11 @@
             // InternalOCLinEcore.g:6325:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_0_2()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_0_2());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_0_2()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_0_2());
             }
 
             }
@@ -21946,7 +21946,7 @@
     public final void rule__PostconditionConstraintCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6348:1: ( rule__PostconditionConstraintCS__Group__0__Impl rule__PostconditionConstraintCS__Group__1 )
             // InternalOCLinEcore.g:6349:2: rule__PostconditionConstraintCS__Group__0__Impl rule__PostconditionConstraintCS__Group__1
@@ -21984,7 +21984,7 @@
     public final void rule__PostconditionConstraintCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6360:1: ( ( ( rule__PostconditionConstraintCS__StereotypeAssignment_0 ) ) )
             // InternalOCLinEcore.g:6361:1: ( ( rule__PostconditionConstraintCS__StereotypeAssignment_0 ) )
@@ -21993,7 +21993,7 @@
             // InternalOCLinEcore.g:6362:1: ( rule__PostconditionConstraintCS__StereotypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getStereotypeAssignment_0()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getStereotypeAssignment_0());
             }
             // InternalOCLinEcore.g:6363:1: ( rule__PostconditionConstraintCS__StereotypeAssignment_0 )
             // InternalOCLinEcore.g:6363:2: rule__PostconditionConstraintCS__StereotypeAssignment_0
@@ -22007,7 +22007,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getStereotypeAssignment_0()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getStereotypeAssignment_0());
             }
 
             }
@@ -22035,7 +22035,7 @@
     public final void rule__PostconditionConstraintCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6377:1: ( rule__PostconditionConstraintCS__Group__1__Impl rule__PostconditionConstraintCS__Group__2 )
             // InternalOCLinEcore.g:6378:2: rule__PostconditionConstraintCS__Group__1__Impl rule__PostconditionConstraintCS__Group__2
@@ -22073,7 +22073,7 @@
     public final void rule__PostconditionConstraintCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6389:1: ( ( ( rule__PostconditionConstraintCS__Group_1__0 )? ) )
             // InternalOCLinEcore.g:6390:1: ( ( rule__PostconditionConstraintCS__Group_1__0 )? )
@@ -22082,7 +22082,7 @@
             // InternalOCLinEcore.g:6391:1: ( rule__PostconditionConstraintCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getGroup_1()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:6392:1: ( rule__PostconditionConstraintCS__Group_1__0 )?
             int alt83=2;
@@ -22107,7 +22107,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getGroup_1()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getGroup_1());
             }
 
             }
@@ -22135,7 +22135,7 @@
     public final void rule__PostconditionConstraintCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6406:1: ( rule__PostconditionConstraintCS__Group__2__Impl rule__PostconditionConstraintCS__Group__3 )
             // InternalOCLinEcore.g:6407:2: rule__PostconditionConstraintCS__Group__2__Impl rule__PostconditionConstraintCS__Group__3
@@ -22173,7 +22173,7 @@
     public final void rule__PostconditionConstraintCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6418:1: ( ( ':' ) )
             // InternalOCLinEcore.g:6419:1: ( ':' )
@@ -22182,11 +22182,11 @@
             // InternalOCLinEcore.g:6420:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getColonKeyword_2()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getColonKeyword_2());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getColonKeyword_2()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getColonKeyword_2());
             }
 
             }
@@ -22214,7 +22214,7 @@
     public final void rule__PostconditionConstraintCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6437:1: ( rule__PostconditionConstraintCS__Group__3__Impl rule__PostconditionConstraintCS__Group__4 )
             // InternalOCLinEcore.g:6438:2: rule__PostconditionConstraintCS__Group__3__Impl rule__PostconditionConstraintCS__Group__4
@@ -22252,7 +22252,7 @@
     public final void rule__PostconditionConstraintCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6449:1: ( ( ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )? ) )
             // InternalOCLinEcore.g:6450:1: ( ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )? )
@@ -22261,7 +22261,7 @@
             // InternalOCLinEcore.g:6451:1: ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationAssignment_3()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationAssignment_3());
             }
             // InternalOCLinEcore.g:6452:1: ( rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3 )?
             int alt84=2;
@@ -22286,7 +22286,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationAssignment_3()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationAssignment_3());
             }
 
             }
@@ -22314,7 +22314,7 @@
     public final void rule__PostconditionConstraintCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6466:1: ( rule__PostconditionConstraintCS__Group__4__Impl )
             // InternalOCLinEcore.g:6467:2: rule__PostconditionConstraintCS__Group__4__Impl
@@ -22347,7 +22347,7 @@
     public final void rule__PostconditionConstraintCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6477:1: ( ( ';' ) )
             // InternalOCLinEcore.g:6478:1: ( ';' )
@@ -22356,11 +22356,11 @@
             // InternalOCLinEcore.g:6479:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getSemicolonKeyword_4()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getSemicolonKeyword_4());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getSemicolonKeyword_4()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getSemicolonKeyword_4());
             }
 
             }
@@ -22388,7 +22388,7 @@
     public final void rule__PostconditionConstraintCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6506:1: ( rule__PostconditionConstraintCS__Group_1__0__Impl rule__PostconditionConstraintCS__Group_1__1 )
             // InternalOCLinEcore.g:6507:2: rule__PostconditionConstraintCS__Group_1__0__Impl rule__PostconditionConstraintCS__Group_1__1
@@ -22426,7 +22426,7 @@
     public final void rule__PostconditionConstraintCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6518:1: ( ( ( rule__PostconditionConstraintCS__NameAssignment_1_0 ) ) )
             // InternalOCLinEcore.g:6519:1: ( ( rule__PostconditionConstraintCS__NameAssignment_1_0 ) )
@@ -22435,7 +22435,7 @@
             // InternalOCLinEcore.g:6520:1: ( rule__PostconditionConstraintCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getNameAssignment_1_0()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getNameAssignment_1_0());
             }
             // InternalOCLinEcore.g:6521:1: ( rule__PostconditionConstraintCS__NameAssignment_1_0 )
             // InternalOCLinEcore.g:6521:2: rule__PostconditionConstraintCS__NameAssignment_1_0
@@ -22449,7 +22449,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getNameAssignment_1_0()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getNameAssignment_1_0());
             }
 
             }
@@ -22477,7 +22477,7 @@
     public final void rule__PostconditionConstraintCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6535:1: ( rule__PostconditionConstraintCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:6536:2: rule__PostconditionConstraintCS__Group_1__1__Impl
@@ -22510,7 +22510,7 @@
     public final void rule__PostconditionConstraintCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6546:1: ( ( ( rule__PostconditionConstraintCS__Group_1_1__0 )? ) )
             // InternalOCLinEcore.g:6547:1: ( ( rule__PostconditionConstraintCS__Group_1_1__0 )? )
@@ -22519,7 +22519,7 @@
             // InternalOCLinEcore.g:6548:1: ( rule__PostconditionConstraintCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getGroup_1_1());
             }
             // InternalOCLinEcore.g:6549:1: ( rule__PostconditionConstraintCS__Group_1_1__0 )?
             int alt85=2;
@@ -22544,7 +22544,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getGroup_1_1());
             }
 
             }
@@ -22572,7 +22572,7 @@
     public final void rule__PostconditionConstraintCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6567:1: ( rule__PostconditionConstraintCS__Group_1_1__0__Impl rule__PostconditionConstraintCS__Group_1_1__1 )
             // InternalOCLinEcore.g:6568:2: rule__PostconditionConstraintCS__Group_1_1__0__Impl rule__PostconditionConstraintCS__Group_1_1__1
@@ -22610,7 +22610,7 @@
     public final void rule__PostconditionConstraintCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6579:1: ( ( '(' ) )
             // InternalOCLinEcore.g:6580:1: ( '(' )
@@ -22619,11 +22619,11 @@
             // InternalOCLinEcore.g:6581:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0());
             }
 
             }
@@ -22651,7 +22651,7 @@
     public final void rule__PostconditionConstraintCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6598:1: ( rule__PostconditionConstraintCS__Group_1_1__1__Impl rule__PostconditionConstraintCS__Group_1_1__2 )
             // InternalOCLinEcore.g:6599:2: rule__PostconditionConstraintCS__Group_1_1__1__Impl rule__PostconditionConstraintCS__Group_1_1__2
@@ -22689,7 +22689,7 @@
     public final void rule__PostconditionConstraintCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6610:1: ( ( ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
             // InternalOCLinEcore.g:6611:1: ( ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
@@ -22698,7 +22698,7 @@
             // InternalOCLinEcore.g:6612:1: ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationAssignment_1_1_1()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
             // InternalOCLinEcore.g:6613:1: ( rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 )
             // InternalOCLinEcore.g:6613:2: rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1
@@ -22712,7 +22712,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationAssignment_1_1_1()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
 
             }
@@ -22740,7 +22740,7 @@
     public final void rule__PostconditionConstraintCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6627:1: ( rule__PostconditionConstraintCS__Group_1_1__2__Impl )
             // InternalOCLinEcore.g:6628:2: rule__PostconditionConstraintCS__Group_1_1__2__Impl
@@ -22773,7 +22773,7 @@
     public final void rule__PostconditionConstraintCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6638:1: ( ( ')' ) )
             // InternalOCLinEcore.g:6639:1: ( ')' )
@@ -22782,11 +22782,11 @@
             // InternalOCLinEcore.g:6640:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2());
             }
 
             }
@@ -22814,7 +22814,7 @@
     public final void rule__PreconditionConstraintCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6663:1: ( rule__PreconditionConstraintCS__Group__0__Impl rule__PreconditionConstraintCS__Group__1 )
             // InternalOCLinEcore.g:6664:2: rule__PreconditionConstraintCS__Group__0__Impl rule__PreconditionConstraintCS__Group__1
@@ -22852,7 +22852,7 @@
     public final void rule__PreconditionConstraintCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6675:1: ( ( ( rule__PreconditionConstraintCS__StereotypeAssignment_0 ) ) )
             // InternalOCLinEcore.g:6676:1: ( ( rule__PreconditionConstraintCS__StereotypeAssignment_0 ) )
@@ -22861,7 +22861,7 @@
             // InternalOCLinEcore.g:6677:1: ( rule__PreconditionConstraintCS__StereotypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getStereotypeAssignment_0()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getStereotypeAssignment_0());
             }
             // InternalOCLinEcore.g:6678:1: ( rule__PreconditionConstraintCS__StereotypeAssignment_0 )
             // InternalOCLinEcore.g:6678:2: rule__PreconditionConstraintCS__StereotypeAssignment_0
@@ -22875,7 +22875,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getStereotypeAssignment_0()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getStereotypeAssignment_0());
             }
 
             }
@@ -22903,7 +22903,7 @@
     public final void rule__PreconditionConstraintCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6692:1: ( rule__PreconditionConstraintCS__Group__1__Impl rule__PreconditionConstraintCS__Group__2 )
             // InternalOCLinEcore.g:6693:2: rule__PreconditionConstraintCS__Group__1__Impl rule__PreconditionConstraintCS__Group__2
@@ -22941,7 +22941,7 @@
     public final void rule__PreconditionConstraintCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6704:1: ( ( ( rule__PreconditionConstraintCS__Group_1__0 )? ) )
             // InternalOCLinEcore.g:6705:1: ( ( rule__PreconditionConstraintCS__Group_1__0 )? )
@@ -22950,7 +22950,7 @@
             // InternalOCLinEcore.g:6706:1: ( rule__PreconditionConstraintCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getGroup_1()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:6707:1: ( rule__PreconditionConstraintCS__Group_1__0 )?
             int alt86=2;
@@ -22975,7 +22975,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getGroup_1()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getGroup_1());
             }
 
             }
@@ -23003,7 +23003,7 @@
     public final void rule__PreconditionConstraintCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6721:1: ( rule__PreconditionConstraintCS__Group__2__Impl rule__PreconditionConstraintCS__Group__3 )
             // InternalOCLinEcore.g:6722:2: rule__PreconditionConstraintCS__Group__2__Impl rule__PreconditionConstraintCS__Group__3
@@ -23041,7 +23041,7 @@
     public final void rule__PreconditionConstraintCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6733:1: ( ( ':' ) )
             // InternalOCLinEcore.g:6734:1: ( ':' )
@@ -23050,11 +23050,11 @@
             // InternalOCLinEcore.g:6735:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getColonKeyword_2()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getColonKeyword_2());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getColonKeyword_2()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getColonKeyword_2());
             }
 
             }
@@ -23082,7 +23082,7 @@
     public final void rule__PreconditionConstraintCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6752:1: ( rule__PreconditionConstraintCS__Group__3__Impl rule__PreconditionConstraintCS__Group__4 )
             // InternalOCLinEcore.g:6753:2: rule__PreconditionConstraintCS__Group__3__Impl rule__PreconditionConstraintCS__Group__4
@@ -23120,7 +23120,7 @@
     public final void rule__PreconditionConstraintCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6764:1: ( ( ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )? ) )
             // InternalOCLinEcore.g:6765:1: ( ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )? )
@@ -23129,7 +23129,7 @@
             // InternalOCLinEcore.g:6766:1: ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationAssignment_3()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationAssignment_3());
             }
             // InternalOCLinEcore.g:6767:1: ( rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3 )?
             int alt87=2;
@@ -23154,7 +23154,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationAssignment_3()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationAssignment_3());
             }
 
             }
@@ -23182,7 +23182,7 @@
     public final void rule__PreconditionConstraintCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6781:1: ( rule__PreconditionConstraintCS__Group__4__Impl )
             // InternalOCLinEcore.g:6782:2: rule__PreconditionConstraintCS__Group__4__Impl
@@ -23215,7 +23215,7 @@
     public final void rule__PreconditionConstraintCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6792:1: ( ( ';' ) )
             // InternalOCLinEcore.g:6793:1: ( ';' )
@@ -23224,11 +23224,11 @@
             // InternalOCLinEcore.g:6794:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getSemicolonKeyword_4()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getSemicolonKeyword_4());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getSemicolonKeyword_4()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getSemicolonKeyword_4());
             }
 
             }
@@ -23256,7 +23256,7 @@
     public final void rule__PreconditionConstraintCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6821:1: ( rule__PreconditionConstraintCS__Group_1__0__Impl rule__PreconditionConstraintCS__Group_1__1 )
             // InternalOCLinEcore.g:6822:2: rule__PreconditionConstraintCS__Group_1__0__Impl rule__PreconditionConstraintCS__Group_1__1
@@ -23294,7 +23294,7 @@
     public final void rule__PreconditionConstraintCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6833:1: ( ( ( rule__PreconditionConstraintCS__NameAssignment_1_0 ) ) )
             // InternalOCLinEcore.g:6834:1: ( ( rule__PreconditionConstraintCS__NameAssignment_1_0 ) )
@@ -23303,7 +23303,7 @@
             // InternalOCLinEcore.g:6835:1: ( rule__PreconditionConstraintCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getNameAssignment_1_0()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getNameAssignment_1_0());
             }
             // InternalOCLinEcore.g:6836:1: ( rule__PreconditionConstraintCS__NameAssignment_1_0 )
             // InternalOCLinEcore.g:6836:2: rule__PreconditionConstraintCS__NameAssignment_1_0
@@ -23317,7 +23317,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getNameAssignment_1_0()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getNameAssignment_1_0());
             }
 
             }
@@ -23345,7 +23345,7 @@
     public final void rule__PreconditionConstraintCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6850:1: ( rule__PreconditionConstraintCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:6851:2: rule__PreconditionConstraintCS__Group_1__1__Impl
@@ -23378,7 +23378,7 @@
     public final void rule__PreconditionConstraintCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6861:1: ( ( ( rule__PreconditionConstraintCS__Group_1_1__0 )? ) )
             // InternalOCLinEcore.g:6862:1: ( ( rule__PreconditionConstraintCS__Group_1_1__0 )? )
@@ -23387,7 +23387,7 @@
             // InternalOCLinEcore.g:6863:1: ( rule__PreconditionConstraintCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getGroup_1_1());
             }
             // InternalOCLinEcore.g:6864:1: ( rule__PreconditionConstraintCS__Group_1_1__0 )?
             int alt88=2;
@@ -23412,7 +23412,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getGroup_1_1());
             }
 
             }
@@ -23440,7 +23440,7 @@
     public final void rule__PreconditionConstraintCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6882:1: ( rule__PreconditionConstraintCS__Group_1_1__0__Impl rule__PreconditionConstraintCS__Group_1_1__1 )
             // InternalOCLinEcore.g:6883:2: rule__PreconditionConstraintCS__Group_1_1__0__Impl rule__PreconditionConstraintCS__Group_1_1__1
@@ -23478,7 +23478,7 @@
     public final void rule__PreconditionConstraintCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6894:1: ( ( '(' ) )
             // InternalOCLinEcore.g:6895:1: ( '(' )
@@ -23487,11 +23487,11 @@
             // InternalOCLinEcore.g:6896:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0());
             }
 
             }
@@ -23519,7 +23519,7 @@
     public final void rule__PreconditionConstraintCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6913:1: ( rule__PreconditionConstraintCS__Group_1_1__1__Impl rule__PreconditionConstraintCS__Group_1_1__2 )
             // InternalOCLinEcore.g:6914:2: rule__PreconditionConstraintCS__Group_1_1__1__Impl rule__PreconditionConstraintCS__Group_1_1__2
@@ -23557,7 +23557,7 @@
     public final void rule__PreconditionConstraintCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6925:1: ( ( ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
             // InternalOCLinEcore.g:6926:1: ( ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
@@ -23566,7 +23566,7 @@
             // InternalOCLinEcore.g:6927:1: ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationAssignment_1_1_1()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
             // InternalOCLinEcore.g:6928:1: ( rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1 )
             // InternalOCLinEcore.g:6928:2: rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1
@@ -23580,7 +23580,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationAssignment_1_1_1()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
 
             }
@@ -23608,7 +23608,7 @@
     public final void rule__PreconditionConstraintCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6942:1: ( rule__PreconditionConstraintCS__Group_1_1__2__Impl )
             // InternalOCLinEcore.g:6943:2: rule__PreconditionConstraintCS__Group_1_1__2__Impl
@@ -23641,7 +23641,7 @@
     public final void rule__PreconditionConstraintCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6953:1: ( ( ')' ) )
             // InternalOCLinEcore.g:6954:1: ( ')' )
@@ -23650,11 +23650,11 @@
             // InternalOCLinEcore.g:6955:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2());
             }
 
             }
@@ -23682,7 +23682,7 @@
     public final void rule__AnnotationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6978:1: ( rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1 )
             // InternalOCLinEcore.g:6979:2: rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1
@@ -23720,7 +23720,7 @@
     public final void rule__AnnotationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:6990:1: ( ( () ) )
             // InternalOCLinEcore.g:6991:1: ( () )
@@ -23729,15 +23729,15 @@
             // InternalOCLinEcore.g:6992:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getAnnotationCSAction_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getAnnotationCSAction_0());
             }
             // InternalOCLinEcore.g:6993:1: ()
-            // InternalOCLinEcore.g:6995:1: 
+            // InternalOCLinEcore.g:6995:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getAnnotationCSAction_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getAnnotationCSAction_0());
             }
 
             }
@@ -23761,7 +23761,7 @@
     public final void rule__AnnotationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7009:1: ( rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2 )
             // InternalOCLinEcore.g:7010:2: rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2
@@ -23799,7 +23799,7 @@
     public final void rule__AnnotationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7021:1: ( ( 'annotation' ) )
             // InternalOCLinEcore.g:7022:1: ( 'annotation' )
@@ -23808,11 +23808,11 @@
             // InternalOCLinEcore.g:7023:1: 'annotation'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_1()); 
+               before(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_1());
             }
             match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_1()); 
+               after(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_1());
             }
 
             }
@@ -23840,7 +23840,7 @@
     public final void rule__AnnotationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7040:1: ( rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3 )
             // InternalOCLinEcore.g:7041:2: rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3
@@ -23878,7 +23878,7 @@
     public final void rule__AnnotationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7052:1: ( ( ( rule__AnnotationCS__NameAssignment_2 )? ) )
             // InternalOCLinEcore.g:7053:1: ( ( rule__AnnotationCS__NameAssignment_2 )? )
@@ -23887,7 +23887,7 @@
             // InternalOCLinEcore.g:7054:1: ( rule__AnnotationCS__NameAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getNameAssignment_2()); 
+               before(grammarAccess.getAnnotationCSAccess().getNameAssignment_2());
             }
             // InternalOCLinEcore.g:7055:1: ( rule__AnnotationCS__NameAssignment_2 )?
             int alt89=2;
@@ -23912,7 +23912,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getNameAssignment_2()); 
+               after(grammarAccess.getAnnotationCSAccess().getNameAssignment_2());
             }
 
             }
@@ -23940,7 +23940,7 @@
     public final void rule__AnnotationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7069:1: ( rule__AnnotationCS__Group__3__Impl rule__AnnotationCS__Group__4 )
             // InternalOCLinEcore.g:7070:2: rule__AnnotationCS__Group__3__Impl rule__AnnotationCS__Group__4
@@ -23978,7 +23978,7 @@
     public final void rule__AnnotationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7081:1: ( ( ( rule__AnnotationCS__Group_3__0 )? ) )
             // InternalOCLinEcore.g:7082:1: ( ( rule__AnnotationCS__Group_3__0 )? )
@@ -23987,7 +23987,7 @@
             // InternalOCLinEcore.g:7083:1: ( rule__AnnotationCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getGroup_3()); 
+               before(grammarAccess.getAnnotationCSAccess().getGroup_3());
             }
             // InternalOCLinEcore.g:7084:1: ( rule__AnnotationCS__Group_3__0 )?
             int alt90=2;
@@ -24012,7 +24012,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getGroup_3()); 
+               after(grammarAccess.getAnnotationCSAccess().getGroup_3());
             }
 
             }
@@ -24040,7 +24040,7 @@
     public final void rule__AnnotationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7098:1: ( rule__AnnotationCS__Group__4__Impl )
             // InternalOCLinEcore.g:7099:2: rule__AnnotationCS__Group__4__Impl
@@ -24073,7 +24073,7 @@
     public final void rule__AnnotationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7109:1: ( ( ( rule__AnnotationCS__Alternatives_4 ) ) )
             // InternalOCLinEcore.g:7110:1: ( ( rule__AnnotationCS__Alternatives_4 ) )
@@ -24082,7 +24082,7 @@
             // InternalOCLinEcore.g:7111:1: ( rule__AnnotationCS__Alternatives_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getAlternatives_4()); 
+               before(grammarAccess.getAnnotationCSAccess().getAlternatives_4());
             }
             // InternalOCLinEcore.g:7112:1: ( rule__AnnotationCS__Alternatives_4 )
             // InternalOCLinEcore.g:7112:2: rule__AnnotationCS__Alternatives_4
@@ -24096,7 +24096,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getAlternatives_4()); 
+               after(grammarAccess.getAnnotationCSAccess().getAlternatives_4());
             }
 
             }
@@ -24124,7 +24124,7 @@
     public final void rule__AnnotationCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7136:1: ( rule__AnnotationCS__Group_3__0__Impl rule__AnnotationCS__Group_3__1 )
             // InternalOCLinEcore.g:7137:2: rule__AnnotationCS__Group_3__0__Impl rule__AnnotationCS__Group_3__1
@@ -24162,7 +24162,7 @@
     public final void rule__AnnotationCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7148:1: ( ( '(' ) )
             // InternalOCLinEcore.g:7149:1: ( '(' )
@@ -24171,11 +24171,11 @@
             // InternalOCLinEcore.g:7150:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_3_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_3_0());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_3_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_3_0());
             }
 
             }
@@ -24203,7 +24203,7 @@
     public final void rule__AnnotationCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7167:1: ( rule__AnnotationCS__Group_3__1__Impl rule__AnnotationCS__Group_3__2 )
             // InternalOCLinEcore.g:7168:2: rule__AnnotationCS__Group_3__1__Impl rule__AnnotationCS__Group_3__2
@@ -24241,7 +24241,7 @@
     public final void rule__AnnotationCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7179:1: ( ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 ) ) )
             // InternalOCLinEcore.g:7180:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 ) )
@@ -24250,7 +24250,7 @@
             // InternalOCLinEcore.g:7181:1: ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_3_1()); 
+               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_3_1());
             }
             // InternalOCLinEcore.g:7182:1: ( rule__AnnotationCS__OwnedDetailsAssignment_3_1 )
             // InternalOCLinEcore.g:7182:2: rule__AnnotationCS__OwnedDetailsAssignment_3_1
@@ -24264,7 +24264,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_3_1()); 
+               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_3_1());
             }
 
             }
@@ -24292,7 +24292,7 @@
     public final void rule__AnnotationCS__Group_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7196:1: ( rule__AnnotationCS__Group_3__2__Impl rule__AnnotationCS__Group_3__3 )
             // InternalOCLinEcore.g:7197:2: rule__AnnotationCS__Group_3__2__Impl rule__AnnotationCS__Group_3__3
@@ -24330,7 +24330,7 @@
     public final void rule__AnnotationCS__Group_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7208:1: ( ( ( rule__AnnotationCS__Group_3_2__0 )* ) )
             // InternalOCLinEcore.g:7209:1: ( ( rule__AnnotationCS__Group_3_2__0 )* )
@@ -24339,7 +24339,7 @@
             // InternalOCLinEcore.g:7210:1: ( rule__AnnotationCS__Group_3_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getGroup_3_2()); 
+               before(grammarAccess.getAnnotationCSAccess().getGroup_3_2());
             }
             // InternalOCLinEcore.g:7211:1: ( rule__AnnotationCS__Group_3_2__0 )*
             loop91:
@@ -24371,7 +24371,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getGroup_3_2()); 
+               after(grammarAccess.getAnnotationCSAccess().getGroup_3_2());
             }
 
             }
@@ -24399,7 +24399,7 @@
     public final void rule__AnnotationCS__Group_3__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7225:1: ( rule__AnnotationCS__Group_3__3__Impl )
             // InternalOCLinEcore.g:7226:2: rule__AnnotationCS__Group_3__3__Impl
@@ -24432,7 +24432,7 @@
     public final void rule__AnnotationCS__Group_3__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7236:1: ( ( ')' ) )
             // InternalOCLinEcore.g:7237:1: ( ')' )
@@ -24441,11 +24441,11 @@
             // InternalOCLinEcore.g:7238:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_3_3()); 
+               before(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_3_3());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_3_3()); 
+               after(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_3_3());
             }
 
             }
@@ -24473,7 +24473,7 @@
     public final void rule__AnnotationCS__Group_3_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7263:1: ( rule__AnnotationCS__Group_3_2__0__Impl rule__AnnotationCS__Group_3_2__1 )
             // InternalOCLinEcore.g:7264:2: rule__AnnotationCS__Group_3_2__0__Impl rule__AnnotationCS__Group_3_2__1
@@ -24511,7 +24511,7 @@
     public final void rule__AnnotationCS__Group_3_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7275:1: ( ( ',' ) )
             // InternalOCLinEcore.g:7276:1: ( ',' )
@@ -24520,11 +24520,11 @@
             // InternalOCLinEcore.g:7277:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getCommaKeyword_3_2_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getCommaKeyword_3_2_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getCommaKeyword_3_2_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getCommaKeyword_3_2_0());
             }
 
             }
@@ -24552,7 +24552,7 @@
     public final void rule__AnnotationCS__Group_3_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7294:1: ( rule__AnnotationCS__Group_3_2__1__Impl )
             // InternalOCLinEcore.g:7295:2: rule__AnnotationCS__Group_3_2__1__Impl
@@ -24585,7 +24585,7 @@
     public final void rule__AnnotationCS__Group_3_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7305:1: ( ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 ) ) )
             // InternalOCLinEcore.g:7306:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 ) )
@@ -24594,7 +24594,7 @@
             // InternalOCLinEcore.g:7307:1: ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_3_2_1()); 
+               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_3_2_1());
             }
             // InternalOCLinEcore.g:7308:1: ( rule__AnnotationCS__OwnedDetailsAssignment_3_2_1 )
             // InternalOCLinEcore.g:7308:2: rule__AnnotationCS__OwnedDetailsAssignment_3_2_1
@@ -24608,7 +24608,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_3_2_1()); 
+               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_3_2_1());
             }
 
             }
@@ -24636,7 +24636,7 @@
     public final void rule__AnnotationCS__Group_4_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7326:1: ( rule__AnnotationCS__Group_4_0__0__Impl rule__AnnotationCS__Group_4_0__1 )
             // InternalOCLinEcore.g:7327:2: rule__AnnotationCS__Group_4_0__0__Impl rule__AnnotationCS__Group_4_0__1
@@ -24674,7 +24674,7 @@
     public final void rule__AnnotationCS__Group_4_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7338:1: ( ( '{' ) )
             // InternalOCLinEcore.g:7339:1: ( '{' )
@@ -24683,11 +24683,11 @@
             // InternalOCLinEcore.g:7340:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_4_0_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_4_0_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_4_0_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_4_0_0());
             }
 
             }
@@ -24715,7 +24715,7 @@
     public final void rule__AnnotationCS__Group_4_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7357:1: ( rule__AnnotationCS__Group_4_0__1__Impl rule__AnnotationCS__Group_4_0__2 )
             // InternalOCLinEcore.g:7358:2: rule__AnnotationCS__Group_4_0__1__Impl rule__AnnotationCS__Group_4_0__2
@@ -24753,7 +24753,7 @@
     public final void rule__AnnotationCS__Group_4_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7369:1: ( ( ( ( rule__AnnotationCS__Alternatives_4_0_1 ) ) ( ( rule__AnnotationCS__Alternatives_4_0_1 )* ) ) )
             // InternalOCLinEcore.g:7370:1: ( ( ( rule__AnnotationCS__Alternatives_4_0_1 ) ) ( ( rule__AnnotationCS__Alternatives_4_0_1 )* ) )
@@ -24765,7 +24765,7 @@
             // InternalOCLinEcore.g:7372:1: ( rule__AnnotationCS__Alternatives_4_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getAlternatives_4_0_1()); 
+               before(grammarAccess.getAnnotationCSAccess().getAlternatives_4_0_1());
             }
             // InternalOCLinEcore.g:7373:1: ( rule__AnnotationCS__Alternatives_4_0_1 )
             // InternalOCLinEcore.g:7373:2: rule__AnnotationCS__Alternatives_4_0_1
@@ -24779,7 +24779,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getAlternatives_4_0_1()); 
+               after(grammarAccess.getAnnotationCSAccess().getAlternatives_4_0_1());
             }
 
             }
@@ -24788,7 +24788,7 @@
             // InternalOCLinEcore.g:7377:1: ( rule__AnnotationCS__Alternatives_4_0_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getAlternatives_4_0_1()); 
+               before(grammarAccess.getAnnotationCSAccess().getAlternatives_4_0_1());
             }
             // InternalOCLinEcore.g:7378:1: ( rule__AnnotationCS__Alternatives_4_0_1 )*
             loop92:
@@ -24820,7 +24820,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getAlternatives_4_0_1()); 
+               after(grammarAccess.getAnnotationCSAccess().getAlternatives_4_0_1());
             }
 
             }
@@ -24851,7 +24851,7 @@
     public final void rule__AnnotationCS__Group_4_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7393:1: ( rule__AnnotationCS__Group_4_0__2__Impl )
             // InternalOCLinEcore.g:7394:2: rule__AnnotationCS__Group_4_0__2__Impl
@@ -24884,7 +24884,7 @@
     public final void rule__AnnotationCS__Group_4_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7404:1: ( ( '}' ) )
             // InternalOCLinEcore.g:7405:1: ( '}' )
@@ -24893,11 +24893,11 @@
             // InternalOCLinEcore.g:7406:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_4_0_2()); 
+               before(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_4_0_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_4_0_2()); 
+               after(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_4_0_2());
             }
 
             }
@@ -24925,7 +24925,7 @@
     public final void rule__AttributeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7429:1: ( rule__AttributeCS__Group__0__Impl rule__AttributeCS__Group__1 )
             // InternalOCLinEcore.g:7430:2: rule__AttributeCS__Group__0__Impl rule__AttributeCS__Group__1
@@ -24963,7 +24963,7 @@
     public final void rule__AttributeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7441:1: ( ( ( rule__AttributeCS__Alternatives_0 )? ) )
             // InternalOCLinEcore.g:7442:1: ( ( rule__AttributeCS__Alternatives_0 )? )
@@ -24972,7 +24972,7 @@
             // InternalOCLinEcore.g:7443:1: ( rule__AttributeCS__Alternatives_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getAlternatives_0()); 
+               before(grammarAccess.getAttributeCSAccess().getAlternatives_0());
             }
             // InternalOCLinEcore.g:7444:1: ( rule__AttributeCS__Alternatives_0 )?
             int alt93=2;
@@ -24997,7 +24997,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getAlternatives_0()); 
+               after(grammarAccess.getAttributeCSAccess().getAlternatives_0());
             }
 
             }
@@ -25025,7 +25025,7 @@
     public final void rule__AttributeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7458:1: ( rule__AttributeCS__Group__1__Impl rule__AttributeCS__Group__2 )
             // InternalOCLinEcore.g:7459:2: rule__AttributeCS__Group__1__Impl rule__AttributeCS__Group__2
@@ -25063,7 +25063,7 @@
     public final void rule__AttributeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7470:1: ( ( 'attribute' ) )
             // InternalOCLinEcore.g:7471:1: ( 'attribute' )
@@ -25072,11 +25072,11 @@
             // InternalOCLinEcore.g:7472:1: 'attribute'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getAttributeKeyword_1()); 
+               before(grammarAccess.getAttributeCSAccess().getAttributeKeyword_1());
             }
             match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getAttributeKeyword_1()); 
+               after(grammarAccess.getAttributeCSAccess().getAttributeKeyword_1());
             }
 
             }
@@ -25104,7 +25104,7 @@
     public final void rule__AttributeCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7489:1: ( rule__AttributeCS__Group__2__Impl rule__AttributeCS__Group__3 )
             // InternalOCLinEcore.g:7490:2: rule__AttributeCS__Group__2__Impl rule__AttributeCS__Group__3
@@ -25142,7 +25142,7 @@
     public final void rule__AttributeCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7501:1: ( ( ( rule__AttributeCS__NameAssignment_2 ) ) )
             // InternalOCLinEcore.g:7502:1: ( ( rule__AttributeCS__NameAssignment_2 ) )
@@ -25151,7 +25151,7 @@
             // InternalOCLinEcore.g:7503:1: ( rule__AttributeCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getNameAssignment_2()); 
+               before(grammarAccess.getAttributeCSAccess().getNameAssignment_2());
             }
             // InternalOCLinEcore.g:7504:1: ( rule__AttributeCS__NameAssignment_2 )
             // InternalOCLinEcore.g:7504:2: rule__AttributeCS__NameAssignment_2
@@ -25165,7 +25165,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getNameAssignment_2()); 
+               after(grammarAccess.getAttributeCSAccess().getNameAssignment_2());
             }
 
             }
@@ -25193,7 +25193,7 @@
     public final void rule__AttributeCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7518:1: ( rule__AttributeCS__Group__3__Impl rule__AttributeCS__Group__4 )
             // InternalOCLinEcore.g:7519:2: rule__AttributeCS__Group__3__Impl rule__AttributeCS__Group__4
@@ -25231,7 +25231,7 @@
     public final void rule__AttributeCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7530:1: ( ( ( rule__AttributeCS__Group_3__0 )? ) )
             // InternalOCLinEcore.g:7531:1: ( ( rule__AttributeCS__Group_3__0 )? )
@@ -25240,7 +25240,7 @@
             // InternalOCLinEcore.g:7532:1: ( rule__AttributeCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getGroup_3()); 
+               before(grammarAccess.getAttributeCSAccess().getGroup_3());
             }
             // InternalOCLinEcore.g:7533:1: ( rule__AttributeCS__Group_3__0 )?
             int alt94=2;
@@ -25265,7 +25265,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getGroup_3()); 
+               after(grammarAccess.getAttributeCSAccess().getGroup_3());
             }
 
             }
@@ -25293,7 +25293,7 @@
     public final void rule__AttributeCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7547:1: ( rule__AttributeCS__Group__4__Impl rule__AttributeCS__Group__5 )
             // InternalOCLinEcore.g:7548:2: rule__AttributeCS__Group__4__Impl rule__AttributeCS__Group__5
@@ -25331,7 +25331,7 @@
     public final void rule__AttributeCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7559:1: ( ( ( rule__AttributeCS__Group_4__0 )? ) )
             // InternalOCLinEcore.g:7560:1: ( ( rule__AttributeCS__Group_4__0 )? )
@@ -25340,7 +25340,7 @@
             // InternalOCLinEcore.g:7561:1: ( rule__AttributeCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getGroup_4()); 
+               before(grammarAccess.getAttributeCSAccess().getGroup_4());
             }
             // InternalOCLinEcore.g:7562:1: ( rule__AttributeCS__Group_4__0 )?
             int alt95=2;
@@ -25365,7 +25365,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getGroup_4()); 
+               after(grammarAccess.getAttributeCSAccess().getGroup_4());
             }
 
             }
@@ -25393,7 +25393,7 @@
     public final void rule__AttributeCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7576:1: ( rule__AttributeCS__Group__5__Impl rule__AttributeCS__Group__6 )
             // InternalOCLinEcore.g:7577:2: rule__AttributeCS__Group__5__Impl rule__AttributeCS__Group__6
@@ -25431,7 +25431,7 @@
     public final void rule__AttributeCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7588:1: ( ( ( rule__AttributeCS__Group_5__0 )? ) )
             // InternalOCLinEcore.g:7589:1: ( ( rule__AttributeCS__Group_5__0 )? )
@@ -25440,7 +25440,7 @@
             // InternalOCLinEcore.g:7590:1: ( rule__AttributeCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getGroup_5()); 
+               before(grammarAccess.getAttributeCSAccess().getGroup_5());
             }
             // InternalOCLinEcore.g:7591:1: ( rule__AttributeCS__Group_5__0 )?
             int alt96=2;
@@ -25469,7 +25469,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getGroup_5()); 
+               after(grammarAccess.getAttributeCSAccess().getGroup_5());
             }
 
             }
@@ -25497,7 +25497,7 @@
     public final void rule__AttributeCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7605:1: ( rule__AttributeCS__Group__6__Impl )
             // InternalOCLinEcore.g:7606:2: rule__AttributeCS__Group__6__Impl
@@ -25530,7 +25530,7 @@
     public final void rule__AttributeCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7616:1: ( ( ( rule__AttributeCS__Alternatives_6 ) ) )
             // InternalOCLinEcore.g:7617:1: ( ( rule__AttributeCS__Alternatives_6 ) )
@@ -25539,7 +25539,7 @@
             // InternalOCLinEcore.g:7618:1: ( rule__AttributeCS__Alternatives_6 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getAlternatives_6()); 
+               before(grammarAccess.getAttributeCSAccess().getAlternatives_6());
             }
             // InternalOCLinEcore.g:7619:1: ( rule__AttributeCS__Alternatives_6 )
             // InternalOCLinEcore.g:7619:2: rule__AttributeCS__Alternatives_6
@@ -25553,7 +25553,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getAlternatives_6()); 
+               after(grammarAccess.getAttributeCSAccess().getAlternatives_6());
             }
 
             }
@@ -25581,7 +25581,7 @@
     public final void rule__AttributeCS__Group_0_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7647:1: ( rule__AttributeCS__Group_0_0__0__Impl rule__AttributeCS__Group_0_0__1 )
             // InternalOCLinEcore.g:7648:2: rule__AttributeCS__Group_0_0__0__Impl rule__AttributeCS__Group_0_0__1
@@ -25619,7 +25619,7 @@
     public final void rule__AttributeCS__Group_0_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7659:1: ( ( ( rule__AttributeCS__QualifiersAssignment_0_0_0 ) ) )
             // InternalOCLinEcore.g:7660:1: ( ( rule__AttributeCS__QualifiersAssignment_0_0_0 ) )
@@ -25628,7 +25628,7 @@
             // InternalOCLinEcore.g:7661:1: ( rule__AttributeCS__QualifiersAssignment_0_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_0_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_0_0());
             }
             // InternalOCLinEcore.g:7662:1: ( rule__AttributeCS__QualifiersAssignment_0_0_0 )
             // InternalOCLinEcore.g:7662:2: rule__AttributeCS__QualifiersAssignment_0_0_0
@@ -25642,7 +25642,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_0_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_0_0());
             }
 
             }
@@ -25670,7 +25670,7 @@
     public final void rule__AttributeCS__Group_0_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7676:1: ( rule__AttributeCS__Group_0_0__1__Impl )
             // InternalOCLinEcore.g:7677:2: rule__AttributeCS__Group_0_0__1__Impl
@@ -25703,7 +25703,7 @@
     public final void rule__AttributeCS__Group_0_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7687:1: ( ( ( rule__AttributeCS__QualifiersAssignment_0_0_1 )? ) )
             // InternalOCLinEcore.g:7688:1: ( ( rule__AttributeCS__QualifiersAssignment_0_0_1 )? )
@@ -25712,7 +25712,7 @@
             // InternalOCLinEcore.g:7689:1: ( rule__AttributeCS__QualifiersAssignment_0_0_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_0_1()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_0_1());
             }
             // InternalOCLinEcore.g:7690:1: ( rule__AttributeCS__QualifiersAssignment_0_0_1 )?
             int alt97=2;
@@ -25737,7 +25737,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_0_1()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_0_1());
             }
 
             }
@@ -25765,7 +25765,7 @@
     public final void rule__AttributeCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7708:1: ( rule__AttributeCS__Group_0_1__0__Impl rule__AttributeCS__Group_0_1__1 )
             // InternalOCLinEcore.g:7709:2: rule__AttributeCS__Group_0_1__0__Impl rule__AttributeCS__Group_0_1__1
@@ -25803,7 +25803,7 @@
     public final void rule__AttributeCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7720:1: ( ( ( rule__AttributeCS__QualifiersAssignment_0_1_0 ) ) )
             // InternalOCLinEcore.g:7721:1: ( ( rule__AttributeCS__QualifiersAssignment_0_1_0 ) )
@@ -25812,7 +25812,7 @@
             // InternalOCLinEcore.g:7722:1: ( rule__AttributeCS__QualifiersAssignment_0_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_1_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_1_0());
             }
             // InternalOCLinEcore.g:7723:1: ( rule__AttributeCS__QualifiersAssignment_0_1_0 )
             // InternalOCLinEcore.g:7723:2: rule__AttributeCS__QualifiersAssignment_0_1_0
@@ -25826,7 +25826,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_1_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_1_0());
             }
 
             }
@@ -25854,7 +25854,7 @@
     public final void rule__AttributeCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7737:1: ( rule__AttributeCS__Group_0_1__1__Impl )
             // InternalOCLinEcore.g:7738:2: rule__AttributeCS__Group_0_1__1__Impl
@@ -25887,7 +25887,7 @@
     public final void rule__AttributeCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7748:1: ( ( ( rule__AttributeCS__QualifiersAssignment_0_1_1 )? ) )
             // InternalOCLinEcore.g:7749:1: ( ( rule__AttributeCS__QualifiersAssignment_0_1_1 )? )
@@ -25896,7 +25896,7 @@
             // InternalOCLinEcore.g:7750:1: ( rule__AttributeCS__QualifiersAssignment_0_1_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_1_1()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_1_1());
             }
             // InternalOCLinEcore.g:7751:1: ( rule__AttributeCS__QualifiersAssignment_0_1_1 )?
             int alt98=2;
@@ -25921,7 +25921,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_1_1()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersAssignment_0_1_1());
             }
 
             }
@@ -25949,7 +25949,7 @@
     public final void rule__AttributeCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7769:1: ( rule__AttributeCS__Group_3__0__Impl rule__AttributeCS__Group_3__1 )
             // InternalOCLinEcore.g:7770:2: rule__AttributeCS__Group_3__0__Impl rule__AttributeCS__Group_3__1
@@ -25987,7 +25987,7 @@
     public final void rule__AttributeCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7781:1: ( ( ':' ) )
             // InternalOCLinEcore.g:7782:1: ( ':' )
@@ -25996,11 +25996,11 @@
             // InternalOCLinEcore.g:7783:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getColonKeyword_3_0()); 
+               before(grammarAccess.getAttributeCSAccess().getColonKeyword_3_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getColonKeyword_3_0()); 
+               after(grammarAccess.getAttributeCSAccess().getColonKeyword_3_0());
             }
 
             }
@@ -26028,7 +26028,7 @@
     public final void rule__AttributeCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7800:1: ( rule__AttributeCS__Group_3__1__Impl )
             // InternalOCLinEcore.g:7801:2: rule__AttributeCS__Group_3__1__Impl
@@ -26061,7 +26061,7 @@
     public final void rule__AttributeCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7811:1: ( ( ( rule__AttributeCS__OwnedTypeAssignment_3_1 ) ) )
             // InternalOCLinEcore.g:7812:1: ( ( rule__AttributeCS__OwnedTypeAssignment_3_1 ) )
@@ -26070,7 +26070,7 @@
             // InternalOCLinEcore.g:7813:1: ( rule__AttributeCS__OwnedTypeAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getOwnedTypeAssignment_3_1()); 
+               before(grammarAccess.getAttributeCSAccess().getOwnedTypeAssignment_3_1());
             }
             // InternalOCLinEcore.g:7814:1: ( rule__AttributeCS__OwnedTypeAssignment_3_1 )
             // InternalOCLinEcore.g:7814:2: rule__AttributeCS__OwnedTypeAssignment_3_1
@@ -26084,7 +26084,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getOwnedTypeAssignment_3_1()); 
+               after(grammarAccess.getAttributeCSAccess().getOwnedTypeAssignment_3_1());
             }
 
             }
@@ -26112,7 +26112,7 @@
     public final void rule__AttributeCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7832:1: ( rule__AttributeCS__Group_4__0__Impl rule__AttributeCS__Group_4__1 )
             // InternalOCLinEcore.g:7833:2: rule__AttributeCS__Group_4__0__Impl rule__AttributeCS__Group_4__1
@@ -26150,7 +26150,7 @@
     public final void rule__AttributeCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7844:1: ( ( '=' ) )
             // InternalOCLinEcore.g:7845:1: ( '=' )
@@ -26159,11 +26159,11 @@
             // InternalOCLinEcore.g:7846:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getEqualsSignKeyword_4_0()); 
+               before(grammarAccess.getAttributeCSAccess().getEqualsSignKeyword_4_0());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getEqualsSignKeyword_4_0()); 
+               after(grammarAccess.getAttributeCSAccess().getEqualsSignKeyword_4_0());
             }
 
             }
@@ -26191,7 +26191,7 @@
     public final void rule__AttributeCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7863:1: ( rule__AttributeCS__Group_4__1__Impl )
             // InternalOCLinEcore.g:7864:2: rule__AttributeCS__Group_4__1__Impl
@@ -26224,7 +26224,7 @@
     public final void rule__AttributeCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7874:1: ( ( ( rule__AttributeCS__DefaultAssignment_4_1 ) ) )
             // InternalOCLinEcore.g:7875:1: ( ( rule__AttributeCS__DefaultAssignment_4_1 ) )
@@ -26233,7 +26233,7 @@
             // InternalOCLinEcore.g:7876:1: ( rule__AttributeCS__DefaultAssignment_4_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getDefaultAssignment_4_1()); 
+               before(grammarAccess.getAttributeCSAccess().getDefaultAssignment_4_1());
             }
             // InternalOCLinEcore.g:7877:1: ( rule__AttributeCS__DefaultAssignment_4_1 )
             // InternalOCLinEcore.g:7877:2: rule__AttributeCS__DefaultAssignment_4_1
@@ -26247,7 +26247,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getDefaultAssignment_4_1()); 
+               after(grammarAccess.getAttributeCSAccess().getDefaultAssignment_4_1());
             }
 
             }
@@ -26275,7 +26275,7 @@
     public final void rule__AttributeCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7895:1: ( rule__AttributeCS__Group_5__0__Impl rule__AttributeCS__Group_5__1 )
             // InternalOCLinEcore.g:7896:2: rule__AttributeCS__Group_5__0__Impl rule__AttributeCS__Group_5__1
@@ -26313,7 +26313,7 @@
     public final void rule__AttributeCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7907:1: ( ( '{' ) )
             // InternalOCLinEcore.g:7908:1: ( '{' )
@@ -26322,11 +26322,11 @@
             // InternalOCLinEcore.g:7909:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_5_0()); 
+               before(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_5_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_5_0()); 
+               after(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_5_0());
             }
 
             }
@@ -26354,7 +26354,7 @@
     public final void rule__AttributeCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7926:1: ( rule__AttributeCS__Group_5__1__Impl rule__AttributeCS__Group_5__2 )
             // InternalOCLinEcore.g:7927:2: rule__AttributeCS__Group_5__1__Impl rule__AttributeCS__Group_5__2
@@ -26392,7 +26392,7 @@
     public final void rule__AttributeCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7938:1: ( ( ( ( rule__AttributeCS__Group_5_1__0 ) ) ( ( rule__AttributeCS__Group_5_1__0 )* ) ) )
             // InternalOCLinEcore.g:7939:1: ( ( ( rule__AttributeCS__Group_5_1__0 ) ) ( ( rule__AttributeCS__Group_5_1__0 )* ) )
@@ -26404,7 +26404,7 @@
             // InternalOCLinEcore.g:7941:1: ( rule__AttributeCS__Group_5_1__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getGroup_5_1()); 
+               before(grammarAccess.getAttributeCSAccess().getGroup_5_1());
             }
             // InternalOCLinEcore.g:7942:1: ( rule__AttributeCS__Group_5_1__0 )
             // InternalOCLinEcore.g:7942:2: rule__AttributeCS__Group_5_1__0
@@ -26418,7 +26418,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getGroup_5_1()); 
+               after(grammarAccess.getAttributeCSAccess().getGroup_5_1());
             }
 
             }
@@ -26427,7 +26427,7 @@
             // InternalOCLinEcore.g:7946:1: ( rule__AttributeCS__Group_5_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getGroup_5_1()); 
+               before(grammarAccess.getAttributeCSAccess().getGroup_5_1());
             }
             // InternalOCLinEcore.g:7947:1: ( rule__AttributeCS__Group_5_1__0 )*
             loop99:
@@ -26459,7 +26459,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getGroup_5_1()); 
+               after(grammarAccess.getAttributeCSAccess().getGroup_5_1());
             }
 
             }
@@ -26490,7 +26490,7 @@
     public final void rule__AttributeCS__Group_5__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7962:1: ( rule__AttributeCS__Group_5__2__Impl )
             // InternalOCLinEcore.g:7963:2: rule__AttributeCS__Group_5__2__Impl
@@ -26523,7 +26523,7 @@
     public final void rule__AttributeCS__Group_5__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7973:1: ( ( '}' ) )
             // InternalOCLinEcore.g:7974:1: ( '}' )
@@ -26532,11 +26532,11 @@
             // InternalOCLinEcore.g:7975:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_5_2()); 
+               before(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_5_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_5_2()); 
+               after(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_5_2());
             }
 
             }
@@ -26564,7 +26564,7 @@
     public final void rule__AttributeCS__Group_5_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:7998:1: ( rule__AttributeCS__Group_5_1__0__Impl rule__AttributeCS__Group_5_1__1 )
             // InternalOCLinEcore.g:7999:2: rule__AttributeCS__Group_5_1__0__Impl rule__AttributeCS__Group_5_1__1
@@ -26602,7 +26602,7 @@
     public final void rule__AttributeCS__Group_5_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8010:1: ( ( ( rule__AttributeCS__Alternatives_5_1_0 ) ) )
             // InternalOCLinEcore.g:8011:1: ( ( rule__AttributeCS__Alternatives_5_1_0 ) )
@@ -26611,7 +26611,7 @@
             // InternalOCLinEcore.g:8012:1: ( rule__AttributeCS__Alternatives_5_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getAlternatives_5_1_0()); 
+               before(grammarAccess.getAttributeCSAccess().getAlternatives_5_1_0());
             }
             // InternalOCLinEcore.g:8013:1: ( rule__AttributeCS__Alternatives_5_1_0 )
             // InternalOCLinEcore.g:8013:2: rule__AttributeCS__Alternatives_5_1_0
@@ -26625,7 +26625,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getAlternatives_5_1_0()); 
+               after(grammarAccess.getAttributeCSAccess().getAlternatives_5_1_0());
             }
 
             }
@@ -26653,7 +26653,7 @@
     public final void rule__AttributeCS__Group_5_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8027:1: ( rule__AttributeCS__Group_5_1__1__Impl )
             // InternalOCLinEcore.g:8028:2: rule__AttributeCS__Group_5_1__1__Impl
@@ -26686,7 +26686,7 @@
     public final void rule__AttributeCS__Group_5_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8038:1: ( ( ( ',' )? ) )
             // InternalOCLinEcore.g:8039:1: ( ( ',' )? )
@@ -26695,7 +26695,7 @@
             // InternalOCLinEcore.g:8040:1: ( ',' )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getCommaKeyword_5_1_1()); 
+               before(grammarAccess.getAttributeCSAccess().getCommaKeyword_5_1_1());
             }
             // InternalOCLinEcore.g:8041:1: ( ',' )?
             int alt100=2;
@@ -26716,7 +26716,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getCommaKeyword_5_1_1()); 
+               after(grammarAccess.getAttributeCSAccess().getCommaKeyword_5_1_1());
             }
 
             }
@@ -26744,7 +26744,7 @@
     public final void rule__AttributeCS__Group_6_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8061:1: ( rule__AttributeCS__Group_6_0__0__Impl rule__AttributeCS__Group_6_0__1 )
             // InternalOCLinEcore.g:8062:2: rule__AttributeCS__Group_6_0__0__Impl rule__AttributeCS__Group_6_0__1
@@ -26782,7 +26782,7 @@
     public final void rule__AttributeCS__Group_6_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8073:1: ( ( '{' ) )
             // InternalOCLinEcore.g:8074:1: ( '{' )
@@ -26791,11 +26791,11 @@
             // InternalOCLinEcore.g:8075:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_6_0_0()); 
+               before(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_6_0_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_6_0_0()); 
+               after(grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_6_0_0());
             }
 
             }
@@ -26823,7 +26823,7 @@
     public final void rule__AttributeCS__Group_6_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8092:1: ( rule__AttributeCS__Group_6_0__1__Impl rule__AttributeCS__Group_6_0__2 )
             // InternalOCLinEcore.g:8093:2: rule__AttributeCS__Group_6_0__1__Impl rule__AttributeCS__Group_6_0__2
@@ -26861,7 +26861,7 @@
     public final void rule__AttributeCS__Group_6_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8104:1: ( ( ( rule__AttributeCS__Alternatives_6_0_1 )* ) )
             // InternalOCLinEcore.g:8105:1: ( ( rule__AttributeCS__Alternatives_6_0_1 )* )
@@ -26870,7 +26870,7 @@
             // InternalOCLinEcore.g:8106:1: ( rule__AttributeCS__Alternatives_6_0_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getAlternatives_6_0_1()); 
+               before(grammarAccess.getAttributeCSAccess().getAlternatives_6_0_1());
             }
             // InternalOCLinEcore.g:8107:1: ( rule__AttributeCS__Alternatives_6_0_1 )*
             loop101:
@@ -26902,7 +26902,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getAlternatives_6_0_1()); 
+               after(grammarAccess.getAttributeCSAccess().getAlternatives_6_0_1());
             }
 
             }
@@ -26930,7 +26930,7 @@
     public final void rule__AttributeCS__Group_6_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8121:1: ( rule__AttributeCS__Group_6_0__2__Impl )
             // InternalOCLinEcore.g:8122:2: rule__AttributeCS__Group_6_0__2__Impl
@@ -26963,7 +26963,7 @@
     public final void rule__AttributeCS__Group_6_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8132:1: ( ( '}' ) )
             // InternalOCLinEcore.g:8133:1: ( '}' )
@@ -26972,11 +26972,11 @@
             // InternalOCLinEcore.g:8134:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_6_0_2()); 
+               before(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_6_0_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_6_0_2()); 
+               after(grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_6_0_2());
             }
 
             }
@@ -27004,7 +27004,7 @@
     public final void rule__AttributeCS__Group_6_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8157:1: ( rule__AttributeCS__Group_6_0_1_1__0__Impl rule__AttributeCS__Group_6_0_1_1__1 )
             // InternalOCLinEcore.g:8158:2: rule__AttributeCS__Group_6_0_1_1__0__Impl rule__AttributeCS__Group_6_0_1_1__1
@@ -27042,7 +27042,7 @@
     public final void rule__AttributeCS__Group_6_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8169:1: ( ( 'initial' ) )
             // InternalOCLinEcore.g:8170:1: ( 'initial' )
@@ -27051,11 +27051,11 @@
             // InternalOCLinEcore.g:8171:1: 'initial'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getInitialKeyword_6_0_1_1_0()); 
+               before(grammarAccess.getAttributeCSAccess().getInitialKeyword_6_0_1_1_0());
             }
             match(input,31,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getInitialKeyword_6_0_1_1_0()); 
+               after(grammarAccess.getAttributeCSAccess().getInitialKeyword_6_0_1_1_0());
             }
 
             }
@@ -27083,7 +27083,7 @@
     public final void rule__AttributeCS__Group_6_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8188:1: ( rule__AttributeCS__Group_6_0_1_1__1__Impl rule__AttributeCS__Group_6_0_1_1__2 )
             // InternalOCLinEcore.g:8189:2: rule__AttributeCS__Group_6_0_1_1__1__Impl rule__AttributeCS__Group_6_0_1_1__2
@@ -27121,7 +27121,7 @@
     public final void rule__AttributeCS__Group_6_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8200:1: ( ( ( ruleUnrestrictedName )? ) )
             // InternalOCLinEcore.g:8201:1: ( ( ruleUnrestrictedName )? )
@@ -27130,7 +27130,7 @@
             // InternalOCLinEcore.g:8202:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_1_1()); 
+               before(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_1_1());
             }
             // InternalOCLinEcore.g:8203:1: ( ruleUnrestrictedName )?
             int alt102=2;
@@ -27155,7 +27155,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_1_1()); 
+               after(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_1_1());
             }
 
             }
@@ -27183,7 +27183,7 @@
     public final void rule__AttributeCS__Group_6_0_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8217:1: ( rule__AttributeCS__Group_6_0_1_1__2__Impl rule__AttributeCS__Group_6_0_1_1__3 )
             // InternalOCLinEcore.g:8218:2: rule__AttributeCS__Group_6_0_1_1__2__Impl rule__AttributeCS__Group_6_0_1_1__3
@@ -27221,7 +27221,7 @@
     public final void rule__AttributeCS__Group_6_0_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8229:1: ( ( ':' ) )
             // InternalOCLinEcore.g:8230:1: ( ':' )
@@ -27230,11 +27230,11 @@
             // InternalOCLinEcore.g:8231:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_1_2()); 
+               before(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_1_2());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_1_2()); 
+               after(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_1_2());
             }
 
             }
@@ -27262,7 +27262,7 @@
     public final void rule__AttributeCS__Group_6_0_1_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8248:1: ( rule__AttributeCS__Group_6_0_1_1__3__Impl rule__AttributeCS__Group_6_0_1_1__4 )
             // InternalOCLinEcore.g:8249:2: rule__AttributeCS__Group_6_0_1_1__3__Impl rule__AttributeCS__Group_6_0_1_1__4
@@ -27300,7 +27300,7 @@
     public final void rule__AttributeCS__Group_6_0_1_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8260:1: ( ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )? ) )
             // InternalOCLinEcore.g:8261:1: ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )? )
@@ -27309,7 +27309,7 @@
             // InternalOCLinEcore.g:8262:1: ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsAssignment_6_0_1_1_3()); 
+               before(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsAssignment_6_0_1_1_3());
             }
             // InternalOCLinEcore.g:8263:1: ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3 )?
             int alt103=2;
@@ -27334,7 +27334,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsAssignment_6_0_1_1_3()); 
+               after(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsAssignment_6_0_1_1_3());
             }
 
             }
@@ -27362,7 +27362,7 @@
     public final void rule__AttributeCS__Group_6_0_1_1__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8277:1: ( rule__AttributeCS__Group_6_0_1_1__4__Impl )
             // InternalOCLinEcore.g:8278:2: rule__AttributeCS__Group_6_0_1_1__4__Impl
@@ -27395,7 +27395,7 @@
     public final void rule__AttributeCS__Group_6_0_1_1__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8288:1: ( ( ';' ) )
             // InternalOCLinEcore.g:8289:1: ( ';' )
@@ -27404,11 +27404,11 @@
             // InternalOCLinEcore.g:8290:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_1_4()); 
+               before(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_1_4());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_1_4()); 
+               after(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_1_4());
             }
 
             }
@@ -27436,7 +27436,7 @@
     public final void rule__AttributeCS__Group_6_0_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8317:1: ( rule__AttributeCS__Group_6_0_1_2__0__Impl rule__AttributeCS__Group_6_0_1_2__1 )
             // InternalOCLinEcore.g:8318:2: rule__AttributeCS__Group_6_0_1_2__0__Impl rule__AttributeCS__Group_6_0_1_2__1
@@ -27474,7 +27474,7 @@
     public final void rule__AttributeCS__Group_6_0_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8329:1: ( ( 'derivation' ) )
             // InternalOCLinEcore.g:8330:1: ( 'derivation' )
@@ -27483,11 +27483,11 @@
             // InternalOCLinEcore.g:8331:1: 'derivation'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getDerivationKeyword_6_0_1_2_0()); 
+               before(grammarAccess.getAttributeCSAccess().getDerivationKeyword_6_0_1_2_0());
             }
             match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getDerivationKeyword_6_0_1_2_0()); 
+               after(grammarAccess.getAttributeCSAccess().getDerivationKeyword_6_0_1_2_0());
             }
 
             }
@@ -27515,7 +27515,7 @@
     public final void rule__AttributeCS__Group_6_0_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8348:1: ( rule__AttributeCS__Group_6_0_1_2__1__Impl rule__AttributeCS__Group_6_0_1_2__2 )
             // InternalOCLinEcore.g:8349:2: rule__AttributeCS__Group_6_0_1_2__1__Impl rule__AttributeCS__Group_6_0_1_2__2
@@ -27553,7 +27553,7 @@
     public final void rule__AttributeCS__Group_6_0_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8360:1: ( ( ( ruleUnrestrictedName )? ) )
             // InternalOCLinEcore.g:8361:1: ( ( ruleUnrestrictedName )? )
@@ -27562,7 +27562,7 @@
             // InternalOCLinEcore.g:8362:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_2_1()); 
+               before(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_2_1());
             }
             // InternalOCLinEcore.g:8363:1: ( ruleUnrestrictedName )?
             int alt104=2;
@@ -27587,7 +27587,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_2_1()); 
+               after(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_2_1());
             }
 
             }
@@ -27615,7 +27615,7 @@
     public final void rule__AttributeCS__Group_6_0_1_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8377:1: ( rule__AttributeCS__Group_6_0_1_2__2__Impl rule__AttributeCS__Group_6_0_1_2__3 )
             // InternalOCLinEcore.g:8378:2: rule__AttributeCS__Group_6_0_1_2__2__Impl rule__AttributeCS__Group_6_0_1_2__3
@@ -27653,7 +27653,7 @@
     public final void rule__AttributeCS__Group_6_0_1_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8389:1: ( ( ':' ) )
             // InternalOCLinEcore.g:8390:1: ( ':' )
@@ -27662,11 +27662,11 @@
             // InternalOCLinEcore.g:8391:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_2_2()); 
+               before(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_2_2());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_2_2()); 
+               after(grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_2_2());
             }
 
             }
@@ -27694,7 +27694,7 @@
     public final void rule__AttributeCS__Group_6_0_1_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8408:1: ( rule__AttributeCS__Group_6_0_1_2__3__Impl rule__AttributeCS__Group_6_0_1_2__4 )
             // InternalOCLinEcore.g:8409:2: rule__AttributeCS__Group_6_0_1_2__3__Impl rule__AttributeCS__Group_6_0_1_2__4
@@ -27732,7 +27732,7 @@
     public final void rule__AttributeCS__Group_6_0_1_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8420:1: ( ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )? ) )
             // InternalOCLinEcore.g:8421:1: ( ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )? )
@@ -27741,7 +27741,7 @@
             // InternalOCLinEcore.g:8422:1: ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsAssignment_6_0_1_2_3()); 
+               before(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsAssignment_6_0_1_2_3());
             }
             // InternalOCLinEcore.g:8423:1: ( rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3 )?
             int alt105=2;
@@ -27766,7 +27766,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsAssignment_6_0_1_2_3()); 
+               after(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsAssignment_6_0_1_2_3());
             }
 
             }
@@ -27794,7 +27794,7 @@
     public final void rule__AttributeCS__Group_6_0_1_2__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8437:1: ( rule__AttributeCS__Group_6_0_1_2__4__Impl )
             // InternalOCLinEcore.g:8438:2: rule__AttributeCS__Group_6_0_1_2__4__Impl
@@ -27827,7 +27827,7 @@
     public final void rule__AttributeCS__Group_6_0_1_2__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8448:1: ( ( ';' ) )
             // InternalOCLinEcore.g:8449:1: ( ';' )
@@ -27836,11 +27836,11 @@
             // InternalOCLinEcore.g:8450:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_2_4()); 
+               before(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_2_4());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_2_4()); 
+               after(grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_2_4());
             }
 
             }
@@ -27868,7 +27868,7 @@
     public final void rule__DataTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8477:1: ( rule__DataTypeCS__Group__0__Impl rule__DataTypeCS__Group__1 )
             // InternalOCLinEcore.g:8478:2: rule__DataTypeCS__Group__0__Impl rule__DataTypeCS__Group__1
@@ -27906,7 +27906,7 @@
     public final void rule__DataTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8489:1: ( ( ( rule__DataTypeCS__IsPrimitiveAssignment_0 )? ) )
             // InternalOCLinEcore.g:8490:1: ( ( rule__DataTypeCS__IsPrimitiveAssignment_0 )? )
@@ -27915,7 +27915,7 @@
             // InternalOCLinEcore.g:8491:1: ( rule__DataTypeCS__IsPrimitiveAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getIsPrimitiveAssignment_0()); 
+               before(grammarAccess.getDataTypeCSAccess().getIsPrimitiveAssignment_0());
             }
             // InternalOCLinEcore.g:8492:1: ( rule__DataTypeCS__IsPrimitiveAssignment_0 )?
             int alt106=2;
@@ -27940,7 +27940,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getIsPrimitiveAssignment_0()); 
+               after(grammarAccess.getDataTypeCSAccess().getIsPrimitiveAssignment_0());
             }
 
             }
@@ -27968,7 +27968,7 @@
     public final void rule__DataTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8506:1: ( rule__DataTypeCS__Group__1__Impl rule__DataTypeCS__Group__2 )
             // InternalOCLinEcore.g:8507:2: rule__DataTypeCS__Group__1__Impl rule__DataTypeCS__Group__2
@@ -28006,7 +28006,7 @@
     public final void rule__DataTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8518:1: ( ( 'datatype' ) )
             // InternalOCLinEcore.g:8519:1: ( 'datatype' )
@@ -28015,11 +28015,11 @@
             // InternalOCLinEcore.g:8520:1: 'datatype'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getDatatypeKeyword_1()); 
+               before(grammarAccess.getDataTypeCSAccess().getDatatypeKeyword_1());
             }
             match(input,23,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getDatatypeKeyword_1()); 
+               after(grammarAccess.getDataTypeCSAccess().getDatatypeKeyword_1());
             }
 
             }
@@ -28047,7 +28047,7 @@
     public final void rule__DataTypeCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8537:1: ( rule__DataTypeCS__Group__2__Impl rule__DataTypeCS__Group__3 )
             // InternalOCLinEcore.g:8538:2: rule__DataTypeCS__Group__2__Impl rule__DataTypeCS__Group__3
@@ -28085,7 +28085,7 @@
     public final void rule__DataTypeCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8549:1: ( ( ( rule__DataTypeCS__NameAssignment_2 ) ) )
             // InternalOCLinEcore.g:8550:1: ( ( rule__DataTypeCS__NameAssignment_2 ) )
@@ -28094,7 +28094,7 @@
             // InternalOCLinEcore.g:8551:1: ( rule__DataTypeCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getNameAssignment_2()); 
+               before(grammarAccess.getDataTypeCSAccess().getNameAssignment_2());
             }
             // InternalOCLinEcore.g:8552:1: ( rule__DataTypeCS__NameAssignment_2 )
             // InternalOCLinEcore.g:8552:2: rule__DataTypeCS__NameAssignment_2
@@ -28108,7 +28108,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getNameAssignment_2()); 
+               after(grammarAccess.getDataTypeCSAccess().getNameAssignment_2());
             }
 
             }
@@ -28136,7 +28136,7 @@
     public final void rule__DataTypeCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8566:1: ( rule__DataTypeCS__Group__3__Impl rule__DataTypeCS__Group__4 )
             // InternalOCLinEcore.g:8567:2: rule__DataTypeCS__Group__3__Impl rule__DataTypeCS__Group__4
@@ -28174,7 +28174,7 @@
     public final void rule__DataTypeCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8578:1: ( ( ( rule__DataTypeCS__OwnedSignatureAssignment_3 )? ) )
             // InternalOCLinEcore.g:8579:1: ( ( rule__DataTypeCS__OwnedSignatureAssignment_3 )? )
@@ -28183,7 +28183,7 @@
             // InternalOCLinEcore.g:8580:1: ( rule__DataTypeCS__OwnedSignatureAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getOwnedSignatureAssignment_3()); 
+               before(grammarAccess.getDataTypeCSAccess().getOwnedSignatureAssignment_3());
             }
             // InternalOCLinEcore.g:8581:1: ( rule__DataTypeCS__OwnedSignatureAssignment_3 )?
             int alt107=2;
@@ -28208,7 +28208,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getOwnedSignatureAssignment_3()); 
+               after(grammarAccess.getDataTypeCSAccess().getOwnedSignatureAssignment_3());
             }
 
             }
@@ -28236,7 +28236,7 @@
     public final void rule__DataTypeCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8595:1: ( rule__DataTypeCS__Group__4__Impl rule__DataTypeCS__Group__5 )
             // InternalOCLinEcore.g:8596:2: rule__DataTypeCS__Group__4__Impl rule__DataTypeCS__Group__5
@@ -28274,7 +28274,7 @@
     public final void rule__DataTypeCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8607:1: ( ( ( rule__DataTypeCS__Group_4__0 )? ) )
             // InternalOCLinEcore.g:8608:1: ( ( rule__DataTypeCS__Group_4__0 )? )
@@ -28283,7 +28283,7 @@
             // InternalOCLinEcore.g:8609:1: ( rule__DataTypeCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getGroup_4()); 
+               before(grammarAccess.getDataTypeCSAccess().getGroup_4());
             }
             // InternalOCLinEcore.g:8610:1: ( rule__DataTypeCS__Group_4__0 )?
             int alt108=2;
@@ -28308,7 +28308,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getGroup_4()); 
+               after(grammarAccess.getDataTypeCSAccess().getGroup_4());
             }
 
             }
@@ -28336,7 +28336,7 @@
     public final void rule__DataTypeCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8624:1: ( rule__DataTypeCS__Group__5__Impl rule__DataTypeCS__Group__6 )
             // InternalOCLinEcore.g:8625:2: rule__DataTypeCS__Group__5__Impl rule__DataTypeCS__Group__6
@@ -28374,7 +28374,7 @@
     public final void rule__DataTypeCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8636:1: ( ( ( rule__DataTypeCS__Group_5__0 )? ) )
             // InternalOCLinEcore.g:8637:1: ( ( rule__DataTypeCS__Group_5__0 )? )
@@ -28383,7 +28383,7 @@
             // InternalOCLinEcore.g:8638:1: ( rule__DataTypeCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getGroup_5()); 
+               before(grammarAccess.getDataTypeCSAccess().getGroup_5());
             }
             // InternalOCLinEcore.g:8639:1: ( rule__DataTypeCS__Group_5__0 )?
             int alt109=2;
@@ -28419,7 +28419,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getGroup_5()); 
+               after(grammarAccess.getDataTypeCSAccess().getGroup_5());
             }
 
             }
@@ -28447,7 +28447,7 @@
     public final void rule__DataTypeCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8653:1: ( rule__DataTypeCS__Group__6__Impl )
             // InternalOCLinEcore.g:8654:2: rule__DataTypeCS__Group__6__Impl
@@ -28480,7 +28480,7 @@
     public final void rule__DataTypeCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8664:1: ( ( ( rule__DataTypeCS__Alternatives_6 ) ) )
             // InternalOCLinEcore.g:8665:1: ( ( rule__DataTypeCS__Alternatives_6 ) )
@@ -28489,7 +28489,7 @@
             // InternalOCLinEcore.g:8666:1: ( rule__DataTypeCS__Alternatives_6 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getAlternatives_6()); 
+               before(grammarAccess.getDataTypeCSAccess().getAlternatives_6());
             }
             // InternalOCLinEcore.g:8667:1: ( rule__DataTypeCS__Alternatives_6 )
             // InternalOCLinEcore.g:8667:2: rule__DataTypeCS__Alternatives_6
@@ -28503,7 +28503,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getAlternatives_6()); 
+               after(grammarAccess.getDataTypeCSAccess().getAlternatives_6());
             }
 
             }
@@ -28531,7 +28531,7 @@
     public final void rule__DataTypeCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8695:1: ( rule__DataTypeCS__Group_4__0__Impl rule__DataTypeCS__Group_4__1 )
             // InternalOCLinEcore.g:8696:2: rule__DataTypeCS__Group_4__0__Impl rule__DataTypeCS__Group_4__1
@@ -28569,7 +28569,7 @@
     public final void rule__DataTypeCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8707:1: ( ( ':' ) )
             // InternalOCLinEcore.g:8708:1: ( ':' )
@@ -28578,11 +28578,11 @@
             // InternalOCLinEcore.g:8709:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getColonKeyword_4_0()); 
+               before(grammarAccess.getDataTypeCSAccess().getColonKeyword_4_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getColonKeyword_4_0()); 
+               after(grammarAccess.getDataTypeCSAccess().getColonKeyword_4_0());
             }
 
             }
@@ -28610,7 +28610,7 @@
     public final void rule__DataTypeCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8726:1: ( rule__DataTypeCS__Group_4__1__Impl )
             // InternalOCLinEcore.g:8727:2: rule__DataTypeCS__Group_4__1__Impl
@@ -28643,7 +28643,7 @@
     public final void rule__DataTypeCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8737:1: ( ( ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 ) ) )
             // InternalOCLinEcore.g:8738:1: ( ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 ) )
@@ -28652,7 +28652,7 @@
             // InternalOCLinEcore.g:8739:1: ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getInstanceClassNameAssignment_4_1()); 
+               before(grammarAccess.getDataTypeCSAccess().getInstanceClassNameAssignment_4_1());
             }
             // InternalOCLinEcore.g:8740:1: ( rule__DataTypeCS__InstanceClassNameAssignment_4_1 )
             // InternalOCLinEcore.g:8740:2: rule__DataTypeCS__InstanceClassNameAssignment_4_1
@@ -28666,7 +28666,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getInstanceClassNameAssignment_4_1()); 
+               after(grammarAccess.getDataTypeCSAccess().getInstanceClassNameAssignment_4_1());
             }
 
             }
@@ -28694,7 +28694,7 @@
     public final void rule__DataTypeCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8758:1: ( rule__DataTypeCS__Group_5__0__Impl rule__DataTypeCS__Group_5__1 )
             // InternalOCLinEcore.g:8759:2: rule__DataTypeCS__Group_5__0__Impl rule__DataTypeCS__Group_5__1
@@ -28732,7 +28732,7 @@
     public final void rule__DataTypeCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8770:1: ( ( '{' ) )
             // InternalOCLinEcore.g:8771:1: ( '{' )
@@ -28741,11 +28741,11 @@
             // InternalOCLinEcore.g:8772:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_5_0()); 
+               before(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_5_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_5_0()); 
+               after(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_5_0());
             }
 
             }
@@ -28773,7 +28773,7 @@
     public final void rule__DataTypeCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8789:1: ( rule__DataTypeCS__Group_5__1__Impl rule__DataTypeCS__Group_5__2 )
             // InternalOCLinEcore.g:8790:2: rule__DataTypeCS__Group_5__1__Impl rule__DataTypeCS__Group_5__2
@@ -28811,7 +28811,7 @@
     public final void rule__DataTypeCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8801:1: ( ( ( rule__DataTypeCS__Alternatives_5_1 )? ) )
             // InternalOCLinEcore.g:8802:1: ( ( rule__DataTypeCS__Alternatives_5_1 )? )
@@ -28820,7 +28820,7 @@
             // InternalOCLinEcore.g:8803:1: ( rule__DataTypeCS__Alternatives_5_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getAlternatives_5_1()); 
+               before(grammarAccess.getDataTypeCSAccess().getAlternatives_5_1());
             }
             // InternalOCLinEcore.g:8804:1: ( rule__DataTypeCS__Alternatives_5_1 )?
             int alt110=2;
@@ -28845,7 +28845,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getAlternatives_5_1()); 
+               after(grammarAccess.getDataTypeCSAccess().getAlternatives_5_1());
             }
 
             }
@@ -28873,7 +28873,7 @@
     public final void rule__DataTypeCS__Group_5__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8818:1: ( rule__DataTypeCS__Group_5__2__Impl )
             // InternalOCLinEcore.g:8819:2: rule__DataTypeCS__Group_5__2__Impl
@@ -28906,7 +28906,7 @@
     public final void rule__DataTypeCS__Group_5__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8829:1: ( ( '}' ) )
             // InternalOCLinEcore.g:8830:1: ( '}' )
@@ -28915,11 +28915,11 @@
             // InternalOCLinEcore.g:8831:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_5_2()); 
+               before(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_5_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_5_2()); 
+               after(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_5_2());
             }
 
             }
@@ -28947,7 +28947,7 @@
     public final void rule__DataTypeCS__Group_6_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8854:1: ( rule__DataTypeCS__Group_6_0__0__Impl rule__DataTypeCS__Group_6_0__1 )
             // InternalOCLinEcore.g:8855:2: rule__DataTypeCS__Group_6_0__0__Impl rule__DataTypeCS__Group_6_0__1
@@ -28985,7 +28985,7 @@
     public final void rule__DataTypeCS__Group_6_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8866:1: ( ( '{' ) )
             // InternalOCLinEcore.g:8867:1: ( '{' )
@@ -28994,11 +28994,11 @@
             // InternalOCLinEcore.g:8868:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_6_0_0()); 
+               before(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_6_0_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_6_0_0()); 
+               after(grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_6_0_0());
             }
 
             }
@@ -29026,7 +29026,7 @@
     public final void rule__DataTypeCS__Group_6_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8885:1: ( rule__DataTypeCS__Group_6_0__1__Impl rule__DataTypeCS__Group_6_0__2 )
             // InternalOCLinEcore.g:8886:2: rule__DataTypeCS__Group_6_0__1__Impl rule__DataTypeCS__Group_6_0__2
@@ -29064,7 +29064,7 @@
     public final void rule__DataTypeCS__Group_6_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8897:1: ( ( ( rule__DataTypeCS__Alternatives_6_0_1 )* ) )
             // InternalOCLinEcore.g:8898:1: ( ( rule__DataTypeCS__Alternatives_6_0_1 )* )
@@ -29073,7 +29073,7 @@
             // InternalOCLinEcore.g:8899:1: ( rule__DataTypeCS__Alternatives_6_0_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getAlternatives_6_0_1()); 
+               before(grammarAccess.getDataTypeCSAccess().getAlternatives_6_0_1());
             }
             // InternalOCLinEcore.g:8900:1: ( rule__DataTypeCS__Alternatives_6_0_1 )*
             loop111:
@@ -29105,7 +29105,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getAlternatives_6_0_1()); 
+               after(grammarAccess.getDataTypeCSAccess().getAlternatives_6_0_1());
             }
 
             }
@@ -29133,7 +29133,7 @@
     public final void rule__DataTypeCS__Group_6_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8914:1: ( rule__DataTypeCS__Group_6_0__2__Impl )
             // InternalOCLinEcore.g:8915:2: rule__DataTypeCS__Group_6_0__2__Impl
@@ -29166,7 +29166,7 @@
     public final void rule__DataTypeCS__Group_6_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8925:1: ( ( '}' ) )
             // InternalOCLinEcore.g:8926:1: ( '}' )
@@ -29175,11 +29175,11 @@
             // InternalOCLinEcore.g:8927:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_6_0_2()); 
+               before(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_6_0_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_6_0_2()); 
+               after(grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_6_0_2());
             }
 
             }
@@ -29207,7 +29207,7 @@
     public final void rule__DetailCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8950:1: ( rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1 )
             // InternalOCLinEcore.g:8951:2: rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1
@@ -29245,7 +29245,7 @@
     public final void rule__DetailCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8962:1: ( ( ( rule__DetailCS__NameAssignment_0 ) ) )
             // InternalOCLinEcore.g:8963:1: ( ( rule__DetailCS__NameAssignment_0 ) )
@@ -29254,7 +29254,7 @@
             // InternalOCLinEcore.g:8964:1: ( rule__DetailCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getDetailCSAccess().getNameAssignment_0());
             }
             // InternalOCLinEcore.g:8965:1: ( rule__DetailCS__NameAssignment_0 )
             // InternalOCLinEcore.g:8965:2: rule__DetailCS__NameAssignment_0
@@ -29268,7 +29268,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getDetailCSAccess().getNameAssignment_0());
             }
 
             }
@@ -29296,7 +29296,7 @@
     public final void rule__DetailCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8979:1: ( rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2 )
             // InternalOCLinEcore.g:8980:2: rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2
@@ -29334,7 +29334,7 @@
     public final void rule__DetailCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:8991:1: ( ( '=' ) )
             // InternalOCLinEcore.g:8992:1: ( '=' )
@@ -29343,11 +29343,11 @@
             // InternalOCLinEcore.g:8993:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1()); 
+               before(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1()); 
+               after(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1());
             }
 
             }
@@ -29375,7 +29375,7 @@
     public final void rule__DetailCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9010:1: ( rule__DetailCS__Group__2__Impl )
             // InternalOCLinEcore.g:9011:2: rule__DetailCS__Group__2__Impl
@@ -29408,7 +29408,7 @@
     public final void rule__DetailCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9021:1: ( ( ( rule__DetailCS__ValuesAssignment_2 )* ) )
             // InternalOCLinEcore.g:9022:1: ( ( rule__DetailCS__ValuesAssignment_2 )* )
@@ -29417,7 +29417,7 @@
             // InternalOCLinEcore.g:9023:1: ( rule__DetailCS__ValuesAssignment_2 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSAccess().getValuesAssignment_2()); 
+               before(grammarAccess.getDetailCSAccess().getValuesAssignment_2());
             }
             // InternalOCLinEcore.g:9024:1: ( rule__DetailCS__ValuesAssignment_2 )*
             loop112:
@@ -29449,7 +29449,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSAccess().getValuesAssignment_2()); 
+               after(grammarAccess.getDetailCSAccess().getValuesAssignment_2());
             }
 
             }
@@ -29477,7 +29477,7 @@
     public final void rule__DocumentationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9044:1: ( rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1 )
             // InternalOCLinEcore.g:9045:2: rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1
@@ -29515,7 +29515,7 @@
     public final void rule__DocumentationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9056:1: ( ( () ) )
             // InternalOCLinEcore.g:9057:1: ( () )
@@ -29524,15 +29524,15 @@
             // InternalOCLinEcore.g:9058:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0()); 
+               before(grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0());
             }
             // InternalOCLinEcore.g:9059:1: ()
-            // InternalOCLinEcore.g:9061:1: 
+            // InternalOCLinEcore.g:9061:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0()); 
+               after(grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0());
             }
 
             }
@@ -29556,7 +29556,7 @@
     public final void rule__DocumentationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9075:1: ( rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2 )
             // InternalOCLinEcore.g:9076:2: rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2
@@ -29594,7 +29594,7 @@
     public final void rule__DocumentationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9087:1: ( ( 'documentation' ) )
             // InternalOCLinEcore.g:9088:1: ( 'documentation' )
@@ -29603,11 +29603,11 @@
             // InternalOCLinEcore.g:9089:1: 'documentation'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1()); 
+               before(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1());
             }
             match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1()); 
+               after(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1());
             }
 
             }
@@ -29635,7 +29635,7 @@
     public final void rule__DocumentationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9106:1: ( rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3 )
             // InternalOCLinEcore.g:9107:2: rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3
@@ -29673,7 +29673,7 @@
     public final void rule__DocumentationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9118:1: ( ( ( rule__DocumentationCS__ValueAssignment_2 )? ) )
             // InternalOCLinEcore.g:9119:1: ( ( rule__DocumentationCS__ValueAssignment_2 )? )
@@ -29682,7 +29682,7 @@
             // InternalOCLinEcore.g:9120:1: ( rule__DocumentationCS__ValueAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getValueAssignment_2()); 
+               before(grammarAccess.getDocumentationCSAccess().getValueAssignment_2());
             }
             // InternalOCLinEcore.g:9121:1: ( rule__DocumentationCS__ValueAssignment_2 )?
             int alt113=2;
@@ -29707,7 +29707,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getValueAssignment_2()); 
+               after(grammarAccess.getDocumentationCSAccess().getValueAssignment_2());
             }
 
             }
@@ -29735,7 +29735,7 @@
     public final void rule__DocumentationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9135:1: ( rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4 )
             // InternalOCLinEcore.g:9136:2: rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4
@@ -29773,7 +29773,7 @@
     public final void rule__DocumentationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9147:1: ( ( ( rule__DocumentationCS__Group_3__0 )? ) )
             // InternalOCLinEcore.g:9148:1: ( ( rule__DocumentationCS__Group_3__0 )? )
@@ -29782,7 +29782,7 @@
             // InternalOCLinEcore.g:9149:1: ( rule__DocumentationCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getGroup_3()); 
+               before(grammarAccess.getDocumentationCSAccess().getGroup_3());
             }
             // InternalOCLinEcore.g:9150:1: ( rule__DocumentationCS__Group_3__0 )?
             int alt114=2;
@@ -29807,7 +29807,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getGroup_3()); 
+               after(grammarAccess.getDocumentationCSAccess().getGroup_3());
             }
 
             }
@@ -29835,7 +29835,7 @@
     public final void rule__DocumentationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9164:1: ( rule__DocumentationCS__Group__4__Impl )
             // InternalOCLinEcore.g:9165:2: rule__DocumentationCS__Group__4__Impl
@@ -29868,7 +29868,7 @@
     public final void rule__DocumentationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9175:1: ( ( ';' ) )
             // InternalOCLinEcore.g:9176:1: ( ';' )
@@ -29877,11 +29877,11 @@
             // InternalOCLinEcore.g:9177:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4()); 
+               before(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4()); 
+               after(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4());
             }
 
             }
@@ -29909,7 +29909,7 @@
     public final void rule__DocumentationCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9204:1: ( rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1 )
             // InternalOCLinEcore.g:9205:2: rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1
@@ -29947,7 +29947,7 @@
     public final void rule__DocumentationCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9216:1: ( ( '(' ) )
             // InternalOCLinEcore.g:9217:1: ( '(' )
@@ -29956,11 +29956,11 @@
             // InternalOCLinEcore.g:9218:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0()); 
+               before(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0()); 
+               after(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0());
             }
 
             }
@@ -29988,7 +29988,7 @@
     public final void rule__DocumentationCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9235:1: ( rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2 )
             // InternalOCLinEcore.g:9236:2: rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2
@@ -30026,7 +30026,7 @@
     public final void rule__DocumentationCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9247:1: ( ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) ) )
             // InternalOCLinEcore.g:9248:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) )
@@ -30035,7 +30035,7 @@
             // InternalOCLinEcore.g:9249:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_1()); 
+               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_1());
             }
             // InternalOCLinEcore.g:9250:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 )
             // InternalOCLinEcore.g:9250:2: rule__DocumentationCS__OwnedDetailsAssignment_3_1
@@ -30049,7 +30049,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_1()); 
+               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_1());
             }
 
             }
@@ -30077,7 +30077,7 @@
     public final void rule__DocumentationCS__Group_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9264:1: ( rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3 )
             // InternalOCLinEcore.g:9265:2: rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3
@@ -30115,7 +30115,7 @@
     public final void rule__DocumentationCS__Group_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9276:1: ( ( ( rule__DocumentationCS__Group_3_2__0 )* ) )
             // InternalOCLinEcore.g:9277:1: ( ( rule__DocumentationCS__Group_3_2__0 )* )
@@ -30124,7 +30124,7 @@
             // InternalOCLinEcore.g:9278:1: ( rule__DocumentationCS__Group_3_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getGroup_3_2()); 
+               before(grammarAccess.getDocumentationCSAccess().getGroup_3_2());
             }
             // InternalOCLinEcore.g:9279:1: ( rule__DocumentationCS__Group_3_2__0 )*
             loop115:
@@ -30156,7 +30156,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getGroup_3_2()); 
+               after(grammarAccess.getDocumentationCSAccess().getGroup_3_2());
             }
 
             }
@@ -30184,7 +30184,7 @@
     public final void rule__DocumentationCS__Group_3__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9293:1: ( rule__DocumentationCS__Group_3__3__Impl )
             // InternalOCLinEcore.g:9294:2: rule__DocumentationCS__Group_3__3__Impl
@@ -30217,7 +30217,7 @@
     public final void rule__DocumentationCS__Group_3__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9304:1: ( ( ')' ) )
             // InternalOCLinEcore.g:9305:1: ( ')' )
@@ -30226,11 +30226,11 @@
             // InternalOCLinEcore.g:9306:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3()); 
+               before(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3()); 
+               after(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3());
             }
 
             }
@@ -30258,7 +30258,7 @@
     public final void rule__DocumentationCS__Group_3_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9331:1: ( rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1 )
             // InternalOCLinEcore.g:9332:2: rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1
@@ -30296,7 +30296,7 @@
     public final void rule__DocumentationCS__Group_3_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9343:1: ( ( ',' ) )
             // InternalOCLinEcore.g:9344:1: ( ',' )
@@ -30305,11 +30305,11 @@
             // InternalOCLinEcore.g:9345:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0()); 
+               before(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0()); 
+               after(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0());
             }
 
             }
@@ -30337,7 +30337,7 @@
     public final void rule__DocumentationCS__Group_3_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9362:1: ( rule__DocumentationCS__Group_3_2__1__Impl )
             // InternalOCLinEcore.g:9363:2: rule__DocumentationCS__Group_3_2__1__Impl
@@ -30370,7 +30370,7 @@
     public final void rule__DocumentationCS__Group_3_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9373:1: ( ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) ) )
             // InternalOCLinEcore.g:9374:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) )
@@ -30379,7 +30379,7 @@
             // InternalOCLinEcore.g:9375:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_2_1()); 
+               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_2_1());
             }
             // InternalOCLinEcore.g:9376:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 )
             // InternalOCLinEcore.g:9376:2: rule__DocumentationCS__OwnedDetailsAssignment_3_2_1
@@ -30393,7 +30393,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_2_1()); 
+               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_2_1());
             }
 
             }
@@ -30421,7 +30421,7 @@
     public final void rule__EnumerationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9394:1: ( rule__EnumerationCS__Group__0__Impl rule__EnumerationCS__Group__1 )
             // InternalOCLinEcore.g:9395:2: rule__EnumerationCS__Group__0__Impl rule__EnumerationCS__Group__1
@@ -30459,7 +30459,7 @@
     public final void rule__EnumerationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9406:1: ( ( 'enum' ) )
             // InternalOCLinEcore.g:9407:1: ( 'enum' )
@@ -30468,11 +30468,11 @@
             // InternalOCLinEcore.g:9408:1: 'enum'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getEnumKeyword_0()); 
+               before(grammarAccess.getEnumerationCSAccess().getEnumKeyword_0());
             }
             match(input,27,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getEnumKeyword_0()); 
+               after(grammarAccess.getEnumerationCSAccess().getEnumKeyword_0());
             }
 
             }
@@ -30500,7 +30500,7 @@
     public final void rule__EnumerationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9425:1: ( rule__EnumerationCS__Group__1__Impl rule__EnumerationCS__Group__2 )
             // InternalOCLinEcore.g:9426:2: rule__EnumerationCS__Group__1__Impl rule__EnumerationCS__Group__2
@@ -30538,7 +30538,7 @@
     public final void rule__EnumerationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9437:1: ( ( ( rule__EnumerationCS__NameAssignment_1 ) ) )
             // InternalOCLinEcore.g:9438:1: ( ( rule__EnumerationCS__NameAssignment_1 ) )
@@ -30547,7 +30547,7 @@
             // InternalOCLinEcore.g:9439:1: ( rule__EnumerationCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getNameAssignment_1()); 
+               before(grammarAccess.getEnumerationCSAccess().getNameAssignment_1());
             }
             // InternalOCLinEcore.g:9440:1: ( rule__EnumerationCS__NameAssignment_1 )
             // InternalOCLinEcore.g:9440:2: rule__EnumerationCS__NameAssignment_1
@@ -30561,7 +30561,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getNameAssignment_1()); 
+               after(grammarAccess.getEnumerationCSAccess().getNameAssignment_1());
             }
 
             }
@@ -30589,7 +30589,7 @@
     public final void rule__EnumerationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9454:1: ( rule__EnumerationCS__Group__2__Impl rule__EnumerationCS__Group__3 )
             // InternalOCLinEcore.g:9455:2: rule__EnumerationCS__Group__2__Impl rule__EnumerationCS__Group__3
@@ -30627,7 +30627,7 @@
     public final void rule__EnumerationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9466:1: ( ( ( rule__EnumerationCS__OwnedSignatureAssignment_2 )? ) )
             // InternalOCLinEcore.g:9467:1: ( ( rule__EnumerationCS__OwnedSignatureAssignment_2 )? )
@@ -30636,7 +30636,7 @@
             // InternalOCLinEcore.g:9468:1: ( rule__EnumerationCS__OwnedSignatureAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getOwnedSignatureAssignment_2()); 
+               before(grammarAccess.getEnumerationCSAccess().getOwnedSignatureAssignment_2());
             }
             // InternalOCLinEcore.g:9469:1: ( rule__EnumerationCS__OwnedSignatureAssignment_2 )?
             int alt116=2;
@@ -30661,7 +30661,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getOwnedSignatureAssignment_2()); 
+               after(grammarAccess.getEnumerationCSAccess().getOwnedSignatureAssignment_2());
             }
 
             }
@@ -30689,7 +30689,7 @@
     public final void rule__EnumerationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9483:1: ( rule__EnumerationCS__Group__3__Impl rule__EnumerationCS__Group__4 )
             // InternalOCLinEcore.g:9484:2: rule__EnumerationCS__Group__3__Impl rule__EnumerationCS__Group__4
@@ -30727,7 +30727,7 @@
     public final void rule__EnumerationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9495:1: ( ( ( rule__EnumerationCS__Group_3__0 )? ) )
             // InternalOCLinEcore.g:9496:1: ( ( rule__EnumerationCS__Group_3__0 )? )
@@ -30736,7 +30736,7 @@
             // InternalOCLinEcore.g:9497:1: ( rule__EnumerationCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getGroup_3()); 
+               before(grammarAccess.getEnumerationCSAccess().getGroup_3());
             }
             // InternalOCLinEcore.g:9498:1: ( rule__EnumerationCS__Group_3__0 )?
             int alt117=2;
@@ -30761,7 +30761,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getGroup_3()); 
+               after(grammarAccess.getEnumerationCSAccess().getGroup_3());
             }
 
             }
@@ -30789,7 +30789,7 @@
     public final void rule__EnumerationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9512:1: ( rule__EnumerationCS__Group__4__Impl rule__EnumerationCS__Group__5 )
             // InternalOCLinEcore.g:9513:2: rule__EnumerationCS__Group__4__Impl rule__EnumerationCS__Group__5
@@ -30827,7 +30827,7 @@
     public final void rule__EnumerationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9524:1: ( ( ( rule__EnumerationCS__Group_4__0 )? ) )
             // InternalOCLinEcore.g:9525:1: ( ( rule__EnumerationCS__Group_4__0 )? )
@@ -30836,7 +30836,7 @@
             // InternalOCLinEcore.g:9526:1: ( rule__EnumerationCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getGroup_4()); 
+               before(grammarAccess.getEnumerationCSAccess().getGroup_4());
             }
             // InternalOCLinEcore.g:9527:1: ( rule__EnumerationCS__Group_4__0 )?
             int alt118=2;
@@ -30872,7 +30872,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getGroup_4()); 
+               after(grammarAccess.getEnumerationCSAccess().getGroup_4());
             }
 
             }
@@ -30900,7 +30900,7 @@
     public final void rule__EnumerationCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9541:1: ( rule__EnumerationCS__Group__5__Impl )
             // InternalOCLinEcore.g:9542:2: rule__EnumerationCS__Group__5__Impl
@@ -30933,7 +30933,7 @@
     public final void rule__EnumerationCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9552:1: ( ( ( rule__EnumerationCS__Alternatives_5 ) ) )
             // InternalOCLinEcore.g:9553:1: ( ( rule__EnumerationCS__Alternatives_5 ) )
@@ -30942,7 +30942,7 @@
             // InternalOCLinEcore.g:9554:1: ( rule__EnumerationCS__Alternatives_5 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getAlternatives_5()); 
+               before(grammarAccess.getEnumerationCSAccess().getAlternatives_5());
             }
             // InternalOCLinEcore.g:9555:1: ( rule__EnumerationCS__Alternatives_5 )
             // InternalOCLinEcore.g:9555:2: rule__EnumerationCS__Alternatives_5
@@ -30956,7 +30956,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getAlternatives_5()); 
+               after(grammarAccess.getEnumerationCSAccess().getAlternatives_5());
             }
 
             }
@@ -30984,7 +30984,7 @@
     public final void rule__EnumerationCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9581:1: ( rule__EnumerationCS__Group_3__0__Impl rule__EnumerationCS__Group_3__1 )
             // InternalOCLinEcore.g:9582:2: rule__EnumerationCS__Group_3__0__Impl rule__EnumerationCS__Group_3__1
@@ -31022,7 +31022,7 @@
     public final void rule__EnumerationCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9593:1: ( ( ':' ) )
             // InternalOCLinEcore.g:9594:1: ( ':' )
@@ -31031,11 +31031,11 @@
             // InternalOCLinEcore.g:9595:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getColonKeyword_3_0()); 
+               before(grammarAccess.getEnumerationCSAccess().getColonKeyword_3_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getColonKeyword_3_0()); 
+               after(grammarAccess.getEnumerationCSAccess().getColonKeyword_3_0());
             }
 
             }
@@ -31063,7 +31063,7 @@
     public final void rule__EnumerationCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9612:1: ( rule__EnumerationCS__Group_3__1__Impl )
             // InternalOCLinEcore.g:9613:2: rule__EnumerationCS__Group_3__1__Impl
@@ -31096,7 +31096,7 @@
     public final void rule__EnumerationCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9623:1: ( ( ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 ) ) )
             // InternalOCLinEcore.g:9624:1: ( ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 ) )
@@ -31105,7 +31105,7 @@
             // InternalOCLinEcore.g:9625:1: ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getInstanceClassNameAssignment_3_1()); 
+               before(grammarAccess.getEnumerationCSAccess().getInstanceClassNameAssignment_3_1());
             }
             // InternalOCLinEcore.g:9626:1: ( rule__EnumerationCS__InstanceClassNameAssignment_3_1 )
             // InternalOCLinEcore.g:9626:2: rule__EnumerationCS__InstanceClassNameAssignment_3_1
@@ -31119,7 +31119,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getInstanceClassNameAssignment_3_1()); 
+               after(grammarAccess.getEnumerationCSAccess().getInstanceClassNameAssignment_3_1());
             }
 
             }
@@ -31147,7 +31147,7 @@
     public final void rule__EnumerationCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9644:1: ( rule__EnumerationCS__Group_4__0__Impl rule__EnumerationCS__Group_4__1 )
             // InternalOCLinEcore.g:9645:2: rule__EnumerationCS__Group_4__0__Impl rule__EnumerationCS__Group_4__1
@@ -31185,7 +31185,7 @@
     public final void rule__EnumerationCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9656:1: ( ( '{' ) )
             // InternalOCLinEcore.g:9657:1: ( '{' )
@@ -31194,11 +31194,11 @@
             // InternalOCLinEcore.g:9658:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_4_0()); 
+               before(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_4_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_4_0()); 
+               after(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_4_0());
             }
 
             }
@@ -31226,7 +31226,7 @@
     public final void rule__EnumerationCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9675:1: ( rule__EnumerationCS__Group_4__1__Impl rule__EnumerationCS__Group_4__2 )
             // InternalOCLinEcore.g:9676:2: rule__EnumerationCS__Group_4__1__Impl rule__EnumerationCS__Group_4__2
@@ -31264,7 +31264,7 @@
     public final void rule__EnumerationCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9687:1: ( ( ( rule__EnumerationCS__Alternatives_4_1 )? ) )
             // InternalOCLinEcore.g:9688:1: ( ( rule__EnumerationCS__Alternatives_4_1 )? )
@@ -31273,7 +31273,7 @@
             // InternalOCLinEcore.g:9689:1: ( rule__EnumerationCS__Alternatives_4_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getAlternatives_4_1()); 
+               before(grammarAccess.getEnumerationCSAccess().getAlternatives_4_1());
             }
             // InternalOCLinEcore.g:9690:1: ( rule__EnumerationCS__Alternatives_4_1 )?
             int alt119=2;
@@ -31298,7 +31298,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getAlternatives_4_1()); 
+               after(grammarAccess.getEnumerationCSAccess().getAlternatives_4_1());
             }
 
             }
@@ -31326,7 +31326,7 @@
     public final void rule__EnumerationCS__Group_4__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9704:1: ( rule__EnumerationCS__Group_4__2__Impl )
             // InternalOCLinEcore.g:9705:2: rule__EnumerationCS__Group_4__2__Impl
@@ -31359,7 +31359,7 @@
     public final void rule__EnumerationCS__Group_4__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9715:1: ( ( '}' ) )
             // InternalOCLinEcore.g:9716:1: ( '}' )
@@ -31368,11 +31368,11 @@
             // InternalOCLinEcore.g:9717:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_4_2()); 
+               before(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_4_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_4_2()); 
+               after(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_4_2());
             }
 
             }
@@ -31400,7 +31400,7 @@
     public final void rule__EnumerationCS__Group_5_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9740:1: ( rule__EnumerationCS__Group_5_0__0__Impl rule__EnumerationCS__Group_5_0__1 )
             // InternalOCLinEcore.g:9741:2: rule__EnumerationCS__Group_5_0__0__Impl rule__EnumerationCS__Group_5_0__1
@@ -31438,7 +31438,7 @@
     public final void rule__EnumerationCS__Group_5_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9752:1: ( ( '{' ) )
             // InternalOCLinEcore.g:9753:1: ( '{' )
@@ -31447,11 +31447,11 @@
             // InternalOCLinEcore.g:9754:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_5_0_0()); 
+               before(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_5_0_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_5_0_0()); 
+               after(grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_5_0_0());
             }
 
             }
@@ -31479,7 +31479,7 @@
     public final void rule__EnumerationCS__Group_5_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9771:1: ( rule__EnumerationCS__Group_5_0__1__Impl rule__EnumerationCS__Group_5_0__2 )
             // InternalOCLinEcore.g:9772:2: rule__EnumerationCS__Group_5_0__1__Impl rule__EnumerationCS__Group_5_0__2
@@ -31517,7 +31517,7 @@
     public final void rule__EnumerationCS__Group_5_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9783:1: ( ( ( rule__EnumerationCS__Alternatives_5_0_1 )* ) )
             // InternalOCLinEcore.g:9784:1: ( ( rule__EnumerationCS__Alternatives_5_0_1 )* )
@@ -31526,7 +31526,7 @@
             // InternalOCLinEcore.g:9785:1: ( rule__EnumerationCS__Alternatives_5_0_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getAlternatives_5_0_1()); 
+               before(grammarAccess.getEnumerationCSAccess().getAlternatives_5_0_1());
             }
             // InternalOCLinEcore.g:9786:1: ( rule__EnumerationCS__Alternatives_5_0_1 )*
             loop120:
@@ -31558,7 +31558,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getAlternatives_5_0_1()); 
+               after(grammarAccess.getEnumerationCSAccess().getAlternatives_5_0_1());
             }
 
             }
@@ -31586,7 +31586,7 @@
     public final void rule__EnumerationCS__Group_5_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9800:1: ( rule__EnumerationCS__Group_5_0__2__Impl )
             // InternalOCLinEcore.g:9801:2: rule__EnumerationCS__Group_5_0__2__Impl
@@ -31619,7 +31619,7 @@
     public final void rule__EnumerationCS__Group_5_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9811:1: ( ( '}' ) )
             // InternalOCLinEcore.g:9812:1: ( '}' )
@@ -31628,11 +31628,11 @@
             // InternalOCLinEcore.g:9813:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_5_0_2()); 
+               before(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_5_0_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_5_0_2()); 
+               after(grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_5_0_2());
             }
 
             }
@@ -31660,7 +31660,7 @@
     public final void rule__EnumerationLiteralCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9836:1: ( rule__EnumerationLiteralCS__Group__0__Impl rule__EnumerationLiteralCS__Group__1 )
             // InternalOCLinEcore.g:9837:2: rule__EnumerationLiteralCS__Group__0__Impl rule__EnumerationLiteralCS__Group__1
@@ -31698,7 +31698,7 @@
     public final void rule__EnumerationLiteralCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9848:1: ( ( ( rule__EnumerationLiteralCS__Alternatives_0 ) ) )
             // InternalOCLinEcore.g:9849:1: ( ( rule__EnumerationLiteralCS__Alternatives_0 ) )
@@ -31707,7 +31707,7 @@
             // InternalOCLinEcore.g:9850:1: ( rule__EnumerationLiteralCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getAlternatives_0()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getAlternatives_0());
             }
             // InternalOCLinEcore.g:9851:1: ( rule__EnumerationLiteralCS__Alternatives_0 )
             // InternalOCLinEcore.g:9851:2: rule__EnumerationLiteralCS__Alternatives_0
@@ -31721,7 +31721,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getAlternatives_0()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getAlternatives_0());
             }
 
             }
@@ -31749,7 +31749,7 @@
     public final void rule__EnumerationLiteralCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9865:1: ( rule__EnumerationLiteralCS__Group__1__Impl rule__EnumerationLiteralCS__Group__2 )
             // InternalOCLinEcore.g:9866:2: rule__EnumerationLiteralCS__Group__1__Impl rule__EnumerationLiteralCS__Group__2
@@ -31787,7 +31787,7 @@
     public final void rule__EnumerationLiteralCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9877:1: ( ( ( rule__EnumerationLiteralCS__Group_1__0 )? ) )
             // InternalOCLinEcore.g:9878:1: ( ( rule__EnumerationLiteralCS__Group_1__0 )? )
@@ -31796,7 +31796,7 @@
             // InternalOCLinEcore.g:9879:1: ( rule__EnumerationLiteralCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getGroup_1()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:9880:1: ( rule__EnumerationLiteralCS__Group_1__0 )?
             int alt121=2;
@@ -31821,7 +31821,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getGroup_1()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getGroup_1());
             }
 
             }
@@ -31849,7 +31849,7 @@
     public final void rule__EnumerationLiteralCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9894:1: ( rule__EnumerationLiteralCS__Group__2__Impl )
             // InternalOCLinEcore.g:9895:2: rule__EnumerationLiteralCS__Group__2__Impl
@@ -31882,7 +31882,7 @@
     public final void rule__EnumerationLiteralCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9905:1: ( ( ( rule__EnumerationLiteralCS__Alternatives_2 ) ) )
             // InternalOCLinEcore.g:9906:1: ( ( rule__EnumerationLiteralCS__Alternatives_2 ) )
@@ -31891,7 +31891,7 @@
             // InternalOCLinEcore.g:9907:1: ( rule__EnumerationLiteralCS__Alternatives_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getAlternatives_2());
             }
             // InternalOCLinEcore.g:9908:1: ( rule__EnumerationLiteralCS__Alternatives_2 )
             // InternalOCLinEcore.g:9908:2: rule__EnumerationLiteralCS__Alternatives_2
@@ -31905,7 +31905,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getAlternatives_2());
             }
 
             }
@@ -31933,7 +31933,7 @@
     public final void rule__EnumerationLiteralCS__Group_0_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9928:1: ( rule__EnumerationLiteralCS__Group_0_0__0__Impl rule__EnumerationLiteralCS__Group_0_0__1 )
             // InternalOCLinEcore.g:9929:2: rule__EnumerationLiteralCS__Group_0_0__0__Impl rule__EnumerationLiteralCS__Group_0_0__1
@@ -31971,7 +31971,7 @@
     public final void rule__EnumerationLiteralCS__Group_0_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9940:1: ( ( 'literal' ) )
             // InternalOCLinEcore.g:9941:1: ( 'literal' )
@@ -31980,11 +31980,11 @@
             // InternalOCLinEcore.g:9942:1: 'literal'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getLiteralKeyword_0_0_0()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getLiteralKeyword_0_0_0());
             }
             match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getLiteralKeyword_0_0_0()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getLiteralKeyword_0_0_0());
             }
 
             }
@@ -32012,7 +32012,7 @@
     public final void rule__EnumerationLiteralCS__Group_0_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9959:1: ( rule__EnumerationLiteralCS__Group_0_0__1__Impl )
             // InternalOCLinEcore.g:9960:2: rule__EnumerationLiteralCS__Group_0_0__1__Impl
@@ -32045,7 +32045,7 @@
     public final void rule__EnumerationLiteralCS__Group_0_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9970:1: ( ( ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 ) ) )
             // InternalOCLinEcore.g:9971:1: ( ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 ) )
@@ -32054,7 +32054,7 @@
             // InternalOCLinEcore.g:9972:1: ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getNameAssignment_0_0_1()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getNameAssignment_0_0_1());
             }
             // InternalOCLinEcore.g:9973:1: ( rule__EnumerationLiteralCS__NameAssignment_0_0_1 )
             // InternalOCLinEcore.g:9973:2: rule__EnumerationLiteralCS__NameAssignment_0_0_1
@@ -32068,7 +32068,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getNameAssignment_0_0_1()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getNameAssignment_0_0_1());
             }
 
             }
@@ -32096,7 +32096,7 @@
     public final void rule__EnumerationLiteralCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:9991:1: ( rule__EnumerationLiteralCS__Group_1__0__Impl rule__EnumerationLiteralCS__Group_1__1 )
             // InternalOCLinEcore.g:9992:2: rule__EnumerationLiteralCS__Group_1__0__Impl rule__EnumerationLiteralCS__Group_1__1
@@ -32134,7 +32134,7 @@
     public final void rule__EnumerationLiteralCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10003:1: ( ( '=' ) )
             // InternalOCLinEcore.g:10004:1: ( '=' )
@@ -32143,11 +32143,11 @@
             // InternalOCLinEcore.g:10005:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getEqualsSignKeyword_1_0()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getEqualsSignKeyword_1_0());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getEqualsSignKeyword_1_0()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getEqualsSignKeyword_1_0());
             }
 
             }
@@ -32175,7 +32175,7 @@
     public final void rule__EnumerationLiteralCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10022:1: ( rule__EnumerationLiteralCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:10023:2: rule__EnumerationLiteralCS__Group_1__1__Impl
@@ -32208,7 +32208,7 @@
     public final void rule__EnumerationLiteralCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10033:1: ( ( ( rule__EnumerationLiteralCS__ValueAssignment_1_1 ) ) )
             // InternalOCLinEcore.g:10034:1: ( ( rule__EnumerationLiteralCS__ValueAssignment_1_1 ) )
@@ -32217,7 +32217,7 @@
             // InternalOCLinEcore.g:10035:1: ( rule__EnumerationLiteralCS__ValueAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getValueAssignment_1_1()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getValueAssignment_1_1());
             }
             // InternalOCLinEcore.g:10036:1: ( rule__EnumerationLiteralCS__ValueAssignment_1_1 )
             // InternalOCLinEcore.g:10036:2: rule__EnumerationLiteralCS__ValueAssignment_1_1
@@ -32231,7 +32231,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getValueAssignment_1_1()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getValueAssignment_1_1());
             }
 
             }
@@ -32259,7 +32259,7 @@
     public final void rule__EnumerationLiteralCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10054:1: ( rule__EnumerationLiteralCS__Group_2_0__0__Impl rule__EnumerationLiteralCS__Group_2_0__1 )
             // InternalOCLinEcore.g:10055:2: rule__EnumerationLiteralCS__Group_2_0__0__Impl rule__EnumerationLiteralCS__Group_2_0__1
@@ -32297,7 +32297,7 @@
     public final void rule__EnumerationLiteralCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10066:1: ( ( '{' ) )
             // InternalOCLinEcore.g:10067:1: ( '{' )
@@ -32306,11 +32306,11 @@
             // InternalOCLinEcore.g:10068:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getLeftCurlyBracketKeyword_2_0_0()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getLeftCurlyBracketKeyword_2_0_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getLeftCurlyBracketKeyword_2_0_0()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getLeftCurlyBracketKeyword_2_0_0());
             }
 
             }
@@ -32338,7 +32338,7 @@
     public final void rule__EnumerationLiteralCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10085:1: ( rule__EnumerationLiteralCS__Group_2_0__1__Impl rule__EnumerationLiteralCS__Group_2_0__2 )
             // InternalOCLinEcore.g:10086:2: rule__EnumerationLiteralCS__Group_2_0__1__Impl rule__EnumerationLiteralCS__Group_2_0__2
@@ -32376,7 +32376,7 @@
     public final void rule__EnumerationLiteralCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10097:1: ( ( ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_2_0_1 )* ) )
             // InternalOCLinEcore.g:10098:1: ( ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_2_0_1 )* )
@@ -32385,7 +32385,7 @@
             // InternalOCLinEcore.g:10099:1: ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_2_0_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAssignment_2_0_1()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAssignment_2_0_1());
             }
             // InternalOCLinEcore.g:10100:1: ( rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_2_0_1 )*
             loop122:
@@ -32417,7 +32417,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAssignment_2_0_1()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAssignment_2_0_1());
             }
 
             }
@@ -32445,7 +32445,7 @@
     public final void rule__EnumerationLiteralCS__Group_2_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10114:1: ( rule__EnumerationLiteralCS__Group_2_0__2__Impl )
             // InternalOCLinEcore.g:10115:2: rule__EnumerationLiteralCS__Group_2_0__2__Impl
@@ -32478,7 +32478,7 @@
     public final void rule__EnumerationLiteralCS__Group_2_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10125:1: ( ( '}' ) )
             // InternalOCLinEcore.g:10126:1: ( '}' )
@@ -32487,11 +32487,11 @@
             // InternalOCLinEcore.g:10127:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getRightCurlyBracketKeyword_2_0_2()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getRightCurlyBracketKeyword_2_0_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getRightCurlyBracketKeyword_2_0_2()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getRightCurlyBracketKeyword_2_0_2());
             }
 
             }
@@ -32519,7 +32519,7 @@
     public final void rule__ImportCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10150:1: ( rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 )
             // InternalOCLinEcore.g:10151:2: rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1
@@ -32557,7 +32557,7 @@
     public final void rule__ImportCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10162:1: ( ( ( rule__ImportCS__Alternatives_0 ) ) )
             // InternalOCLinEcore.g:10163:1: ( ( rule__ImportCS__Alternatives_0 ) )
@@ -32566,7 +32566,7 @@
             // InternalOCLinEcore.g:10164:1: ( rule__ImportCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getAlternatives_0()); 
+               before(grammarAccess.getImportCSAccess().getAlternatives_0());
             }
             // InternalOCLinEcore.g:10165:1: ( rule__ImportCS__Alternatives_0 )
             // InternalOCLinEcore.g:10165:2: rule__ImportCS__Alternatives_0
@@ -32580,7 +32580,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getAlternatives_0()); 
+               after(grammarAccess.getImportCSAccess().getAlternatives_0());
             }
 
             }
@@ -32608,7 +32608,7 @@
     public final void rule__ImportCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10179:1: ( rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 )
             // InternalOCLinEcore.g:10180:2: rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2
@@ -32646,7 +32646,7 @@
     public final void rule__ImportCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10191:1: ( ( ( rule__ImportCS__Group_1__0 )? ) )
             // InternalOCLinEcore.g:10192:1: ( ( rule__ImportCS__Group_1__0 )? )
@@ -32655,7 +32655,7 @@
             // InternalOCLinEcore.g:10193:1: ( rule__ImportCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getGroup_1()); 
+               before(grammarAccess.getImportCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:10194:1: ( rule__ImportCS__Group_1__0 )?
             int alt123=2;
@@ -32676,7 +32676,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getGroup_1()); 
+               after(grammarAccess.getImportCSAccess().getGroup_1());
             }
 
             }
@@ -32704,7 +32704,7 @@
     public final void rule__ImportCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10208:1: ( rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 )
             // InternalOCLinEcore.g:10209:2: rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3
@@ -32742,7 +32742,7 @@
     public final void rule__ImportCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10220:1: ( ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) )
             // InternalOCLinEcore.g:10221:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
@@ -32751,7 +32751,7 @@
             // InternalOCLinEcore.g:10222:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2()); 
+               before(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2());
             }
             // InternalOCLinEcore.g:10223:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
             // InternalOCLinEcore.g:10223:2: rule__ImportCS__OwnedPathNameAssignment_2
@@ -32765,7 +32765,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2()); 
+               after(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2());
             }
 
             }
@@ -32793,7 +32793,7 @@
     public final void rule__ImportCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10237:1: ( rule__ImportCS__Group__3__Impl rule__ImportCS__Group__4 )
             // InternalOCLinEcore.g:10238:2: rule__ImportCS__Group__3__Impl rule__ImportCS__Group__4
@@ -32831,7 +32831,7 @@
     public final void rule__ImportCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10249:1: ( ( ( rule__ImportCS__IsAllAssignment_3 )? ) )
             // InternalOCLinEcore.g:10250:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
@@ -32840,7 +32840,7 @@
             // InternalOCLinEcore.g:10251:1: ( rule__ImportCS__IsAllAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getIsAllAssignment_3()); 
+               before(grammarAccess.getImportCSAccess().getIsAllAssignment_3());
             }
             // InternalOCLinEcore.g:10252:1: ( rule__ImportCS__IsAllAssignment_3 )?
             int alt124=2;
@@ -32865,7 +32865,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getIsAllAssignment_3()); 
+               after(grammarAccess.getImportCSAccess().getIsAllAssignment_3());
             }
 
             }
@@ -32893,7 +32893,7 @@
     public final void rule__ImportCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10266:1: ( rule__ImportCS__Group__4__Impl )
             // InternalOCLinEcore.g:10267:2: rule__ImportCS__Group__4__Impl
@@ -32926,7 +32926,7 @@
     public final void rule__ImportCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10277:1: ( ( ';' ) )
             // InternalOCLinEcore.g:10278:1: ( ';' )
@@ -32935,11 +32935,11 @@
             // InternalOCLinEcore.g:10279:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getSemicolonKeyword_4()); 
+               before(grammarAccess.getImportCSAccess().getSemicolonKeyword_4());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getSemicolonKeyword_4()); 
+               after(grammarAccess.getImportCSAccess().getSemicolonKeyword_4());
             }
 
             }
@@ -32967,7 +32967,7 @@
     public final void rule__ImportCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10306:1: ( rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 )
             // InternalOCLinEcore.g:10307:2: rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1
@@ -33005,7 +33005,7 @@
     public final void rule__ImportCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10318:1: ( ( ( rule__ImportCS__NameAssignment_1_0 ) ) )
             // InternalOCLinEcore.g:10319:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
@@ -33014,7 +33014,7 @@
             // InternalOCLinEcore.g:10320:1: ( rule__ImportCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getNameAssignment_1_0()); 
+               before(grammarAccess.getImportCSAccess().getNameAssignment_1_0());
             }
             // InternalOCLinEcore.g:10321:1: ( rule__ImportCS__NameAssignment_1_0 )
             // InternalOCLinEcore.g:10321:2: rule__ImportCS__NameAssignment_1_0
@@ -33028,7 +33028,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getNameAssignment_1_0()); 
+               after(grammarAccess.getImportCSAccess().getNameAssignment_1_0());
             }
 
             }
@@ -33056,7 +33056,7 @@
     public final void rule__ImportCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10335:1: ( rule__ImportCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:10336:2: rule__ImportCS__Group_1__1__Impl
@@ -33089,7 +33089,7 @@
     public final void rule__ImportCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10346:1: ( ( ':' ) )
             // InternalOCLinEcore.g:10347:1: ( ':' )
@@ -33098,11 +33098,11 @@
             // InternalOCLinEcore.g:10348:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getColonKeyword_1_1()); 
+               before(grammarAccess.getImportCSAccess().getColonKeyword_1_1());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getColonKeyword_1_1()); 
+               after(grammarAccess.getImportCSAccess().getColonKeyword_1_1());
             }
 
             }
@@ -33130,7 +33130,7 @@
     public final void rule__ModelElementRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10369:1: ( rule__ModelElementRefCS__Group__0__Impl rule__ModelElementRefCS__Group__1 )
             // InternalOCLinEcore.g:10370:2: rule__ModelElementRefCS__Group__0__Impl rule__ModelElementRefCS__Group__1
@@ -33168,7 +33168,7 @@
     public final void rule__ModelElementRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10381:1: ( ( 'reference' ) )
             // InternalOCLinEcore.g:10382:1: ( 'reference' )
@@ -33177,11 +33177,11 @@
             // InternalOCLinEcore.g:10383:1: 'reference'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getModelElementRefCSAccess().getReferenceKeyword_0()); 
+               before(grammarAccess.getModelElementRefCSAccess().getReferenceKeyword_0());
             }
             match(input,44,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getModelElementRefCSAccess().getReferenceKeyword_0()); 
+               after(grammarAccess.getModelElementRefCSAccess().getReferenceKeyword_0());
             }
 
             }
@@ -33209,7 +33209,7 @@
     public final void rule__ModelElementRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10400:1: ( rule__ModelElementRefCS__Group__1__Impl rule__ModelElementRefCS__Group__2 )
             // InternalOCLinEcore.g:10401:2: rule__ModelElementRefCS__Group__1__Impl rule__ModelElementRefCS__Group__2
@@ -33247,7 +33247,7 @@
     public final void rule__ModelElementRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10412:1: ( ( ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 ) ) )
             // InternalOCLinEcore.g:10413:1: ( ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 ) )
@@ -33256,7 +33256,7 @@
             // InternalOCLinEcore.g:10414:1: ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getModelElementRefCSAccess().getOwnedPathNameAssignment_1()); 
+               before(grammarAccess.getModelElementRefCSAccess().getOwnedPathNameAssignment_1());
             }
             // InternalOCLinEcore.g:10415:1: ( rule__ModelElementRefCS__OwnedPathNameAssignment_1 )
             // InternalOCLinEcore.g:10415:2: rule__ModelElementRefCS__OwnedPathNameAssignment_1
@@ -33270,7 +33270,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getModelElementRefCSAccess().getOwnedPathNameAssignment_1()); 
+               after(grammarAccess.getModelElementRefCSAccess().getOwnedPathNameAssignment_1());
             }
 
             }
@@ -33298,7 +33298,7 @@
     public final void rule__ModelElementRefCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10429:1: ( rule__ModelElementRefCS__Group__2__Impl )
             // InternalOCLinEcore.g:10430:2: rule__ModelElementRefCS__Group__2__Impl
@@ -33331,7 +33331,7 @@
     public final void rule__ModelElementRefCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10440:1: ( ( ';' ) )
             // InternalOCLinEcore.g:10441:1: ( ';' )
@@ -33340,11 +33340,11 @@
             // InternalOCLinEcore.g:10442:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getModelElementRefCSAccess().getSemicolonKeyword_2()); 
+               before(grammarAccess.getModelElementRefCSAccess().getSemicolonKeyword_2());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getModelElementRefCSAccess().getSemicolonKeyword_2()); 
+               after(grammarAccess.getModelElementRefCSAccess().getSemicolonKeyword_2());
             }
 
             }
@@ -33372,7 +33372,7 @@
     public final void rule__OperationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10465:1: ( rule__OperationCS__Group__0__Impl rule__OperationCS__Group__1 )
             // InternalOCLinEcore.g:10466:2: rule__OperationCS__Group__0__Impl rule__OperationCS__Group__1
@@ -33410,7 +33410,7 @@
     public final void rule__OperationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10477:1: ( ( ( rule__OperationCS__Alternatives_0 )? ) )
             // InternalOCLinEcore.g:10478:1: ( ( rule__OperationCS__Alternatives_0 )? )
@@ -33419,7 +33419,7 @@
             // InternalOCLinEcore.g:10479:1: ( rule__OperationCS__Alternatives_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getAlternatives_0()); 
+               before(grammarAccess.getOperationCSAccess().getAlternatives_0());
             }
             // InternalOCLinEcore.g:10480:1: ( rule__OperationCS__Alternatives_0 )?
             int alt125=2;
@@ -33444,7 +33444,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getAlternatives_0()); 
+               after(grammarAccess.getOperationCSAccess().getAlternatives_0());
             }
 
             }
@@ -33472,7 +33472,7 @@
     public final void rule__OperationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10494:1: ( rule__OperationCS__Group__1__Impl rule__OperationCS__Group__2 )
             // InternalOCLinEcore.g:10495:2: rule__OperationCS__Group__1__Impl rule__OperationCS__Group__2
@@ -33510,7 +33510,7 @@
     public final void rule__OperationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10506:1: ( ( 'operation' ) )
             // InternalOCLinEcore.g:10507:1: ( 'operation' )
@@ -33519,11 +33519,11 @@
             // InternalOCLinEcore.g:10508:1: 'operation'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOperationKeyword_1()); 
+               before(grammarAccess.getOperationCSAccess().getOperationKeyword_1());
             }
             match(input,36,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOperationKeyword_1()); 
+               after(grammarAccess.getOperationCSAccess().getOperationKeyword_1());
             }
 
             }
@@ -33551,7 +33551,7 @@
     public final void rule__OperationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10525:1: ( rule__OperationCS__Group__2__Impl rule__OperationCS__Group__3 )
             // InternalOCLinEcore.g:10526:2: rule__OperationCS__Group__2__Impl rule__OperationCS__Group__3
@@ -33589,7 +33589,7 @@
     public final void rule__OperationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10537:1: ( ( ( rule__OperationCS__OwnedSignatureAssignment_2 )? ) )
             // InternalOCLinEcore.g:10538:1: ( ( rule__OperationCS__OwnedSignatureAssignment_2 )? )
@@ -33598,7 +33598,7 @@
             // InternalOCLinEcore.g:10539:1: ( rule__OperationCS__OwnedSignatureAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedSignatureAssignment_2()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedSignatureAssignment_2());
             }
             // InternalOCLinEcore.g:10540:1: ( rule__OperationCS__OwnedSignatureAssignment_2 )?
             int alt126=2;
@@ -33623,7 +33623,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedSignatureAssignment_2()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedSignatureAssignment_2());
             }
 
             }
@@ -33651,7 +33651,7 @@
     public final void rule__OperationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10554:1: ( rule__OperationCS__Group__3__Impl rule__OperationCS__Group__4 )
             // InternalOCLinEcore.g:10555:2: rule__OperationCS__Group__3__Impl rule__OperationCS__Group__4
@@ -33689,7 +33689,7 @@
     public final void rule__OperationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10566:1: ( ( ( rule__OperationCS__NameAssignment_3 ) ) )
             // InternalOCLinEcore.g:10567:1: ( ( rule__OperationCS__NameAssignment_3 ) )
@@ -33698,7 +33698,7 @@
             // InternalOCLinEcore.g:10568:1: ( rule__OperationCS__NameAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getNameAssignment_3()); 
+               before(grammarAccess.getOperationCSAccess().getNameAssignment_3());
             }
             // InternalOCLinEcore.g:10569:1: ( rule__OperationCS__NameAssignment_3 )
             // InternalOCLinEcore.g:10569:2: rule__OperationCS__NameAssignment_3
@@ -33712,7 +33712,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getNameAssignment_3()); 
+               after(grammarAccess.getOperationCSAccess().getNameAssignment_3());
             }
 
             }
@@ -33740,7 +33740,7 @@
     public final void rule__OperationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10583:1: ( rule__OperationCS__Group__4__Impl rule__OperationCS__Group__5 )
             // InternalOCLinEcore.g:10584:2: rule__OperationCS__Group__4__Impl rule__OperationCS__Group__5
@@ -33778,7 +33778,7 @@
     public final void rule__OperationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10595:1: ( ( '(' ) )
             // InternalOCLinEcore.g:10596:1: ( '(' )
@@ -33787,11 +33787,11 @@
             // InternalOCLinEcore.g:10597:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getLeftParenthesisKeyword_4()); 
+               before(grammarAccess.getOperationCSAccess().getLeftParenthesisKeyword_4());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getLeftParenthesisKeyword_4()); 
+               after(grammarAccess.getOperationCSAccess().getLeftParenthesisKeyword_4());
             }
 
             }
@@ -33819,7 +33819,7 @@
     public final void rule__OperationCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10614:1: ( rule__OperationCS__Group__5__Impl rule__OperationCS__Group__6 )
             // InternalOCLinEcore.g:10615:2: rule__OperationCS__Group__5__Impl rule__OperationCS__Group__6
@@ -33857,7 +33857,7 @@
     public final void rule__OperationCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10626:1: ( ( ( rule__OperationCS__Group_5__0 )? ) )
             // InternalOCLinEcore.g:10627:1: ( ( rule__OperationCS__Group_5__0 )? )
@@ -33866,7 +33866,7 @@
             // InternalOCLinEcore.g:10628:1: ( rule__OperationCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getGroup_5()); 
+               before(grammarAccess.getOperationCSAccess().getGroup_5());
             }
             // InternalOCLinEcore.g:10629:1: ( rule__OperationCS__Group_5__0 )?
             int alt127=2;
@@ -33891,7 +33891,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getGroup_5()); 
+               after(grammarAccess.getOperationCSAccess().getGroup_5());
             }
 
             }
@@ -33919,7 +33919,7 @@
     public final void rule__OperationCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10643:1: ( rule__OperationCS__Group__6__Impl rule__OperationCS__Group__7 )
             // InternalOCLinEcore.g:10644:2: rule__OperationCS__Group__6__Impl rule__OperationCS__Group__7
@@ -33957,7 +33957,7 @@
     public final void rule__OperationCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10655:1: ( ( ')' ) )
             // InternalOCLinEcore.g:10656:1: ( ')' )
@@ -33966,11 +33966,11 @@
             // InternalOCLinEcore.g:10657:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getRightParenthesisKeyword_6()); 
+               before(grammarAccess.getOperationCSAccess().getRightParenthesisKeyword_6());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getRightParenthesisKeyword_6()); 
+               after(grammarAccess.getOperationCSAccess().getRightParenthesisKeyword_6());
             }
 
             }
@@ -33998,7 +33998,7 @@
     public final void rule__OperationCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10674:1: ( rule__OperationCS__Group__7__Impl rule__OperationCS__Group__8 )
             // InternalOCLinEcore.g:10675:2: rule__OperationCS__Group__7__Impl rule__OperationCS__Group__8
@@ -34036,7 +34036,7 @@
     public final void rule__OperationCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10686:1: ( ( ( rule__OperationCS__Group_7__0 )? ) )
             // InternalOCLinEcore.g:10687:1: ( ( rule__OperationCS__Group_7__0 )? )
@@ -34045,7 +34045,7 @@
             // InternalOCLinEcore.g:10688:1: ( rule__OperationCS__Group_7__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getGroup_7()); 
+               before(grammarAccess.getOperationCSAccess().getGroup_7());
             }
             // InternalOCLinEcore.g:10689:1: ( rule__OperationCS__Group_7__0 )?
             int alt128=2;
@@ -34070,7 +34070,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getGroup_7()); 
+               after(grammarAccess.getOperationCSAccess().getGroup_7());
             }
 
             }
@@ -34098,7 +34098,7 @@
     public final void rule__OperationCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10703:1: ( rule__OperationCS__Group__8__Impl rule__OperationCS__Group__9 )
             // InternalOCLinEcore.g:10704:2: rule__OperationCS__Group__8__Impl rule__OperationCS__Group__9
@@ -34136,7 +34136,7 @@
     public final void rule__OperationCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10715:1: ( ( ( rule__OperationCS__Group_8__0 )? ) )
             // InternalOCLinEcore.g:10716:1: ( ( rule__OperationCS__Group_8__0 )? )
@@ -34145,7 +34145,7 @@
             // InternalOCLinEcore.g:10717:1: ( rule__OperationCS__Group_8__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getGroup_8()); 
+               before(grammarAccess.getOperationCSAccess().getGroup_8());
             }
             // InternalOCLinEcore.g:10718:1: ( rule__OperationCS__Group_8__0 )?
             int alt129=2;
@@ -34170,7 +34170,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getGroup_8()); 
+               after(grammarAccess.getOperationCSAccess().getGroup_8());
             }
 
             }
@@ -34198,7 +34198,7 @@
     public final void rule__OperationCS__Group__9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10732:1: ( rule__OperationCS__Group__9__Impl rule__OperationCS__Group__10 )
             // InternalOCLinEcore.g:10733:2: rule__OperationCS__Group__9__Impl rule__OperationCS__Group__10
@@ -34236,7 +34236,7 @@
     public final void rule__OperationCS__Group__9__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10744:1: ( ( ( rule__OperationCS__Group_9__0 )? ) )
             // InternalOCLinEcore.g:10745:1: ( ( rule__OperationCS__Group_9__0 )? )
@@ -34245,7 +34245,7 @@
             // InternalOCLinEcore.g:10746:1: ( rule__OperationCS__Group_9__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getGroup_9()); 
+               before(grammarAccess.getOperationCSAccess().getGroup_9());
             }
             // InternalOCLinEcore.g:10747:1: ( rule__OperationCS__Group_9__0 )?
             int alt130=2;
@@ -34274,7 +34274,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getGroup_9()); 
+               after(grammarAccess.getOperationCSAccess().getGroup_9());
             }
 
             }
@@ -34302,7 +34302,7 @@
     public final void rule__OperationCS__Group__10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10761:1: ( rule__OperationCS__Group__10__Impl )
             // InternalOCLinEcore.g:10762:2: rule__OperationCS__Group__10__Impl
@@ -34335,7 +34335,7 @@
     public final void rule__OperationCS__Group__10__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10772:1: ( ( ( rule__OperationCS__Alternatives_10 ) ) )
             // InternalOCLinEcore.g:10773:1: ( ( rule__OperationCS__Alternatives_10 ) )
@@ -34344,7 +34344,7 @@
             // InternalOCLinEcore.g:10774:1: ( rule__OperationCS__Alternatives_10 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getAlternatives_10()); 
+               before(grammarAccess.getOperationCSAccess().getAlternatives_10());
             }
             // InternalOCLinEcore.g:10775:1: ( rule__OperationCS__Alternatives_10 )
             // InternalOCLinEcore.g:10775:2: rule__OperationCS__Alternatives_10
@@ -34358,7 +34358,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getAlternatives_10()); 
+               after(grammarAccess.getOperationCSAccess().getAlternatives_10());
             }
 
             }
@@ -34386,7 +34386,7 @@
     public final void rule__OperationCS__Group_0_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10811:1: ( rule__OperationCS__Group_0_0__0__Impl rule__OperationCS__Group_0_0__1 )
             // InternalOCLinEcore.g:10812:2: rule__OperationCS__Group_0_0__0__Impl rule__OperationCS__Group_0_0__1
@@ -34424,7 +34424,7 @@
     public final void rule__OperationCS__Group_0_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10823:1: ( ( ( rule__OperationCS__QualifiersAssignment_0_0_0 ) ) )
             // InternalOCLinEcore.g:10824:1: ( ( rule__OperationCS__QualifiersAssignment_0_0_0 ) )
@@ -34433,7 +34433,7 @@
             // InternalOCLinEcore.g:10825:1: ( rule__OperationCS__QualifiersAssignment_0_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_0_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_0_0());
             }
             // InternalOCLinEcore.g:10826:1: ( rule__OperationCS__QualifiersAssignment_0_0_0 )
             // InternalOCLinEcore.g:10826:2: rule__OperationCS__QualifiersAssignment_0_0_0
@@ -34447,7 +34447,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_0_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_0_0());
             }
 
             }
@@ -34475,7 +34475,7 @@
     public final void rule__OperationCS__Group_0_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10840:1: ( rule__OperationCS__Group_0_0__1__Impl )
             // InternalOCLinEcore.g:10841:2: rule__OperationCS__Group_0_0__1__Impl
@@ -34508,7 +34508,7 @@
     public final void rule__OperationCS__Group_0_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10851:1: ( ( ( rule__OperationCS__QualifiersAssignment_0_0_1 )? ) )
             // InternalOCLinEcore.g:10852:1: ( ( rule__OperationCS__QualifiersAssignment_0_0_1 )? )
@@ -34517,7 +34517,7 @@
             // InternalOCLinEcore.g:10853:1: ( rule__OperationCS__QualifiersAssignment_0_0_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_0_1()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_0_1());
             }
             // InternalOCLinEcore.g:10854:1: ( rule__OperationCS__QualifiersAssignment_0_0_1 )?
             int alt131=2;
@@ -34542,7 +34542,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_0_1()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_0_1());
             }
 
             }
@@ -34570,7 +34570,7 @@
     public final void rule__OperationCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10872:1: ( rule__OperationCS__Group_0_1__0__Impl rule__OperationCS__Group_0_1__1 )
             // InternalOCLinEcore.g:10873:2: rule__OperationCS__Group_0_1__0__Impl rule__OperationCS__Group_0_1__1
@@ -34608,7 +34608,7 @@
     public final void rule__OperationCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10884:1: ( ( ( rule__OperationCS__QualifiersAssignment_0_1_0 ) ) )
             // InternalOCLinEcore.g:10885:1: ( ( rule__OperationCS__QualifiersAssignment_0_1_0 ) )
@@ -34617,7 +34617,7 @@
             // InternalOCLinEcore.g:10886:1: ( rule__OperationCS__QualifiersAssignment_0_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_1_0());
             }
             // InternalOCLinEcore.g:10887:1: ( rule__OperationCS__QualifiersAssignment_0_1_0 )
             // InternalOCLinEcore.g:10887:2: rule__OperationCS__QualifiersAssignment_0_1_0
@@ -34631,7 +34631,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_1_0());
             }
 
             }
@@ -34659,7 +34659,7 @@
     public final void rule__OperationCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10901:1: ( rule__OperationCS__Group_0_1__1__Impl )
             // InternalOCLinEcore.g:10902:2: rule__OperationCS__Group_0_1__1__Impl
@@ -34692,7 +34692,7 @@
     public final void rule__OperationCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10912:1: ( ( ( rule__OperationCS__QualifiersAssignment_0_1_1 )? ) )
             // InternalOCLinEcore.g:10913:1: ( ( rule__OperationCS__QualifiersAssignment_0_1_1 )? )
@@ -34701,7 +34701,7 @@
             // InternalOCLinEcore.g:10914:1: ( rule__OperationCS__QualifiersAssignment_0_1_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_1_1()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_1_1());
             }
             // InternalOCLinEcore.g:10915:1: ( rule__OperationCS__QualifiersAssignment_0_1_1 )?
             int alt132=2;
@@ -34726,7 +34726,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_1_1()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersAssignment_0_1_1());
             }
 
             }
@@ -34754,7 +34754,7 @@
     public final void rule__OperationCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10933:1: ( rule__OperationCS__Group_5__0__Impl rule__OperationCS__Group_5__1 )
             // InternalOCLinEcore.g:10934:2: rule__OperationCS__Group_5__0__Impl rule__OperationCS__Group_5__1
@@ -34792,7 +34792,7 @@
     public final void rule__OperationCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10945:1: ( ( ( rule__OperationCS__OwnedParametersAssignment_5_0 ) ) )
             // InternalOCLinEcore.g:10946:1: ( ( rule__OperationCS__OwnedParametersAssignment_5_0 ) )
@@ -34801,7 +34801,7 @@
             // InternalOCLinEcore.g:10947:1: ( rule__OperationCS__OwnedParametersAssignment_5_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedParametersAssignment_5_0()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedParametersAssignment_5_0());
             }
             // InternalOCLinEcore.g:10948:1: ( rule__OperationCS__OwnedParametersAssignment_5_0 )
             // InternalOCLinEcore.g:10948:2: rule__OperationCS__OwnedParametersAssignment_5_0
@@ -34815,7 +34815,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedParametersAssignment_5_0()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedParametersAssignment_5_0());
             }
 
             }
@@ -34843,7 +34843,7 @@
     public final void rule__OperationCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10962:1: ( rule__OperationCS__Group_5__1__Impl )
             // InternalOCLinEcore.g:10963:2: rule__OperationCS__Group_5__1__Impl
@@ -34876,7 +34876,7 @@
     public final void rule__OperationCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10973:1: ( ( ( rule__OperationCS__Group_5_1__0 )* ) )
             // InternalOCLinEcore.g:10974:1: ( ( rule__OperationCS__Group_5_1__0 )* )
@@ -34885,7 +34885,7 @@
             // InternalOCLinEcore.g:10975:1: ( rule__OperationCS__Group_5_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getGroup_5_1()); 
+               before(grammarAccess.getOperationCSAccess().getGroup_5_1());
             }
             // InternalOCLinEcore.g:10976:1: ( rule__OperationCS__Group_5_1__0 )*
             loop133:
@@ -34917,7 +34917,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getGroup_5_1()); 
+               after(grammarAccess.getOperationCSAccess().getGroup_5_1());
             }
 
             }
@@ -34945,7 +34945,7 @@
     public final void rule__OperationCS__Group_5_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:10994:1: ( rule__OperationCS__Group_5_1__0__Impl rule__OperationCS__Group_5_1__1 )
             // InternalOCLinEcore.g:10995:2: rule__OperationCS__Group_5_1__0__Impl rule__OperationCS__Group_5_1__1
@@ -34983,7 +34983,7 @@
     public final void rule__OperationCS__Group_5_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11006:1: ( ( ',' ) )
             // InternalOCLinEcore.g:11007:1: ( ',' )
@@ -34992,11 +34992,11 @@
             // InternalOCLinEcore.g:11008:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getCommaKeyword_5_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getCommaKeyword_5_1_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getCommaKeyword_5_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getCommaKeyword_5_1_0());
             }
 
             }
@@ -35024,7 +35024,7 @@
     public final void rule__OperationCS__Group_5_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11025:1: ( rule__OperationCS__Group_5_1__1__Impl )
             // InternalOCLinEcore.g:11026:2: rule__OperationCS__Group_5_1__1__Impl
@@ -35057,7 +35057,7 @@
     public final void rule__OperationCS__Group_5_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11036:1: ( ( ( rule__OperationCS__OwnedParametersAssignment_5_1_1 ) ) )
             // InternalOCLinEcore.g:11037:1: ( ( rule__OperationCS__OwnedParametersAssignment_5_1_1 ) )
@@ -35066,7 +35066,7 @@
             // InternalOCLinEcore.g:11038:1: ( rule__OperationCS__OwnedParametersAssignment_5_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedParametersAssignment_5_1_1()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedParametersAssignment_5_1_1());
             }
             // InternalOCLinEcore.g:11039:1: ( rule__OperationCS__OwnedParametersAssignment_5_1_1 )
             // InternalOCLinEcore.g:11039:2: rule__OperationCS__OwnedParametersAssignment_5_1_1
@@ -35080,7 +35080,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedParametersAssignment_5_1_1()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedParametersAssignment_5_1_1());
             }
 
             }
@@ -35108,7 +35108,7 @@
     public final void rule__OperationCS__Group_7__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11057:1: ( rule__OperationCS__Group_7__0__Impl rule__OperationCS__Group_7__1 )
             // InternalOCLinEcore.g:11058:2: rule__OperationCS__Group_7__0__Impl rule__OperationCS__Group_7__1
@@ -35146,7 +35146,7 @@
     public final void rule__OperationCS__Group_7__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11069:1: ( ( ':' ) )
             // InternalOCLinEcore.g:11070:1: ( ':' )
@@ -35155,11 +35155,11 @@
             // InternalOCLinEcore.g:11071:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getColonKeyword_7_0()); 
+               before(grammarAccess.getOperationCSAccess().getColonKeyword_7_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getColonKeyword_7_0()); 
+               after(grammarAccess.getOperationCSAccess().getColonKeyword_7_0());
             }
 
             }
@@ -35187,7 +35187,7 @@
     public final void rule__OperationCS__Group_7__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11088:1: ( rule__OperationCS__Group_7__1__Impl )
             // InternalOCLinEcore.g:11089:2: rule__OperationCS__Group_7__1__Impl
@@ -35220,7 +35220,7 @@
     public final void rule__OperationCS__Group_7__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11099:1: ( ( ( rule__OperationCS__OwnedTypeAssignment_7_1 ) ) )
             // InternalOCLinEcore.g:11100:1: ( ( rule__OperationCS__OwnedTypeAssignment_7_1 ) )
@@ -35229,7 +35229,7 @@
             // InternalOCLinEcore.g:11101:1: ( rule__OperationCS__OwnedTypeAssignment_7_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedTypeAssignment_7_1()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedTypeAssignment_7_1());
             }
             // InternalOCLinEcore.g:11102:1: ( rule__OperationCS__OwnedTypeAssignment_7_1 )
             // InternalOCLinEcore.g:11102:2: rule__OperationCS__OwnedTypeAssignment_7_1
@@ -35243,7 +35243,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedTypeAssignment_7_1()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedTypeAssignment_7_1());
             }
 
             }
@@ -35271,7 +35271,7 @@
     public final void rule__OperationCS__Group_8__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11120:1: ( rule__OperationCS__Group_8__0__Impl rule__OperationCS__Group_8__1 )
             // InternalOCLinEcore.g:11121:2: rule__OperationCS__Group_8__0__Impl rule__OperationCS__Group_8__1
@@ -35309,7 +35309,7 @@
     public final void rule__OperationCS__Group_8__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11132:1: ( ( 'throws' ) )
             // InternalOCLinEcore.g:11133:1: ( 'throws' )
@@ -35318,11 +35318,11 @@
             // InternalOCLinEcore.g:11134:1: 'throws'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getThrowsKeyword_8_0()); 
+               before(grammarAccess.getOperationCSAccess().getThrowsKeyword_8_0());
             }
             match(input,47,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getThrowsKeyword_8_0()); 
+               after(grammarAccess.getOperationCSAccess().getThrowsKeyword_8_0());
             }
 
             }
@@ -35350,7 +35350,7 @@
     public final void rule__OperationCS__Group_8__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11151:1: ( rule__OperationCS__Group_8__1__Impl rule__OperationCS__Group_8__2 )
             // InternalOCLinEcore.g:11152:2: rule__OperationCS__Group_8__1__Impl rule__OperationCS__Group_8__2
@@ -35388,7 +35388,7 @@
     public final void rule__OperationCS__Group_8__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11163:1: ( ( ( rule__OperationCS__OwnedExceptionsAssignment_8_1 ) ) )
             // InternalOCLinEcore.g:11164:1: ( ( rule__OperationCS__OwnedExceptionsAssignment_8_1 ) )
@@ -35397,7 +35397,7 @@
             // InternalOCLinEcore.g:11165:1: ( rule__OperationCS__OwnedExceptionsAssignment_8_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedExceptionsAssignment_8_1()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedExceptionsAssignment_8_1());
             }
             // InternalOCLinEcore.g:11166:1: ( rule__OperationCS__OwnedExceptionsAssignment_8_1 )
             // InternalOCLinEcore.g:11166:2: rule__OperationCS__OwnedExceptionsAssignment_8_1
@@ -35411,7 +35411,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedExceptionsAssignment_8_1()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedExceptionsAssignment_8_1());
             }
 
             }
@@ -35439,7 +35439,7 @@
     public final void rule__OperationCS__Group_8__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11180:1: ( rule__OperationCS__Group_8__2__Impl )
             // InternalOCLinEcore.g:11181:2: rule__OperationCS__Group_8__2__Impl
@@ -35472,7 +35472,7 @@
     public final void rule__OperationCS__Group_8__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11191:1: ( ( ( rule__OperationCS__Group_8_2__0 )* ) )
             // InternalOCLinEcore.g:11192:1: ( ( rule__OperationCS__Group_8_2__0 )* )
@@ -35481,7 +35481,7 @@
             // InternalOCLinEcore.g:11193:1: ( rule__OperationCS__Group_8_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getGroup_8_2()); 
+               before(grammarAccess.getOperationCSAccess().getGroup_8_2());
             }
             // InternalOCLinEcore.g:11194:1: ( rule__OperationCS__Group_8_2__0 )*
             loop134:
@@ -35513,7 +35513,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getGroup_8_2()); 
+               after(grammarAccess.getOperationCSAccess().getGroup_8_2());
             }
 
             }
@@ -35541,7 +35541,7 @@
     public final void rule__OperationCS__Group_8_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11214:1: ( rule__OperationCS__Group_8_2__0__Impl rule__OperationCS__Group_8_2__1 )
             // InternalOCLinEcore.g:11215:2: rule__OperationCS__Group_8_2__0__Impl rule__OperationCS__Group_8_2__1
@@ -35579,7 +35579,7 @@
     public final void rule__OperationCS__Group_8_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11226:1: ( ( ',' ) )
             // InternalOCLinEcore.g:11227:1: ( ',' )
@@ -35588,11 +35588,11 @@
             // InternalOCLinEcore.g:11228:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getCommaKeyword_8_2_0()); 
+               before(grammarAccess.getOperationCSAccess().getCommaKeyword_8_2_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getCommaKeyword_8_2_0()); 
+               after(grammarAccess.getOperationCSAccess().getCommaKeyword_8_2_0());
             }
 
             }
@@ -35620,7 +35620,7 @@
     public final void rule__OperationCS__Group_8_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11245:1: ( rule__OperationCS__Group_8_2__1__Impl )
             // InternalOCLinEcore.g:11246:2: rule__OperationCS__Group_8_2__1__Impl
@@ -35653,7 +35653,7 @@
     public final void rule__OperationCS__Group_8_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11256:1: ( ( ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 ) ) )
             // InternalOCLinEcore.g:11257:1: ( ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 ) )
@@ -35662,7 +35662,7 @@
             // InternalOCLinEcore.g:11258:1: ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedExceptionsAssignment_8_2_1()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedExceptionsAssignment_8_2_1());
             }
             // InternalOCLinEcore.g:11259:1: ( rule__OperationCS__OwnedExceptionsAssignment_8_2_1 )
             // InternalOCLinEcore.g:11259:2: rule__OperationCS__OwnedExceptionsAssignment_8_2_1
@@ -35676,7 +35676,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedExceptionsAssignment_8_2_1()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedExceptionsAssignment_8_2_1());
             }
 
             }
@@ -35704,7 +35704,7 @@
     public final void rule__OperationCS__Group_9__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11277:1: ( rule__OperationCS__Group_9__0__Impl rule__OperationCS__Group_9__1 )
             // InternalOCLinEcore.g:11278:2: rule__OperationCS__Group_9__0__Impl rule__OperationCS__Group_9__1
@@ -35742,7 +35742,7 @@
     public final void rule__OperationCS__Group_9__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11289:1: ( ( '{' ) )
             // InternalOCLinEcore.g:11290:1: ( '{' )
@@ -35751,11 +35751,11 @@
             // InternalOCLinEcore.g:11291:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_9_0()); 
+               before(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_9_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_9_0()); 
+               after(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_9_0());
             }
 
             }
@@ -35783,7 +35783,7 @@
     public final void rule__OperationCS__Group_9__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11308:1: ( rule__OperationCS__Group_9__1__Impl rule__OperationCS__Group_9__2 )
             // InternalOCLinEcore.g:11309:2: rule__OperationCS__Group_9__1__Impl rule__OperationCS__Group_9__2
@@ -35821,7 +35821,7 @@
     public final void rule__OperationCS__Group_9__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11320:1: ( ( ( ( rule__OperationCS__Group_9_1__0 ) ) ( ( rule__OperationCS__Group_9_1__0 )* ) ) )
             // InternalOCLinEcore.g:11321:1: ( ( ( rule__OperationCS__Group_9_1__0 ) ) ( ( rule__OperationCS__Group_9_1__0 )* ) )
@@ -35833,7 +35833,7 @@
             // InternalOCLinEcore.g:11323:1: ( rule__OperationCS__Group_9_1__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getGroup_9_1()); 
+               before(grammarAccess.getOperationCSAccess().getGroup_9_1());
             }
             // InternalOCLinEcore.g:11324:1: ( rule__OperationCS__Group_9_1__0 )
             // InternalOCLinEcore.g:11324:2: rule__OperationCS__Group_9_1__0
@@ -35847,7 +35847,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getGroup_9_1()); 
+               after(grammarAccess.getOperationCSAccess().getGroup_9_1());
             }
 
             }
@@ -35856,7 +35856,7 @@
             // InternalOCLinEcore.g:11328:1: ( rule__OperationCS__Group_9_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getGroup_9_1()); 
+               before(grammarAccess.getOperationCSAccess().getGroup_9_1());
             }
             // InternalOCLinEcore.g:11329:1: ( rule__OperationCS__Group_9_1__0 )*
             loop135:
@@ -35888,7 +35888,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getGroup_9_1()); 
+               after(grammarAccess.getOperationCSAccess().getGroup_9_1());
             }
 
             }
@@ -35919,7 +35919,7 @@
     public final void rule__OperationCS__Group_9__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11344:1: ( rule__OperationCS__Group_9__2__Impl )
             // InternalOCLinEcore.g:11345:2: rule__OperationCS__Group_9__2__Impl
@@ -35952,7 +35952,7 @@
     public final void rule__OperationCS__Group_9__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11355:1: ( ( '}' ) )
             // InternalOCLinEcore.g:11356:1: ( '}' )
@@ -35961,11 +35961,11 @@
             // InternalOCLinEcore.g:11357:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_9_2()); 
+               before(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_9_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_9_2()); 
+               after(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_9_2());
             }
 
             }
@@ -35993,7 +35993,7 @@
     public final void rule__OperationCS__Group_9_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11380:1: ( rule__OperationCS__Group_9_1__0__Impl rule__OperationCS__Group_9_1__1 )
             // InternalOCLinEcore.g:11381:2: rule__OperationCS__Group_9_1__0__Impl rule__OperationCS__Group_9_1__1
@@ -36031,7 +36031,7 @@
     public final void rule__OperationCS__Group_9_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11392:1: ( ( ( rule__OperationCS__Alternatives_9_1_0 ) ) )
             // InternalOCLinEcore.g:11393:1: ( ( rule__OperationCS__Alternatives_9_1_0 ) )
@@ -36040,7 +36040,7 @@
             // InternalOCLinEcore.g:11394:1: ( rule__OperationCS__Alternatives_9_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getAlternatives_9_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getAlternatives_9_1_0());
             }
             // InternalOCLinEcore.g:11395:1: ( rule__OperationCS__Alternatives_9_1_0 )
             // InternalOCLinEcore.g:11395:2: rule__OperationCS__Alternatives_9_1_0
@@ -36054,7 +36054,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getAlternatives_9_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getAlternatives_9_1_0());
             }
 
             }
@@ -36082,7 +36082,7 @@
     public final void rule__OperationCS__Group_9_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11409:1: ( rule__OperationCS__Group_9_1__1__Impl )
             // InternalOCLinEcore.g:11410:2: rule__OperationCS__Group_9_1__1__Impl
@@ -36115,7 +36115,7 @@
     public final void rule__OperationCS__Group_9_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11420:1: ( ( ( ',' )? ) )
             // InternalOCLinEcore.g:11421:1: ( ( ',' )? )
@@ -36124,7 +36124,7 @@
             // InternalOCLinEcore.g:11422:1: ( ',' )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getCommaKeyword_9_1_1()); 
+               before(grammarAccess.getOperationCSAccess().getCommaKeyword_9_1_1());
             }
             // InternalOCLinEcore.g:11423:1: ( ',' )?
             int alt136=2;
@@ -36145,7 +36145,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getCommaKeyword_9_1_1()); 
+               after(grammarAccess.getOperationCSAccess().getCommaKeyword_9_1_1());
             }
 
             }
@@ -36173,7 +36173,7 @@
     public final void rule__OperationCS__Group_10_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11443:1: ( rule__OperationCS__Group_10_0__0__Impl rule__OperationCS__Group_10_0__1 )
             // InternalOCLinEcore.g:11444:2: rule__OperationCS__Group_10_0__0__Impl rule__OperationCS__Group_10_0__1
@@ -36211,7 +36211,7 @@
     public final void rule__OperationCS__Group_10_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11455:1: ( ( '{' ) )
             // InternalOCLinEcore.g:11456:1: ( '{' )
@@ -36220,11 +36220,11 @@
             // InternalOCLinEcore.g:11457:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_10_0_0()); 
+               before(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_10_0_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_10_0_0()); 
+               after(grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_10_0_0());
             }
 
             }
@@ -36252,7 +36252,7 @@
     public final void rule__OperationCS__Group_10_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11474:1: ( rule__OperationCS__Group_10_0__1__Impl rule__OperationCS__Group_10_0__2 )
             // InternalOCLinEcore.g:11475:2: rule__OperationCS__Group_10_0__1__Impl rule__OperationCS__Group_10_0__2
@@ -36290,7 +36290,7 @@
     public final void rule__OperationCS__Group_10_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11486:1: ( ( ( rule__OperationCS__Alternatives_10_0_1 )* ) )
             // InternalOCLinEcore.g:11487:1: ( ( rule__OperationCS__Alternatives_10_0_1 )* )
@@ -36299,7 +36299,7 @@
             // InternalOCLinEcore.g:11488:1: ( rule__OperationCS__Alternatives_10_0_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getAlternatives_10_0_1()); 
+               before(grammarAccess.getOperationCSAccess().getAlternatives_10_0_1());
             }
             // InternalOCLinEcore.g:11489:1: ( rule__OperationCS__Alternatives_10_0_1 )*
             loop137:
@@ -36331,7 +36331,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getAlternatives_10_0_1()); 
+               after(grammarAccess.getOperationCSAccess().getAlternatives_10_0_1());
             }
 
             }
@@ -36359,7 +36359,7 @@
     public final void rule__OperationCS__Group_10_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11503:1: ( rule__OperationCS__Group_10_0__2__Impl )
             // InternalOCLinEcore.g:11504:2: rule__OperationCS__Group_10_0__2__Impl
@@ -36392,7 +36392,7 @@
     public final void rule__OperationCS__Group_10_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11514:1: ( ( '}' ) )
             // InternalOCLinEcore.g:11515:1: ( '}' )
@@ -36401,11 +36401,11 @@
             // InternalOCLinEcore.g:11516:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_10_0_2()); 
+               before(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_10_0_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_10_0_2()); 
+               after(grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_10_0_2());
             }
 
             }
@@ -36433,7 +36433,7 @@
     public final void rule__OperationCS__Group_10_0_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11539:1: ( rule__OperationCS__Group_10_0_1_2__0__Impl rule__OperationCS__Group_10_0_1_2__1 )
             // InternalOCLinEcore.g:11540:2: rule__OperationCS__Group_10_0_1_2__0__Impl rule__OperationCS__Group_10_0_1_2__1
@@ -36471,7 +36471,7 @@
     public final void rule__OperationCS__Group_10_0_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11551:1: ( ( 'body' ) )
             // InternalOCLinEcore.g:11552:1: ( 'body' )
@@ -36480,11 +36480,11 @@
             // InternalOCLinEcore.g:11553:1: 'body'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getBodyKeyword_10_0_1_2_0()); 
+               before(grammarAccess.getOperationCSAccess().getBodyKeyword_10_0_1_2_0());
             }
             match(input,19,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getBodyKeyword_10_0_1_2_0()); 
+               after(grammarAccess.getOperationCSAccess().getBodyKeyword_10_0_1_2_0());
             }
 
             }
@@ -36512,7 +36512,7 @@
     public final void rule__OperationCS__Group_10_0_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11570:1: ( rule__OperationCS__Group_10_0_1_2__1__Impl rule__OperationCS__Group_10_0_1_2__2 )
             // InternalOCLinEcore.g:11571:2: rule__OperationCS__Group_10_0_1_2__1__Impl rule__OperationCS__Group_10_0_1_2__2
@@ -36550,7 +36550,7 @@
     public final void rule__OperationCS__Group_10_0_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11582:1: ( ( ( ruleUnrestrictedName )? ) )
             // InternalOCLinEcore.g:11583:1: ( ( ruleUnrestrictedName )? )
@@ -36559,7 +36559,7 @@
             // InternalOCLinEcore.g:11584:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getUnrestrictedNameParserRuleCall_10_0_1_2_1()); 
+               before(grammarAccess.getOperationCSAccess().getUnrestrictedNameParserRuleCall_10_0_1_2_1());
             }
             // InternalOCLinEcore.g:11585:1: ( ruleUnrestrictedName )?
             int alt138=2;
@@ -36584,7 +36584,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getUnrestrictedNameParserRuleCall_10_0_1_2_1()); 
+               after(grammarAccess.getOperationCSAccess().getUnrestrictedNameParserRuleCall_10_0_1_2_1());
             }
 
             }
@@ -36612,7 +36612,7 @@
     public final void rule__OperationCS__Group_10_0_1_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11599:1: ( rule__OperationCS__Group_10_0_1_2__2__Impl rule__OperationCS__Group_10_0_1_2__3 )
             // InternalOCLinEcore.g:11600:2: rule__OperationCS__Group_10_0_1_2__2__Impl rule__OperationCS__Group_10_0_1_2__3
@@ -36650,7 +36650,7 @@
     public final void rule__OperationCS__Group_10_0_1_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11611:1: ( ( ':' ) )
             // InternalOCLinEcore.g:11612:1: ( ':' )
@@ -36659,11 +36659,11 @@
             // InternalOCLinEcore.g:11613:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getColonKeyword_10_0_1_2_2()); 
+               before(grammarAccess.getOperationCSAccess().getColonKeyword_10_0_1_2_2());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getColonKeyword_10_0_1_2_2()); 
+               after(grammarAccess.getOperationCSAccess().getColonKeyword_10_0_1_2_2());
             }
 
             }
@@ -36691,7 +36691,7 @@
     public final void rule__OperationCS__Group_10_0_1_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11630:1: ( rule__OperationCS__Group_10_0_1_2__3__Impl rule__OperationCS__Group_10_0_1_2__4 )
             // InternalOCLinEcore.g:11631:2: rule__OperationCS__Group_10_0_1_2__3__Impl rule__OperationCS__Group_10_0_1_2__4
@@ -36729,7 +36729,7 @@
     public final void rule__OperationCS__Group_10_0_1_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11642:1: ( ( ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )? ) )
             // InternalOCLinEcore.g:11643:1: ( ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )? )
@@ -36738,7 +36738,7 @@
             // InternalOCLinEcore.g:11644:1: ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsAssignment_10_0_1_2_3()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsAssignment_10_0_1_2_3());
             }
             // InternalOCLinEcore.g:11645:1: ( rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3 )?
             int alt139=2;
@@ -36763,7 +36763,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsAssignment_10_0_1_2_3()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsAssignment_10_0_1_2_3());
             }
 
             }
@@ -36791,7 +36791,7 @@
     public final void rule__OperationCS__Group_10_0_1_2__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11659:1: ( rule__OperationCS__Group_10_0_1_2__4__Impl )
             // InternalOCLinEcore.g:11660:2: rule__OperationCS__Group_10_0_1_2__4__Impl
@@ -36824,7 +36824,7 @@
     public final void rule__OperationCS__Group_10_0_1_2__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11670:1: ( ( ';' ) )
             // InternalOCLinEcore.g:11671:1: ( ';' )
@@ -36833,11 +36833,11 @@
             // InternalOCLinEcore.g:11672:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_0_1_2_4()); 
+               before(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_0_1_2_4());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_0_1_2_4()); 
+               after(grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_0_1_2_4());
             }
 
             }
@@ -36865,7 +36865,7 @@
     public final void rule__PackageCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11699:1: ( rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1 )
             // InternalOCLinEcore.g:11700:2: rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1
@@ -36903,7 +36903,7 @@
     public final void rule__PackageCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11711:1: ( ( 'package' ) )
             // InternalOCLinEcore.g:11712:1: ( 'package' )
@@ -36912,11 +36912,11 @@
             // InternalOCLinEcore.g:11713:1: 'package'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getPackageKeyword_0()); 
+               before(grammarAccess.getPackageCSAccess().getPackageKeyword_0());
             }
             match(input,38,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getPackageKeyword_0()); 
+               after(grammarAccess.getPackageCSAccess().getPackageKeyword_0());
             }
 
             }
@@ -36944,7 +36944,7 @@
     public final void rule__PackageCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11730:1: ( rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2 )
             // InternalOCLinEcore.g:11731:2: rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2
@@ -36982,7 +36982,7 @@
     public final void rule__PackageCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11742:1: ( ( ( rule__PackageCS__NameAssignment_1 ) ) )
             // InternalOCLinEcore.g:11743:1: ( ( rule__PackageCS__NameAssignment_1 ) )
@@ -36991,7 +36991,7 @@
             // InternalOCLinEcore.g:11744:1: ( rule__PackageCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getNameAssignment_1()); 
+               before(grammarAccess.getPackageCSAccess().getNameAssignment_1());
             }
             // InternalOCLinEcore.g:11745:1: ( rule__PackageCS__NameAssignment_1 )
             // InternalOCLinEcore.g:11745:2: rule__PackageCS__NameAssignment_1
@@ -37005,7 +37005,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getNameAssignment_1()); 
+               after(grammarAccess.getPackageCSAccess().getNameAssignment_1());
             }
 
             }
@@ -37033,7 +37033,7 @@
     public final void rule__PackageCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11759:1: ( rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3 )
             // InternalOCLinEcore.g:11760:2: rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3
@@ -37071,7 +37071,7 @@
     public final void rule__PackageCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11771:1: ( ( ( rule__PackageCS__Group_2__0 )? ) )
             // InternalOCLinEcore.g:11772:1: ( ( rule__PackageCS__Group_2__0 )? )
@@ -37080,7 +37080,7 @@
             // InternalOCLinEcore.g:11773:1: ( rule__PackageCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getGroup_2()); 
+               before(grammarAccess.getPackageCSAccess().getGroup_2());
             }
             // InternalOCLinEcore.g:11774:1: ( rule__PackageCS__Group_2__0 )?
             int alt140=2;
@@ -37105,7 +37105,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getGroup_2()); 
+               after(grammarAccess.getPackageCSAccess().getGroup_2());
             }
 
             }
@@ -37133,7 +37133,7 @@
     public final void rule__PackageCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11788:1: ( rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4 )
             // InternalOCLinEcore.g:11789:2: rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4
@@ -37171,7 +37171,7 @@
     public final void rule__PackageCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11800:1: ( ( ( rule__PackageCS__Group_3__0 )? ) )
             // InternalOCLinEcore.g:11801:1: ( ( rule__PackageCS__Group_3__0 )? )
@@ -37180,7 +37180,7 @@
             // InternalOCLinEcore.g:11802:1: ( rule__PackageCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getGroup_3()); 
+               before(grammarAccess.getPackageCSAccess().getGroup_3());
             }
             // InternalOCLinEcore.g:11803:1: ( rule__PackageCS__Group_3__0 )?
             int alt141=2;
@@ -37205,7 +37205,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getGroup_3()); 
+               after(grammarAccess.getPackageCSAccess().getGroup_3());
             }
 
             }
@@ -37233,7 +37233,7 @@
     public final void rule__PackageCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11817:1: ( rule__PackageCS__Group__4__Impl )
             // InternalOCLinEcore.g:11818:2: rule__PackageCS__Group__4__Impl
@@ -37266,7 +37266,7 @@
     public final void rule__PackageCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11828:1: ( ( ( rule__PackageCS__Alternatives_4 ) ) )
             // InternalOCLinEcore.g:11829:1: ( ( rule__PackageCS__Alternatives_4 ) )
@@ -37275,7 +37275,7 @@
             // InternalOCLinEcore.g:11830:1: ( rule__PackageCS__Alternatives_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getAlternatives_4()); 
+               before(grammarAccess.getPackageCSAccess().getAlternatives_4());
             }
             // InternalOCLinEcore.g:11831:1: ( rule__PackageCS__Alternatives_4 )
             // InternalOCLinEcore.g:11831:2: rule__PackageCS__Alternatives_4
@@ -37289,7 +37289,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getAlternatives_4()); 
+               after(grammarAccess.getPackageCSAccess().getAlternatives_4());
             }
 
             }
@@ -37317,7 +37317,7 @@
     public final void rule__PackageCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11855:1: ( rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1 )
             // InternalOCLinEcore.g:11856:2: rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1
@@ -37355,7 +37355,7 @@
     public final void rule__PackageCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11867:1: ( ( ':' ) )
             // InternalOCLinEcore.g:11868:1: ( ':' )
@@ -37364,11 +37364,11 @@
             // InternalOCLinEcore.g:11869:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getPackageCSAccess().getColonKeyword_2_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getPackageCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -37396,7 +37396,7 @@
     public final void rule__PackageCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11886:1: ( rule__PackageCS__Group_2__1__Impl )
             // InternalOCLinEcore.g:11887:2: rule__PackageCS__Group_2__1__Impl
@@ -37429,7 +37429,7 @@
     public final void rule__PackageCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11897:1: ( ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) ) )
             // InternalOCLinEcore.g:11898:1: ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) )
@@ -37438,7 +37438,7 @@
             // InternalOCLinEcore.g:11899:1: ( rule__PackageCS__NsPrefixAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getNsPrefixAssignment_2_1()); 
+               before(grammarAccess.getPackageCSAccess().getNsPrefixAssignment_2_1());
             }
             // InternalOCLinEcore.g:11900:1: ( rule__PackageCS__NsPrefixAssignment_2_1 )
             // InternalOCLinEcore.g:11900:2: rule__PackageCS__NsPrefixAssignment_2_1
@@ -37452,7 +37452,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getNsPrefixAssignment_2_1()); 
+               after(grammarAccess.getPackageCSAccess().getNsPrefixAssignment_2_1());
             }
 
             }
@@ -37480,7 +37480,7 @@
     public final void rule__PackageCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11918:1: ( rule__PackageCS__Group_3__0__Impl rule__PackageCS__Group_3__1 )
             // InternalOCLinEcore.g:11919:2: rule__PackageCS__Group_3__0__Impl rule__PackageCS__Group_3__1
@@ -37518,7 +37518,7 @@
     public final void rule__PackageCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11930:1: ( ( '=' ) )
             // InternalOCLinEcore.g:11931:1: ( '=' )
@@ -37527,11 +37527,11 @@
             // InternalOCLinEcore.g:11932:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_3_0()); 
+               before(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_3_0());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_3_0()); 
+               after(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_3_0());
             }
 
             }
@@ -37559,7 +37559,7 @@
     public final void rule__PackageCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11949:1: ( rule__PackageCS__Group_3__1__Impl )
             // InternalOCLinEcore.g:11950:2: rule__PackageCS__Group_3__1__Impl
@@ -37592,7 +37592,7 @@
     public final void rule__PackageCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11960:1: ( ( ( rule__PackageCS__NsURIAssignment_3_1 ) ) )
             // InternalOCLinEcore.g:11961:1: ( ( rule__PackageCS__NsURIAssignment_3_1 ) )
@@ -37601,7 +37601,7 @@
             // InternalOCLinEcore.g:11962:1: ( rule__PackageCS__NsURIAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getNsURIAssignment_3_1()); 
+               before(grammarAccess.getPackageCSAccess().getNsURIAssignment_3_1());
             }
             // InternalOCLinEcore.g:11963:1: ( rule__PackageCS__NsURIAssignment_3_1 )
             // InternalOCLinEcore.g:11963:2: rule__PackageCS__NsURIAssignment_3_1
@@ -37615,7 +37615,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getNsURIAssignment_3_1()); 
+               after(grammarAccess.getPackageCSAccess().getNsURIAssignment_3_1());
             }
 
             }
@@ -37643,7 +37643,7 @@
     public final void rule__PackageCS__Group_4_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11981:1: ( rule__PackageCS__Group_4_0__0__Impl rule__PackageCS__Group_4_0__1 )
             // InternalOCLinEcore.g:11982:2: rule__PackageCS__Group_4_0__0__Impl rule__PackageCS__Group_4_0__1
@@ -37681,7 +37681,7 @@
     public final void rule__PackageCS__Group_4_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:11993:1: ( ( '{' ) )
             // InternalOCLinEcore.g:11994:1: ( '{' )
@@ -37690,11 +37690,11 @@
             // InternalOCLinEcore.g:11995:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_4_0_0()); 
+               before(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_4_0_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_4_0_0()); 
+               after(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_4_0_0());
             }
 
             }
@@ -37722,7 +37722,7 @@
     public final void rule__PackageCS__Group_4_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12012:1: ( rule__PackageCS__Group_4_0__1__Impl rule__PackageCS__Group_4_0__2 )
             // InternalOCLinEcore.g:12013:2: rule__PackageCS__Group_4_0__1__Impl rule__PackageCS__Group_4_0__2
@@ -37760,7 +37760,7 @@
     public final void rule__PackageCS__Group_4_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12024:1: ( ( ( rule__PackageCS__Alternatives_4_0_1 )* ) )
             // InternalOCLinEcore.g:12025:1: ( ( rule__PackageCS__Alternatives_4_0_1 )* )
@@ -37769,7 +37769,7 @@
             // InternalOCLinEcore.g:12026:1: ( rule__PackageCS__Alternatives_4_0_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getAlternatives_4_0_1()); 
+               before(grammarAccess.getPackageCSAccess().getAlternatives_4_0_1());
             }
             // InternalOCLinEcore.g:12027:1: ( rule__PackageCS__Alternatives_4_0_1 )*
             loop142:
@@ -37801,7 +37801,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getAlternatives_4_0_1()); 
+               after(grammarAccess.getPackageCSAccess().getAlternatives_4_0_1());
             }
 
             }
@@ -37829,7 +37829,7 @@
     public final void rule__PackageCS__Group_4_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12041:1: ( rule__PackageCS__Group_4_0__2__Impl )
             // InternalOCLinEcore.g:12042:2: rule__PackageCS__Group_4_0__2__Impl
@@ -37862,7 +37862,7 @@
     public final void rule__PackageCS__Group_4_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12052:1: ( ( '}' ) )
             // InternalOCLinEcore.g:12053:1: ( '}' )
@@ -37871,11 +37871,11 @@
             // InternalOCLinEcore.g:12054:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_4_0_2()); 
+               before(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_4_0_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_4_0_2()); 
+               after(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_4_0_2());
             }
 
             }
@@ -37903,7 +37903,7 @@
     public final void rule__ParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12077:1: ( rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 )
             // InternalOCLinEcore.g:12078:2: rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1
@@ -37941,7 +37941,7 @@
     public final void rule__ParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12089:1: ( ( ( rule__ParameterCS__NameAssignment_0 ) ) )
             // InternalOCLinEcore.g:12090:1: ( ( rule__ParameterCS__NameAssignment_0 ) )
@@ -37950,7 +37950,7 @@
             // InternalOCLinEcore.g:12091:1: ( rule__ParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getParameterCSAccess().getNameAssignment_0());
             }
             // InternalOCLinEcore.g:12092:1: ( rule__ParameterCS__NameAssignment_0 )
             // InternalOCLinEcore.g:12092:2: rule__ParameterCS__NameAssignment_0
@@ -37964,7 +37964,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getParameterCSAccess().getNameAssignment_0());
             }
 
             }
@@ -37992,7 +37992,7 @@
     public final void rule__ParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12106:1: ( rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2 )
             // InternalOCLinEcore.g:12107:2: rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2
@@ -38030,7 +38030,7 @@
     public final void rule__ParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12118:1: ( ( ( rule__ParameterCS__Group_1__0 )? ) )
             // InternalOCLinEcore.g:12119:1: ( ( rule__ParameterCS__Group_1__0 )? )
@@ -38039,7 +38039,7 @@
             // InternalOCLinEcore.g:12120:1: ( rule__ParameterCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getGroup_1()); 
+               before(grammarAccess.getParameterCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:12121:1: ( rule__ParameterCS__Group_1__0 )?
             int alt143=2;
@@ -38064,7 +38064,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getGroup_1()); 
+               after(grammarAccess.getParameterCSAccess().getGroup_1());
             }
 
             }
@@ -38092,7 +38092,7 @@
     public final void rule__ParameterCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12135:1: ( rule__ParameterCS__Group__2__Impl rule__ParameterCS__Group__3 )
             // InternalOCLinEcore.g:12136:2: rule__ParameterCS__Group__2__Impl rule__ParameterCS__Group__3
@@ -38130,7 +38130,7 @@
     public final void rule__ParameterCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12147:1: ( ( ( rule__ParameterCS__Group_2__0 )? ) )
             // InternalOCLinEcore.g:12148:1: ( ( rule__ParameterCS__Group_2__0 )? )
@@ -38139,7 +38139,7 @@
             // InternalOCLinEcore.g:12149:1: ( rule__ParameterCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getGroup_2()); 
+               before(grammarAccess.getParameterCSAccess().getGroup_2());
             }
             // InternalOCLinEcore.g:12150:1: ( rule__ParameterCS__Group_2__0 )?
             int alt144=2;
@@ -38168,7 +38168,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getGroup_2()); 
+               after(grammarAccess.getParameterCSAccess().getGroup_2());
             }
 
             }
@@ -38196,7 +38196,7 @@
     public final void rule__ParameterCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12164:1: ( rule__ParameterCS__Group__3__Impl )
             // InternalOCLinEcore.g:12165:2: rule__ParameterCS__Group__3__Impl
@@ -38229,7 +38229,7 @@
     public final void rule__ParameterCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12175:1: ( ( ( rule__ParameterCS__Group_3__0 )? ) )
             // InternalOCLinEcore.g:12176:1: ( ( rule__ParameterCS__Group_3__0 )? )
@@ -38238,7 +38238,7 @@
             // InternalOCLinEcore.g:12177:1: ( rule__ParameterCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getGroup_3()); 
+               before(grammarAccess.getParameterCSAccess().getGroup_3());
             }
             // InternalOCLinEcore.g:12178:1: ( rule__ParameterCS__Group_3__0 )?
             int alt145=2;
@@ -38263,7 +38263,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getGroup_3()); 
+               after(grammarAccess.getParameterCSAccess().getGroup_3());
             }
 
             }
@@ -38291,7 +38291,7 @@
     public final void rule__ParameterCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12200:1: ( rule__ParameterCS__Group_1__0__Impl rule__ParameterCS__Group_1__1 )
             // InternalOCLinEcore.g:12201:2: rule__ParameterCS__Group_1__0__Impl rule__ParameterCS__Group_1__1
@@ -38329,7 +38329,7 @@
     public final void rule__ParameterCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12212:1: ( ( ':' ) )
             // InternalOCLinEcore.g:12213:1: ( ':' )
@@ -38338,11 +38338,11 @@
             // InternalOCLinEcore.g:12214:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getColonKeyword_1_0()); 
+               before(grammarAccess.getParameterCSAccess().getColonKeyword_1_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getColonKeyword_1_0()); 
+               after(grammarAccess.getParameterCSAccess().getColonKeyword_1_0());
             }
 
             }
@@ -38370,7 +38370,7 @@
     public final void rule__ParameterCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12231:1: ( rule__ParameterCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:12232:2: rule__ParameterCS__Group_1__1__Impl
@@ -38403,7 +38403,7 @@
     public final void rule__ParameterCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12242:1: ( ( ( rule__ParameterCS__OwnedTypeAssignment_1_1 ) ) )
             // InternalOCLinEcore.g:12243:1: ( ( rule__ParameterCS__OwnedTypeAssignment_1_1 ) )
@@ -38412,7 +38412,7 @@
             // InternalOCLinEcore.g:12244:1: ( rule__ParameterCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_1_1()); 
+               before(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_1_1());
             }
             // InternalOCLinEcore.g:12245:1: ( rule__ParameterCS__OwnedTypeAssignment_1_1 )
             // InternalOCLinEcore.g:12245:2: rule__ParameterCS__OwnedTypeAssignment_1_1
@@ -38426,7 +38426,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_1_1()); 
+               after(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_1_1());
             }
 
             }
@@ -38454,7 +38454,7 @@
     public final void rule__ParameterCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12263:1: ( rule__ParameterCS__Group_2__0__Impl rule__ParameterCS__Group_2__1 )
             // InternalOCLinEcore.g:12264:2: rule__ParameterCS__Group_2__0__Impl rule__ParameterCS__Group_2__1
@@ -38492,7 +38492,7 @@
     public final void rule__ParameterCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12275:1: ( ( '{' ) )
             // InternalOCLinEcore.g:12276:1: ( '{' )
@@ -38501,11 +38501,11 @@
             // InternalOCLinEcore.g:12277:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_2_0()); 
+               before(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_2_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_2_0()); 
+               after(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_2_0());
             }
 
             }
@@ -38533,7 +38533,7 @@
     public final void rule__ParameterCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12294:1: ( rule__ParameterCS__Group_2__1__Impl rule__ParameterCS__Group_2__2 )
             // InternalOCLinEcore.g:12295:2: rule__ParameterCS__Group_2__1__Impl rule__ParameterCS__Group_2__2
@@ -38571,7 +38571,7 @@
     public final void rule__ParameterCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12306:1: ( ( ( ( rule__ParameterCS__Group_2_1__0 ) ) ( ( rule__ParameterCS__Group_2_1__0 )* ) ) )
             // InternalOCLinEcore.g:12307:1: ( ( ( rule__ParameterCS__Group_2_1__0 ) ) ( ( rule__ParameterCS__Group_2_1__0 )* ) )
@@ -38583,7 +38583,7 @@
             // InternalOCLinEcore.g:12309:1: ( rule__ParameterCS__Group_2_1__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getParameterCSAccess().getGroup_2_1());
             }
             // InternalOCLinEcore.g:12310:1: ( rule__ParameterCS__Group_2_1__0 )
             // InternalOCLinEcore.g:12310:2: rule__ParameterCS__Group_2_1__0
@@ -38597,7 +38597,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getParameterCSAccess().getGroup_2_1());
             }
 
             }
@@ -38606,7 +38606,7 @@
             // InternalOCLinEcore.g:12314:1: ( rule__ParameterCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getParameterCSAccess().getGroup_2_1());
             }
             // InternalOCLinEcore.g:12315:1: ( rule__ParameterCS__Group_2_1__0 )*
             loop146:
@@ -38638,7 +38638,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getParameterCSAccess().getGroup_2_1());
             }
 
             }
@@ -38669,7 +38669,7 @@
     public final void rule__ParameterCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12330:1: ( rule__ParameterCS__Group_2__2__Impl )
             // InternalOCLinEcore.g:12331:2: rule__ParameterCS__Group_2__2__Impl
@@ -38702,7 +38702,7 @@
     public final void rule__ParameterCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12341:1: ( ( '}' ) )
             // InternalOCLinEcore.g:12342:1: ( '}' )
@@ -38711,11 +38711,11 @@
             // InternalOCLinEcore.g:12343:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_2_2()); 
+               before(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_2_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_2_2()); 
+               after(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_2_2());
             }
 
             }
@@ -38743,7 +38743,7 @@
     public final void rule__ParameterCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12366:1: ( rule__ParameterCS__Group_2_1__0__Impl rule__ParameterCS__Group_2_1__1 )
             // InternalOCLinEcore.g:12367:2: rule__ParameterCS__Group_2_1__0__Impl rule__ParameterCS__Group_2_1__1
@@ -38781,7 +38781,7 @@
     public final void rule__ParameterCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12378:1: ( ( ( rule__ParameterCS__Alternatives_2_1_0 ) ) )
             // InternalOCLinEcore.g:12379:1: ( ( rule__ParameterCS__Alternatives_2_1_0 ) )
@@ -38790,7 +38790,7 @@
             // InternalOCLinEcore.g:12380:1: ( rule__ParameterCS__Alternatives_2_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getAlternatives_2_1_0()); 
+               before(grammarAccess.getParameterCSAccess().getAlternatives_2_1_0());
             }
             // InternalOCLinEcore.g:12381:1: ( rule__ParameterCS__Alternatives_2_1_0 )
             // InternalOCLinEcore.g:12381:2: rule__ParameterCS__Alternatives_2_1_0
@@ -38804,7 +38804,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getAlternatives_2_1_0()); 
+               after(grammarAccess.getParameterCSAccess().getAlternatives_2_1_0());
             }
 
             }
@@ -38832,7 +38832,7 @@
     public final void rule__ParameterCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12395:1: ( rule__ParameterCS__Group_2_1__1__Impl )
             // InternalOCLinEcore.g:12396:2: rule__ParameterCS__Group_2_1__1__Impl
@@ -38865,7 +38865,7 @@
     public final void rule__ParameterCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12406:1: ( ( ( ',' )? ) )
             // InternalOCLinEcore.g:12407:1: ( ( ',' )? )
@@ -38874,7 +38874,7 @@
             // InternalOCLinEcore.g:12408:1: ( ',' )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getCommaKeyword_2_1_1()); 
+               before(grammarAccess.getParameterCSAccess().getCommaKeyword_2_1_1());
             }
             // InternalOCLinEcore.g:12409:1: ( ',' )?
             int alt147=2;
@@ -38895,7 +38895,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getCommaKeyword_2_1_1()); 
+               after(grammarAccess.getParameterCSAccess().getCommaKeyword_2_1_1());
             }
 
             }
@@ -38923,7 +38923,7 @@
     public final void rule__ParameterCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12429:1: ( rule__ParameterCS__Group_3__0__Impl rule__ParameterCS__Group_3__1 )
             // InternalOCLinEcore.g:12430:2: rule__ParameterCS__Group_3__0__Impl rule__ParameterCS__Group_3__1
@@ -38961,7 +38961,7 @@
     public final void rule__ParameterCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12441:1: ( ( '{' ) )
             // InternalOCLinEcore.g:12442:1: ( '{' )
@@ -38970,11 +38970,11 @@
             // InternalOCLinEcore.g:12443:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_3_0()); 
+               before(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_3_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_3_0()); 
+               after(grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_3_0());
             }
 
             }
@@ -39002,7 +39002,7 @@
     public final void rule__ParameterCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12460:1: ( rule__ParameterCS__Group_3__1__Impl rule__ParameterCS__Group_3__2 )
             // InternalOCLinEcore.g:12461:2: rule__ParameterCS__Group_3__1__Impl rule__ParameterCS__Group_3__2
@@ -39040,7 +39040,7 @@
     public final void rule__ParameterCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12472:1: ( ( ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )* ) )
             // InternalOCLinEcore.g:12473:1: ( ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )* )
@@ -39049,7 +39049,7 @@
             // InternalOCLinEcore.g:12474:1: ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAssignment_3_1()); 
+               before(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAssignment_3_1());
             }
             // InternalOCLinEcore.g:12475:1: ( rule__ParameterCS__OwnedAnnotationsAssignment_3_1 )*
             loop148:
@@ -39081,7 +39081,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAssignment_3_1()); 
+               after(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAssignment_3_1());
             }
 
             }
@@ -39109,7 +39109,7 @@
     public final void rule__ParameterCS__Group_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12489:1: ( rule__ParameterCS__Group_3__2__Impl )
             // InternalOCLinEcore.g:12490:2: rule__ParameterCS__Group_3__2__Impl
@@ -39142,7 +39142,7 @@
     public final void rule__ParameterCS__Group_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12500:1: ( ( '}' ) )
             // InternalOCLinEcore.g:12501:1: ( '}' )
@@ -39151,11 +39151,11 @@
             // InternalOCLinEcore.g:12502:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_3_2()); 
+               before(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_3_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_3_2()); 
+               after(grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_3_2());
             }
 
             }
@@ -39183,7 +39183,7 @@
     public final void rule__ReferenceCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12525:1: ( rule__ReferenceCS__Group__0__Impl rule__ReferenceCS__Group__1 )
             // InternalOCLinEcore.g:12526:2: rule__ReferenceCS__Group__0__Impl rule__ReferenceCS__Group__1
@@ -39221,7 +39221,7 @@
     public final void rule__ReferenceCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12537:1: ( ( ( rule__ReferenceCS__Alternatives_0 )? ) )
             // InternalOCLinEcore.g:12538:1: ( ( rule__ReferenceCS__Alternatives_0 )? )
@@ -39230,7 +39230,7 @@
             // InternalOCLinEcore.g:12539:1: ( rule__ReferenceCS__Alternatives_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getAlternatives_0()); 
+               before(grammarAccess.getReferenceCSAccess().getAlternatives_0());
             }
             // InternalOCLinEcore.g:12540:1: ( rule__ReferenceCS__Alternatives_0 )?
             int alt149=2;
@@ -39255,7 +39255,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getAlternatives_0()); 
+               after(grammarAccess.getReferenceCSAccess().getAlternatives_0());
             }
 
             }
@@ -39283,7 +39283,7 @@
     public final void rule__ReferenceCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12554:1: ( rule__ReferenceCS__Group__1__Impl rule__ReferenceCS__Group__2 )
             // InternalOCLinEcore.g:12555:2: rule__ReferenceCS__Group__1__Impl rule__ReferenceCS__Group__2
@@ -39321,7 +39321,7 @@
     public final void rule__ReferenceCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12566:1: ( ( 'property' ) )
             // InternalOCLinEcore.g:12567:1: ( 'property' )
@@ -39330,11 +39330,11 @@
             // InternalOCLinEcore.g:12568:1: 'property'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getPropertyKeyword_1()); 
+               before(grammarAccess.getReferenceCSAccess().getPropertyKeyword_1());
             }
             match(input,42,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getPropertyKeyword_1()); 
+               after(grammarAccess.getReferenceCSAccess().getPropertyKeyword_1());
             }
 
             }
@@ -39362,7 +39362,7 @@
     public final void rule__ReferenceCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12585:1: ( rule__ReferenceCS__Group__2__Impl rule__ReferenceCS__Group__3 )
             // InternalOCLinEcore.g:12586:2: rule__ReferenceCS__Group__2__Impl rule__ReferenceCS__Group__3
@@ -39400,7 +39400,7 @@
     public final void rule__ReferenceCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12597:1: ( ( ( rule__ReferenceCS__NameAssignment_2 ) ) )
             // InternalOCLinEcore.g:12598:1: ( ( rule__ReferenceCS__NameAssignment_2 ) )
@@ -39409,7 +39409,7 @@
             // InternalOCLinEcore.g:12599:1: ( rule__ReferenceCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getNameAssignment_2()); 
+               before(grammarAccess.getReferenceCSAccess().getNameAssignment_2());
             }
             // InternalOCLinEcore.g:12600:1: ( rule__ReferenceCS__NameAssignment_2 )
             // InternalOCLinEcore.g:12600:2: rule__ReferenceCS__NameAssignment_2
@@ -39423,7 +39423,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getNameAssignment_2()); 
+               after(grammarAccess.getReferenceCSAccess().getNameAssignment_2());
             }
 
             }
@@ -39451,7 +39451,7 @@
     public final void rule__ReferenceCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12614:1: ( rule__ReferenceCS__Group__3__Impl rule__ReferenceCS__Group__4 )
             // InternalOCLinEcore.g:12615:2: rule__ReferenceCS__Group__3__Impl rule__ReferenceCS__Group__4
@@ -39489,7 +39489,7 @@
     public final void rule__ReferenceCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12626:1: ( ( ( rule__ReferenceCS__Group_3__0 )? ) )
             // InternalOCLinEcore.g:12627:1: ( ( rule__ReferenceCS__Group_3__0 )? )
@@ -39498,7 +39498,7 @@
             // InternalOCLinEcore.g:12628:1: ( rule__ReferenceCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getGroup_3()); 
+               before(grammarAccess.getReferenceCSAccess().getGroup_3());
             }
             // InternalOCLinEcore.g:12629:1: ( rule__ReferenceCS__Group_3__0 )?
             int alt150=2;
@@ -39523,7 +39523,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getGroup_3()); 
+               after(grammarAccess.getReferenceCSAccess().getGroup_3());
             }
 
             }
@@ -39551,7 +39551,7 @@
     public final void rule__ReferenceCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12643:1: ( rule__ReferenceCS__Group__4__Impl rule__ReferenceCS__Group__5 )
             // InternalOCLinEcore.g:12644:2: rule__ReferenceCS__Group__4__Impl rule__ReferenceCS__Group__5
@@ -39589,7 +39589,7 @@
     public final void rule__ReferenceCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12655:1: ( ( ( rule__ReferenceCS__Group_4__0 )? ) )
             // InternalOCLinEcore.g:12656:1: ( ( rule__ReferenceCS__Group_4__0 )? )
@@ -39598,7 +39598,7 @@
             // InternalOCLinEcore.g:12657:1: ( rule__ReferenceCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getGroup_4()); 
+               before(grammarAccess.getReferenceCSAccess().getGroup_4());
             }
             // InternalOCLinEcore.g:12658:1: ( rule__ReferenceCS__Group_4__0 )?
             int alt151=2;
@@ -39623,7 +39623,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getGroup_4()); 
+               after(grammarAccess.getReferenceCSAccess().getGroup_4());
             }
 
             }
@@ -39651,7 +39651,7 @@
     public final void rule__ReferenceCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12672:1: ( rule__ReferenceCS__Group__5__Impl rule__ReferenceCS__Group__6 )
             // InternalOCLinEcore.g:12673:2: rule__ReferenceCS__Group__5__Impl rule__ReferenceCS__Group__6
@@ -39689,7 +39689,7 @@
     public final void rule__ReferenceCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12684:1: ( ( ( rule__ReferenceCS__Group_5__0 )? ) )
             // InternalOCLinEcore.g:12685:1: ( ( rule__ReferenceCS__Group_5__0 )? )
@@ -39698,7 +39698,7 @@
             // InternalOCLinEcore.g:12686:1: ( rule__ReferenceCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getGroup_5()); 
+               before(grammarAccess.getReferenceCSAccess().getGroup_5());
             }
             // InternalOCLinEcore.g:12687:1: ( rule__ReferenceCS__Group_5__0 )?
             int alt152=2;
@@ -39723,7 +39723,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getGroup_5()); 
+               after(grammarAccess.getReferenceCSAccess().getGroup_5());
             }
 
             }
@@ -39751,7 +39751,7 @@
     public final void rule__ReferenceCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12701:1: ( rule__ReferenceCS__Group__6__Impl rule__ReferenceCS__Group__7 )
             // InternalOCLinEcore.g:12702:2: rule__ReferenceCS__Group__6__Impl rule__ReferenceCS__Group__7
@@ -39789,7 +39789,7 @@
     public final void rule__ReferenceCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12713:1: ( ( ( rule__ReferenceCS__Group_6__0 )? ) )
             // InternalOCLinEcore.g:12714:1: ( ( rule__ReferenceCS__Group_6__0 )? )
@@ -39798,7 +39798,7 @@
             // InternalOCLinEcore.g:12715:1: ( rule__ReferenceCS__Group_6__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getGroup_6()); 
+               before(grammarAccess.getReferenceCSAccess().getGroup_6());
             }
             // InternalOCLinEcore.g:12716:1: ( rule__ReferenceCS__Group_6__0 )?
             int alt153=2;
@@ -39827,7 +39827,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getGroup_6()); 
+               after(grammarAccess.getReferenceCSAccess().getGroup_6());
             }
 
             }
@@ -39855,7 +39855,7 @@
     public final void rule__ReferenceCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12730:1: ( rule__ReferenceCS__Group__7__Impl )
             // InternalOCLinEcore.g:12731:2: rule__ReferenceCS__Group__7__Impl
@@ -39888,7 +39888,7 @@
     public final void rule__ReferenceCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12741:1: ( ( ( rule__ReferenceCS__Alternatives_7 ) ) )
             // InternalOCLinEcore.g:12742:1: ( ( rule__ReferenceCS__Alternatives_7 ) )
@@ -39897,7 +39897,7 @@
             // InternalOCLinEcore.g:12743:1: ( rule__ReferenceCS__Alternatives_7 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getAlternatives_7()); 
+               before(grammarAccess.getReferenceCSAccess().getAlternatives_7());
             }
             // InternalOCLinEcore.g:12744:1: ( rule__ReferenceCS__Alternatives_7 )
             // InternalOCLinEcore.g:12744:2: rule__ReferenceCS__Alternatives_7
@@ -39911,7 +39911,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getAlternatives_7()); 
+               after(grammarAccess.getReferenceCSAccess().getAlternatives_7());
             }
 
             }
@@ -39939,7 +39939,7 @@
     public final void rule__ReferenceCS__Group_0_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12774:1: ( rule__ReferenceCS__Group_0_0__0__Impl rule__ReferenceCS__Group_0_0__1 )
             // InternalOCLinEcore.g:12775:2: rule__ReferenceCS__Group_0_0__0__Impl rule__ReferenceCS__Group_0_0__1
@@ -39977,7 +39977,7 @@
     public final void rule__ReferenceCS__Group_0_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12786:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_0_0_0 ) ) )
             // InternalOCLinEcore.g:12787:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_0_0 ) )
@@ -39986,7 +39986,7 @@
             // InternalOCLinEcore.g:12788:1: ( rule__ReferenceCS__QualifiersAssignment_0_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_0_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_0_0());
             }
             // InternalOCLinEcore.g:12789:1: ( rule__ReferenceCS__QualifiersAssignment_0_0_0 )
             // InternalOCLinEcore.g:12789:2: rule__ReferenceCS__QualifiersAssignment_0_0_0
@@ -40000,7 +40000,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_0_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_0_0());
             }
 
             }
@@ -40028,7 +40028,7 @@
     public final void rule__ReferenceCS__Group_0_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12803:1: ( rule__ReferenceCS__Group_0_0__1__Impl )
             // InternalOCLinEcore.g:12804:2: rule__ReferenceCS__Group_0_0__1__Impl
@@ -40061,7 +40061,7 @@
     public final void rule__ReferenceCS__Group_0_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12814:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )? ) )
             // InternalOCLinEcore.g:12815:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )? )
@@ -40070,7 +40070,7 @@
             // InternalOCLinEcore.g:12816:1: ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_0_1()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_0_1());
             }
             // InternalOCLinEcore.g:12817:1: ( rule__ReferenceCS__QualifiersAssignment_0_0_1 )?
             int alt154=2;
@@ -40095,7 +40095,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_0_1()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_0_1());
             }
 
             }
@@ -40123,7 +40123,7 @@
     public final void rule__ReferenceCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12835:1: ( rule__ReferenceCS__Group_0_1__0__Impl rule__ReferenceCS__Group_0_1__1 )
             // InternalOCLinEcore.g:12836:2: rule__ReferenceCS__Group_0_1__0__Impl rule__ReferenceCS__Group_0_1__1
@@ -40161,7 +40161,7 @@
     public final void rule__ReferenceCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12847:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_0_1_0 ) ) )
             // InternalOCLinEcore.g:12848:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_1_0 ) )
@@ -40170,7 +40170,7 @@
             // InternalOCLinEcore.g:12849:1: ( rule__ReferenceCS__QualifiersAssignment_0_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_1_0());
             }
             // InternalOCLinEcore.g:12850:1: ( rule__ReferenceCS__QualifiersAssignment_0_1_0 )
             // InternalOCLinEcore.g:12850:2: rule__ReferenceCS__QualifiersAssignment_0_1_0
@@ -40184,7 +40184,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_1_0());
             }
 
             }
@@ -40212,7 +40212,7 @@
     public final void rule__ReferenceCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12864:1: ( rule__ReferenceCS__Group_0_1__1__Impl )
             // InternalOCLinEcore.g:12865:2: rule__ReferenceCS__Group_0_1__1__Impl
@@ -40245,7 +40245,7 @@
     public final void rule__ReferenceCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12875:1: ( ( ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )? ) )
             // InternalOCLinEcore.g:12876:1: ( ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )? )
@@ -40254,7 +40254,7 @@
             // InternalOCLinEcore.g:12877:1: ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_1_1()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_1_1());
             }
             // InternalOCLinEcore.g:12878:1: ( rule__ReferenceCS__QualifiersAssignment_0_1_1 )?
             int alt155=2;
@@ -40279,7 +40279,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_1_1()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersAssignment_0_1_1());
             }
 
             }
@@ -40307,7 +40307,7 @@
     public final void rule__ReferenceCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12896:1: ( rule__ReferenceCS__Group_3__0__Impl rule__ReferenceCS__Group_3__1 )
             // InternalOCLinEcore.g:12897:2: rule__ReferenceCS__Group_3__0__Impl rule__ReferenceCS__Group_3__1
@@ -40345,7 +40345,7 @@
     public final void rule__ReferenceCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12908:1: ( ( '#' ) )
             // InternalOCLinEcore.g:12909:1: ( '#' )
@@ -40354,11 +40354,11 @@
             // InternalOCLinEcore.g:12910:1: '#'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getNumberSignKeyword_3_0()); 
+               before(grammarAccess.getReferenceCSAccess().getNumberSignKeyword_3_0());
             }
             match(input,102,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getNumberSignKeyword_3_0()); 
+               after(grammarAccess.getReferenceCSAccess().getNumberSignKeyword_3_0());
             }
 
             }
@@ -40386,7 +40386,7 @@
     public final void rule__ReferenceCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12927:1: ( rule__ReferenceCS__Group_3__1__Impl )
             // InternalOCLinEcore.g:12928:2: rule__ReferenceCS__Group_3__1__Impl
@@ -40419,7 +40419,7 @@
     public final void rule__ReferenceCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12938:1: ( ( ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 ) ) )
             // InternalOCLinEcore.g:12939:1: ( ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 ) )
@@ -40428,7 +40428,7 @@
             // InternalOCLinEcore.g:12940:1: ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getReferredOppositeAssignment_3_1()); 
+               before(grammarAccess.getReferenceCSAccess().getReferredOppositeAssignment_3_1());
             }
             // InternalOCLinEcore.g:12941:1: ( rule__ReferenceCS__ReferredOppositeAssignment_3_1 )
             // InternalOCLinEcore.g:12941:2: rule__ReferenceCS__ReferredOppositeAssignment_3_1
@@ -40442,7 +40442,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getReferredOppositeAssignment_3_1()); 
+               after(grammarAccess.getReferenceCSAccess().getReferredOppositeAssignment_3_1());
             }
 
             }
@@ -40470,7 +40470,7 @@
     public final void rule__ReferenceCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12959:1: ( rule__ReferenceCS__Group_4__0__Impl rule__ReferenceCS__Group_4__1 )
             // InternalOCLinEcore.g:12960:2: rule__ReferenceCS__Group_4__0__Impl rule__ReferenceCS__Group_4__1
@@ -40508,7 +40508,7 @@
     public final void rule__ReferenceCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12971:1: ( ( ':' ) )
             // InternalOCLinEcore.g:12972:1: ( ':' )
@@ -40517,11 +40517,11 @@
             // InternalOCLinEcore.g:12973:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getColonKeyword_4_0()); 
+               before(grammarAccess.getReferenceCSAccess().getColonKeyword_4_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getColonKeyword_4_0()); 
+               after(grammarAccess.getReferenceCSAccess().getColonKeyword_4_0());
             }
 
             }
@@ -40549,7 +40549,7 @@
     public final void rule__ReferenceCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:12990:1: ( rule__ReferenceCS__Group_4__1__Impl )
             // InternalOCLinEcore.g:12991:2: rule__ReferenceCS__Group_4__1__Impl
@@ -40582,7 +40582,7 @@
     public final void rule__ReferenceCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13001:1: ( ( ( rule__ReferenceCS__OwnedTypeAssignment_4_1 ) ) )
             // InternalOCLinEcore.g:13002:1: ( ( rule__ReferenceCS__OwnedTypeAssignment_4_1 ) )
@@ -40591,7 +40591,7 @@
             // InternalOCLinEcore.g:13003:1: ( rule__ReferenceCS__OwnedTypeAssignment_4_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getOwnedTypeAssignment_4_1()); 
+               before(grammarAccess.getReferenceCSAccess().getOwnedTypeAssignment_4_1());
             }
             // InternalOCLinEcore.g:13004:1: ( rule__ReferenceCS__OwnedTypeAssignment_4_1 )
             // InternalOCLinEcore.g:13004:2: rule__ReferenceCS__OwnedTypeAssignment_4_1
@@ -40605,7 +40605,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getOwnedTypeAssignment_4_1()); 
+               after(grammarAccess.getReferenceCSAccess().getOwnedTypeAssignment_4_1());
             }
 
             }
@@ -40633,7 +40633,7 @@
     public final void rule__ReferenceCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13022:1: ( rule__ReferenceCS__Group_5__0__Impl rule__ReferenceCS__Group_5__1 )
             // InternalOCLinEcore.g:13023:2: rule__ReferenceCS__Group_5__0__Impl rule__ReferenceCS__Group_5__1
@@ -40671,7 +40671,7 @@
     public final void rule__ReferenceCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13034:1: ( ( '=' ) )
             // InternalOCLinEcore.g:13035:1: ( '=' )
@@ -40680,11 +40680,11 @@
             // InternalOCLinEcore.g:13036:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getEqualsSignKeyword_5_0()); 
+               before(grammarAccess.getReferenceCSAccess().getEqualsSignKeyword_5_0());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getEqualsSignKeyword_5_0()); 
+               after(grammarAccess.getReferenceCSAccess().getEqualsSignKeyword_5_0());
             }
 
             }
@@ -40712,7 +40712,7 @@
     public final void rule__ReferenceCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13053:1: ( rule__ReferenceCS__Group_5__1__Impl )
             // InternalOCLinEcore.g:13054:2: rule__ReferenceCS__Group_5__1__Impl
@@ -40745,7 +40745,7 @@
     public final void rule__ReferenceCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13064:1: ( ( ( rule__ReferenceCS__DefaultAssignment_5_1 ) ) )
             // InternalOCLinEcore.g:13065:1: ( ( rule__ReferenceCS__DefaultAssignment_5_1 ) )
@@ -40754,7 +40754,7 @@
             // InternalOCLinEcore.g:13066:1: ( rule__ReferenceCS__DefaultAssignment_5_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getDefaultAssignment_5_1()); 
+               before(grammarAccess.getReferenceCSAccess().getDefaultAssignment_5_1());
             }
             // InternalOCLinEcore.g:13067:1: ( rule__ReferenceCS__DefaultAssignment_5_1 )
             // InternalOCLinEcore.g:13067:2: rule__ReferenceCS__DefaultAssignment_5_1
@@ -40768,7 +40768,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getDefaultAssignment_5_1()); 
+               after(grammarAccess.getReferenceCSAccess().getDefaultAssignment_5_1());
             }
 
             }
@@ -40796,7 +40796,7 @@
     public final void rule__ReferenceCS__Group_6__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13085:1: ( rule__ReferenceCS__Group_6__0__Impl rule__ReferenceCS__Group_6__1 )
             // InternalOCLinEcore.g:13086:2: rule__ReferenceCS__Group_6__0__Impl rule__ReferenceCS__Group_6__1
@@ -40834,7 +40834,7 @@
     public final void rule__ReferenceCS__Group_6__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13097:1: ( ( '{' ) )
             // InternalOCLinEcore.g:13098:1: ( '{' )
@@ -40843,11 +40843,11 @@
             // InternalOCLinEcore.g:13099:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_6_0()); 
+               before(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_6_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_6_0()); 
+               after(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_6_0());
             }
 
             }
@@ -40875,7 +40875,7 @@
     public final void rule__ReferenceCS__Group_6__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13116:1: ( rule__ReferenceCS__Group_6__1__Impl rule__ReferenceCS__Group_6__2 )
             // InternalOCLinEcore.g:13117:2: rule__ReferenceCS__Group_6__1__Impl rule__ReferenceCS__Group_6__2
@@ -40913,7 +40913,7 @@
     public final void rule__ReferenceCS__Group_6__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13128:1: ( ( ( ( rule__ReferenceCS__Group_6_1__0 ) ) ( ( rule__ReferenceCS__Group_6_1__0 )* ) ) )
             // InternalOCLinEcore.g:13129:1: ( ( ( rule__ReferenceCS__Group_6_1__0 ) ) ( ( rule__ReferenceCS__Group_6_1__0 )* ) )
@@ -40925,7 +40925,7 @@
             // InternalOCLinEcore.g:13131:1: ( rule__ReferenceCS__Group_6_1__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getGroup_6_1()); 
+               before(grammarAccess.getReferenceCSAccess().getGroup_6_1());
             }
             // InternalOCLinEcore.g:13132:1: ( rule__ReferenceCS__Group_6_1__0 )
             // InternalOCLinEcore.g:13132:2: rule__ReferenceCS__Group_6_1__0
@@ -40939,7 +40939,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getGroup_6_1()); 
+               after(grammarAccess.getReferenceCSAccess().getGroup_6_1());
             }
 
             }
@@ -40948,7 +40948,7 @@
             // InternalOCLinEcore.g:13136:1: ( rule__ReferenceCS__Group_6_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getGroup_6_1()); 
+               before(grammarAccess.getReferenceCSAccess().getGroup_6_1());
             }
             // InternalOCLinEcore.g:13137:1: ( rule__ReferenceCS__Group_6_1__0 )*
             loop156:
@@ -40980,7 +40980,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getGroup_6_1()); 
+               after(grammarAccess.getReferenceCSAccess().getGroup_6_1());
             }
 
             }
@@ -41011,7 +41011,7 @@
     public final void rule__ReferenceCS__Group_6__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13152:1: ( rule__ReferenceCS__Group_6__2__Impl )
             // InternalOCLinEcore.g:13153:2: rule__ReferenceCS__Group_6__2__Impl
@@ -41044,7 +41044,7 @@
     public final void rule__ReferenceCS__Group_6__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13163:1: ( ( '}' ) )
             // InternalOCLinEcore.g:13164:1: ( '}' )
@@ -41053,11 +41053,11 @@
             // InternalOCLinEcore.g:13165:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_6_2()); 
+               before(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_6_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_6_2()); 
+               after(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_6_2());
             }
 
             }
@@ -41085,7 +41085,7 @@
     public final void rule__ReferenceCS__Group_6_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13188:1: ( rule__ReferenceCS__Group_6_1__0__Impl rule__ReferenceCS__Group_6_1__1 )
             // InternalOCLinEcore.g:13189:2: rule__ReferenceCS__Group_6_1__0__Impl rule__ReferenceCS__Group_6_1__1
@@ -41123,7 +41123,7 @@
     public final void rule__ReferenceCS__Group_6_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13200:1: ( ( ( rule__ReferenceCS__Alternatives_6_1_0 ) ) )
             // InternalOCLinEcore.g:13201:1: ( ( rule__ReferenceCS__Alternatives_6_1_0 ) )
@@ -41132,7 +41132,7 @@
             // InternalOCLinEcore.g:13202:1: ( rule__ReferenceCS__Alternatives_6_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getAlternatives_6_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getAlternatives_6_1_0());
             }
             // InternalOCLinEcore.g:13203:1: ( rule__ReferenceCS__Alternatives_6_1_0 )
             // InternalOCLinEcore.g:13203:2: rule__ReferenceCS__Alternatives_6_1_0
@@ -41146,7 +41146,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getAlternatives_6_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getAlternatives_6_1_0());
             }
 
             }
@@ -41174,7 +41174,7 @@
     public final void rule__ReferenceCS__Group_6_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13217:1: ( rule__ReferenceCS__Group_6_1__1__Impl )
             // InternalOCLinEcore.g:13218:2: rule__ReferenceCS__Group_6_1__1__Impl
@@ -41207,7 +41207,7 @@
     public final void rule__ReferenceCS__Group_6_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13228:1: ( ( ( ',' )? ) )
             // InternalOCLinEcore.g:13229:1: ( ( ',' )? )
@@ -41216,7 +41216,7 @@
             // InternalOCLinEcore.g:13230:1: ( ',' )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getCommaKeyword_6_1_1()); 
+               before(grammarAccess.getReferenceCSAccess().getCommaKeyword_6_1_1());
             }
             // InternalOCLinEcore.g:13231:1: ( ',' )?
             int alt157=2;
@@ -41237,7 +41237,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getCommaKeyword_6_1_1()); 
+               after(grammarAccess.getReferenceCSAccess().getCommaKeyword_6_1_1());
             }
 
             }
@@ -41265,7 +41265,7 @@
     public final void rule__ReferenceCS__Group_7_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13251:1: ( rule__ReferenceCS__Group_7_0__0__Impl rule__ReferenceCS__Group_7_0__1 )
             // InternalOCLinEcore.g:13252:2: rule__ReferenceCS__Group_7_0__0__Impl rule__ReferenceCS__Group_7_0__1
@@ -41303,7 +41303,7 @@
     public final void rule__ReferenceCS__Group_7_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13263:1: ( ( '{' ) )
             // InternalOCLinEcore.g:13264:1: ( '{' )
@@ -41312,11 +41312,11 @@
             // InternalOCLinEcore.g:13265:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_7_0_0()); 
+               before(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_7_0_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_7_0_0()); 
+               after(grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_7_0_0());
             }
 
             }
@@ -41344,7 +41344,7 @@
     public final void rule__ReferenceCS__Group_7_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13282:1: ( rule__ReferenceCS__Group_7_0__1__Impl rule__ReferenceCS__Group_7_0__2 )
             // InternalOCLinEcore.g:13283:2: rule__ReferenceCS__Group_7_0__1__Impl rule__ReferenceCS__Group_7_0__2
@@ -41382,7 +41382,7 @@
     public final void rule__ReferenceCS__Group_7_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13294:1: ( ( ( rule__ReferenceCS__Alternatives_7_0_1 )* ) )
             // InternalOCLinEcore.g:13295:1: ( ( rule__ReferenceCS__Alternatives_7_0_1 )* )
@@ -41391,7 +41391,7 @@
             // InternalOCLinEcore.g:13296:1: ( rule__ReferenceCS__Alternatives_7_0_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getAlternatives_7_0_1()); 
+               before(grammarAccess.getReferenceCSAccess().getAlternatives_7_0_1());
             }
             // InternalOCLinEcore.g:13297:1: ( rule__ReferenceCS__Alternatives_7_0_1 )*
             loop158:
@@ -41423,7 +41423,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getAlternatives_7_0_1()); 
+               after(grammarAccess.getReferenceCSAccess().getAlternatives_7_0_1());
             }
 
             }
@@ -41451,7 +41451,7 @@
     public final void rule__ReferenceCS__Group_7_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13311:1: ( rule__ReferenceCS__Group_7_0__2__Impl )
             // InternalOCLinEcore.g:13312:2: rule__ReferenceCS__Group_7_0__2__Impl
@@ -41484,7 +41484,7 @@
     public final void rule__ReferenceCS__Group_7_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13322:1: ( ( '}' ) )
             // InternalOCLinEcore.g:13323:1: ( '}' )
@@ -41493,11 +41493,11 @@
             // InternalOCLinEcore.g:13324:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_7_0_2()); 
+               before(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_7_0_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_7_0_2()); 
+               after(grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_7_0_2());
             }
 
             }
@@ -41525,7 +41525,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13347:1: ( rule__ReferenceCS__Group_7_0_1_1__0__Impl rule__ReferenceCS__Group_7_0_1_1__1 )
             // InternalOCLinEcore.g:13348:2: rule__ReferenceCS__Group_7_0_1_1__0__Impl rule__ReferenceCS__Group_7_0_1_1__1
@@ -41563,7 +41563,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13359:1: ( ( 'key' ) )
             // InternalOCLinEcore.g:13360:1: ( 'key' )
@@ -41572,11 +41572,11 @@
             // InternalOCLinEcore.g:13361:1: 'key'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getKeyKeyword_7_0_1_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getKeyKeyword_7_0_1_1_0());
             }
             match(input,33,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getKeyKeyword_7_0_1_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getKeyKeyword_7_0_1_1_0());
             }
 
             }
@@ -41604,7 +41604,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13378:1: ( rule__ReferenceCS__Group_7_0_1_1__1__Impl rule__ReferenceCS__Group_7_0_1_1__2 )
             // InternalOCLinEcore.g:13379:2: rule__ReferenceCS__Group_7_0_1_1__1__Impl rule__ReferenceCS__Group_7_0_1_1__2
@@ -41642,7 +41642,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13390:1: ( ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 ) ) )
             // InternalOCLinEcore.g:13391:1: ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 ) )
@@ -41651,7 +41651,7 @@
             // InternalOCLinEcore.g:13392:1: ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getReferredKeysAssignment_7_0_1_1_1()); 
+               before(grammarAccess.getReferenceCSAccess().getReferredKeysAssignment_7_0_1_1_1());
             }
             // InternalOCLinEcore.g:13393:1: ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1 )
             // InternalOCLinEcore.g:13393:2: rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1
@@ -41665,7 +41665,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getReferredKeysAssignment_7_0_1_1_1()); 
+               after(grammarAccess.getReferenceCSAccess().getReferredKeysAssignment_7_0_1_1_1());
             }
 
             }
@@ -41693,7 +41693,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13407:1: ( rule__ReferenceCS__Group_7_0_1_1__2__Impl rule__ReferenceCS__Group_7_0_1_1__3 )
             // InternalOCLinEcore.g:13408:2: rule__ReferenceCS__Group_7_0_1_1__2__Impl rule__ReferenceCS__Group_7_0_1_1__3
@@ -41731,7 +41731,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13419:1: ( ( ( rule__ReferenceCS__Group_7_0_1_1_2__0 )* ) )
             // InternalOCLinEcore.g:13420:1: ( ( rule__ReferenceCS__Group_7_0_1_1_2__0 )* )
@@ -41740,7 +41740,7 @@
             // InternalOCLinEcore.g:13421:1: ( rule__ReferenceCS__Group_7_0_1_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_1_2()); 
+               before(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_1_2());
             }
             // InternalOCLinEcore.g:13422:1: ( rule__ReferenceCS__Group_7_0_1_1_2__0 )*
             loop159:
@@ -41772,7 +41772,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_1_2()); 
+               after(grammarAccess.getReferenceCSAccess().getGroup_7_0_1_1_2());
             }
 
             }
@@ -41800,7 +41800,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13436:1: ( rule__ReferenceCS__Group_7_0_1_1__3__Impl )
             // InternalOCLinEcore.g:13437:2: rule__ReferenceCS__Group_7_0_1_1__3__Impl
@@ -41833,7 +41833,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13447:1: ( ( ';' ) )
             // InternalOCLinEcore.g:13448:1: ( ';' )
@@ -41842,11 +41842,11 @@
             // InternalOCLinEcore.g:13449:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_1_3()); 
+               before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_1_3());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_1_3()); 
+               after(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_1_3());
             }
 
             }
@@ -41874,7 +41874,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13474:1: ( rule__ReferenceCS__Group_7_0_1_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_1_2__1 )
             // InternalOCLinEcore.g:13475:2: rule__ReferenceCS__Group_7_0_1_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_1_2__1
@@ -41912,7 +41912,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13486:1: ( ( ',' ) )
             // InternalOCLinEcore.g:13487:1: ( ',' )
@@ -41921,11 +41921,11 @@
             // InternalOCLinEcore.g:13488:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getCommaKeyword_7_0_1_1_2_0()); 
+               before(grammarAccess.getReferenceCSAccess().getCommaKeyword_7_0_1_1_2_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getCommaKeyword_7_0_1_1_2_0()); 
+               after(grammarAccess.getReferenceCSAccess().getCommaKeyword_7_0_1_1_2_0());
             }
 
             }
@@ -41953,7 +41953,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13505:1: ( rule__ReferenceCS__Group_7_0_1_1_2__1__Impl )
             // InternalOCLinEcore.g:13506:2: rule__ReferenceCS__Group_7_0_1_1_2__1__Impl
@@ -41986,7 +41986,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13516:1: ( ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 ) ) )
             // InternalOCLinEcore.g:13517:1: ( ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 ) )
@@ -41995,7 +41995,7 @@
             // InternalOCLinEcore.g:13518:1: ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getReferredKeysAssignment_7_0_1_1_2_1()); 
+               before(grammarAccess.getReferenceCSAccess().getReferredKeysAssignment_7_0_1_1_2_1());
             }
             // InternalOCLinEcore.g:13519:1: ( rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1 )
             // InternalOCLinEcore.g:13519:2: rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1
@@ -42009,7 +42009,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getReferredKeysAssignment_7_0_1_1_2_1()); 
+               after(grammarAccess.getReferenceCSAccess().getReferredKeysAssignment_7_0_1_1_2_1());
             }
 
             }
@@ -42037,7 +42037,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13537:1: ( rule__ReferenceCS__Group_7_0_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_2__1 )
             // InternalOCLinEcore.g:13538:2: rule__ReferenceCS__Group_7_0_1_2__0__Impl rule__ReferenceCS__Group_7_0_1_2__1
@@ -42075,7 +42075,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13549:1: ( ( 'initial' ) )
             // InternalOCLinEcore.g:13550:1: ( 'initial' )
@@ -42084,11 +42084,11 @@
             // InternalOCLinEcore.g:13551:1: 'initial'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getInitialKeyword_7_0_1_2_0()); 
+               before(grammarAccess.getReferenceCSAccess().getInitialKeyword_7_0_1_2_0());
             }
             match(input,31,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getInitialKeyword_7_0_1_2_0()); 
+               after(grammarAccess.getReferenceCSAccess().getInitialKeyword_7_0_1_2_0());
             }
 
             }
@@ -42116,7 +42116,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13568:1: ( rule__ReferenceCS__Group_7_0_1_2__1__Impl rule__ReferenceCS__Group_7_0_1_2__2 )
             // InternalOCLinEcore.g:13569:2: rule__ReferenceCS__Group_7_0_1_2__1__Impl rule__ReferenceCS__Group_7_0_1_2__2
@@ -42154,7 +42154,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13580:1: ( ( ( ruleUnrestrictedName )? ) )
             // InternalOCLinEcore.g:13581:1: ( ( ruleUnrestrictedName )? )
@@ -42163,7 +42163,7 @@
             // InternalOCLinEcore.g:13582:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_2_1()); 
+               before(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_2_1());
             }
             // InternalOCLinEcore.g:13583:1: ( ruleUnrestrictedName )?
             int alt160=2;
@@ -42188,7 +42188,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_2_1()); 
+               after(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_2_1());
             }
 
             }
@@ -42216,7 +42216,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13597:1: ( rule__ReferenceCS__Group_7_0_1_2__2__Impl rule__ReferenceCS__Group_7_0_1_2__3 )
             // InternalOCLinEcore.g:13598:2: rule__ReferenceCS__Group_7_0_1_2__2__Impl rule__ReferenceCS__Group_7_0_1_2__3
@@ -42254,7 +42254,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13609:1: ( ( ':' ) )
             // InternalOCLinEcore.g:13610:1: ( ':' )
@@ -42263,11 +42263,11 @@
             // InternalOCLinEcore.g:13611:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_2_2()); 
+               before(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_2_2());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_2_2()); 
+               after(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_2_2());
             }
 
             }
@@ -42295,7 +42295,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13628:1: ( rule__ReferenceCS__Group_7_0_1_2__3__Impl rule__ReferenceCS__Group_7_0_1_2__4 )
             // InternalOCLinEcore.g:13629:2: rule__ReferenceCS__Group_7_0_1_2__3__Impl rule__ReferenceCS__Group_7_0_1_2__4
@@ -42333,7 +42333,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13640:1: ( ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )? ) )
             // InternalOCLinEcore.g:13641:1: ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )? )
@@ -42342,7 +42342,7 @@
             // InternalOCLinEcore.g:13642:1: ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsAssignment_7_0_1_2_3()); 
+               before(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsAssignment_7_0_1_2_3());
             }
             // InternalOCLinEcore.g:13643:1: ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3 )?
             int alt161=2;
@@ -42367,7 +42367,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsAssignment_7_0_1_2_3()); 
+               after(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsAssignment_7_0_1_2_3());
             }
 
             }
@@ -42395,7 +42395,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_2__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13657:1: ( rule__ReferenceCS__Group_7_0_1_2__4__Impl )
             // InternalOCLinEcore.g:13658:2: rule__ReferenceCS__Group_7_0_1_2__4__Impl
@@ -42428,7 +42428,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_2__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13668:1: ( ( ';' ) )
             // InternalOCLinEcore.g:13669:1: ( ';' )
@@ -42437,11 +42437,11 @@
             // InternalOCLinEcore.g:13670:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_2_4()); 
+               before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_2_4());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_2_4()); 
+               after(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_2_4());
             }
 
             }
@@ -42469,7 +42469,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13697:1: ( rule__ReferenceCS__Group_7_0_1_3__0__Impl rule__ReferenceCS__Group_7_0_1_3__1 )
             // InternalOCLinEcore.g:13698:2: rule__ReferenceCS__Group_7_0_1_3__0__Impl rule__ReferenceCS__Group_7_0_1_3__1
@@ -42507,7 +42507,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13709:1: ( ( 'derivation' ) )
             // InternalOCLinEcore.g:13710:1: ( 'derivation' )
@@ -42516,11 +42516,11 @@
             // InternalOCLinEcore.g:13711:1: 'derivation'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getDerivationKeyword_7_0_1_3_0()); 
+               before(grammarAccess.getReferenceCSAccess().getDerivationKeyword_7_0_1_3_0());
             }
             match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getDerivationKeyword_7_0_1_3_0()); 
+               after(grammarAccess.getReferenceCSAccess().getDerivationKeyword_7_0_1_3_0());
             }
 
             }
@@ -42548,7 +42548,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13728:1: ( rule__ReferenceCS__Group_7_0_1_3__1__Impl rule__ReferenceCS__Group_7_0_1_3__2 )
             // InternalOCLinEcore.g:13729:2: rule__ReferenceCS__Group_7_0_1_3__1__Impl rule__ReferenceCS__Group_7_0_1_3__2
@@ -42586,7 +42586,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13740:1: ( ( ( ruleUnrestrictedName )? ) )
             // InternalOCLinEcore.g:13741:1: ( ( ruleUnrestrictedName )? )
@@ -42595,7 +42595,7 @@
             // InternalOCLinEcore.g:13742:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_3_1()); 
+               before(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_3_1());
             }
             // InternalOCLinEcore.g:13743:1: ( ruleUnrestrictedName )?
             int alt162=2;
@@ -42620,7 +42620,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_3_1()); 
+               after(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_3_1());
             }
 
             }
@@ -42648,7 +42648,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13757:1: ( rule__ReferenceCS__Group_7_0_1_3__2__Impl rule__ReferenceCS__Group_7_0_1_3__3 )
             // InternalOCLinEcore.g:13758:2: rule__ReferenceCS__Group_7_0_1_3__2__Impl rule__ReferenceCS__Group_7_0_1_3__3
@@ -42686,7 +42686,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13769:1: ( ( ':' ) )
             // InternalOCLinEcore.g:13770:1: ( ':' )
@@ -42695,11 +42695,11 @@
             // InternalOCLinEcore.g:13771:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_3_2()); 
+               before(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_3_2());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_3_2()); 
+               after(grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_3_2());
             }
 
             }
@@ -42727,7 +42727,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_3__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13788:1: ( rule__ReferenceCS__Group_7_0_1_3__3__Impl rule__ReferenceCS__Group_7_0_1_3__4 )
             // InternalOCLinEcore.g:13789:2: rule__ReferenceCS__Group_7_0_1_3__3__Impl rule__ReferenceCS__Group_7_0_1_3__4
@@ -42765,7 +42765,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_3__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13800:1: ( ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )? ) )
             // InternalOCLinEcore.g:13801:1: ( ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )? )
@@ -42774,7 +42774,7 @@
             // InternalOCLinEcore.g:13802:1: ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsAssignment_7_0_1_3_3()); 
+               before(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsAssignment_7_0_1_3_3());
             }
             // InternalOCLinEcore.g:13803:1: ( rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3 )?
             int alt163=2;
@@ -42799,7 +42799,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsAssignment_7_0_1_3_3()); 
+               after(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsAssignment_7_0_1_3_3());
             }
 
             }
@@ -42827,7 +42827,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_3__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13817:1: ( rule__ReferenceCS__Group_7_0_1_3__4__Impl )
             // InternalOCLinEcore.g:13818:2: rule__ReferenceCS__Group_7_0_1_3__4__Impl
@@ -42860,7 +42860,7 @@
     public final void rule__ReferenceCS__Group_7_0_1_3__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13828:1: ( ( ';' ) )
             // InternalOCLinEcore.g:13829:1: ( ';' )
@@ -42869,11 +42869,11 @@
             // InternalOCLinEcore.g:13830:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_3_4()); 
+               before(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_3_4());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_3_4()); 
+               after(grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_3_4());
             }
 
             }
@@ -42901,7 +42901,7 @@
     public final void rule__StructuredClassCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13857:1: ( rule__StructuredClassCS__Group__0__Impl rule__StructuredClassCS__Group__1 )
             // InternalOCLinEcore.g:13858:2: rule__StructuredClassCS__Group__0__Impl rule__StructuredClassCS__Group__1
@@ -42939,7 +42939,7 @@
     public final void rule__StructuredClassCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13869:1: ( ( ( rule__StructuredClassCS__IsAbstractAssignment_0 )? ) )
             // InternalOCLinEcore.g:13870:1: ( ( rule__StructuredClassCS__IsAbstractAssignment_0 )? )
@@ -42948,7 +42948,7 @@
             // InternalOCLinEcore.g:13871:1: ( rule__StructuredClassCS__IsAbstractAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getIsAbstractAssignment_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getIsAbstractAssignment_0());
             }
             // InternalOCLinEcore.g:13872:1: ( rule__StructuredClassCS__IsAbstractAssignment_0 )?
             int alt164=2;
@@ -42973,7 +42973,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getIsAbstractAssignment_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getIsAbstractAssignment_0());
             }
 
             }
@@ -43001,7 +43001,7 @@
     public final void rule__StructuredClassCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13886:1: ( rule__StructuredClassCS__Group__1__Impl rule__StructuredClassCS__Group__2 )
             // InternalOCLinEcore.g:13887:2: rule__StructuredClassCS__Group__1__Impl rule__StructuredClassCS__Group__2
@@ -43039,7 +43039,7 @@
     public final void rule__StructuredClassCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13898:1: ( ( 'class' ) )
             // InternalOCLinEcore.g:13899:1: ( 'class' )
@@ -43048,11 +43048,11 @@
             // InternalOCLinEcore.g:13900:1: 'class'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getClassKeyword_1()); 
+               before(grammarAccess.getStructuredClassCSAccess().getClassKeyword_1());
             }
             match(input,21,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getClassKeyword_1()); 
+               after(grammarAccess.getStructuredClassCSAccess().getClassKeyword_1());
             }
 
             }
@@ -43080,7 +43080,7 @@
     public final void rule__StructuredClassCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13917:1: ( rule__StructuredClassCS__Group__2__Impl rule__StructuredClassCS__Group__3 )
             // InternalOCLinEcore.g:13918:2: rule__StructuredClassCS__Group__2__Impl rule__StructuredClassCS__Group__3
@@ -43118,7 +43118,7 @@
     public final void rule__StructuredClassCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13929:1: ( ( ( rule__StructuredClassCS__NameAssignment_2 ) ) )
             // InternalOCLinEcore.g:13930:1: ( ( rule__StructuredClassCS__NameAssignment_2 ) )
@@ -43127,7 +43127,7 @@
             // InternalOCLinEcore.g:13931:1: ( rule__StructuredClassCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getNameAssignment_2()); 
+               before(grammarAccess.getStructuredClassCSAccess().getNameAssignment_2());
             }
             // InternalOCLinEcore.g:13932:1: ( rule__StructuredClassCS__NameAssignment_2 )
             // InternalOCLinEcore.g:13932:2: rule__StructuredClassCS__NameAssignment_2
@@ -43141,7 +43141,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getNameAssignment_2()); 
+               after(grammarAccess.getStructuredClassCSAccess().getNameAssignment_2());
             }
 
             }
@@ -43169,7 +43169,7 @@
     public final void rule__StructuredClassCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13946:1: ( rule__StructuredClassCS__Group__3__Impl rule__StructuredClassCS__Group__4 )
             // InternalOCLinEcore.g:13947:2: rule__StructuredClassCS__Group__3__Impl rule__StructuredClassCS__Group__4
@@ -43207,7 +43207,7 @@
     public final void rule__StructuredClassCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13958:1: ( ( ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )? ) )
             // InternalOCLinEcore.g:13959:1: ( ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )? )
@@ -43216,7 +43216,7 @@
             // InternalOCLinEcore.g:13960:1: ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureAssignment_3()); 
+               before(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureAssignment_3());
             }
             // InternalOCLinEcore.g:13961:1: ( rule__StructuredClassCS__OwnedSignatureAssignment_3 )?
             int alt165=2;
@@ -43241,7 +43241,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureAssignment_3()); 
+               after(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureAssignment_3());
             }
 
             }
@@ -43269,7 +43269,7 @@
     public final void rule__StructuredClassCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13975:1: ( rule__StructuredClassCS__Group__4__Impl rule__StructuredClassCS__Group__5 )
             // InternalOCLinEcore.g:13976:2: rule__StructuredClassCS__Group__4__Impl rule__StructuredClassCS__Group__5
@@ -43307,7 +43307,7 @@
     public final void rule__StructuredClassCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:13987:1: ( ( ( rule__StructuredClassCS__Group_4__0 )? ) )
             // InternalOCLinEcore.g:13988:1: ( ( rule__StructuredClassCS__Group_4__0 )? )
@@ -43316,7 +43316,7 @@
             // InternalOCLinEcore.g:13989:1: ( rule__StructuredClassCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getGroup_4()); 
+               before(grammarAccess.getStructuredClassCSAccess().getGroup_4());
             }
             // InternalOCLinEcore.g:13990:1: ( rule__StructuredClassCS__Group_4__0 )?
             int alt166=2;
@@ -43341,7 +43341,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getGroup_4()); 
+               after(grammarAccess.getStructuredClassCSAccess().getGroup_4());
             }
 
             }
@@ -43369,7 +43369,7 @@
     public final void rule__StructuredClassCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14004:1: ( rule__StructuredClassCS__Group__5__Impl rule__StructuredClassCS__Group__6 )
             // InternalOCLinEcore.g:14005:2: rule__StructuredClassCS__Group__5__Impl rule__StructuredClassCS__Group__6
@@ -43407,7 +43407,7 @@
     public final void rule__StructuredClassCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14016:1: ( ( ( rule__StructuredClassCS__Group_5__0 )? ) )
             // InternalOCLinEcore.g:14017:1: ( ( rule__StructuredClassCS__Group_5__0 )? )
@@ -43416,7 +43416,7 @@
             // InternalOCLinEcore.g:14018:1: ( rule__StructuredClassCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getGroup_5()); 
+               before(grammarAccess.getStructuredClassCSAccess().getGroup_5());
             }
             // InternalOCLinEcore.g:14019:1: ( rule__StructuredClassCS__Group_5__0 )?
             int alt167=2;
@@ -43441,7 +43441,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getGroup_5()); 
+               after(grammarAccess.getStructuredClassCSAccess().getGroup_5());
             }
 
             }
@@ -43469,7 +43469,7 @@
     public final void rule__StructuredClassCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14033:1: ( rule__StructuredClassCS__Group__6__Impl rule__StructuredClassCS__Group__7 )
             // InternalOCLinEcore.g:14034:2: rule__StructuredClassCS__Group__6__Impl rule__StructuredClassCS__Group__7
@@ -43507,7 +43507,7 @@
     public final void rule__StructuredClassCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14045:1: ( ( ( rule__StructuredClassCS__Group_6__0 )? ) )
             // InternalOCLinEcore.g:14046:1: ( ( rule__StructuredClassCS__Group_6__0 )? )
@@ -43516,7 +43516,7 @@
             // InternalOCLinEcore.g:14047:1: ( rule__StructuredClassCS__Group_6__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getGroup_6()); 
+               before(grammarAccess.getStructuredClassCSAccess().getGroup_6());
             }
             // InternalOCLinEcore.g:14048:1: ( rule__StructuredClassCS__Group_6__0 )?
             int alt168=2;
@@ -43552,7 +43552,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getGroup_6()); 
+               after(grammarAccess.getStructuredClassCSAccess().getGroup_6());
             }
 
             }
@@ -43580,7 +43580,7 @@
     public final void rule__StructuredClassCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14062:1: ( rule__StructuredClassCS__Group__7__Impl )
             // InternalOCLinEcore.g:14063:2: rule__StructuredClassCS__Group__7__Impl
@@ -43613,7 +43613,7 @@
     public final void rule__StructuredClassCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14073:1: ( ( ( rule__StructuredClassCS__Alternatives_7 ) ) )
             // InternalOCLinEcore.g:14074:1: ( ( rule__StructuredClassCS__Alternatives_7 ) )
@@ -43622,7 +43622,7 @@
             // InternalOCLinEcore.g:14075:1: ( rule__StructuredClassCS__Alternatives_7 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getAlternatives_7()); 
+               before(grammarAccess.getStructuredClassCSAccess().getAlternatives_7());
             }
             // InternalOCLinEcore.g:14076:1: ( rule__StructuredClassCS__Alternatives_7 )
             // InternalOCLinEcore.g:14076:2: rule__StructuredClassCS__Alternatives_7
@@ -43636,7 +43636,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getAlternatives_7()); 
+               after(grammarAccess.getStructuredClassCSAccess().getAlternatives_7());
             }
 
             }
@@ -43664,7 +43664,7 @@
     public final void rule__StructuredClassCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14106:1: ( rule__StructuredClassCS__Group_4__0__Impl rule__StructuredClassCS__Group_4__1 )
             // InternalOCLinEcore.g:14107:2: rule__StructuredClassCS__Group_4__0__Impl rule__StructuredClassCS__Group_4__1
@@ -43702,7 +43702,7 @@
     public final void rule__StructuredClassCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14118:1: ( ( 'extends' ) )
             // InternalOCLinEcore.g:14119:1: ( 'extends' )
@@ -43711,11 +43711,11 @@
             // InternalOCLinEcore.g:14120:1: 'extends'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getExtendsKeyword_4_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getExtendsKeyword_4_0());
             }
             match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getExtendsKeyword_4_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getExtendsKeyword_4_0());
             }
 
             }
@@ -43743,7 +43743,7 @@
     public final void rule__StructuredClassCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14137:1: ( rule__StructuredClassCS__Group_4__1__Impl rule__StructuredClassCS__Group_4__2 )
             // InternalOCLinEcore.g:14138:2: rule__StructuredClassCS__Group_4__1__Impl rule__StructuredClassCS__Group_4__2
@@ -43781,7 +43781,7 @@
     public final void rule__StructuredClassCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14149:1: ( ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 ) ) )
             // InternalOCLinEcore.g:14150:1: ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 ) )
@@ -43790,7 +43790,7 @@
             // InternalOCLinEcore.g:14151:1: ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesAssignment_4_1()); 
+               before(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesAssignment_4_1());
             }
             // InternalOCLinEcore.g:14152:1: ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1 )
             // InternalOCLinEcore.g:14152:2: rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1
@@ -43804,7 +43804,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesAssignment_4_1()); 
+               after(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesAssignment_4_1());
             }
 
             }
@@ -43832,7 +43832,7 @@
     public final void rule__StructuredClassCS__Group_4__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14166:1: ( rule__StructuredClassCS__Group_4__2__Impl )
             // InternalOCLinEcore.g:14167:2: rule__StructuredClassCS__Group_4__2__Impl
@@ -43865,7 +43865,7 @@
     public final void rule__StructuredClassCS__Group_4__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14177:1: ( ( ( rule__StructuredClassCS__Group_4_2__0 )* ) )
             // InternalOCLinEcore.g:14178:1: ( ( rule__StructuredClassCS__Group_4_2__0 )* )
@@ -43874,7 +43874,7 @@
             // InternalOCLinEcore.g:14179:1: ( rule__StructuredClassCS__Group_4_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getGroup_4_2()); 
+               before(grammarAccess.getStructuredClassCSAccess().getGroup_4_2());
             }
             // InternalOCLinEcore.g:14180:1: ( rule__StructuredClassCS__Group_4_2__0 )*
             loop169:
@@ -43906,7 +43906,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getGroup_4_2()); 
+               after(grammarAccess.getStructuredClassCSAccess().getGroup_4_2());
             }
 
             }
@@ -43934,7 +43934,7 @@
     public final void rule__StructuredClassCS__Group_4_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14200:1: ( rule__StructuredClassCS__Group_4_2__0__Impl rule__StructuredClassCS__Group_4_2__1 )
             // InternalOCLinEcore.g:14201:2: rule__StructuredClassCS__Group_4_2__0__Impl rule__StructuredClassCS__Group_4_2__1
@@ -43972,7 +43972,7 @@
     public final void rule__StructuredClassCS__Group_4_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14212:1: ( ( ',' ) )
             // InternalOCLinEcore.g:14213:1: ( ',' )
@@ -43981,11 +43981,11 @@
             // InternalOCLinEcore.g:14214:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getCommaKeyword_4_2_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getCommaKeyword_4_2_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getCommaKeyword_4_2_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getCommaKeyword_4_2_0());
             }
 
             }
@@ -44013,7 +44013,7 @@
     public final void rule__StructuredClassCS__Group_4_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14231:1: ( rule__StructuredClassCS__Group_4_2__1__Impl )
             // InternalOCLinEcore.g:14232:2: rule__StructuredClassCS__Group_4_2__1__Impl
@@ -44046,7 +44046,7 @@
     public final void rule__StructuredClassCS__Group_4_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14242:1: ( ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 ) ) )
             // InternalOCLinEcore.g:14243:1: ( ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 ) )
@@ -44055,7 +44055,7 @@
             // InternalOCLinEcore.g:14244:1: ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesAssignment_4_2_1()); 
+               before(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesAssignment_4_2_1());
             }
             // InternalOCLinEcore.g:14245:1: ( rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1 )
             // InternalOCLinEcore.g:14245:2: rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1
@@ -44069,7 +44069,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesAssignment_4_2_1()); 
+               after(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesAssignment_4_2_1());
             }
 
             }
@@ -44097,7 +44097,7 @@
     public final void rule__StructuredClassCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14263:1: ( rule__StructuredClassCS__Group_5__0__Impl rule__StructuredClassCS__Group_5__1 )
             // InternalOCLinEcore.g:14264:2: rule__StructuredClassCS__Group_5__0__Impl rule__StructuredClassCS__Group_5__1
@@ -44135,7 +44135,7 @@
     public final void rule__StructuredClassCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14275:1: ( ( ':' ) )
             // InternalOCLinEcore.g:14276:1: ( ':' )
@@ -44144,11 +44144,11 @@
             // InternalOCLinEcore.g:14277:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getColonKeyword_5_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getColonKeyword_5_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getColonKeyword_5_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getColonKeyword_5_0());
             }
 
             }
@@ -44176,7 +44176,7 @@
     public final void rule__StructuredClassCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14294:1: ( rule__StructuredClassCS__Group_5__1__Impl )
             // InternalOCLinEcore.g:14295:2: rule__StructuredClassCS__Group_5__1__Impl
@@ -44209,7 +44209,7 @@
     public final void rule__StructuredClassCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14305:1: ( ( ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 ) ) )
             // InternalOCLinEcore.g:14306:1: ( ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 ) )
@@ -44218,7 +44218,7 @@
             // InternalOCLinEcore.g:14307:1: ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getInstanceClassNameAssignment_5_1()); 
+               before(grammarAccess.getStructuredClassCSAccess().getInstanceClassNameAssignment_5_1());
             }
             // InternalOCLinEcore.g:14308:1: ( rule__StructuredClassCS__InstanceClassNameAssignment_5_1 )
             // InternalOCLinEcore.g:14308:2: rule__StructuredClassCS__InstanceClassNameAssignment_5_1
@@ -44232,7 +44232,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getInstanceClassNameAssignment_5_1()); 
+               after(grammarAccess.getStructuredClassCSAccess().getInstanceClassNameAssignment_5_1());
             }
 
             }
@@ -44260,7 +44260,7 @@
     public final void rule__StructuredClassCS__Group_6__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14326:1: ( rule__StructuredClassCS__Group_6__0__Impl rule__StructuredClassCS__Group_6__1 )
             // InternalOCLinEcore.g:14327:2: rule__StructuredClassCS__Group_6__0__Impl rule__StructuredClassCS__Group_6__1
@@ -44298,7 +44298,7 @@
     public final void rule__StructuredClassCS__Group_6__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14338:1: ( ( '{' ) )
             // InternalOCLinEcore.g:14339:1: ( '{' )
@@ -44307,11 +44307,11 @@
             // InternalOCLinEcore.g:14340:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_6_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_6_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_6_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_6_0());
             }
 
             }
@@ -44339,7 +44339,7 @@
     public final void rule__StructuredClassCS__Group_6__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14357:1: ( rule__StructuredClassCS__Group_6__1__Impl rule__StructuredClassCS__Group_6__2 )
             // InternalOCLinEcore.g:14358:2: rule__StructuredClassCS__Group_6__1__Impl rule__StructuredClassCS__Group_6__2
@@ -44377,7 +44377,7 @@
     public final void rule__StructuredClassCS__Group_6__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14369:1: ( ( ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )? ) )
             // InternalOCLinEcore.g:14370:1: ( ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )? )
@@ -44386,7 +44386,7 @@
             // InternalOCLinEcore.g:14371:1: ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getIsInterfaceAssignment_6_1()); 
+               before(grammarAccess.getStructuredClassCSAccess().getIsInterfaceAssignment_6_1());
             }
             // InternalOCLinEcore.g:14372:1: ( rule__StructuredClassCS__IsInterfaceAssignment_6_1 )?
             int alt170=2;
@@ -44411,7 +44411,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getIsInterfaceAssignment_6_1()); 
+               after(grammarAccess.getStructuredClassCSAccess().getIsInterfaceAssignment_6_1());
             }
 
             }
@@ -44439,7 +44439,7 @@
     public final void rule__StructuredClassCS__Group_6__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14386:1: ( rule__StructuredClassCS__Group_6__2__Impl )
             // InternalOCLinEcore.g:14387:2: rule__StructuredClassCS__Group_6__2__Impl
@@ -44472,7 +44472,7 @@
     public final void rule__StructuredClassCS__Group_6__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14397:1: ( ( '}' ) )
             // InternalOCLinEcore.g:14398:1: ( '}' )
@@ -44481,11 +44481,11 @@
             // InternalOCLinEcore.g:14399:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_6_2()); 
+               before(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_6_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_6_2()); 
+               after(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_6_2());
             }
 
             }
@@ -44513,7 +44513,7 @@
     public final void rule__StructuredClassCS__Group_7_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14422:1: ( rule__StructuredClassCS__Group_7_0__0__Impl rule__StructuredClassCS__Group_7_0__1 )
             // InternalOCLinEcore.g:14423:2: rule__StructuredClassCS__Group_7_0__0__Impl rule__StructuredClassCS__Group_7_0__1
@@ -44551,7 +44551,7 @@
     public final void rule__StructuredClassCS__Group_7_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14434:1: ( ( '{' ) )
             // InternalOCLinEcore.g:14435:1: ( '{' )
@@ -44560,11 +44560,11 @@
             // InternalOCLinEcore.g:14436:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_7_0_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_7_0_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_7_0_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_7_0_0());
             }
 
             }
@@ -44592,7 +44592,7 @@
     public final void rule__StructuredClassCS__Group_7_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14453:1: ( rule__StructuredClassCS__Group_7_0__1__Impl rule__StructuredClassCS__Group_7_0__2 )
             // InternalOCLinEcore.g:14454:2: rule__StructuredClassCS__Group_7_0__1__Impl rule__StructuredClassCS__Group_7_0__2
@@ -44630,7 +44630,7 @@
     public final void rule__StructuredClassCS__Group_7_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14465:1: ( ( ( rule__StructuredClassCS__Alternatives_7_0_1 )* ) )
             // InternalOCLinEcore.g:14466:1: ( ( rule__StructuredClassCS__Alternatives_7_0_1 )* )
@@ -44639,7 +44639,7 @@
             // InternalOCLinEcore.g:14467:1: ( rule__StructuredClassCS__Alternatives_7_0_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getAlternatives_7_0_1()); 
+               before(grammarAccess.getStructuredClassCSAccess().getAlternatives_7_0_1());
             }
             // InternalOCLinEcore.g:14468:1: ( rule__StructuredClassCS__Alternatives_7_0_1 )*
             loop171:
@@ -44671,7 +44671,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getAlternatives_7_0_1()); 
+               after(grammarAccess.getStructuredClassCSAccess().getAlternatives_7_0_1());
             }
 
             }
@@ -44699,7 +44699,7 @@
     public final void rule__StructuredClassCS__Group_7_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14482:1: ( rule__StructuredClassCS__Group_7_0__2__Impl )
             // InternalOCLinEcore.g:14483:2: rule__StructuredClassCS__Group_7_0__2__Impl
@@ -44732,7 +44732,7 @@
     public final void rule__StructuredClassCS__Group_7_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14493:1: ( ( '}' ) )
             // InternalOCLinEcore.g:14494:1: ( '}' )
@@ -44741,11 +44741,11 @@
             // InternalOCLinEcore.g:14495:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_7_0_2()); 
+               before(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_7_0_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_7_0_2()); 
+               after(grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_7_0_2());
             }
 
             }
@@ -44773,7 +44773,7 @@
     public final void rule__SysMLCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14518:1: ( rule__SysMLCS__Group__0__Impl rule__SysMLCS__Group__1 )
             // InternalOCLinEcore.g:14519:2: rule__SysMLCS__Group__0__Impl rule__SysMLCS__Group__1
@@ -44811,7 +44811,7 @@
     public final void rule__SysMLCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14530:1: ( ( () ) )
             // InternalOCLinEcore.g:14531:1: ( () )
@@ -44820,15 +44820,15 @@
             // InternalOCLinEcore.g:14532:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSAccess().getSysMLCSAction_0()); 
+               before(grammarAccess.getSysMLCSAccess().getSysMLCSAction_0());
             }
             // InternalOCLinEcore.g:14533:1: ()
-            // InternalOCLinEcore.g:14535:1: 
+            // InternalOCLinEcore.g:14535:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSAccess().getSysMLCSAction_0()); 
+               after(grammarAccess.getSysMLCSAccess().getSysMLCSAction_0());
             }
 
             }
@@ -44852,7 +44852,7 @@
     public final void rule__SysMLCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14549:1: ( rule__SysMLCS__Group__1__Impl rule__SysMLCS__Group__2 )
             // InternalOCLinEcore.g:14550:2: rule__SysMLCS__Group__1__Impl rule__SysMLCS__Group__2
@@ -44890,7 +44890,7 @@
     public final void rule__SysMLCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14561:1: ( ( 'sysml' ) )
             // InternalOCLinEcore.g:14562:1: ( 'sysml' )
@@ -44899,11 +44899,11 @@
             // InternalOCLinEcore.g:14563:1: 'sysml'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSAccess().getSysmlKeyword_1()); 
+               before(grammarAccess.getSysMLCSAccess().getSysmlKeyword_1());
             }
             match(input,59,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSAccess().getSysmlKeyword_1()); 
+               after(grammarAccess.getSysMLCSAccess().getSysmlKeyword_1());
             }
 
             }
@@ -44931,7 +44931,7 @@
     public final void rule__SysMLCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14580:1: ( rule__SysMLCS__Group__2__Impl )
             // InternalOCLinEcore.g:14581:2: rule__SysMLCS__Group__2__Impl
@@ -44964,7 +44964,7 @@
     public final void rule__SysMLCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14591:1: ( ( ( rule__SysMLCS__Alternatives_2 ) ) )
             // InternalOCLinEcore.g:14592:1: ( ( rule__SysMLCS__Alternatives_2 ) )
@@ -44973,7 +44973,7 @@
             // InternalOCLinEcore.g:14593:1: ( rule__SysMLCS__Alternatives_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getSysMLCSAccess().getAlternatives_2());
             }
             // InternalOCLinEcore.g:14594:1: ( rule__SysMLCS__Alternatives_2 )
             // InternalOCLinEcore.g:14594:2: rule__SysMLCS__Alternatives_2
@@ -44987,7 +44987,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getSysMLCSAccess().getAlternatives_2());
             }
 
             }
@@ -45015,7 +45015,7 @@
     public final void rule__SysMLCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14614:1: ( rule__SysMLCS__Group_2_0__0__Impl rule__SysMLCS__Group_2_0__1 )
             // InternalOCLinEcore.g:14615:2: rule__SysMLCS__Group_2_0__0__Impl rule__SysMLCS__Group_2_0__1
@@ -45053,7 +45053,7 @@
     public final void rule__SysMLCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14626:1: ( ( ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 ) ) )
             // InternalOCLinEcore.g:14627:1: ( ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 ) )
@@ -45062,7 +45062,7 @@
             // InternalOCLinEcore.g:14628:1: ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSAccess().getOwnedDetailsAssignment_2_0_0()); 
+               before(grammarAccess.getSysMLCSAccess().getOwnedDetailsAssignment_2_0_0());
             }
             // InternalOCLinEcore.g:14629:1: ( rule__SysMLCS__OwnedDetailsAssignment_2_0_0 )
             // InternalOCLinEcore.g:14629:2: rule__SysMLCS__OwnedDetailsAssignment_2_0_0
@@ -45076,7 +45076,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSAccess().getOwnedDetailsAssignment_2_0_0()); 
+               after(grammarAccess.getSysMLCSAccess().getOwnedDetailsAssignment_2_0_0());
             }
 
             }
@@ -45104,7 +45104,7 @@
     public final void rule__SysMLCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14643:1: ( rule__SysMLCS__Group_2_0__1__Impl )
             // InternalOCLinEcore.g:14644:2: rule__SysMLCS__Group_2_0__1__Impl
@@ -45137,7 +45137,7 @@
     public final void rule__SysMLCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14654:1: ( ( ';' ) )
             // InternalOCLinEcore.g:14655:1: ( ';' )
@@ -45146,11 +45146,11 @@
             // InternalOCLinEcore.g:14656:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_0_1()); 
+               before(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_0_1());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_0_1()); 
+               after(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_0_1());
             }
 
             }
@@ -45178,7 +45178,7 @@
     public final void rule__SysMLCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14677:1: ( rule__SysMLCS__Group_2_1__0__Impl rule__SysMLCS__Group_2_1__1 )
             // InternalOCLinEcore.g:14678:2: rule__SysMLCS__Group_2_1__0__Impl rule__SysMLCS__Group_2_1__1
@@ -45216,7 +45216,7 @@
     public final void rule__SysMLCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14689:1: ( ( '{' ) )
             // InternalOCLinEcore.g:14690:1: ( '{' )
@@ -45225,11 +45225,11 @@
             // InternalOCLinEcore.g:14691:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSAccess().getLeftCurlyBracketKeyword_2_1_0()); 
+               before(grammarAccess.getSysMLCSAccess().getLeftCurlyBracketKeyword_2_1_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSAccess().getLeftCurlyBracketKeyword_2_1_0()); 
+               after(grammarAccess.getSysMLCSAccess().getLeftCurlyBracketKeyword_2_1_0());
             }
 
             }
@@ -45257,7 +45257,7 @@
     public final void rule__SysMLCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14708:1: ( rule__SysMLCS__Group_2_1__1__Impl rule__SysMLCS__Group_2_1__2 )
             // InternalOCLinEcore.g:14709:2: rule__SysMLCS__Group_2_1__1__Impl rule__SysMLCS__Group_2_1__2
@@ -45295,7 +45295,7 @@
     public final void rule__SysMLCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14720:1: ( ( ( rule__SysMLCS__Group_2_1_1__0 )* ) )
             // InternalOCLinEcore.g:14721:1: ( ( rule__SysMLCS__Group_2_1_1__0 )* )
@@ -45304,7 +45304,7 @@
             // InternalOCLinEcore.g:14722:1: ( rule__SysMLCS__Group_2_1_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSAccess().getGroup_2_1_1()); 
+               before(grammarAccess.getSysMLCSAccess().getGroup_2_1_1());
             }
             // InternalOCLinEcore.g:14723:1: ( rule__SysMLCS__Group_2_1_1__0 )*
             loop172:
@@ -45336,7 +45336,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSAccess().getGroup_2_1_1()); 
+               after(grammarAccess.getSysMLCSAccess().getGroup_2_1_1());
             }
 
             }
@@ -45364,7 +45364,7 @@
     public final void rule__SysMLCS__Group_2_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14737:1: ( rule__SysMLCS__Group_2_1__2__Impl )
             // InternalOCLinEcore.g:14738:2: rule__SysMLCS__Group_2_1__2__Impl
@@ -45397,7 +45397,7 @@
     public final void rule__SysMLCS__Group_2_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14748:1: ( ( '}' ) )
             // InternalOCLinEcore.g:14749:1: ( '}' )
@@ -45406,11 +45406,11 @@
             // InternalOCLinEcore.g:14750:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSAccess().getRightCurlyBracketKeyword_2_1_2()); 
+               before(grammarAccess.getSysMLCSAccess().getRightCurlyBracketKeyword_2_1_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSAccess().getRightCurlyBracketKeyword_2_1_2()); 
+               after(grammarAccess.getSysMLCSAccess().getRightCurlyBracketKeyword_2_1_2());
             }
 
             }
@@ -45438,7 +45438,7 @@
     public final void rule__SysMLCS__Group_2_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14773:1: ( rule__SysMLCS__Group_2_1_1__0__Impl rule__SysMLCS__Group_2_1_1__1 )
             // InternalOCLinEcore.g:14774:2: rule__SysMLCS__Group_2_1_1__0__Impl rule__SysMLCS__Group_2_1_1__1
@@ -45476,7 +45476,7 @@
     public final void rule__SysMLCS__Group_2_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14785:1: ( ( ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 ) ) )
             // InternalOCLinEcore.g:14786:1: ( ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 ) )
@@ -45485,7 +45485,7 @@
             // InternalOCLinEcore.g:14787:1: ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSAccess().getOwnedDetailsAssignment_2_1_1_0()); 
+               before(grammarAccess.getSysMLCSAccess().getOwnedDetailsAssignment_2_1_1_0());
             }
             // InternalOCLinEcore.g:14788:1: ( rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0 )
             // InternalOCLinEcore.g:14788:2: rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0
@@ -45499,7 +45499,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSAccess().getOwnedDetailsAssignment_2_1_1_0()); 
+               after(grammarAccess.getSysMLCSAccess().getOwnedDetailsAssignment_2_1_1_0());
             }
 
             }
@@ -45527,7 +45527,7 @@
     public final void rule__SysMLCS__Group_2_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14802:1: ( rule__SysMLCS__Group_2_1_1__1__Impl )
             // InternalOCLinEcore.g:14803:2: rule__SysMLCS__Group_2_1_1__1__Impl
@@ -45560,7 +45560,7 @@
     public final void rule__SysMLCS__Group_2_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14813:1: ( ( ';' ) )
             // InternalOCLinEcore.g:14814:1: ( ';' )
@@ -45569,11 +45569,11 @@
             // InternalOCLinEcore.g:14815:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_1_1_1()); 
+               before(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_1_1_1());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_1_1_1()); 
+               after(grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_1_1_1());
             }
 
             }
@@ -45601,7 +45601,7 @@
     public final void rule__TypedMultiplicityRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14836:1: ( rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1 )
             // InternalOCLinEcore.g:14837:2: rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1
@@ -45639,7 +45639,7 @@
     public final void rule__TypedMultiplicityRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14848:1: ( ( ruleTypedRefCS ) )
             // InternalOCLinEcore.g:14849:1: ( ruleTypedRefCS )
@@ -45648,7 +45648,7 @@
             // InternalOCLinEcore.g:14850:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+               before(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedRefCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -45656,7 +45656,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+               after(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedRefCSParserRuleCall_0());
             }
 
             }
@@ -45684,7 +45684,7 @@
     public final void rule__TypedMultiplicityRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14865:1: ( rule__TypedMultiplicityRefCS__Group__1__Impl )
             // InternalOCLinEcore.g:14866:2: rule__TypedMultiplicityRefCS__Group__1__Impl
@@ -45717,7 +45717,7 @@
     public final void rule__TypedMultiplicityRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14876:1: ( ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? ) )
             // InternalOCLinEcore.g:14877:1: ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? )
@@ -45726,7 +45726,7 @@
             // InternalOCLinEcore.g:14878:1: ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityAssignment_1()); 
+               before(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityAssignment_1());
             }
             // InternalOCLinEcore.g:14879:1: ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )?
             int alt173=2;
@@ -45751,7 +45751,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityAssignment_1()); 
+               after(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityAssignment_1());
             }
 
             }
@@ -45779,7 +45779,7 @@
     public final void rule__TemplateSignatureCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14897:1: ( rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1 )
             // InternalOCLinEcore.g:14898:2: rule__TemplateSignatureCS__Group_0__0__Impl rule__TemplateSignatureCS__Group_0__1
@@ -45817,7 +45817,7 @@
     public final void rule__TemplateSignatureCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14909:1: ( ( '(' ) )
             // InternalOCLinEcore.g:14910:1: ( '(' )
@@ -45826,11 +45826,11 @@
             // InternalOCLinEcore.g:14911:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0());
             }
 
             }
@@ -45858,7 +45858,7 @@
     public final void rule__TemplateSignatureCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14928:1: ( rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2 )
             // InternalOCLinEcore.g:14929:2: rule__TemplateSignatureCS__Group_0__1__Impl rule__TemplateSignatureCS__Group_0__2
@@ -45896,7 +45896,7 @@
     public final void rule__TemplateSignatureCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14940:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) ) )
             // InternalOCLinEcore.g:14941:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 ) )
@@ -45905,7 +45905,7 @@
             // InternalOCLinEcore.g:14942:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_1()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_1());
             }
             // InternalOCLinEcore.g:14943:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_1 )
             // InternalOCLinEcore.g:14943:2: rule__TemplateSignatureCS__OwnedParametersAssignment_0_1
@@ -45919,7 +45919,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_1()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_1());
             }
 
             }
@@ -45947,7 +45947,7 @@
     public final void rule__TemplateSignatureCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14957:1: ( rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3 )
             // InternalOCLinEcore.g:14958:2: rule__TemplateSignatureCS__Group_0__2__Impl rule__TemplateSignatureCS__Group_0__3
@@ -45985,7 +45985,7 @@
     public final void rule__TemplateSignatureCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14969:1: ( ( ( rule__TemplateSignatureCS__Group_0_2__0 )* ) )
             // InternalOCLinEcore.g:14970:1: ( ( rule__TemplateSignatureCS__Group_0_2__0 )* )
@@ -45994,7 +45994,7 @@
             // InternalOCLinEcore.g:14971:1: ( rule__TemplateSignatureCS__Group_0_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getGroup_0_2()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getGroup_0_2());
             }
             // InternalOCLinEcore.g:14972:1: ( rule__TemplateSignatureCS__Group_0_2__0 )*
             loop174:
@@ -46026,7 +46026,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getGroup_0_2()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getGroup_0_2());
             }
 
             }
@@ -46054,7 +46054,7 @@
     public final void rule__TemplateSignatureCS__Group_0__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14986:1: ( rule__TemplateSignatureCS__Group_0__3__Impl )
             // InternalOCLinEcore.g:14987:2: rule__TemplateSignatureCS__Group_0__3__Impl
@@ -46087,7 +46087,7 @@
     public final void rule__TemplateSignatureCS__Group_0__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:14997:1: ( ( ')' ) )
             // InternalOCLinEcore.g:14998:1: ( ')' )
@@ -46096,11 +46096,11 @@
             // InternalOCLinEcore.g:14999:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3());
             }
 
             }
@@ -46128,7 +46128,7 @@
     public final void rule__TemplateSignatureCS__Group_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15024:1: ( rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1 )
             // InternalOCLinEcore.g:15025:2: rule__TemplateSignatureCS__Group_0_2__0__Impl rule__TemplateSignatureCS__Group_0_2__1
@@ -46166,7 +46166,7 @@
     public final void rule__TemplateSignatureCS__Group_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15036:1: ( ( ',' ) )
             // InternalOCLinEcore.g:15037:1: ( ',' )
@@ -46175,11 +46175,11 @@
             // InternalOCLinEcore.g:15038:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0());
             }
 
             }
@@ -46207,7 +46207,7 @@
     public final void rule__TemplateSignatureCS__Group_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15055:1: ( rule__TemplateSignatureCS__Group_0_2__1__Impl )
             // InternalOCLinEcore.g:15056:2: rule__TemplateSignatureCS__Group_0_2__1__Impl
@@ -46240,7 +46240,7 @@
     public final void rule__TemplateSignatureCS__Group_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15066:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) ) )
             // InternalOCLinEcore.g:15067:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 ) )
@@ -46249,7 +46249,7 @@
             // InternalOCLinEcore.g:15068:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_2_1()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_2_1());
             }
             // InternalOCLinEcore.g:15069:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1 )
             // InternalOCLinEcore.g:15069:2: rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1
@@ -46263,7 +46263,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_2_1()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_0_2_1());
             }
 
             }
@@ -46291,7 +46291,7 @@
     public final void rule__TemplateSignatureCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15087:1: ( rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1 )
             // InternalOCLinEcore.g:15088:2: rule__TemplateSignatureCS__Group_1__0__Impl rule__TemplateSignatureCS__Group_1__1
@@ -46329,7 +46329,7 @@
     public final void rule__TemplateSignatureCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15099:1: ( ( '<' ) )
             // InternalOCLinEcore.g:15100:1: ( '<' )
@@ -46338,11 +46338,11 @@
             // InternalOCLinEcore.g:15101:1: '<'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0());
             }
 
             }
@@ -46370,7 +46370,7 @@
     public final void rule__TemplateSignatureCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15118:1: ( rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2 )
             // InternalOCLinEcore.g:15119:2: rule__TemplateSignatureCS__Group_1__1__Impl rule__TemplateSignatureCS__Group_1__2
@@ -46408,7 +46408,7 @@
     public final void rule__TemplateSignatureCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15130:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) ) )
             // InternalOCLinEcore.g:15131:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 ) )
@@ -46417,7 +46417,7 @@
             // InternalOCLinEcore.g:15132:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_1()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_1());
             }
             // InternalOCLinEcore.g:15133:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_1 )
             // InternalOCLinEcore.g:15133:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1_1
@@ -46431,7 +46431,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_1()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_1());
             }
 
             }
@@ -46459,7 +46459,7 @@
     public final void rule__TemplateSignatureCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15147:1: ( rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3 )
             // InternalOCLinEcore.g:15148:2: rule__TemplateSignatureCS__Group_1__2__Impl rule__TemplateSignatureCS__Group_1__3
@@ -46497,7 +46497,7 @@
     public final void rule__TemplateSignatureCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15159:1: ( ( ( rule__TemplateSignatureCS__Group_1_2__0 )* ) )
             // InternalOCLinEcore.g:15160:1: ( ( rule__TemplateSignatureCS__Group_1_2__0 )* )
@@ -46506,7 +46506,7 @@
             // InternalOCLinEcore.g:15161:1: ( rule__TemplateSignatureCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getGroup_1_2()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getGroup_1_2());
             }
             // InternalOCLinEcore.g:15162:1: ( rule__TemplateSignatureCS__Group_1_2__0 )*
             loop175:
@@ -46538,7 +46538,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getGroup_1_2()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getGroup_1_2());
             }
 
             }
@@ -46566,7 +46566,7 @@
     public final void rule__TemplateSignatureCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15176:1: ( rule__TemplateSignatureCS__Group_1__3__Impl )
             // InternalOCLinEcore.g:15177:2: rule__TemplateSignatureCS__Group_1__3__Impl
@@ -46599,7 +46599,7 @@
     public final void rule__TemplateSignatureCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15187:1: ( ( '>' ) )
             // InternalOCLinEcore.g:15188:1: ( '>' )
@@ -46608,11 +46608,11 @@
             // InternalOCLinEcore.g:15189:1: '>'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3());
             }
             match(input,65,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3());
             }
 
             }
@@ -46640,7 +46640,7 @@
     public final void rule__TemplateSignatureCS__Group_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15214:1: ( rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1 )
             // InternalOCLinEcore.g:15215:2: rule__TemplateSignatureCS__Group_1_2__0__Impl rule__TemplateSignatureCS__Group_1_2__1
@@ -46678,7 +46678,7 @@
     public final void rule__TemplateSignatureCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15226:1: ( ( ',' ) )
             // InternalOCLinEcore.g:15227:1: ( ',' )
@@ -46687,11 +46687,11 @@
             // InternalOCLinEcore.g:15228:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0());
             }
 
             }
@@ -46719,7 +46719,7 @@
     public final void rule__TemplateSignatureCS__Group_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15245:1: ( rule__TemplateSignatureCS__Group_1_2__1__Impl )
             // InternalOCLinEcore.g:15246:2: rule__TemplateSignatureCS__Group_1_2__1__Impl
@@ -46752,7 +46752,7 @@
     public final void rule__TemplateSignatureCS__Group_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15256:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) ) )
             // InternalOCLinEcore.g:15257:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 ) )
@@ -46761,7 +46761,7 @@
             // InternalOCLinEcore.g:15258:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_2_1()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_2_1());
             }
             // InternalOCLinEcore.g:15259:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1 )
             // InternalOCLinEcore.g:15259:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1
@@ -46775,7 +46775,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_2_1()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1_2_1());
             }
 
             }
@@ -46803,7 +46803,7 @@
     public final void rule__TypedTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15277:1: ( rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1 )
             // InternalOCLinEcore.g:15278:2: rule__TypedTypeRefCS__Group__0__Impl rule__TypedTypeRefCS__Group__1
@@ -46841,7 +46841,7 @@
     public final void rule__TypedTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15289:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) ) )
             // InternalOCLinEcore.g:15290:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 ) )
@@ -46850,7 +46850,7 @@
             // InternalOCLinEcore.g:15291:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0());
             }
             // InternalOCLinEcore.g:15292:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0 )
             // InternalOCLinEcore.g:15292:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0
@@ -46864,7 +46864,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0());
             }
 
             }
@@ -46892,7 +46892,7 @@
     public final void rule__TypedTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15306:1: ( rule__TypedTypeRefCS__Group__1__Impl )
             // InternalOCLinEcore.g:15307:2: rule__TypedTypeRefCS__Group__1__Impl
@@ -46925,7 +46925,7 @@
     public final void rule__TypedTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15317:1: ( ( ( rule__TypedTypeRefCS__Alternatives_1 )? ) )
             // InternalOCLinEcore.g:15318:1: ( ( rule__TypedTypeRefCS__Alternatives_1 )? )
@@ -46934,7 +46934,7 @@
             // InternalOCLinEcore.g:15319:1: ( rule__TypedTypeRefCS__Alternatives_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getAlternatives_1()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getAlternatives_1());
             }
             // InternalOCLinEcore.g:15320:1: ( rule__TypedTypeRefCS__Alternatives_1 )?
             int alt176=2;
@@ -46959,7 +46959,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getAlternatives_1()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getAlternatives_1());
             }
 
             }
@@ -46987,7 +46987,7 @@
     public final void rule__TypedTypeRefCS__Group_1_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15338:1: ( rule__TypedTypeRefCS__Group_1_0__0__Impl rule__TypedTypeRefCS__Group_1_0__1 )
             // InternalOCLinEcore.g:15339:2: rule__TypedTypeRefCS__Group_1_0__0__Impl rule__TypedTypeRefCS__Group_1_0__1
@@ -47025,7 +47025,7 @@
     public final void rule__TypedTypeRefCS__Group_1_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15350:1: ( ( '(' ) )
             // InternalOCLinEcore.g:15351:1: ( '(' )
@@ -47034,11 +47034,11 @@
             // InternalOCLinEcore.g:15352:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0_0());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0_0());
             }
 
             }
@@ -47066,7 +47066,7 @@
     public final void rule__TypedTypeRefCS__Group_1_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15369:1: ( rule__TypedTypeRefCS__Group_1_0__1__Impl rule__TypedTypeRefCS__Group_1_0__2 )
             // InternalOCLinEcore.g:15370:2: rule__TypedTypeRefCS__Group_1_0__1__Impl rule__TypedTypeRefCS__Group_1_0__2
@@ -47104,7 +47104,7 @@
     public final void rule__TypedTypeRefCS__Group_1_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15381:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 ) ) )
             // InternalOCLinEcore.g:15382:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 ) )
@@ -47113,7 +47113,7 @@
             // InternalOCLinEcore.g:15383:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_0_1()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_0_1());
             }
             // InternalOCLinEcore.g:15384:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1 )
             // InternalOCLinEcore.g:15384:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1
@@ -47127,7 +47127,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_0_1()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_0_1());
             }
 
             }
@@ -47155,7 +47155,7 @@
     public final void rule__TypedTypeRefCS__Group_1_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15398:1: ( rule__TypedTypeRefCS__Group_1_0__2__Impl )
             // InternalOCLinEcore.g:15399:2: rule__TypedTypeRefCS__Group_1_0__2__Impl
@@ -47188,7 +47188,7 @@
     public final void rule__TypedTypeRefCS__Group_1_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15409:1: ( ( ')' ) )
             // InternalOCLinEcore.g:15410:1: ( ')' )
@@ -47197,11 +47197,11 @@
             // InternalOCLinEcore.g:15411:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_0_2()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_0_2());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_0_2()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_0_2());
             }
 
             }
@@ -47229,7 +47229,7 @@
     public final void rule__TypedTypeRefCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15434:1: ( rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1 )
             // InternalOCLinEcore.g:15435:2: rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1
@@ -47267,7 +47267,7 @@
     public final void rule__TypedTypeRefCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15446:1: ( ( '<' ) )
             // InternalOCLinEcore.g:15447:1: ( '<' )
@@ -47276,11 +47276,11 @@
             // InternalOCLinEcore.g:15448:1: '<'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getLessThanSignKeyword_1_1_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getLessThanSignKeyword_1_1_0());
             }
             match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getLessThanSignKeyword_1_1_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getLessThanSignKeyword_1_1_0());
             }
 
             }
@@ -47308,7 +47308,7 @@
     public final void rule__TypedTypeRefCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15465:1: ( rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2 )
             // InternalOCLinEcore.g:15466:2: rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2
@@ -47346,7 +47346,7 @@
     public final void rule__TypedTypeRefCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15477:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) ) )
             // InternalOCLinEcore.g:15478:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) )
@@ -47355,7 +47355,7 @@
             // InternalOCLinEcore.g:15479:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1_1()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1_1());
             }
             // InternalOCLinEcore.g:15480:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 )
             // InternalOCLinEcore.g:15480:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1
@@ -47369,7 +47369,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1_1()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1_1());
             }
 
             }
@@ -47397,7 +47397,7 @@
     public final void rule__TypedTypeRefCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15494:1: ( rule__TypedTypeRefCS__Group_1_1__2__Impl )
             // InternalOCLinEcore.g:15495:2: rule__TypedTypeRefCS__Group_1_1__2__Impl
@@ -47430,7 +47430,7 @@
     public final void rule__TypedTypeRefCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15505:1: ( ( '>' ) )
             // InternalOCLinEcore.g:15506:1: ( '>' )
@@ -47439,11 +47439,11 @@
             // InternalOCLinEcore.g:15507:1: '>'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getGreaterThanSignKeyword_1_1_2()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getGreaterThanSignKeyword_1_1_2());
             }
             match(input,65,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getGreaterThanSignKeyword_1_1_2()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getGreaterThanSignKeyword_1_1_2());
             }
 
             }
@@ -47471,7 +47471,7 @@
     public final void rule__URIPathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15530:1: ( rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 )
             // InternalOCLinEcore.g:15531:2: rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1
@@ -47509,7 +47509,7 @@
     public final void rule__URIPathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15542:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) )
             // InternalOCLinEcore.g:15543:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
@@ -47518,7 +47518,7 @@
             // InternalOCLinEcore.g:15544:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
             // InternalOCLinEcore.g:15545:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
             // InternalOCLinEcore.g:15545:2: rule__URIPathNameCS__OwnedPathElementsAssignment_0
@@ -47532,7 +47532,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
 
             }
@@ -47560,7 +47560,7 @@
     public final void rule__URIPathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15559:1: ( rule__URIPathNameCS__Group__1__Impl )
             // InternalOCLinEcore.g:15560:2: rule__URIPathNameCS__Group__1__Impl
@@ -47593,7 +47593,7 @@
     public final void rule__URIPathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15570:1: ( ( ( rule__URIPathNameCS__Group_1__0 )* ) )
             // InternalOCLinEcore.g:15571:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
@@ -47602,7 +47602,7 @@
             // InternalOCLinEcore.g:15572:1: ( rule__URIPathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getGroup_1()); 
+               before(grammarAccess.getURIPathNameCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:15573:1: ( rule__URIPathNameCS__Group_1__0 )*
             loop177:
@@ -47634,7 +47634,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getGroup_1()); 
+               after(grammarAccess.getURIPathNameCSAccess().getGroup_1());
             }
 
             }
@@ -47662,7 +47662,7 @@
     public final void rule__URIPathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15591:1: ( rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 )
             // InternalOCLinEcore.g:15592:2: rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1
@@ -47700,7 +47700,7 @@
     public final void rule__URIPathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15603:1: ( ( '::' ) )
             // InternalOCLinEcore.g:15604:1: ( '::' )
@@ -47709,11 +47709,11 @@
             // InternalOCLinEcore.g:15605:1: '::'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0()); 
+               before(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
             }
             match(input,103,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0()); 
+               after(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
             }
 
             }
@@ -47741,7 +47741,7 @@
     public final void rule__URIPathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15622:1: ( rule__URIPathNameCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:15623:2: rule__URIPathNameCS__Group_1__1__Impl
@@ -47774,7 +47774,7 @@
     public final void rule__URIPathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15633:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
             // InternalOCLinEcore.g:15634:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
@@ -47783,7 +47783,7 @@
             // InternalOCLinEcore.g:15635:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
             // InternalOCLinEcore.g:15636:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
             // InternalOCLinEcore.g:15636:2: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1
@@ -47797,7 +47797,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
 
             }
@@ -47825,7 +47825,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15654:1: ( rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 )
             // InternalOCLinEcore.g:15655:2: rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1
@@ -47863,7 +47863,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15666:1: ( ( () ) )
             // InternalOCLinEcore.g:15667:1: ( () )
@@ -47872,15 +47872,15 @@
             // InternalOCLinEcore.g:15668:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0());
             }
             // InternalOCLinEcore.g:15669:1: ()
-            // InternalOCLinEcore.g:15671:1: 
+            // InternalOCLinEcore.g:15671:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0());
             }
 
             }
@@ -47904,7 +47904,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15685:1: ( rule__URIFirstPathElementCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:15686:2: rule__URIFirstPathElementCS__Group_1__1__Impl
@@ -47937,7 +47937,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15696:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) )
             // InternalOCLinEcore.g:15697:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
@@ -47946,7 +47946,7 @@
             // InternalOCLinEcore.g:15698:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1());
             }
             // InternalOCLinEcore.g:15699:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
             // InternalOCLinEcore.g:15699:2: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1
@@ -47960,7 +47960,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1());
             }
 
             }
@@ -47988,7 +47988,7 @@
     public final void rule__CollectionTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15717:1: ( rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 )
             // InternalOCLinEcore.g:15718:2: rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1
@@ -48026,7 +48026,7 @@
     public final void rule__CollectionTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15729:1: ( ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) )
             // InternalOCLinEcore.g:15730:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
@@ -48035,7 +48035,7 @@
             // InternalOCLinEcore.g:15731:1: ( rule__CollectionTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0());
             }
             // InternalOCLinEcore.g:15732:1: ( rule__CollectionTypeCS__NameAssignment_0 )
             // InternalOCLinEcore.g:15732:2: rule__CollectionTypeCS__NameAssignment_0
@@ -48049,7 +48049,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0());
             }
 
             }
@@ -48077,7 +48077,7 @@
     public final void rule__CollectionTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15746:1: ( rule__CollectionTypeCS__Group__1__Impl )
             // InternalOCLinEcore.g:15747:2: rule__CollectionTypeCS__Group__1__Impl
@@ -48110,7 +48110,7 @@
     public final void rule__CollectionTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15757:1: ( ( ( rule__CollectionTypeCS__Group_1__0 )? ) )
             // InternalOCLinEcore.g:15758:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
@@ -48119,7 +48119,7 @@
             // InternalOCLinEcore.g:15759:1: ( rule__CollectionTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getGroup_1()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:15760:1: ( rule__CollectionTypeCS__Group_1__0 )?
             int alt178=2;
@@ -48144,7 +48144,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getGroup_1()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getGroup_1());
             }
 
             }
@@ -48172,7 +48172,7 @@
     public final void rule__CollectionTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15778:1: ( rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 )
             // InternalOCLinEcore.g:15779:2: rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1
@@ -48210,7 +48210,7 @@
     public final void rule__CollectionTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15790:1: ( ( '(' ) )
             // InternalOCLinEcore.g:15791:1: ( '(' )
@@ -48219,11 +48219,11 @@
             // InternalOCLinEcore.g:15792:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -48251,7 +48251,7 @@
     public final void rule__CollectionTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15809:1: ( rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 )
             // InternalOCLinEcore.g:15810:2: rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2
@@ -48289,7 +48289,7 @@
     public final void rule__CollectionTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15821:1: ( ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) )
             // InternalOCLinEcore.g:15822:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
@@ -48298,7 +48298,7 @@
             // InternalOCLinEcore.g:15823:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1());
             }
             // InternalOCLinEcore.g:15824:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
             // InternalOCLinEcore.g:15824:2: rule__CollectionTypeCS__OwnedTypeAssignment_1_1
@@ -48312,7 +48312,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1());
             }
 
             }
@@ -48340,7 +48340,7 @@
     public final void rule__CollectionTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15838:1: ( rule__CollectionTypeCS__Group_1__2__Impl )
             // InternalOCLinEcore.g:15839:2: rule__CollectionTypeCS__Group_1__2__Impl
@@ -48373,7 +48373,7 @@
     public final void rule__CollectionTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15849:1: ( ( ')' ) )
             // InternalOCLinEcore.g:15850:1: ( ')' )
@@ -48382,11 +48382,11 @@
             // InternalOCLinEcore.g:15851:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
 
             }
@@ -48414,7 +48414,7 @@
     public final void rule__MapTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15874:1: ( rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 )
             // InternalOCLinEcore.g:15875:2: rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1
@@ -48452,7 +48452,7 @@
     public final void rule__MapTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15886:1: ( ( ( rule__MapTypeCS__NameAssignment_0 ) ) )
             // InternalOCLinEcore.g:15887:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
@@ -48461,7 +48461,7 @@
             // InternalOCLinEcore.g:15888:1: ( rule__MapTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getNameAssignment_0());
             }
             // InternalOCLinEcore.g:15889:1: ( rule__MapTypeCS__NameAssignment_0 )
             // InternalOCLinEcore.g:15889:2: rule__MapTypeCS__NameAssignment_0
@@ -48475,7 +48475,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getNameAssignment_0());
             }
 
             }
@@ -48503,7 +48503,7 @@
     public final void rule__MapTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15903:1: ( rule__MapTypeCS__Group__1__Impl )
             // InternalOCLinEcore.g:15904:2: rule__MapTypeCS__Group__1__Impl
@@ -48536,7 +48536,7 @@
     public final void rule__MapTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15914:1: ( ( ( rule__MapTypeCS__Group_1__0 )? ) )
             // InternalOCLinEcore.g:15915:1: ( ( rule__MapTypeCS__Group_1__0 )? )
@@ -48545,7 +48545,7 @@
             // InternalOCLinEcore.g:15916:1: ( rule__MapTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getGroup_1()); 
+               before(grammarAccess.getMapTypeCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:15917:1: ( rule__MapTypeCS__Group_1__0 )?
             int alt179=2;
@@ -48570,7 +48570,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getGroup_1()); 
+               after(grammarAccess.getMapTypeCSAccess().getGroup_1());
             }
 
             }
@@ -48598,7 +48598,7 @@
     public final void rule__MapTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15935:1: ( rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 )
             // InternalOCLinEcore.g:15936:2: rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1
@@ -48636,7 +48636,7 @@
     public final void rule__MapTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15947:1: ( ( '(' ) )
             // InternalOCLinEcore.g:15948:1: ( '(' )
@@ -48645,11 +48645,11 @@
             // InternalOCLinEcore.g:15949:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -48677,7 +48677,7 @@
     public final void rule__MapTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15966:1: ( rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 )
             // InternalOCLinEcore.g:15967:2: rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2
@@ -48715,7 +48715,7 @@
     public final void rule__MapTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15978:1: ( ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) )
             // InternalOCLinEcore.g:15979:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
@@ -48724,7 +48724,7 @@
             // InternalOCLinEcore.g:15980:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1());
             }
             // InternalOCLinEcore.g:15981:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
             // InternalOCLinEcore.g:15981:2: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1
@@ -48738,7 +48738,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1());
             }
 
             }
@@ -48766,7 +48766,7 @@
     public final void rule__MapTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:15995:1: ( rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 )
             // InternalOCLinEcore.g:15996:2: rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3
@@ -48804,7 +48804,7 @@
     public final void rule__MapTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16007:1: ( ( ',' ) )
             // InternalOCLinEcore.g:16008:1: ( ',' )
@@ -48813,11 +48813,11 @@
             // InternalOCLinEcore.g:16009:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); 
+               before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); 
+               after(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
             }
 
             }
@@ -48845,7 +48845,7 @@
     public final void rule__MapTypeCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16026:1: ( rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 )
             // InternalOCLinEcore.g:16027:2: rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4
@@ -48883,7 +48883,7 @@
     public final void rule__MapTypeCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16038:1: ( ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) )
             // InternalOCLinEcore.g:16039:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
@@ -48892,7 +48892,7 @@
             // InternalOCLinEcore.g:16040:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3());
             }
             // InternalOCLinEcore.g:16041:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
             // InternalOCLinEcore.g:16041:2: rule__MapTypeCS__OwnedValueTypeAssignment_1_3
@@ -48906,7 +48906,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3());
             }
 
             }
@@ -48934,7 +48934,7 @@
     public final void rule__MapTypeCS__Group_1__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16055:1: ( rule__MapTypeCS__Group_1__4__Impl )
             // InternalOCLinEcore.g:16056:2: rule__MapTypeCS__Group_1__4__Impl
@@ -48967,7 +48967,7 @@
     public final void rule__MapTypeCS__Group_1__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16066:1: ( ( ')' ) )
             // InternalOCLinEcore.g:16067:1: ( ')' )
@@ -48976,11 +48976,11 @@
             // InternalOCLinEcore.g:16068:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); 
+               before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); 
+               after(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
             }
 
             }
@@ -49008,7 +49008,7 @@
     public final void rule__TupleTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16095:1: ( rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 )
             // InternalOCLinEcore.g:16096:2: rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1
@@ -49046,7 +49046,7 @@
     public final void rule__TupleTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16107:1: ( ( ( rule__TupleTypeCS__NameAssignment_0 ) ) )
             // InternalOCLinEcore.g:16108:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
@@ -49055,7 +49055,7 @@
             // InternalOCLinEcore.g:16109:1: ( rule__TupleTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0());
             }
             // InternalOCLinEcore.g:16110:1: ( rule__TupleTypeCS__NameAssignment_0 )
             // InternalOCLinEcore.g:16110:2: rule__TupleTypeCS__NameAssignment_0
@@ -49069,7 +49069,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0());
             }
 
             }
@@ -49097,7 +49097,7 @@
     public final void rule__TupleTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16124:1: ( rule__TupleTypeCS__Group__1__Impl )
             // InternalOCLinEcore.g:16125:2: rule__TupleTypeCS__Group__1__Impl
@@ -49130,7 +49130,7 @@
     public final void rule__TupleTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16135:1: ( ( ( rule__TupleTypeCS__Group_1__0 )? ) )
             // InternalOCLinEcore.g:16136:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
@@ -49139,7 +49139,7 @@
             // InternalOCLinEcore.g:16137:1: ( rule__TupleTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:16138:1: ( rule__TupleTypeCS__Group_1__0 )?
             int alt180=2;
@@ -49164,7 +49164,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup_1());
             }
 
             }
@@ -49192,7 +49192,7 @@
     public final void rule__TupleTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16156:1: ( rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 )
             // InternalOCLinEcore.g:16157:2: rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1
@@ -49230,7 +49230,7 @@
     public final void rule__TupleTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16168:1: ( ( '(' ) )
             // InternalOCLinEcore.g:16169:1: ( '(' )
@@ -49239,11 +49239,11 @@
             // InternalOCLinEcore.g:16170:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -49271,7 +49271,7 @@
     public final void rule__TupleTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16187:1: ( rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 )
             // InternalOCLinEcore.g:16188:2: rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2
@@ -49309,7 +49309,7 @@
     public final void rule__TupleTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16199:1: ( ( ( rule__TupleTypeCS__Group_1_1__0 )? ) )
             // InternalOCLinEcore.g:16200:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
@@ -49318,7 +49318,7 @@
             // InternalOCLinEcore.g:16201:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1());
             }
             // InternalOCLinEcore.g:16202:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             int alt181=2;
@@ -49343,7 +49343,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1());
             }
 
             }
@@ -49371,7 +49371,7 @@
     public final void rule__TupleTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16216:1: ( rule__TupleTypeCS__Group_1__2__Impl )
             // InternalOCLinEcore.g:16217:2: rule__TupleTypeCS__Group_1__2__Impl
@@ -49404,7 +49404,7 @@
     public final void rule__TupleTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16227:1: ( ( ')' ) )
             // InternalOCLinEcore.g:16228:1: ( ')' )
@@ -49413,11 +49413,11 @@
             // InternalOCLinEcore.g:16229:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               after(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
 
             }
@@ -49445,7 +49445,7 @@
     public final void rule__TupleTypeCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16252:1: ( rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 )
             // InternalOCLinEcore.g:16253:2: rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1
@@ -49483,7 +49483,7 @@
     public final void rule__TupleTypeCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16264:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) )
             // InternalOCLinEcore.g:16265:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
@@ -49492,7 +49492,7 @@
             // InternalOCLinEcore.g:16266:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0());
             }
             // InternalOCLinEcore.g:16267:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
             // InternalOCLinEcore.g:16267:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0
@@ -49506,7 +49506,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0());
             }
 
             }
@@ -49534,7 +49534,7 @@
     public final void rule__TupleTypeCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16281:1: ( rule__TupleTypeCS__Group_1_1__1__Impl )
             // InternalOCLinEcore.g:16282:2: rule__TupleTypeCS__Group_1_1__1__Impl
@@ -49567,7 +49567,7 @@
     public final void rule__TupleTypeCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16292:1: ( ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) )
             // InternalOCLinEcore.g:16293:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
@@ -49576,7 +49576,7 @@
             // InternalOCLinEcore.g:16294:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1());
             }
             // InternalOCLinEcore.g:16295:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             loop182:
@@ -49608,7 +49608,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1());
             }
 
             }
@@ -49636,7 +49636,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16313:1: ( rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 )
             // InternalOCLinEcore.g:16314:2: rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1
@@ -49674,7 +49674,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16325:1: ( ( ',' ) )
             // InternalOCLinEcore.g:16326:1: ( ',' )
@@ -49683,11 +49683,11 @@
             // InternalOCLinEcore.g:16327:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
             }
 
             }
@@ -49715,7 +49715,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16344:1: ( rule__TupleTypeCS__Group_1_1_1__1__Impl )
             // InternalOCLinEcore.g:16345:2: rule__TupleTypeCS__Group_1_1_1__1__Impl
@@ -49748,7 +49748,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16355:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) )
             // InternalOCLinEcore.g:16356:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
@@ -49757,7 +49757,7 @@
             // InternalOCLinEcore.g:16357:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1());
             }
             // InternalOCLinEcore.g:16358:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
             // InternalOCLinEcore.g:16358:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1
@@ -49771,7 +49771,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1());
             }
 
             }
@@ -49799,7 +49799,7 @@
     public final void rule__TuplePartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16376:1: ( rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 )
             // InternalOCLinEcore.g:16377:2: rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1
@@ -49837,7 +49837,7 @@
     public final void rule__TuplePartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16388:1: ( ( ( rule__TuplePartCS__NameAssignment_0 ) ) )
             // InternalOCLinEcore.g:16389:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
@@ -49846,7 +49846,7 @@
             // InternalOCLinEcore.g:16390:1: ( rule__TuplePartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTuplePartCSAccess().getNameAssignment_0());
             }
             // InternalOCLinEcore.g:16391:1: ( rule__TuplePartCS__NameAssignment_0 )
             // InternalOCLinEcore.g:16391:2: rule__TuplePartCS__NameAssignment_0
@@ -49860,7 +49860,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTuplePartCSAccess().getNameAssignment_0());
             }
 
             }
@@ -49888,7 +49888,7 @@
     public final void rule__TuplePartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16405:1: ( rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 )
             // InternalOCLinEcore.g:16406:2: rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2
@@ -49926,7 +49926,7 @@
     public final void rule__TuplePartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16417:1: ( ( ':' ) )
             // InternalOCLinEcore.g:16418:1: ( ':' )
@@ -49935,11 +49935,11 @@
             // InternalOCLinEcore.g:16419:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
             }
 
             }
@@ -49967,7 +49967,7 @@
     public final void rule__TuplePartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16436:1: ( rule__TuplePartCS__Group__2__Impl )
             // InternalOCLinEcore.g:16437:2: rule__TuplePartCS__Group__2__Impl
@@ -50000,7 +50000,7 @@
     public final void rule__TuplePartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16447:1: ( ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) )
             // InternalOCLinEcore.g:16448:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
@@ -50009,7 +50009,7 @@
             // InternalOCLinEcore.g:16449:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2()); 
+               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2());
             }
             // InternalOCLinEcore.g:16450:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
             // InternalOCLinEcore.g:16450:2: rule__TuplePartCS__OwnedTypeAssignment_2
@@ -50023,7 +50023,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2()); 
+               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2());
             }
 
             }
@@ -50051,7 +50051,7 @@
     public final void rule__CollectionLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16470:1: ( rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 )
             // InternalOCLinEcore.g:16471:2: rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1
@@ -50089,7 +50089,7 @@
     public final void rule__CollectionLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16482:1: ( ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) )
             // InternalOCLinEcore.g:16483:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
@@ -50098,7 +50098,7 @@
             // InternalOCLinEcore.g:16484:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
             // InternalOCLinEcore.g:16485:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
             // InternalOCLinEcore.g:16485:2: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0
@@ -50112,7 +50112,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
 
             }
@@ -50140,7 +50140,7 @@
     public final void rule__CollectionLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16499:1: ( rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 )
             // InternalOCLinEcore.g:16500:2: rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2
@@ -50178,7 +50178,7 @@
     public final void rule__CollectionLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16511:1: ( ( '{' ) )
             // InternalOCLinEcore.g:16512:1: ( '{' )
@@ -50187,11 +50187,11 @@
             // InternalOCLinEcore.g:16513:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -50219,7 +50219,7 @@
     public final void rule__CollectionLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16530:1: ( rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 )
             // InternalOCLinEcore.g:16531:2: rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3
@@ -50257,7 +50257,7 @@
     public final void rule__CollectionLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16542:1: ( ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) )
             // InternalOCLinEcore.g:16543:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
@@ -50266,7 +50266,7 @@
             // InternalOCLinEcore.g:16544:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2());
             }
             // InternalOCLinEcore.g:16545:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             int alt183=2;
@@ -50291,7 +50291,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2());
             }
 
             }
@@ -50319,7 +50319,7 @@
     public final void rule__CollectionLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16559:1: ( rule__CollectionLiteralExpCS__Group__3__Impl )
             // InternalOCLinEcore.g:16560:2: rule__CollectionLiteralExpCS__Group__3__Impl
@@ -50352,7 +50352,7 @@
     public final void rule__CollectionLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16570:1: ( ( '}' ) )
             // InternalOCLinEcore.g:16571:1: ( '}' )
@@ -50361,11 +50361,11 @@
             // InternalOCLinEcore.g:16572:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -50393,7 +50393,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16597:1: ( rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 )
             // InternalOCLinEcore.g:16598:2: rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1
@@ -50431,7 +50431,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16609:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
             // InternalOCLinEcore.g:16610:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
@@ -50440,7 +50440,7 @@
             // InternalOCLinEcore.g:16611:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
             // InternalOCLinEcore.g:16612:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
             // InternalOCLinEcore.g:16612:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0
@@ -50454,7 +50454,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
 
             }
@@ -50482,7 +50482,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16626:1: ( rule__CollectionLiteralExpCS__Group_2__1__Impl )
             // InternalOCLinEcore.g:16627:2: rule__CollectionLiteralExpCS__Group_2__1__Impl
@@ -50515,7 +50515,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16637:1: ( ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) )
             // InternalOCLinEcore.g:16638:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
@@ -50524,7 +50524,7 @@
             // InternalOCLinEcore.g:16639:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1());
             }
             // InternalOCLinEcore.g:16640:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             loop184:
@@ -50556,7 +50556,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1());
             }
 
             }
@@ -50584,7 +50584,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16658:1: ( rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 )
             // InternalOCLinEcore.g:16659:2: rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1
@@ -50622,7 +50622,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16670:1: ( ( ',' ) )
             // InternalOCLinEcore.g:16671:1: ( ',' )
@@ -50631,11 +50631,11 @@
             // InternalOCLinEcore.g:16672:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
 
             }
@@ -50663,7 +50663,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16689:1: ( rule__CollectionLiteralExpCS__Group_2_1__1__Impl )
             // InternalOCLinEcore.g:16690:2: rule__CollectionLiteralExpCS__Group_2_1__1__Impl
@@ -50696,7 +50696,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16700:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
             // InternalOCLinEcore.g:16701:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
@@ -50705,7 +50705,7 @@
             // InternalOCLinEcore.g:16702:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
             // InternalOCLinEcore.g:16703:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             // InternalOCLinEcore.g:16703:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1
@@ -50719,7 +50719,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
 
             }
@@ -50747,7 +50747,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16721:1: ( rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 )
             // InternalOCLinEcore.g:16722:2: rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1
@@ -50785,7 +50785,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16733:1: ( ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) )
             // InternalOCLinEcore.g:16734:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
@@ -50794,7 +50794,7 @@
             // InternalOCLinEcore.g:16735:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0());
             }
             // InternalOCLinEcore.g:16736:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
             // InternalOCLinEcore.g:16736:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0
@@ -50808,7 +50808,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0());
             }
 
             }
@@ -50836,7 +50836,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16750:1: ( rule__CollectionLiteralPartCS__Group_0__1__Impl )
             // InternalOCLinEcore.g:16751:2: rule__CollectionLiteralPartCS__Group_0__1__Impl
@@ -50869,7 +50869,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16761:1: ( ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) )
             // InternalOCLinEcore.g:16762:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
@@ -50878,7 +50878,7 @@
             // InternalOCLinEcore.g:16763:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1());
             }
             // InternalOCLinEcore.g:16764:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             int alt185=2;
@@ -50903,7 +50903,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1());
             }
 
             }
@@ -50931,7 +50931,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16782:1: ( rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 )
             // InternalOCLinEcore.g:16783:2: rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1
@@ -50969,7 +50969,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16794:1: ( ( '..' ) )
             // InternalOCLinEcore.g:16795:1: ( '..' )
@@ -50978,11 +50978,11 @@
             // InternalOCLinEcore.g:16796:1: '..'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
             }
             match(input,104,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
             }
 
             }
@@ -51010,7 +51010,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16813:1: ( rule__CollectionLiteralPartCS__Group_0_1__1__Impl )
             // InternalOCLinEcore.g:16814:2: rule__CollectionLiteralPartCS__Group_0_1__1__Impl
@@ -51043,7 +51043,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16824:1: ( ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) )
             // InternalOCLinEcore.g:16825:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
@@ -51052,7 +51052,7 @@
             // InternalOCLinEcore.g:16826:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1());
             }
             // InternalOCLinEcore.g:16827:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
             // InternalOCLinEcore.g:16827:2: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1
@@ -51066,7 +51066,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1());
             }
 
             }
@@ -51094,7 +51094,7 @@
     public final void rule__CollectionPatternCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16845:1: ( rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 )
             // InternalOCLinEcore.g:16846:2: rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1
@@ -51132,7 +51132,7 @@
     public final void rule__CollectionPatternCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16857:1: ( ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) )
             // InternalOCLinEcore.g:16858:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
@@ -51141,7 +51141,7 @@
             // InternalOCLinEcore.g:16859:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0());
             }
             // InternalOCLinEcore.g:16860:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
             // InternalOCLinEcore.g:16860:2: rule__CollectionPatternCS__OwnedTypeAssignment_0
@@ -51155,7 +51155,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0());
             }
 
             }
@@ -51183,7 +51183,7 @@
     public final void rule__CollectionPatternCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16874:1: ( rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 )
             // InternalOCLinEcore.g:16875:2: rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2
@@ -51221,7 +51221,7 @@
     public final void rule__CollectionPatternCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16886:1: ( ( '{' ) )
             // InternalOCLinEcore.g:16887:1: ( '{' )
@@ -51230,11 +51230,11 @@
             // InternalOCLinEcore.g:16888:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -51262,7 +51262,7 @@
     public final void rule__CollectionPatternCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16905:1: ( rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 )
             // InternalOCLinEcore.g:16906:2: rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3
@@ -51300,7 +51300,7 @@
     public final void rule__CollectionPatternCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16917:1: ( ( ( rule__CollectionPatternCS__Group_2__0 )? ) )
             // InternalOCLinEcore.g:16918:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
@@ -51309,7 +51309,7 @@
             // InternalOCLinEcore.g:16919:1: ( rule__CollectionPatternCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2());
             }
             // InternalOCLinEcore.g:16920:1: ( rule__CollectionPatternCS__Group_2__0 )?
             int alt186=2;
@@ -51334,7 +51334,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2());
             }
 
             }
@@ -51362,7 +51362,7 @@
     public final void rule__CollectionPatternCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16934:1: ( rule__CollectionPatternCS__Group__3__Impl )
             // InternalOCLinEcore.g:16935:2: rule__CollectionPatternCS__Group__3__Impl
@@ -51395,7 +51395,7 @@
     public final void rule__CollectionPatternCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16945:1: ( ( '}' ) )
             // InternalOCLinEcore.g:16946:1: ( '}' )
@@ -51404,11 +51404,11 @@
             // InternalOCLinEcore.g:16947:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -51436,7 +51436,7 @@
     public final void rule__CollectionPatternCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16972:1: ( rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 )
             // InternalOCLinEcore.g:16973:2: rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1
@@ -51474,7 +51474,7 @@
     public final void rule__CollectionPatternCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:16984:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) )
             // InternalOCLinEcore.g:16985:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
@@ -51483,7 +51483,7 @@
             // InternalOCLinEcore.g:16986:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0());
             }
             // InternalOCLinEcore.g:16987:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
             // InternalOCLinEcore.g:16987:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_0
@@ -51497,7 +51497,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0());
             }
 
             }
@@ -51525,7 +51525,7 @@
     public final void rule__CollectionPatternCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17001:1: ( rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 )
             // InternalOCLinEcore.g:17002:2: rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2
@@ -51563,7 +51563,7 @@
     public final void rule__CollectionPatternCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17013:1: ( ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) )
             // InternalOCLinEcore.g:17014:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
@@ -51572,7 +51572,7 @@
             // InternalOCLinEcore.g:17015:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1());
             }
             // InternalOCLinEcore.g:17016:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             loop187:
@@ -51604,7 +51604,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1());
             }
 
             }
@@ -51632,7 +51632,7 @@
     public final void rule__CollectionPatternCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17030:1: ( rule__CollectionPatternCS__Group_2__2__Impl )
             // InternalOCLinEcore.g:17031:2: rule__CollectionPatternCS__Group_2__2__Impl
@@ -51665,7 +51665,7 @@
     public final void rule__CollectionPatternCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17041:1: ( ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) )
             // InternalOCLinEcore.g:17042:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
@@ -51674,7 +51674,7 @@
             // InternalOCLinEcore.g:17043:1: ( rule__CollectionPatternCS__Group_2_2__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2());
             }
             // InternalOCLinEcore.g:17044:1: ( rule__CollectionPatternCS__Group_2_2__0 )
             // InternalOCLinEcore.g:17044:2: rule__CollectionPatternCS__Group_2_2__0
@@ -51688,7 +51688,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2());
             }
 
             }
@@ -51716,7 +51716,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17064:1: ( rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 )
             // InternalOCLinEcore.g:17065:2: rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1
@@ -51754,7 +51754,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17076:1: ( ( ',' ) )
             // InternalOCLinEcore.g:17077:1: ( ',' )
@@ -51763,11 +51763,11 @@
             // InternalOCLinEcore.g:17078:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
             }
 
             }
@@ -51795,7 +51795,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17095:1: ( rule__CollectionPatternCS__Group_2_1__1__Impl )
             // InternalOCLinEcore.g:17096:2: rule__CollectionPatternCS__Group_2_1__1__Impl
@@ -51828,7 +51828,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17106:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) )
             // InternalOCLinEcore.g:17107:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
@@ -51837,7 +51837,7 @@
             // InternalOCLinEcore.g:17108:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1());
             }
             // InternalOCLinEcore.g:17109:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
             // InternalOCLinEcore.g:17109:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1
@@ -51851,7 +51851,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1());
             }
 
             }
@@ -51879,7 +51879,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17127:1: ( rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 )
             // InternalOCLinEcore.g:17128:2: rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1
@@ -51917,7 +51917,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17139:1: ( ( '++' ) )
             // InternalOCLinEcore.g:17140:1: ( '++' )
@@ -51926,11 +51926,11 @@
             // InternalOCLinEcore.g:17141:1: '++'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
             }
             match(input,105,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
             }
 
             }
@@ -51958,7 +51958,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17158:1: ( rule__CollectionPatternCS__Group_2_2__1__Impl )
             // InternalOCLinEcore.g:17159:2: rule__CollectionPatternCS__Group_2_2__1__Impl
@@ -51991,7 +51991,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17169:1: ( ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) )
             // InternalOCLinEcore.g:17170:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
@@ -52000,7 +52000,7 @@
             // InternalOCLinEcore.g:17171:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1());
             }
             // InternalOCLinEcore.g:17172:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
             // InternalOCLinEcore.g:17172:2: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1
@@ -52014,7 +52014,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1());
             }
 
             }
@@ -52042,7 +52042,7 @@
     public final void rule__ShadowPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17190:1: ( rule__ShadowPartCS__Group__0__Impl rule__ShadowPartCS__Group__1 )
             // InternalOCLinEcore.g:17191:2: rule__ShadowPartCS__Group__0__Impl rule__ShadowPartCS__Group__1
@@ -52080,7 +52080,7 @@
     public final void rule__ShadowPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17202:1: ( ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0 ) ) )
             // InternalOCLinEcore.g:17203:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0 ) )
@@ -52089,7 +52089,7 @@
             // InternalOCLinEcore.g:17204:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0()); 
+               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0());
             }
             // InternalOCLinEcore.g:17205:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0 )
             // InternalOCLinEcore.g:17205:2: rule__ShadowPartCS__ReferredPropertyAssignment_0
@@ -52103,7 +52103,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0()); 
+               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0());
             }
 
             }
@@ -52131,7 +52131,7 @@
     public final void rule__ShadowPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17219:1: ( rule__ShadowPartCS__Group__1__Impl rule__ShadowPartCS__Group__2 )
             // InternalOCLinEcore.g:17220:2: rule__ShadowPartCS__Group__1__Impl rule__ShadowPartCS__Group__2
@@ -52169,7 +52169,7 @@
     public final void rule__ShadowPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17231:1: ( ( '=' ) )
             // InternalOCLinEcore.g:17232:1: ( '=' )
@@ -52178,11 +52178,11 @@
             // InternalOCLinEcore.g:17233:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); 
+               before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); 
+               after(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
             }
 
             }
@@ -52210,7 +52210,7 @@
     public final void rule__ShadowPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17250:1: ( rule__ShadowPartCS__Group__2__Impl )
             // InternalOCLinEcore.g:17251:2: rule__ShadowPartCS__Group__2__Impl
@@ -52243,7 +52243,7 @@
     public final void rule__ShadowPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17261:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 ) ) )
             // InternalOCLinEcore.g:17262:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 ) )
@@ -52252,7 +52252,7 @@
             // InternalOCLinEcore.g:17263:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2()); 
+               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2());
             }
             // InternalOCLinEcore.g:17264:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 )
             // InternalOCLinEcore.g:17264:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_2
@@ -52266,7 +52266,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2()); 
+               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2());
             }
 
             }
@@ -52294,7 +52294,7 @@
     public final void rule__PatternExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17284:1: ( rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 )
             // InternalOCLinEcore.g:17285:2: rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1
@@ -52332,7 +52332,7 @@
     public final void rule__PatternExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17296:1: ( ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) )
             // InternalOCLinEcore.g:17297:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
@@ -52341,7 +52341,7 @@
             // InternalOCLinEcore.g:17298:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0()); 
+               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0());
             }
             // InternalOCLinEcore.g:17299:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             int alt188=2;
@@ -52366,7 +52366,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0()); 
+               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0());
             }
 
             }
@@ -52394,7 +52394,7 @@
     public final void rule__PatternExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17313:1: ( rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 )
             // InternalOCLinEcore.g:17314:2: rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2
@@ -52432,7 +52432,7 @@
     public final void rule__PatternExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17325:1: ( ( ':' ) )
             // InternalOCLinEcore.g:17326:1: ( ':' )
@@ -52441,11 +52441,11 @@
             // InternalOCLinEcore.g:17327:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
             }
 
             }
@@ -52473,7 +52473,7 @@
     public final void rule__PatternExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17344:1: ( rule__PatternExpCS__Group__2__Impl )
             // InternalOCLinEcore.g:17345:2: rule__PatternExpCS__Group__2__Impl
@@ -52506,7 +52506,7 @@
     public final void rule__PatternExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17355:1: ( ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) )
             // InternalOCLinEcore.g:17356:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
@@ -52515,7 +52515,7 @@
             // InternalOCLinEcore.g:17357:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2()); 
+               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2());
             }
             // InternalOCLinEcore.g:17358:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
             // InternalOCLinEcore.g:17358:2: rule__PatternExpCS__OwnedPatternTypeAssignment_2
@@ -52529,7 +52529,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2()); 
+               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2());
             }
 
             }
@@ -52557,7 +52557,7 @@
     public final void rule__LambdaLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17378:1: ( rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 )
             // InternalOCLinEcore.g:17379:2: rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1
@@ -52595,7 +52595,7 @@
     public final void rule__LambdaLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17390:1: ( ( 'Lambda' ) )
             // InternalOCLinEcore.g:17391:1: ( 'Lambda' )
@@ -52604,11 +52604,11 @@
             // InternalOCLinEcore.g:17392:1: 'Lambda'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
             }
             match(input,106,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
             }
 
             }
@@ -52636,7 +52636,7 @@
     public final void rule__LambdaLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17409:1: ( rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 )
             // InternalOCLinEcore.g:17410:2: rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2
@@ -52674,7 +52674,7 @@
     public final void rule__LambdaLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17421:1: ( ( '{' ) )
             // InternalOCLinEcore.g:17422:1: ( '{' )
@@ -52683,11 +52683,11 @@
             // InternalOCLinEcore.g:17423:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -52715,7 +52715,7 @@
     public final void rule__LambdaLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17440:1: ( rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 )
             // InternalOCLinEcore.g:17441:2: rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3
@@ -52753,7 +52753,7 @@
     public final void rule__LambdaLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17452:1: ( ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) )
             // InternalOCLinEcore.g:17453:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
@@ -52762,7 +52762,7 @@
             // InternalOCLinEcore.g:17454:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2());
             }
             // InternalOCLinEcore.g:17455:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
             // InternalOCLinEcore.g:17455:2: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2
@@ -52776,7 +52776,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2());
             }
 
             }
@@ -52804,7 +52804,7 @@
     public final void rule__LambdaLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17469:1: ( rule__LambdaLiteralExpCS__Group__3__Impl )
             // InternalOCLinEcore.g:17470:2: rule__LambdaLiteralExpCS__Group__3__Impl
@@ -52837,7 +52837,7 @@
     public final void rule__LambdaLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17480:1: ( ( '}' ) )
             // InternalOCLinEcore.g:17481:1: ( '}' )
@@ -52846,11 +52846,11 @@
             // InternalOCLinEcore.g:17482:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -52878,7 +52878,7 @@
     public final void rule__MapLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17507:1: ( rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 )
             // InternalOCLinEcore.g:17508:2: rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1
@@ -52916,7 +52916,7 @@
     public final void rule__MapLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17519:1: ( ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) )
             // InternalOCLinEcore.g:17520:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
@@ -52925,7 +52925,7 @@
             // InternalOCLinEcore.g:17521:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
             // InternalOCLinEcore.g:17522:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
             // InternalOCLinEcore.g:17522:2: rule__MapLiteralExpCS__OwnedTypeAssignment_0
@@ -52939,7 +52939,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
 
             }
@@ -52967,7 +52967,7 @@
     public final void rule__MapLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17536:1: ( rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 )
             // InternalOCLinEcore.g:17537:2: rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2
@@ -53005,7 +53005,7 @@
     public final void rule__MapLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17548:1: ( ( '{' ) )
             // InternalOCLinEcore.g:17549:1: ( '{' )
@@ -53014,11 +53014,11 @@
             // InternalOCLinEcore.g:17550:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -53046,7 +53046,7 @@
     public final void rule__MapLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17567:1: ( rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 )
             // InternalOCLinEcore.g:17568:2: rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3
@@ -53084,7 +53084,7 @@
     public final void rule__MapLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17579:1: ( ( ( rule__MapLiteralExpCS__Group_2__0 )? ) )
             // InternalOCLinEcore.g:17580:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
@@ -53093,7 +53093,7 @@
             // InternalOCLinEcore.g:17581:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2());
             }
             // InternalOCLinEcore.g:17582:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             int alt189=2;
@@ -53118,7 +53118,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2());
             }
 
             }
@@ -53146,7 +53146,7 @@
     public final void rule__MapLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17596:1: ( rule__MapLiteralExpCS__Group__3__Impl )
             // InternalOCLinEcore.g:17597:2: rule__MapLiteralExpCS__Group__3__Impl
@@ -53179,7 +53179,7 @@
     public final void rule__MapLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17607:1: ( ( '}' ) )
             // InternalOCLinEcore.g:17608:1: ( '}' )
@@ -53188,11 +53188,11 @@
             // InternalOCLinEcore.g:17609:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -53220,7 +53220,7 @@
     public final void rule__MapLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17634:1: ( rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 )
             // InternalOCLinEcore.g:17635:2: rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1
@@ -53258,7 +53258,7 @@
     public final void rule__MapLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17646:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
             // InternalOCLinEcore.g:17647:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
@@ -53267,7 +53267,7 @@
             // InternalOCLinEcore.g:17648:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
             // InternalOCLinEcore.g:17649:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
             // InternalOCLinEcore.g:17649:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0
@@ -53281,7 +53281,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
 
             }
@@ -53309,7 +53309,7 @@
     public final void rule__MapLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17663:1: ( rule__MapLiteralExpCS__Group_2__1__Impl )
             // InternalOCLinEcore.g:17664:2: rule__MapLiteralExpCS__Group_2__1__Impl
@@ -53342,7 +53342,7 @@
     public final void rule__MapLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17674:1: ( ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) )
             // InternalOCLinEcore.g:17675:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
@@ -53351,7 +53351,7 @@
             // InternalOCLinEcore.g:17676:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1());
             }
             // InternalOCLinEcore.g:17677:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             loop190:
@@ -53383,7 +53383,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1());
             }
 
             }
@@ -53411,7 +53411,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17695:1: ( rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 )
             // InternalOCLinEcore.g:17696:2: rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1
@@ -53449,7 +53449,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17707:1: ( ( ',' ) )
             // InternalOCLinEcore.g:17708:1: ( ',' )
@@ -53458,11 +53458,11 @@
             // InternalOCLinEcore.g:17709:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
 
             }
@@ -53490,7 +53490,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17726:1: ( rule__MapLiteralExpCS__Group_2_1__1__Impl )
             // InternalOCLinEcore.g:17727:2: rule__MapLiteralExpCS__Group_2_1__1__Impl
@@ -53523,7 +53523,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17737:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
             // InternalOCLinEcore.g:17738:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
@@ -53532,7 +53532,7 @@
             // InternalOCLinEcore.g:17739:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
             // InternalOCLinEcore.g:17740:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             // InternalOCLinEcore.g:17740:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1
@@ -53546,7 +53546,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
 
             }
@@ -53574,7 +53574,7 @@
     public final void rule__MapLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17758:1: ( rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 )
             // InternalOCLinEcore.g:17759:2: rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1
@@ -53612,7 +53612,7 @@
     public final void rule__MapLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17770:1: ( ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) )
             // InternalOCLinEcore.g:17771:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
@@ -53621,7 +53621,7 @@
             // InternalOCLinEcore.g:17772:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0());
             }
             // InternalOCLinEcore.g:17773:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
             // InternalOCLinEcore.g:17773:2: rule__MapLiteralPartCS__OwnedKeyAssignment_0
@@ -53635,7 +53635,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0());
             }
 
             }
@@ -53663,7 +53663,7 @@
     public final void rule__MapLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17787:1: ( rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 )
             // InternalOCLinEcore.g:17788:2: rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2
@@ -53701,7 +53701,7 @@
     public final void rule__MapLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17799:1: ( ( '<-' ) )
             // InternalOCLinEcore.g:17800:1: ( '<-' )
@@ -53710,11 +53710,11 @@
             // InternalOCLinEcore.g:17801:1: '<-'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
             }
             match(input,107,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
             }
 
             }
@@ -53742,7 +53742,7 @@
     public final void rule__MapLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17818:1: ( rule__MapLiteralPartCS__Group__2__Impl )
             // InternalOCLinEcore.g:17819:2: rule__MapLiteralPartCS__Group__2__Impl
@@ -53775,7 +53775,7 @@
     public final void rule__MapLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17829:1: ( ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) )
             // InternalOCLinEcore.g:17830:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
@@ -53784,7 +53784,7 @@
             // InternalOCLinEcore.g:17831:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2());
             }
             // InternalOCLinEcore.g:17832:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
             // InternalOCLinEcore.g:17832:2: rule__MapLiteralPartCS__OwnedValueAssignment_2
@@ -53798,7 +53798,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2());
             }
 
             }
@@ -53826,7 +53826,7 @@
     public final void rule__TupleLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17852:1: ( rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 )
             // InternalOCLinEcore.g:17853:2: rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1
@@ -53864,7 +53864,7 @@
     public final void rule__TupleLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17864:1: ( ( 'Tuple' ) )
             // InternalOCLinEcore.g:17865:1: ( 'Tuple' )
@@ -53873,11 +53873,11 @@
             // InternalOCLinEcore.g:17866:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
             }
             match(input,80,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
             }
 
             }
@@ -53905,7 +53905,7 @@
     public final void rule__TupleLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17883:1: ( rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 )
             // InternalOCLinEcore.g:17884:2: rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2
@@ -53943,7 +53943,7 @@
     public final void rule__TupleLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17895:1: ( ( '{' ) )
             // InternalOCLinEcore.g:17896:1: ( '{' )
@@ -53952,11 +53952,11 @@
             // InternalOCLinEcore.g:17897:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -53984,7 +53984,7 @@
     public final void rule__TupleLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17914:1: ( rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 )
             // InternalOCLinEcore.g:17915:2: rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3
@@ -54022,7 +54022,7 @@
     public final void rule__TupleLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17926:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) )
             // InternalOCLinEcore.g:17927:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
@@ -54031,7 +54031,7 @@
             // InternalOCLinEcore.g:17928:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2());
             }
             // InternalOCLinEcore.g:17929:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
             // InternalOCLinEcore.g:17929:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_2
@@ -54045,7 +54045,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2());
             }
 
             }
@@ -54073,7 +54073,7 @@
     public final void rule__TupleLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17943:1: ( rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 )
             // InternalOCLinEcore.g:17944:2: rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4
@@ -54111,7 +54111,7 @@
     public final void rule__TupleLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17955:1: ( ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) )
             // InternalOCLinEcore.g:17956:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
@@ -54120,7 +54120,7 @@
             // InternalOCLinEcore.g:17957:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3());
             }
             // InternalOCLinEcore.g:17958:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             loop191:
@@ -54152,7 +54152,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3());
             }
 
             }
@@ -54180,7 +54180,7 @@
     public final void rule__TupleLiteralExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17972:1: ( rule__TupleLiteralExpCS__Group__4__Impl )
             // InternalOCLinEcore.g:17973:2: rule__TupleLiteralExpCS__Group__4__Impl
@@ -54213,7 +54213,7 @@
     public final void rule__TupleLiteralExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:17983:1: ( ( '}' ) )
             // InternalOCLinEcore.g:17984:1: ( '}' )
@@ -54222,11 +54222,11 @@
             // InternalOCLinEcore.g:17985:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
             }
 
             }
@@ -54254,7 +54254,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18012:1: ( rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 )
             // InternalOCLinEcore.g:18013:2: rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1
@@ -54292,7 +54292,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18024:1: ( ( ',' ) )
             // InternalOCLinEcore.g:18025:1: ( ',' )
@@ -54301,11 +54301,11 @@
             // InternalOCLinEcore.g:18026:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
             }
 
             }
@@ -54333,7 +54333,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18043:1: ( rule__TupleLiteralExpCS__Group_3__1__Impl )
             // InternalOCLinEcore.g:18044:2: rule__TupleLiteralExpCS__Group_3__1__Impl
@@ -54366,7 +54366,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18054:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) )
             // InternalOCLinEcore.g:18055:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
@@ -54375,7 +54375,7 @@
             // InternalOCLinEcore.g:18056:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1());
             }
             // InternalOCLinEcore.g:18057:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
             // InternalOCLinEcore.g:18057:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1
@@ -54389,7 +54389,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1());
             }
 
             }
@@ -54417,7 +54417,7 @@
     public final void rule__TupleLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18075:1: ( rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 )
             // InternalOCLinEcore.g:18076:2: rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1
@@ -54455,7 +54455,7 @@
     public final void rule__TupleLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18087:1: ( ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) )
             // InternalOCLinEcore.g:18088:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
@@ -54464,7 +54464,7 @@
             // InternalOCLinEcore.g:18089:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0());
             }
             // InternalOCLinEcore.g:18090:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
             // InternalOCLinEcore.g:18090:2: rule__TupleLiteralPartCS__NameAssignment_0
@@ -54478,7 +54478,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0());
             }
 
             }
@@ -54506,7 +54506,7 @@
     public final void rule__TupleLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18104:1: ( rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 )
             // InternalOCLinEcore.g:18105:2: rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2
@@ -54544,7 +54544,7 @@
     public final void rule__TupleLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18116:1: ( ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) )
             // InternalOCLinEcore.g:18117:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
@@ -54553,7 +54553,7 @@
             // InternalOCLinEcore.g:18118:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:18119:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             int alt192=2;
@@ -54578,7 +54578,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1());
             }
 
             }
@@ -54606,7 +54606,7 @@
     public final void rule__TupleLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18133:1: ( rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 )
             // InternalOCLinEcore.g:18134:2: rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3
@@ -54644,7 +54644,7 @@
     public final void rule__TupleLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18145:1: ( ( '=' ) )
             // InternalOCLinEcore.g:18146:1: ( '=' )
@@ -54653,11 +54653,11 @@
             // InternalOCLinEcore.g:18147:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
             }
 
             }
@@ -54685,7 +54685,7 @@
     public final void rule__TupleLiteralPartCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18164:1: ( rule__TupleLiteralPartCS__Group__3__Impl )
             // InternalOCLinEcore.g:18165:2: rule__TupleLiteralPartCS__Group__3__Impl
@@ -54718,7 +54718,7 @@
     public final void rule__TupleLiteralPartCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18175:1: ( ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) )
             // InternalOCLinEcore.g:18176:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
@@ -54727,7 +54727,7 @@
             // InternalOCLinEcore.g:18177:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3());
             }
             // InternalOCLinEcore.g:18178:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
             // InternalOCLinEcore.g:18178:2: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3
@@ -54741,7 +54741,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3());
             }
 
             }
@@ -54769,7 +54769,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18200:1: ( rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 )
             // InternalOCLinEcore.g:18201:2: rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1
@@ -54807,7 +54807,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18212:1: ( ( ':' ) )
             // InternalOCLinEcore.g:18213:1: ( ':' )
@@ -54816,11 +54816,11 @@
             // InternalOCLinEcore.g:18214:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
             }
 
             }
@@ -54848,7 +54848,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18231:1: ( rule__TupleLiteralPartCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:18232:2: rule__TupleLiteralPartCS__Group_1__1__Impl
@@ -54881,7 +54881,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18242:1: ( ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) )
             // InternalOCLinEcore.g:18243:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
@@ -54890,7 +54890,7 @@
             // InternalOCLinEcore.g:18244:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1());
             }
             // InternalOCLinEcore.g:18245:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
             // InternalOCLinEcore.g:18245:2: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1
@@ -54904,7 +54904,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1());
             }
 
             }
@@ -54932,7 +54932,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18263:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 )
             // InternalOCLinEcore.g:18264:2: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1
@@ -54970,7 +54970,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18275:1: ( ( () ) )
             // InternalOCLinEcore.g:18276:1: ( () )
@@ -54979,15 +54979,15 @@
             // InternalOCLinEcore.g:18277:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0());
             }
             // InternalOCLinEcore.g:18278:1: ()
-            // InternalOCLinEcore.g:18280:1: 
+            // InternalOCLinEcore.g:18280:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0());
             }
 
             }
@@ -55011,7 +55011,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18294:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl )
             // InternalOCLinEcore.g:18295:2: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl
@@ -55044,7 +55044,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18305:1: ( ( '*' ) )
             // InternalOCLinEcore.g:18306:1: ( '*' )
@@ -55053,11 +55053,11 @@
             // InternalOCLinEcore.g:18307:1: '*'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
             }
             match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
             }
 
             }
@@ -55085,7 +55085,7 @@
     public final void rule__InvalidLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18328:1: ( rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 )
             // InternalOCLinEcore.g:18329:2: rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1
@@ -55123,7 +55123,7 @@
     public final void rule__InvalidLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18340:1: ( ( () ) )
             // InternalOCLinEcore.g:18341:1: ( () )
@@ -55132,15 +55132,15 @@
             // InternalOCLinEcore.g:18342:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0()); 
+               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0());
             }
             // InternalOCLinEcore.g:18343:1: ()
-            // InternalOCLinEcore.g:18345:1: 
+            // InternalOCLinEcore.g:18345:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0()); 
+               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0());
             }
 
             }
@@ -55164,7 +55164,7 @@
     public final void rule__InvalidLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18359:1: ( rule__InvalidLiteralExpCS__Group__1__Impl )
             // InternalOCLinEcore.g:18360:2: rule__InvalidLiteralExpCS__Group__1__Impl
@@ -55197,7 +55197,7 @@
     public final void rule__InvalidLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18370:1: ( ( 'invalid' ) )
             // InternalOCLinEcore.g:18371:1: ( 'invalid' )
@@ -55206,11 +55206,11 @@
             // InternalOCLinEcore.g:18372:1: 'invalid'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); 
+               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
             }
             match(input,108,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); 
+               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
             }
 
             }
@@ -55238,7 +55238,7 @@
     public final void rule__NullLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18393:1: ( rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 )
             // InternalOCLinEcore.g:18394:2: rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1
@@ -55276,7 +55276,7 @@
     public final void rule__NullLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18405:1: ( ( () ) )
             // InternalOCLinEcore.g:18406:1: ( () )
@@ -55285,15 +55285,15 @@
             // InternalOCLinEcore.g:18407:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0()); 
+               before(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0());
             }
             // InternalOCLinEcore.g:18408:1: ()
-            // InternalOCLinEcore.g:18410:1: 
+            // InternalOCLinEcore.g:18410:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0()); 
+               after(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0());
             }
 
             }
@@ -55317,7 +55317,7 @@
     public final void rule__NullLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18424:1: ( rule__NullLiteralExpCS__Group__1__Impl )
             // InternalOCLinEcore.g:18425:2: rule__NullLiteralExpCS__Group__1__Impl
@@ -55350,7 +55350,7 @@
     public final void rule__NullLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18435:1: ( ( 'null' ) )
             // InternalOCLinEcore.g:18436:1: ( 'null' )
@@ -55359,11 +55359,11 @@
             // InternalOCLinEcore.g:18437:1: 'null'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); 
+               before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
             }
             match(input,109,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); 
+               after(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
             }
 
             }
@@ -55391,7 +55391,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18458:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 )
             // InternalOCLinEcore.g:18459:2: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1
@@ -55429,7 +55429,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18470:1: ( ( ruleTypeLiteralCS ) )
             // InternalOCLinEcore.g:18471:1: ( ruleTypeLiteralCS )
@@ -55438,7 +55438,7 @@
             // InternalOCLinEcore.g:18472:1: ruleTypeLiteralCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeLiteralCS();
@@ -55446,7 +55446,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
             }
 
             }
@@ -55474,7 +55474,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18487:1: ( rule__TypeLiteralWithMultiplicityCS__Group__1__Impl )
             // InternalOCLinEcore.g:18488:2: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl
@@ -55507,7 +55507,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18498:1: ( ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) )
             // InternalOCLinEcore.g:18499:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
@@ -55516,7 +55516,7 @@
             // InternalOCLinEcore.g:18500:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1());
             }
             // InternalOCLinEcore.g:18501:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             int alt193=2;
@@ -55541,7 +55541,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1());
             }
 
             }
@@ -55569,7 +55569,7 @@
     public final void rule__TypeNameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18519:1: ( rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 )
             // InternalOCLinEcore.g:18520:2: rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1
@@ -55607,7 +55607,7 @@
     public final void rule__TypeNameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18531:1: ( ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) )
             // InternalOCLinEcore.g:18532:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
@@ -55616,7 +55616,7 @@
             // InternalOCLinEcore.g:18533:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
             // InternalOCLinEcore.g:18534:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
             // InternalOCLinEcore.g:18534:2: rule__TypeNameExpCS__OwnedPathNameAssignment_0
@@ -55630,7 +55630,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
 
             }
@@ -55658,7 +55658,7 @@
     public final void rule__TypeNameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18548:1: ( rule__TypeNameExpCS__Group__1__Impl )
             // InternalOCLinEcore.g:18549:2: rule__TypeNameExpCS__Group__1__Impl
@@ -55691,7 +55691,7 @@
     public final void rule__TypeNameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18559:1: ( ( ( rule__TypeNameExpCS__Group_1__0 )? ) )
             // InternalOCLinEcore.g:18560:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
@@ -55700,7 +55700,7 @@
             // InternalOCLinEcore.g:18561:1: ( rule__TypeNameExpCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:18562:1: ( rule__TypeNameExpCS__Group_1__0 )?
             int alt194=2;
@@ -55725,7 +55725,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1());
             }
 
             }
@@ -55753,7 +55753,7 @@
     public final void rule__TypeNameExpCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18580:1: ( rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 )
             // InternalOCLinEcore.g:18581:2: rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1
@@ -55791,7 +55791,7 @@
     public final void rule__TypeNameExpCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18592:1: ( ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) )
             // InternalOCLinEcore.g:18593:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
@@ -55800,7 +55800,7 @@
             // InternalOCLinEcore.g:18594:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0());
             }
             // InternalOCLinEcore.g:18595:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
             // InternalOCLinEcore.g:18595:2: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0
@@ -55814,7 +55814,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0());
             }
 
             }
@@ -55842,7 +55842,7 @@
     public final void rule__TypeNameExpCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18609:1: ( rule__TypeNameExpCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:18610:2: rule__TypeNameExpCS__Group_1__1__Impl
@@ -55875,7 +55875,7 @@
     public final void rule__TypeNameExpCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18620:1: ( ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) )
             // InternalOCLinEcore.g:18621:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
@@ -55884,7 +55884,7 @@
             // InternalOCLinEcore.g:18622:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1());
             }
             // InternalOCLinEcore.g:18623:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             int alt195=2;
@@ -55909,7 +55909,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1());
             }
 
             }
@@ -55937,7 +55937,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18641:1: ( rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 )
             // InternalOCLinEcore.g:18642:2: rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1
@@ -55975,7 +55975,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18653:1: ( ( '{' ) )
             // InternalOCLinEcore.g:18654:1: ( '{' )
@@ -55984,11 +55984,11 @@
             // InternalOCLinEcore.g:18655:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
             }
 
             }
@@ -56016,7 +56016,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18672:1: ( rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 )
             // InternalOCLinEcore.g:18673:2: rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2
@@ -56054,7 +56054,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18684:1: ( ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) )
             // InternalOCLinEcore.g:18685:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
@@ -56063,7 +56063,7 @@
             // InternalOCLinEcore.g:18686:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1());
             }
             // InternalOCLinEcore.g:18687:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
             // InternalOCLinEcore.g:18687:2: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1
@@ -56077,7 +56077,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1());
             }
 
             }
@@ -56105,7 +56105,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18701:1: ( rule__TypeNameExpCS__Group_1_1__2__Impl )
             // InternalOCLinEcore.g:18702:2: rule__TypeNameExpCS__Group_1_1__2__Impl
@@ -56138,7 +56138,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18712:1: ( ( '}' ) )
             // InternalOCLinEcore.g:18713:1: ( '}' )
@@ -56147,11 +56147,11 @@
             // InternalOCLinEcore.g:18714:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
             }
 
             }
@@ -56179,7 +56179,7 @@
     public final void rule__TypeExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18737:1: ( rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 )
             // InternalOCLinEcore.g:18738:2: rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1
@@ -56217,7 +56217,7 @@
     public final void rule__TypeExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18749:1: ( ( ( rule__TypeExpCS__Alternatives_0 ) ) )
             // InternalOCLinEcore.g:18750:1: ( ( rule__TypeExpCS__Alternatives_0 ) )
@@ -56226,7 +56226,7 @@
             // InternalOCLinEcore.g:18751:1: ( rule__TypeExpCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getAlternatives_0()); 
+               before(grammarAccess.getTypeExpCSAccess().getAlternatives_0());
             }
             // InternalOCLinEcore.g:18752:1: ( rule__TypeExpCS__Alternatives_0 )
             // InternalOCLinEcore.g:18752:2: rule__TypeExpCS__Alternatives_0
@@ -56240,7 +56240,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getAlternatives_0()); 
+               after(grammarAccess.getTypeExpCSAccess().getAlternatives_0());
             }
 
             }
@@ -56268,7 +56268,7 @@
     public final void rule__TypeExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18766:1: ( rule__TypeExpCS__Group__1__Impl )
             // InternalOCLinEcore.g:18767:2: rule__TypeExpCS__Group__1__Impl
@@ -56301,7 +56301,7 @@
     public final void rule__TypeExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18777:1: ( ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) )
             // InternalOCLinEcore.g:18778:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
@@ -56310,7 +56310,7 @@
             // InternalOCLinEcore.g:18779:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1()); 
+               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1());
             }
             // InternalOCLinEcore.g:18780:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             int alt196=2;
@@ -56335,7 +56335,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1()); 
+               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1());
             }
 
             }
@@ -56363,7 +56363,7 @@
     public final void rule__ExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18798:1: ( rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 )
             // InternalOCLinEcore.g:18799:2: rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1
@@ -56401,7 +56401,7 @@
     public final void rule__ExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18810:1: ( ( rulePrefixedPrimaryExpCS ) )
             // InternalOCLinEcore.g:18811:1: ( rulePrefixedPrimaryExpCS )
@@ -56410,7 +56410,7 @@
             // InternalOCLinEcore.g:18812:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
+               before(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrefixedPrimaryExpCS();
@@ -56418,7 +56418,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
+               after(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
             }
 
             }
@@ -56446,7 +56446,7 @@
     public final void rule__ExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18827:1: ( rule__ExpCS__Group_0__1__Impl )
             // InternalOCLinEcore.g:18828:2: rule__ExpCS__Group_0__1__Impl
@@ -56479,7 +56479,7 @@
     public final void rule__ExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18838:1: ( ( ( rule__ExpCS__Group_0_1__0 )? ) )
             // InternalOCLinEcore.g:18839:1: ( ( rule__ExpCS__Group_0_1__0 )? )
@@ -56488,7 +56488,7 @@
             // InternalOCLinEcore.g:18840:1: ( rule__ExpCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getGroup_0_1()); 
+               before(grammarAccess.getExpCSAccess().getGroup_0_1());
             }
             // InternalOCLinEcore.g:18841:1: ( rule__ExpCS__Group_0_1__0 )?
             int alt197=2;
@@ -56513,7 +56513,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getGroup_0_1()); 
+               after(grammarAccess.getExpCSAccess().getGroup_0_1());
             }
 
             }
@@ -56541,7 +56541,7 @@
     public final void rule__ExpCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18859:1: ( rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 )
             // InternalOCLinEcore.g:18860:2: rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1
@@ -56579,7 +56579,7 @@
     public final void rule__ExpCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18871:1: ( ( () ) )
             // InternalOCLinEcore.g:18872:1: ( () )
@@ -56588,15 +56588,15 @@
             // InternalOCLinEcore.g:18873:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0()); 
+               before(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0());
             }
             // InternalOCLinEcore.g:18874:1: ()
-            // InternalOCLinEcore.g:18876:1: 
+            // InternalOCLinEcore.g:18876:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0()); 
+               after(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0());
             }
 
             }
@@ -56620,7 +56620,7 @@
     public final void rule__ExpCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18890:1: ( rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 )
             // InternalOCLinEcore.g:18891:2: rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2
@@ -56658,7 +56658,7 @@
     public final void rule__ExpCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18902:1: ( ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) )
             // InternalOCLinEcore.g:18903:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
@@ -56667,7 +56667,7 @@
             // InternalOCLinEcore.g:18904:1: ( rule__ExpCS__NameAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1()); 
+               before(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1());
             }
             // InternalOCLinEcore.g:18905:1: ( rule__ExpCS__NameAssignment_0_1_1 )
             // InternalOCLinEcore.g:18905:2: rule__ExpCS__NameAssignment_0_1_1
@@ -56681,7 +56681,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1()); 
+               after(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1());
             }
 
             }
@@ -56709,7 +56709,7 @@
     public final void rule__ExpCS__Group_0_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18919:1: ( rule__ExpCS__Group_0_1__2__Impl )
             // InternalOCLinEcore.g:18920:2: rule__ExpCS__Group_0_1__2__Impl
@@ -56742,7 +56742,7 @@
     public final void rule__ExpCS__Group_0_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18930:1: ( ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) )
             // InternalOCLinEcore.g:18931:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
@@ -56751,7 +56751,7 @@
             // InternalOCLinEcore.g:18932:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2()); 
+               before(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2());
             }
             // InternalOCLinEcore.g:18933:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
             // InternalOCLinEcore.g:18933:2: rule__ExpCS__OwnedRightAssignment_0_1_2
@@ -56765,7 +56765,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2()); 
+               after(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2());
             }
 
             }
@@ -56793,7 +56793,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18953:1: ( rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 )
             // InternalOCLinEcore.g:18954:2: rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1
@@ -56831,7 +56831,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18965:1: ( ( () ) )
             // InternalOCLinEcore.g:18966:1: ( () )
@@ -56840,15 +56840,15 @@
             // InternalOCLinEcore.g:18967:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0());
             }
             // InternalOCLinEcore.g:18968:1: ()
-            // InternalOCLinEcore.g:18970:1: 
+            // InternalOCLinEcore.g:18970:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0());
             }
 
             }
@@ -56872,7 +56872,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18984:1: ( rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 )
             // InternalOCLinEcore.g:18985:2: rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2
@@ -56910,7 +56910,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:18996:1: ( ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) )
             // InternalOCLinEcore.g:18997:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
@@ -56919,7 +56919,7 @@
             // InternalOCLinEcore.g:18998:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1());
             }
             // InternalOCLinEcore.g:18999:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
             // InternalOCLinEcore.g:18999:2: rule__PrefixedLetExpCS__NameAssignment_0_1
@@ -56933,7 +56933,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1());
             }
 
             }
@@ -56961,7 +56961,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19013:1: ( rule__PrefixedLetExpCS__Group_0__2__Impl )
             // InternalOCLinEcore.g:19014:2: rule__PrefixedLetExpCS__Group_0__2__Impl
@@ -56994,7 +56994,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19024:1: ( ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) )
             // InternalOCLinEcore.g:19025:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
@@ -57003,7 +57003,7 @@
             // InternalOCLinEcore.g:19026:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2());
             }
             // InternalOCLinEcore.g:19027:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
             // InternalOCLinEcore.g:19027:2: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2
@@ -57017,7 +57017,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2());
             }
 
             }
@@ -57045,7 +57045,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19047:1: ( rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 )
             // InternalOCLinEcore.g:19048:2: rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1
@@ -57083,7 +57083,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19059:1: ( ( () ) )
             // InternalOCLinEcore.g:19060:1: ( () )
@@ -57092,15 +57092,15 @@
             // InternalOCLinEcore.g:19061:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0());
             }
             // InternalOCLinEcore.g:19062:1: ()
-            // InternalOCLinEcore.g:19064:1: 
+            // InternalOCLinEcore.g:19064:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0());
             }
 
             }
@@ -57124,7 +57124,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19078:1: ( rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 )
             // InternalOCLinEcore.g:19079:2: rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2
@@ -57162,7 +57162,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19090:1: ( ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) )
             // InternalOCLinEcore.g:19091:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
@@ -57171,7 +57171,7 @@
             // InternalOCLinEcore.g:19092:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1());
             }
             // InternalOCLinEcore.g:19093:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
             // InternalOCLinEcore.g:19093:2: rule__PrefixedPrimaryExpCS__NameAssignment_0_1
@@ -57185,7 +57185,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1());
             }
 
             }
@@ -57213,7 +57213,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19107:1: ( rule__PrefixedPrimaryExpCS__Group_0__2__Impl )
             // InternalOCLinEcore.g:19108:2: rule__PrefixedPrimaryExpCS__Group_0__2__Impl
@@ -57246,7 +57246,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19118:1: ( ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) )
             // InternalOCLinEcore.g:19119:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
@@ -57255,7 +57255,7 @@
             // InternalOCLinEcore.g:19120:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2());
             }
             // InternalOCLinEcore.g:19121:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
             // InternalOCLinEcore.g:19121:2: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2
@@ -57269,7 +57269,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2());
             }
 
             }
@@ -57297,7 +57297,7 @@
     public final void rule__NameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19141:1: ( rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 )
             // InternalOCLinEcore.g:19142:2: rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1
@@ -57335,7 +57335,7 @@
     public final void rule__NameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19153:1: ( ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) )
             // InternalOCLinEcore.g:19154:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
@@ -57344,7 +57344,7 @@
             // InternalOCLinEcore.g:19155:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
             // InternalOCLinEcore.g:19156:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
             // InternalOCLinEcore.g:19156:2: rule__NameExpCS__OwnedPathNameAssignment_0
@@ -57358,7 +57358,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
 
             }
@@ -57386,7 +57386,7 @@
     public final void rule__NameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19170:1: ( rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 )
             // InternalOCLinEcore.g:19171:2: rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2
@@ -57424,7 +57424,7 @@
     public final void rule__NameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19182:1: ( ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) )
             // InternalOCLinEcore.g:19183:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
@@ -57433,7 +57433,7 @@
             // InternalOCLinEcore.g:19184:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1());
             }
             // InternalOCLinEcore.g:19185:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             loop198:
@@ -57465,7 +57465,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1());
             }
 
             }
@@ -57493,7 +57493,7 @@
     public final void rule__NameExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19199:1: ( rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 )
             // InternalOCLinEcore.g:19200:2: rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3
@@ -57531,7 +57531,7 @@
     public final void rule__NameExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19211:1: ( ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) )
             // InternalOCLinEcore.g:19212:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
@@ -57540,7 +57540,7 @@
             // InternalOCLinEcore.g:19213:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2());
             }
             // InternalOCLinEcore.g:19214:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             int alt199=2;
@@ -57565,7 +57565,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2());
             }
 
             }
@@ -57593,7 +57593,7 @@
     public final void rule__NameExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19228:1: ( rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 )
             // InternalOCLinEcore.g:19229:2: rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4
@@ -57631,7 +57631,7 @@
     public final void rule__NameExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19240:1: ( ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) )
             // InternalOCLinEcore.g:19241:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
@@ -57640,7 +57640,7 @@
             // InternalOCLinEcore.g:19242:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3());
             }
             // InternalOCLinEcore.g:19243:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             int alt200=2;
@@ -57665,7 +57665,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3());
             }
 
             }
@@ -57693,7 +57693,7 @@
     public final void rule__NameExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19257:1: ( rule__NameExpCS__Group__4__Impl )
             // InternalOCLinEcore.g:19258:2: rule__NameExpCS__Group__4__Impl
@@ -57726,7 +57726,7 @@
     public final void rule__NameExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19268:1: ( ( ( rule__NameExpCS__Group_4__0 )? ) )
             // InternalOCLinEcore.g:19269:1: ( ( rule__NameExpCS__Group_4__0 )? )
@@ -57735,7 +57735,7 @@
             // InternalOCLinEcore.g:19270:1: ( rule__NameExpCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getGroup_4()); 
+               before(grammarAccess.getNameExpCSAccess().getGroup_4());
             }
             // InternalOCLinEcore.g:19271:1: ( rule__NameExpCS__Group_4__0 )?
             int alt201=2;
@@ -57760,7 +57760,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getGroup_4()); 
+               after(grammarAccess.getNameExpCSAccess().getGroup_4());
             }
 
             }
@@ -57788,7 +57788,7 @@
     public final void rule__NameExpCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19295:1: ( rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 )
             // InternalOCLinEcore.g:19296:2: rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1
@@ -57826,7 +57826,7 @@
     public final void rule__NameExpCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19307:1: ( ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) )
             // InternalOCLinEcore.g:19308:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
@@ -57835,7 +57835,7 @@
             // InternalOCLinEcore.g:19309:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0()); 
+               before(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0());
             }
             // InternalOCLinEcore.g:19310:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
             // InternalOCLinEcore.g:19310:2: rule__NameExpCS__IsPreAssignment_4_0
@@ -57849,7 +57849,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0()); 
+               after(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0());
             }
 
             }
@@ -57877,7 +57877,7 @@
     public final void rule__NameExpCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19324:1: ( rule__NameExpCS__Group_4__1__Impl )
             // InternalOCLinEcore.g:19325:2: rule__NameExpCS__Group_4__1__Impl
@@ -57910,7 +57910,7 @@
     public final void rule__NameExpCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19335:1: ( ( 'pre' ) )
             // InternalOCLinEcore.g:19336:1: ( 'pre' )
@@ -57919,11 +57919,11 @@
             // InternalOCLinEcore.g:19337:1: 'pre'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); 
+               before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
             }
             match(input,110,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); 
+               after(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
             }
 
             }
@@ -57951,7 +57951,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19358:1: ( rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 )
             // InternalOCLinEcore.g:19359:2: rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1
@@ -57989,7 +57989,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19370:1: ( ( () ) )
             // InternalOCLinEcore.g:19371:1: ( () )
@@ -57998,15 +57998,15 @@
             // InternalOCLinEcore.g:19372:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0());
             }
             // InternalOCLinEcore.g:19373:1: ()
-            // InternalOCLinEcore.g:19375:1: 
+            // InternalOCLinEcore.g:19375:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0());
             }
 
             }
@@ -58030,7 +58030,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19389:1: ( rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 )
             // InternalOCLinEcore.g:19390:2: rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2
@@ -58068,7 +58068,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19401:1: ( ( '{' ) )
             // InternalOCLinEcore.g:19402:1: ( '{' )
@@ -58077,11 +58077,11 @@
             // InternalOCLinEcore.g:19403:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -58109,7 +58109,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19420:1: ( rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 )
             // InternalOCLinEcore.g:19421:2: rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3
@@ -58147,7 +58147,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19432:1: ( ( ( rule__CurlyBracketedClauseCS__Alternatives_2 ) ) )
             // InternalOCLinEcore.g:19433:1: ( ( rule__CurlyBracketedClauseCS__Alternatives_2 ) )
@@ -58156,7 +58156,7 @@
             // InternalOCLinEcore.g:19434:1: ( rule__CurlyBracketedClauseCS__Alternatives_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2());
             }
             // InternalOCLinEcore.g:19435:1: ( rule__CurlyBracketedClauseCS__Alternatives_2 )
             // InternalOCLinEcore.g:19435:2: rule__CurlyBracketedClauseCS__Alternatives_2
@@ -58170,7 +58170,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2());
             }
 
             }
@@ -58198,7 +58198,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19449:1: ( rule__CurlyBracketedClauseCS__Group__3__Impl )
             // InternalOCLinEcore.g:19450:2: rule__CurlyBracketedClauseCS__Group__3__Impl
@@ -58231,7 +58231,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19460:1: ( ( '}' ) )
             // InternalOCLinEcore.g:19461:1: ( '}' )
@@ -58240,11 +58240,11 @@
             // InternalOCLinEcore.g:19462:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -58272,7 +58272,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19487:1: ( rule__CurlyBracketedClauseCS__Group_2_0__0__Impl rule__CurlyBracketedClauseCS__Group_2_0__1 )
             // InternalOCLinEcore.g:19488:2: rule__CurlyBracketedClauseCS__Group_2_0__0__Impl rule__CurlyBracketedClauseCS__Group_2_0__1
@@ -58310,7 +58310,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19499:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 ) ) )
             // InternalOCLinEcore.g:19500:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 ) )
@@ -58319,7 +58319,7 @@
             // InternalOCLinEcore.g:19501:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0());
             }
             // InternalOCLinEcore.g:19502:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 )
             // InternalOCLinEcore.g:19502:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0
@@ -58333,7 +58333,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0());
             }
 
             }
@@ -58361,7 +58361,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19516:1: ( rule__CurlyBracketedClauseCS__Group_2_0__1__Impl )
             // InternalOCLinEcore.g:19517:2: rule__CurlyBracketedClauseCS__Group_2_0__1__Impl
@@ -58394,7 +58394,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19527:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )* ) )
             // InternalOCLinEcore.g:19528:1: ( ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )* )
@@ -58403,7 +58403,7 @@
             // InternalOCLinEcore.g:19529:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1());
             }
             // InternalOCLinEcore.g:19530:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )*
             loop202:
@@ -58435,7 +58435,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1());
             }
 
             }
@@ -58463,7 +58463,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19548:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_0_1__1 )
             // InternalOCLinEcore.g:19549:2: rule__CurlyBracketedClauseCS__Group_2_0_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_0_1__1
@@ -58501,7 +58501,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19560:1: ( ( ',' ) )
             // InternalOCLinEcore.g:19561:1: ( ',' )
@@ -58510,11 +58510,11 @@
             // InternalOCLinEcore.g:19562:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
             }
 
             }
@@ -58542,7 +58542,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19579:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__1__Impl )
             // InternalOCLinEcore.g:19580:2: rule__CurlyBracketedClauseCS__Group_2_0_1__1__Impl
@@ -58575,7 +58575,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19590:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 ) ) )
             // InternalOCLinEcore.g:19591:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 ) )
@@ -58584,7 +58584,7 @@
             // InternalOCLinEcore.g:19592:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1());
             }
             // InternalOCLinEcore.g:19593:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 )
             // InternalOCLinEcore.g:19593:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1
@@ -58598,7 +58598,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1());
             }
 
             }
@@ -58626,7 +58626,7 @@
     public final void rule__RoundBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19611:1: ( rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 )
             // InternalOCLinEcore.g:19612:2: rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1
@@ -58664,7 +58664,7 @@
     public final void rule__RoundBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19623:1: ( ( () ) )
             // InternalOCLinEcore.g:19624:1: ( () )
@@ -58673,15 +58673,15 @@
             // InternalOCLinEcore.g:19625:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0());
             }
             // InternalOCLinEcore.g:19626:1: ()
-            // InternalOCLinEcore.g:19628:1: 
+            // InternalOCLinEcore.g:19628:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0());
             }
 
             }
@@ -58705,7 +58705,7 @@
     public final void rule__RoundBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19642:1: ( rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 )
             // InternalOCLinEcore.g:19643:2: rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2
@@ -58743,7 +58743,7 @@
     public final void rule__RoundBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19654:1: ( ( '(' ) )
             // InternalOCLinEcore.g:19655:1: ( '(' )
@@ -58752,11 +58752,11 @@
             // InternalOCLinEcore.g:19656:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
             }
 
             }
@@ -58784,7 +58784,7 @@
     public final void rule__RoundBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19673:1: ( rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 )
             // InternalOCLinEcore.g:19674:2: rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3
@@ -58822,7 +58822,7 @@
     public final void rule__RoundBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19685:1: ( ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) )
             // InternalOCLinEcore.g:19686:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
@@ -58831,7 +58831,7 @@
             // InternalOCLinEcore.g:19687:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2());
             }
             // InternalOCLinEcore.g:19688:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             int alt203=2;
@@ -58856,7 +58856,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2());
             }
 
             }
@@ -58884,7 +58884,7 @@
     public final void rule__RoundBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19702:1: ( rule__RoundBracketedClauseCS__Group__3__Impl )
             // InternalOCLinEcore.g:19703:2: rule__RoundBracketedClauseCS__Group__3__Impl
@@ -58917,7 +58917,7 @@
     public final void rule__RoundBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19713:1: ( ( ')' ) )
             // InternalOCLinEcore.g:19714:1: ( ')' )
@@ -58926,11 +58926,11 @@
             // InternalOCLinEcore.g:19715:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
             }
 
             }
@@ -58958,7 +58958,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19740:1: ( rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 )
             // InternalOCLinEcore.g:19741:2: rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1
@@ -58996,7 +58996,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19752:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) )
             // InternalOCLinEcore.g:19753:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
@@ -59005,7 +59005,7 @@
             // InternalOCLinEcore.g:19754:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0());
             }
             // InternalOCLinEcore.g:19755:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
             // InternalOCLinEcore.g:19755:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0
@@ -59019,7 +59019,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0());
             }
 
             }
@@ -59047,7 +59047,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19769:1: ( rule__RoundBracketedClauseCS__Group_2__1__Impl rule__RoundBracketedClauseCS__Group_2__2 )
             // InternalOCLinEcore.g:19770:2: rule__RoundBracketedClauseCS__Group_2__1__Impl rule__RoundBracketedClauseCS__Group_2__2
@@ -59085,7 +59085,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19781:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) )
             // InternalOCLinEcore.g:19782:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
@@ -59094,7 +59094,7 @@
             // InternalOCLinEcore.g:19783:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1());
             }
             // InternalOCLinEcore.g:19784:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             loop204:
@@ -59126,7 +59126,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1());
             }
 
             }
@@ -59154,7 +59154,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19798:1: ( rule__RoundBracketedClauseCS__Group_2__2__Impl rule__RoundBracketedClauseCS__Group_2__3 )
             // InternalOCLinEcore.g:19799:2: rule__RoundBracketedClauseCS__Group_2__2__Impl rule__RoundBracketedClauseCS__Group_2__3
@@ -59192,7 +59192,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19810:1: ( ( ( rule__RoundBracketedClauseCS__Group_2_2__0 )? ) )
             // InternalOCLinEcore.g:19811:1: ( ( rule__RoundBracketedClauseCS__Group_2_2__0 )? )
@@ -59201,7 +59201,7 @@
             // InternalOCLinEcore.g:19812:1: ( rule__RoundBracketedClauseCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2());
             }
             // InternalOCLinEcore.g:19813:1: ( rule__RoundBracketedClauseCS__Group_2_2__0 )?
             int alt205=2;
@@ -59226,7 +59226,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2());
             }
 
             }
@@ -59254,7 +59254,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19827:1: ( rule__RoundBracketedClauseCS__Group_2__3__Impl )
             // InternalOCLinEcore.g:19828:2: rule__RoundBracketedClauseCS__Group_2__3__Impl
@@ -59287,7 +59287,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19838:1: ( ( ( rule__RoundBracketedClauseCS__Group_2_3__0 )* ) )
             // InternalOCLinEcore.g:19839:1: ( ( rule__RoundBracketedClauseCS__Group_2_3__0 )* )
@@ -59296,7 +59296,7 @@
             // InternalOCLinEcore.g:19840:1: ( rule__RoundBracketedClauseCS__Group_2_3__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3());
             }
             // InternalOCLinEcore.g:19841:1: ( rule__RoundBracketedClauseCS__Group_2_3__0 )*
             loop206:
@@ -59328,7 +59328,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3());
             }
 
             }
@@ -59356,7 +59356,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19863:1: ( rule__RoundBracketedClauseCS__Group_2_2__0__Impl rule__RoundBracketedClauseCS__Group_2_2__1 )
             // InternalOCLinEcore.g:19864:2: rule__RoundBracketedClauseCS__Group_2_2__0__Impl rule__RoundBracketedClauseCS__Group_2_2__1
@@ -59394,7 +59394,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19875:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 ) ) )
             // InternalOCLinEcore.g:19876:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 ) )
@@ -59403,7 +59403,7 @@
             // InternalOCLinEcore.g:19877:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0());
             }
             // InternalOCLinEcore.g:19878:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 )
             // InternalOCLinEcore.g:19878:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0
@@ -59417,7 +59417,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0());
             }
 
             }
@@ -59445,7 +59445,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19892:1: ( rule__RoundBracketedClauseCS__Group_2_2__1__Impl )
             // InternalOCLinEcore.g:19893:2: rule__RoundBracketedClauseCS__Group_2_2__1__Impl
@@ -59478,7 +59478,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19903:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )* ) )
             // InternalOCLinEcore.g:19904:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )* )
@@ -59487,7 +59487,7 @@
             // InternalOCLinEcore.g:19905:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1());
             }
             // InternalOCLinEcore.g:19906:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )*
             loop207:
@@ -59519,7 +59519,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1());
             }
 
             }
@@ -59547,7 +59547,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19924:1: ( rule__RoundBracketedClauseCS__Group_2_3__0__Impl rule__RoundBracketedClauseCS__Group_2_3__1 )
             // InternalOCLinEcore.g:19925:2: rule__RoundBracketedClauseCS__Group_2_3__0__Impl rule__RoundBracketedClauseCS__Group_2_3__1
@@ -59585,7 +59585,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19936:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 ) ) )
             // InternalOCLinEcore.g:19937:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 ) )
@@ -59594,7 +59594,7 @@
             // InternalOCLinEcore.g:19938:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0());
             }
             // InternalOCLinEcore.g:19939:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 )
             // InternalOCLinEcore.g:19939:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0
@@ -59608,7 +59608,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0());
             }
 
             }
@@ -59636,7 +59636,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19953:1: ( rule__RoundBracketedClauseCS__Group_2_3__1__Impl )
             // InternalOCLinEcore.g:19954:2: rule__RoundBracketedClauseCS__Group_2_3__1__Impl
@@ -59669,7 +59669,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19964:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )* ) )
             // InternalOCLinEcore.g:19965:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )* )
@@ -59678,7 +59678,7 @@
             // InternalOCLinEcore.g:19966:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1());
             }
             // InternalOCLinEcore.g:19967:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )*
             loop208:
@@ -59710,7 +59710,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1());
             }
 
             }
@@ -59738,7 +59738,7 @@
     public final void rule__SquareBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19985:1: ( rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 )
             // InternalOCLinEcore.g:19986:2: rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1
@@ -59776,7 +59776,7 @@
     public final void rule__SquareBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:19997:1: ( ( '[' ) )
             // InternalOCLinEcore.g:19998:1: ( '[' )
@@ -59785,11 +59785,11 @@
             // InternalOCLinEcore.g:19999:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
             }
             match(input,111,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
             }
 
             }
@@ -59817,7 +59817,7 @@
     public final void rule__SquareBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20016:1: ( rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 )
             // InternalOCLinEcore.g:20017:2: rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2
@@ -59855,7 +59855,7 @@
     public final void rule__SquareBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20028:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) )
             // InternalOCLinEcore.g:20029:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
@@ -59864,7 +59864,7 @@
             // InternalOCLinEcore.g:20030:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1());
             }
             // InternalOCLinEcore.g:20031:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
             // InternalOCLinEcore.g:20031:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1
@@ -59878,7 +59878,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1());
             }
 
             }
@@ -59906,7 +59906,7 @@
     public final void rule__SquareBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20045:1: ( rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 )
             // InternalOCLinEcore.g:20046:2: rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3
@@ -59944,7 +59944,7 @@
     public final void rule__SquareBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20057:1: ( ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) )
             // InternalOCLinEcore.g:20058:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
@@ -59953,7 +59953,7 @@
             // InternalOCLinEcore.g:20059:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2());
             }
             // InternalOCLinEcore.g:20060:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             loop209:
@@ -59985,7 +59985,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2());
             }
 
             }
@@ -60013,7 +60013,7 @@
     public final void rule__SquareBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20074:1: ( rule__SquareBracketedClauseCS__Group__3__Impl )
             // InternalOCLinEcore.g:20075:2: rule__SquareBracketedClauseCS__Group__3__Impl
@@ -60046,7 +60046,7 @@
     public final void rule__SquareBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20085:1: ( ( ']' ) )
             // InternalOCLinEcore.g:20086:1: ( ']' )
@@ -60055,11 +60055,11 @@
             // InternalOCLinEcore.g:20087:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
             }
             match(input,112,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
             }
 
             }
@@ -60087,7 +60087,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20112:1: ( rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 )
             // InternalOCLinEcore.g:20113:2: rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1
@@ -60125,7 +60125,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20124:1: ( ( ',' ) )
             // InternalOCLinEcore.g:20125:1: ( ',' )
@@ -60134,11 +60134,11 @@
             // InternalOCLinEcore.g:20126:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
             }
 
             }
@@ -60166,7 +60166,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20143:1: ( rule__SquareBracketedClauseCS__Group_2__1__Impl )
             // InternalOCLinEcore.g:20144:2: rule__SquareBracketedClauseCS__Group_2__1__Impl
@@ -60199,7 +60199,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20154:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) )
             // InternalOCLinEcore.g:20155:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
@@ -60208,7 +60208,7 @@
             // InternalOCLinEcore.g:20156:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1());
             }
             // InternalOCLinEcore.g:20157:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
             // InternalOCLinEcore.g:20157:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1
@@ -60222,7 +60222,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1());
             }
 
             }
@@ -60250,7 +60250,7 @@
     public final void rule__NavigatingArgCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20175:1: ( rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 )
             // InternalOCLinEcore.g:20176:2: rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1
@@ -60288,7 +60288,7 @@
     public final void rule__NavigatingArgCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20187:1: ( ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) )
             // InternalOCLinEcore.g:20188:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
@@ -60297,7 +60297,7 @@
             // InternalOCLinEcore.g:20189:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0());
             }
             // InternalOCLinEcore.g:20190:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
             // InternalOCLinEcore.g:20190:2: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0
@@ -60311,7 +60311,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0());
             }
 
             }
@@ -60339,7 +60339,7 @@
     public final void rule__NavigatingArgCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20204:1: ( rule__NavigatingArgCS__Group_0__1__Impl )
             // InternalOCLinEcore.g:20205:2: rule__NavigatingArgCS__Group_0__1__Impl
@@ -60372,7 +60372,7 @@
     public final void rule__NavigatingArgCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20215:1: ( ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) )
             // InternalOCLinEcore.g:20216:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
@@ -60381,7 +60381,7 @@
             // InternalOCLinEcore.g:20217:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1());
             }
             // InternalOCLinEcore.g:20218:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             int alt210=2;
@@ -60406,7 +60406,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1());
             }
 
             }
@@ -60434,7 +60434,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20236:1: ( rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 )
             // InternalOCLinEcore.g:20237:2: rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1
@@ -60472,7 +60472,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20248:1: ( ( ':' ) )
             // InternalOCLinEcore.g:20249:1: ( ':' )
@@ -60481,11 +60481,11 @@
             // InternalOCLinEcore.g:20250:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
             }
 
             }
@@ -60513,7 +60513,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20267:1: ( rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 )
             // InternalOCLinEcore.g:20268:2: rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2
@@ -60551,7 +60551,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20279:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 ) ) )
             // InternalOCLinEcore.g:20280:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 ) )
@@ -60560,7 +60560,7 @@
             // InternalOCLinEcore.g:20281:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1());
             }
             // InternalOCLinEcore.g:20282:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 )
             // InternalOCLinEcore.g:20282:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1
@@ -60574,7 +60574,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1());
             }
 
             }
@@ -60602,7 +60602,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20296:1: ( rule__NavigatingArgCS__Group_0_1_0__2__Impl )
             // InternalOCLinEcore.g:20297:2: rule__NavigatingArgCS__Group_0_1_0__2__Impl
@@ -60635,7 +60635,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20307:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) )
             // InternalOCLinEcore.g:20308:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
@@ -60644,7 +60644,7 @@
             // InternalOCLinEcore.g:20309:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2());
             }
             // InternalOCLinEcore.g:20310:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             int alt211=2;
@@ -60669,7 +60669,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2());
             }
 
             }
@@ -60697,7 +60697,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20330:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 )
             // InternalOCLinEcore.g:20331:2: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1
@@ -60735,7 +60735,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20342:1: ( ( '=' ) )
             // InternalOCLinEcore.g:20343:1: ( '=' )
@@ -60744,11 +60744,11 @@
             // InternalOCLinEcore.g:20344:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
             }
 
             }
@@ -60776,7 +60776,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20361:1: ( rule__NavigatingArgCS__Group_0_1_0_2__1__Impl )
             // InternalOCLinEcore.g:20362:2: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl
@@ -60809,7 +60809,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20372:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) )
             // InternalOCLinEcore.g:20373:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
@@ -60818,7 +60818,7 @@
             // InternalOCLinEcore.g:20374:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1());
             }
             // InternalOCLinEcore.g:20375:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
             // InternalOCLinEcore.g:20375:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1
@@ -60832,7 +60832,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1());
             }
 
             }
@@ -60860,7 +60860,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20393:1: ( rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 )
             // InternalOCLinEcore.g:20394:2: rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1
@@ -60898,7 +60898,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20405:1: ( ( 'in' ) )
             // InternalOCLinEcore.g:20406:1: ( 'in' )
@@ -60907,11 +60907,11 @@
             // InternalOCLinEcore.g:20407:1: 'in'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
             }
             match(input,113,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
             }
 
             }
@@ -60939,7 +60939,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20424:1: ( rule__NavigatingArgCS__Group_0_1_1__1__Impl )
             // InternalOCLinEcore.g:20425:2: rule__NavigatingArgCS__Group_0_1_1__1__Impl
@@ -60972,7 +60972,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20435:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 ) ) )
             // InternalOCLinEcore.g:20436:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 ) )
@@ -60981,7 +60981,7 @@
             // InternalOCLinEcore.g:20437:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1());
             }
             // InternalOCLinEcore.g:20438:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 )
             // InternalOCLinEcore.g:20438:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1
@@ -60995,7 +60995,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1());
             }
 
             }
@@ -61023,7 +61023,7 @@
     public final void rule__NavigatingArgCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20456:1: ( rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 )
             // InternalOCLinEcore.g:20457:2: rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1
@@ -61061,7 +61061,7 @@
     public final void rule__NavigatingArgCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20468:1: ( ( ':' ) )
             // InternalOCLinEcore.g:20469:1: ( ':' )
@@ -61070,11 +61070,11 @@
             // InternalOCLinEcore.g:20470:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
             }
 
             }
@@ -61102,7 +61102,7 @@
     public final void rule__NavigatingArgCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20487:1: ( rule__NavigatingArgCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:20488:2: rule__NavigatingArgCS__Group_1__1__Impl
@@ -61135,7 +61135,7 @@
     public final void rule__NavigatingArgCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20498:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) )
             // InternalOCLinEcore.g:20499:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
@@ -61144,7 +61144,7 @@
             // InternalOCLinEcore.g:20500:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1());
             }
             // InternalOCLinEcore.g:20501:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
             // InternalOCLinEcore.g:20501:2: rule__NavigatingArgCS__OwnedTypeAssignment_1_1
@@ -61158,7 +61158,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1());
             }
 
             }
@@ -61186,7 +61186,7 @@
     public final void rule__NavigatingBarArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20519:1: ( rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 )
             // InternalOCLinEcore.g:20520:2: rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1
@@ -61224,7 +61224,7 @@
     public final void rule__NavigatingBarArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20531:1: ( ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) )
             // InternalOCLinEcore.g:20532:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
@@ -61233,7 +61233,7 @@
             // InternalOCLinEcore.g:20533:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0());
             }
             // InternalOCLinEcore.g:20534:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
             // InternalOCLinEcore.g:20534:2: rule__NavigatingBarArgCS__PrefixAssignment_0
@@ -61247,7 +61247,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0());
             }
 
             }
@@ -61275,7 +61275,7 @@
     public final void rule__NavigatingBarArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20548:1: ( rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 )
             // InternalOCLinEcore.g:20549:2: rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2
@@ -61313,7 +61313,7 @@
     public final void rule__NavigatingBarArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20560:1: ( ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) )
             // InternalOCLinEcore.g:20561:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
@@ -61322,7 +61322,7 @@
             // InternalOCLinEcore.g:20562:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
             // InternalOCLinEcore.g:20563:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
             // InternalOCLinEcore.g:20563:2: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1
@@ -61336,7 +61336,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
 
             }
@@ -61364,7 +61364,7 @@
     public final void rule__NavigatingBarArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20577:1: ( rule__NavigatingBarArgCS__Group__2__Impl )
             // InternalOCLinEcore.g:20578:2: rule__NavigatingBarArgCS__Group__2__Impl
@@ -61397,7 +61397,7 @@
     public final void rule__NavigatingBarArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20588:1: ( ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) )
             // InternalOCLinEcore.g:20589:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
@@ -61406,7 +61406,7 @@
             // InternalOCLinEcore.g:20590:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2());
             }
             // InternalOCLinEcore.g:20591:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             int alt212=2;
@@ -61431,7 +61431,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2());
             }
 
             }
@@ -61459,7 +61459,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20611:1: ( rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 )
             // InternalOCLinEcore.g:20612:2: rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1
@@ -61497,7 +61497,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20623:1: ( ( ':' ) )
             // InternalOCLinEcore.g:20624:1: ( ':' )
@@ -61506,11 +61506,11 @@
             // InternalOCLinEcore.g:20625:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -61538,7 +61538,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20642:1: ( rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 )
             // InternalOCLinEcore.g:20643:2: rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2
@@ -61576,7 +61576,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20654:1: ( ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) )
             // InternalOCLinEcore.g:20655:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
@@ -61585,7 +61585,7 @@
             // InternalOCLinEcore.g:20656:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1());
             }
             // InternalOCLinEcore.g:20657:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
             // InternalOCLinEcore.g:20657:2: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1
@@ -61599,7 +61599,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1());
             }
 
             }
@@ -61627,7 +61627,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20671:1: ( rule__NavigatingBarArgCS__Group_2__2__Impl )
             // InternalOCLinEcore.g:20672:2: rule__NavigatingBarArgCS__Group_2__2__Impl
@@ -61660,7 +61660,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20682:1: ( ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) )
             // InternalOCLinEcore.g:20683:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
@@ -61669,7 +61669,7 @@
             // InternalOCLinEcore.g:20684:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2());
             }
             // InternalOCLinEcore.g:20685:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             int alt213=2;
@@ -61694,7 +61694,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2());
             }
 
             }
@@ -61722,7 +61722,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20705:1: ( rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 )
             // InternalOCLinEcore.g:20706:2: rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1
@@ -61760,7 +61760,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20717:1: ( ( '=' ) )
             // InternalOCLinEcore.g:20718:1: ( '=' )
@@ -61769,11 +61769,11 @@
             // InternalOCLinEcore.g:20719:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
 
             }
@@ -61801,7 +61801,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20736:1: ( rule__NavigatingBarArgCS__Group_2_2__1__Impl )
             // InternalOCLinEcore.g:20737:2: rule__NavigatingBarArgCS__Group_2_2__1__Impl
@@ -61834,7 +61834,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20747:1: ( ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
             // InternalOCLinEcore.g:20748:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
@@ -61843,7 +61843,7 @@
             // InternalOCLinEcore.g:20749:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
             // InternalOCLinEcore.g:20750:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
             // InternalOCLinEcore.g:20750:2: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1
@@ -61857,7 +61857,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
 
             }
@@ -61885,7 +61885,7 @@
     public final void rule__NavigatingCommaArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20768:1: ( rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 )
             // InternalOCLinEcore.g:20769:2: rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1
@@ -61923,7 +61923,7 @@
     public final void rule__NavigatingCommaArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20780:1: ( ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) )
             // InternalOCLinEcore.g:20781:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
@@ -61932,7 +61932,7 @@
             // InternalOCLinEcore.g:20782:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0());
             }
             // InternalOCLinEcore.g:20783:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
             // InternalOCLinEcore.g:20783:2: rule__NavigatingCommaArgCS__PrefixAssignment_0
@@ -61946,7 +61946,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0());
             }
 
             }
@@ -61974,7 +61974,7 @@
     public final void rule__NavigatingCommaArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20797:1: ( rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 )
             // InternalOCLinEcore.g:20798:2: rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2
@@ -62012,7 +62012,7 @@
     public final void rule__NavigatingCommaArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20809:1: ( ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) )
             // InternalOCLinEcore.g:20810:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
@@ -62021,7 +62021,7 @@
             // InternalOCLinEcore.g:20811:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
             // InternalOCLinEcore.g:20812:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
             // InternalOCLinEcore.g:20812:2: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1
@@ -62035,7 +62035,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
 
             }
@@ -62063,7 +62063,7 @@
     public final void rule__NavigatingCommaArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20826:1: ( rule__NavigatingCommaArgCS__Group__2__Impl )
             // InternalOCLinEcore.g:20827:2: rule__NavigatingCommaArgCS__Group__2__Impl
@@ -62096,7 +62096,7 @@
     public final void rule__NavigatingCommaArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20837:1: ( ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) )
             // InternalOCLinEcore.g:20838:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
@@ -62105,7 +62105,7 @@
             // InternalOCLinEcore.g:20839:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2());
             }
             // InternalOCLinEcore.g:20840:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             int alt214=2;
@@ -62130,7 +62130,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2());
             }
 
             }
@@ -62158,7 +62158,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20860:1: ( rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 )
             // InternalOCLinEcore.g:20861:2: rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1
@@ -62196,7 +62196,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20872:1: ( ( ':' ) )
             // InternalOCLinEcore.g:20873:1: ( ':' )
@@ -62205,11 +62205,11 @@
             // InternalOCLinEcore.g:20874:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
             }
 
             }
@@ -62237,7 +62237,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20891:1: ( rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 )
             // InternalOCLinEcore.g:20892:2: rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2
@@ -62275,7 +62275,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20903:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 ) ) )
             // InternalOCLinEcore.g:20904:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 ) )
@@ -62284,7 +62284,7 @@
             // InternalOCLinEcore.g:20905:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1());
             }
             // InternalOCLinEcore.g:20906:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 )
             // InternalOCLinEcore.g:20906:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1
@@ -62298,7 +62298,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1());
             }
 
             }
@@ -62326,7 +62326,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20920:1: ( rule__NavigatingCommaArgCS__Group_2_0__2__Impl )
             // InternalOCLinEcore.g:20921:2: rule__NavigatingCommaArgCS__Group_2_0__2__Impl
@@ -62359,7 +62359,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20931:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) )
             // InternalOCLinEcore.g:20932:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
@@ -62368,7 +62368,7 @@
             // InternalOCLinEcore.g:20933:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2());
             }
             // InternalOCLinEcore.g:20934:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             int alt215=2;
@@ -62393,7 +62393,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2());
             }
 
             }
@@ -62421,7 +62421,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20954:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 )
             // InternalOCLinEcore.g:20955:2: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1
@@ -62459,7 +62459,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20966:1: ( ( '=' ) )
             // InternalOCLinEcore.g:20967:1: ( '=' )
@@ -62468,11 +62468,11 @@
             // InternalOCLinEcore.g:20968:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
             }
 
             }
@@ -62500,7 +62500,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20985:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl )
             // InternalOCLinEcore.g:20986:2: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl
@@ -62533,7 +62533,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:20996:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) )
             // InternalOCLinEcore.g:20997:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
@@ -62542,7 +62542,7 @@
             // InternalOCLinEcore.g:20998:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1());
             }
             // InternalOCLinEcore.g:20999:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
             // InternalOCLinEcore.g:20999:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1
@@ -62556,7 +62556,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1());
             }
 
             }
@@ -62584,7 +62584,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21017:1: ( rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 )
             // InternalOCLinEcore.g:21018:2: rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1
@@ -62622,7 +62622,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21029:1: ( ( 'in' ) )
             // InternalOCLinEcore.g:21030:1: ( 'in' )
@@ -62631,11 +62631,11 @@
             // InternalOCLinEcore.g:21031:1: 'in'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
             }
             match(input,113,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
             }
 
             }
@@ -62663,7 +62663,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21048:1: ( rule__NavigatingCommaArgCS__Group_2_1__1__Impl )
             // InternalOCLinEcore.g:21049:2: rule__NavigatingCommaArgCS__Group_2_1__1__Impl
@@ -62696,7 +62696,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21059:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 ) ) )
             // InternalOCLinEcore.g:21060:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 ) )
@@ -62705,7 +62705,7 @@
             // InternalOCLinEcore.g:21061:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1());
             }
             // InternalOCLinEcore.g:21062:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 )
             // InternalOCLinEcore.g:21062:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1
@@ -62719,7 +62719,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1());
             }
 
             }
@@ -62747,7 +62747,7 @@
     public final void rule__NavigatingSemiArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21080:1: ( rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 )
             // InternalOCLinEcore.g:21081:2: rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1
@@ -62785,7 +62785,7 @@
     public final void rule__NavigatingSemiArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21092:1: ( ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) )
             // InternalOCLinEcore.g:21093:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
@@ -62794,7 +62794,7 @@
             // InternalOCLinEcore.g:21094:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0());
             }
             // InternalOCLinEcore.g:21095:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
             // InternalOCLinEcore.g:21095:2: rule__NavigatingSemiArgCS__PrefixAssignment_0
@@ -62808,7 +62808,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0());
             }
 
             }
@@ -62836,7 +62836,7 @@
     public final void rule__NavigatingSemiArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21109:1: ( rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 )
             // InternalOCLinEcore.g:21110:2: rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2
@@ -62874,7 +62874,7 @@
     public final void rule__NavigatingSemiArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21121:1: ( ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) )
             // InternalOCLinEcore.g:21122:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
@@ -62883,7 +62883,7 @@
             // InternalOCLinEcore.g:21123:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
             // InternalOCLinEcore.g:21124:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
             // InternalOCLinEcore.g:21124:2: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1
@@ -62897,7 +62897,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
 
             }
@@ -62925,7 +62925,7 @@
     public final void rule__NavigatingSemiArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21138:1: ( rule__NavigatingSemiArgCS__Group__2__Impl )
             // InternalOCLinEcore.g:21139:2: rule__NavigatingSemiArgCS__Group__2__Impl
@@ -62958,7 +62958,7 @@
     public final void rule__NavigatingSemiArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21149:1: ( ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) )
             // InternalOCLinEcore.g:21150:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
@@ -62967,7 +62967,7 @@
             // InternalOCLinEcore.g:21151:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2());
             }
             // InternalOCLinEcore.g:21152:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             int alt216=2;
@@ -62992,7 +62992,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2());
             }
 
             }
@@ -63020,7 +63020,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21172:1: ( rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 )
             // InternalOCLinEcore.g:21173:2: rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1
@@ -63058,7 +63058,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21184:1: ( ( ':' ) )
             // InternalOCLinEcore.g:21185:1: ( ':' )
@@ -63067,11 +63067,11 @@
             // InternalOCLinEcore.g:21186:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -63099,7 +63099,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21203:1: ( rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 )
             // InternalOCLinEcore.g:21204:2: rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2
@@ -63137,7 +63137,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21215:1: ( ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) )
             // InternalOCLinEcore.g:21216:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
@@ -63146,7 +63146,7 @@
             // InternalOCLinEcore.g:21217:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1());
             }
             // InternalOCLinEcore.g:21218:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
             // InternalOCLinEcore.g:21218:2: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1
@@ -63160,7 +63160,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1());
             }
 
             }
@@ -63188,7 +63188,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21232:1: ( rule__NavigatingSemiArgCS__Group_2__2__Impl )
             // InternalOCLinEcore.g:21233:2: rule__NavigatingSemiArgCS__Group_2__2__Impl
@@ -63221,7 +63221,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21243:1: ( ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) )
             // InternalOCLinEcore.g:21244:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
@@ -63230,7 +63230,7 @@
             // InternalOCLinEcore.g:21245:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2());
             }
             // InternalOCLinEcore.g:21246:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             int alt217=2;
@@ -63255,7 +63255,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2());
             }
 
             }
@@ -63283,7 +63283,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21266:1: ( rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 )
             // InternalOCLinEcore.g:21267:2: rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1
@@ -63321,7 +63321,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21278:1: ( ( '=' ) )
             // InternalOCLinEcore.g:21279:1: ( '=' )
@@ -63330,11 +63330,11 @@
             // InternalOCLinEcore.g:21280:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
 
             }
@@ -63362,7 +63362,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21297:1: ( rule__NavigatingSemiArgCS__Group_2_2__1__Impl )
             // InternalOCLinEcore.g:21298:2: rule__NavigatingSemiArgCS__Group_2_2__1__Impl
@@ -63395,7 +63395,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21308:1: ( ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
             // InternalOCLinEcore.g:21309:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
@@ -63404,7 +63404,7 @@
             // InternalOCLinEcore.g:21310:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
             // InternalOCLinEcore.g:21311:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
             // InternalOCLinEcore.g:21311:2: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1
@@ -63418,7 +63418,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
 
             }
@@ -63446,7 +63446,7 @@
     public final void rule__IfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21329:1: ( rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 )
             // InternalOCLinEcore.g:21330:2: rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1
@@ -63484,7 +63484,7 @@
     public final void rule__IfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21341:1: ( ( 'if' ) )
             // InternalOCLinEcore.g:21342:1: ( 'if' )
@@ -63493,11 +63493,11 @@
             // InternalOCLinEcore.g:21343:1: 'if'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); 
+               before(grammarAccess.getIfExpCSAccess().getIfKeyword_0());
             }
             match(input,114,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); 
+               after(grammarAccess.getIfExpCSAccess().getIfKeyword_0());
             }
 
             }
@@ -63525,7 +63525,7 @@
     public final void rule__IfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21360:1: ( rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 )
             // InternalOCLinEcore.g:21361:2: rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2
@@ -63563,7 +63563,7 @@
     public final void rule__IfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21372:1: ( ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) )
             // InternalOCLinEcore.g:21373:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
@@ -63572,7 +63572,7 @@
             // InternalOCLinEcore.g:21374:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1());
             }
             // InternalOCLinEcore.g:21375:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
             // InternalOCLinEcore.g:21375:2: rule__IfExpCS__OwnedConditionAssignment_1
@@ -63586,7 +63586,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1());
             }
 
             }
@@ -63614,7 +63614,7 @@
     public final void rule__IfExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21389:1: ( rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 )
             // InternalOCLinEcore.g:21390:2: rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3
@@ -63652,7 +63652,7 @@
     public final void rule__IfExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21401:1: ( ( 'then' ) )
             // InternalOCLinEcore.g:21402:1: ( 'then' )
@@ -63661,11 +63661,11 @@
             // InternalOCLinEcore.g:21403:1: 'then'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); 
+               before(grammarAccess.getIfExpCSAccess().getThenKeyword_2());
             }
             match(input,115,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); 
+               after(grammarAccess.getIfExpCSAccess().getThenKeyword_2());
             }
 
             }
@@ -63693,7 +63693,7 @@
     public final void rule__IfExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21420:1: ( rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 )
             // InternalOCLinEcore.g:21421:2: rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4
@@ -63731,7 +63731,7 @@
     public final void rule__IfExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21432:1: ( ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) )
             // InternalOCLinEcore.g:21433:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
@@ -63740,7 +63740,7 @@
             // InternalOCLinEcore.g:21434:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
             // InternalOCLinEcore.g:21435:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
             // InternalOCLinEcore.g:21435:2: rule__IfExpCS__OwnedThenExpressionAssignment_3
@@ -63754,7 +63754,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
 
             }
@@ -63782,7 +63782,7 @@
     public final void rule__IfExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21449:1: ( rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 )
             // InternalOCLinEcore.g:21450:2: rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5
@@ -63820,7 +63820,7 @@
     public final void rule__IfExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21461:1: ( ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) )
             // InternalOCLinEcore.g:21462:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
@@ -63829,7 +63829,7 @@
             // InternalOCLinEcore.g:21463:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4());
             }
             // InternalOCLinEcore.g:21464:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             loop218:
@@ -63861,7 +63861,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4());
             }
 
             }
@@ -63889,7 +63889,7 @@
     public final void rule__IfExpCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21478:1: ( rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 )
             // InternalOCLinEcore.g:21479:2: rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6
@@ -63927,7 +63927,7 @@
     public final void rule__IfExpCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21490:1: ( ( 'else' ) )
             // InternalOCLinEcore.g:21491:1: ( 'else' )
@@ -63936,11 +63936,11 @@
             // InternalOCLinEcore.g:21492:1: 'else'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); 
+               before(grammarAccess.getIfExpCSAccess().getElseKeyword_5());
             }
             match(input,116,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); 
+               after(grammarAccess.getIfExpCSAccess().getElseKeyword_5());
             }
 
             }
@@ -63968,7 +63968,7 @@
     public final void rule__IfExpCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21509:1: ( rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 )
             // InternalOCLinEcore.g:21510:2: rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7
@@ -64006,7 +64006,7 @@
     public final void rule__IfExpCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21521:1: ( ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) )
             // InternalOCLinEcore.g:21522:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
@@ -64015,7 +64015,7 @@
             // InternalOCLinEcore.g:21523:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6());
             }
             // InternalOCLinEcore.g:21524:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
             // InternalOCLinEcore.g:21524:2: rule__IfExpCS__OwnedElseExpressionAssignment_6
@@ -64029,7 +64029,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6());
             }
 
             }
@@ -64057,7 +64057,7 @@
     public final void rule__IfExpCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21538:1: ( rule__IfExpCS__Group__7__Impl )
             // InternalOCLinEcore.g:21539:2: rule__IfExpCS__Group__7__Impl
@@ -64090,7 +64090,7 @@
     public final void rule__IfExpCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21549:1: ( ( 'endif' ) )
             // InternalOCLinEcore.g:21550:1: ( 'endif' )
@@ -64099,11 +64099,11 @@
             // InternalOCLinEcore.g:21551:1: 'endif'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); 
+               before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
             }
             match(input,117,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); 
+               after(grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
             }
 
             }
@@ -64131,7 +64131,7 @@
     public final void rule__ElseIfThenExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21584:1: ( rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 )
             // InternalOCLinEcore.g:21585:2: rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1
@@ -64169,7 +64169,7 @@
     public final void rule__ElseIfThenExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21596:1: ( ( 'elseif' ) )
             // InternalOCLinEcore.g:21597:1: ( 'elseif' )
@@ -64178,11 +64178,11 @@
             // InternalOCLinEcore.g:21598:1: 'elseif'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
             }
             match(input,118,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
             }
 
             }
@@ -64210,7 +64210,7 @@
     public final void rule__ElseIfThenExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21615:1: ( rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 )
             // InternalOCLinEcore.g:21616:2: rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2
@@ -64248,7 +64248,7 @@
     public final void rule__ElseIfThenExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21627:1: ( ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) )
             // InternalOCLinEcore.g:21628:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
@@ -64257,7 +64257,7 @@
             // InternalOCLinEcore.g:21629:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1());
             }
             // InternalOCLinEcore.g:21630:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
             // InternalOCLinEcore.g:21630:2: rule__ElseIfThenExpCS__OwnedConditionAssignment_1
@@ -64271,7 +64271,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1());
             }
 
             }
@@ -64299,7 +64299,7 @@
     public final void rule__ElseIfThenExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21644:1: ( rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 )
             // InternalOCLinEcore.g:21645:2: rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3
@@ -64337,7 +64337,7 @@
     public final void rule__ElseIfThenExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21656:1: ( ( 'then' ) )
             // InternalOCLinEcore.g:21657:1: ( 'then' )
@@ -64346,11 +64346,11 @@
             // InternalOCLinEcore.g:21658:1: 'then'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
             }
             match(input,115,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
             }
 
             }
@@ -64378,7 +64378,7 @@
     public final void rule__ElseIfThenExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21675:1: ( rule__ElseIfThenExpCS__Group__3__Impl )
             // InternalOCLinEcore.g:21676:2: rule__ElseIfThenExpCS__Group__3__Impl
@@ -64411,7 +64411,7 @@
     public final void rule__ElseIfThenExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21686:1: ( ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) )
             // InternalOCLinEcore.g:21687:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
@@ -64420,7 +64420,7 @@
             // InternalOCLinEcore.g:21688:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
             // InternalOCLinEcore.g:21689:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
             // InternalOCLinEcore.g:21689:2: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3
@@ -64434,7 +64434,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
 
             }
@@ -64462,7 +64462,7 @@
     public final void rule__LetExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21711:1: ( rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 )
             // InternalOCLinEcore.g:21712:2: rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1
@@ -64500,7 +64500,7 @@
     public final void rule__LetExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21723:1: ( ( 'let' ) )
             // InternalOCLinEcore.g:21724:1: ( 'let' )
@@ -64509,11 +64509,11 @@
             // InternalOCLinEcore.g:21725:1: 'let'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); 
+               before(grammarAccess.getLetExpCSAccess().getLetKeyword_0());
             }
             match(input,119,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); 
+               after(grammarAccess.getLetExpCSAccess().getLetKeyword_0());
             }
 
             }
@@ -64541,7 +64541,7 @@
     public final void rule__LetExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21742:1: ( rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 )
             // InternalOCLinEcore.g:21743:2: rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2
@@ -64579,7 +64579,7 @@
     public final void rule__LetExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21754:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) )
             // InternalOCLinEcore.g:21755:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
@@ -64588,7 +64588,7 @@
             // InternalOCLinEcore.g:21756:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1());
             }
             // InternalOCLinEcore.g:21757:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
             // InternalOCLinEcore.g:21757:2: rule__LetExpCS__OwnedVariablesAssignment_1
@@ -64602,7 +64602,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1());
             }
 
             }
@@ -64630,7 +64630,7 @@
     public final void rule__LetExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21771:1: ( rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 )
             // InternalOCLinEcore.g:21772:2: rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3
@@ -64668,7 +64668,7 @@
     public final void rule__LetExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21783:1: ( ( ( rule__LetExpCS__Group_2__0 )* ) )
             // InternalOCLinEcore.g:21784:1: ( ( rule__LetExpCS__Group_2__0 )* )
@@ -64677,7 +64677,7 @@
             // InternalOCLinEcore.g:21785:1: ( rule__LetExpCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getGroup_2()); 
+               before(grammarAccess.getLetExpCSAccess().getGroup_2());
             }
             // InternalOCLinEcore.g:21786:1: ( rule__LetExpCS__Group_2__0 )*
             loop219:
@@ -64709,7 +64709,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getGroup_2()); 
+               after(grammarAccess.getLetExpCSAccess().getGroup_2());
             }
 
             }
@@ -64737,7 +64737,7 @@
     public final void rule__LetExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21800:1: ( rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 )
             // InternalOCLinEcore.g:21801:2: rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4
@@ -64775,7 +64775,7 @@
     public final void rule__LetExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21812:1: ( ( 'in' ) )
             // InternalOCLinEcore.g:21813:1: ( 'in' )
@@ -64784,11 +64784,11 @@
             // InternalOCLinEcore.g:21814:1: 'in'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getInKeyword_3()); 
+               before(grammarAccess.getLetExpCSAccess().getInKeyword_3());
             }
             match(input,113,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getInKeyword_3()); 
+               after(grammarAccess.getLetExpCSAccess().getInKeyword_3());
             }
 
             }
@@ -64816,7 +64816,7 @@
     public final void rule__LetExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21831:1: ( rule__LetExpCS__Group__4__Impl )
             // InternalOCLinEcore.g:21832:2: rule__LetExpCS__Group__4__Impl
@@ -64849,7 +64849,7 @@
     public final void rule__LetExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21842:1: ( ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) )
             // InternalOCLinEcore.g:21843:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
@@ -64858,7 +64858,7 @@
             // InternalOCLinEcore.g:21844:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4());
             }
             // InternalOCLinEcore.g:21845:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
             // InternalOCLinEcore.g:21845:2: rule__LetExpCS__OwnedInExpressionAssignment_4
@@ -64872,7 +64872,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4());
             }
 
             }
@@ -64900,7 +64900,7 @@
     public final void rule__LetExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21869:1: ( rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 )
             // InternalOCLinEcore.g:21870:2: rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1
@@ -64938,7 +64938,7 @@
     public final void rule__LetExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21881:1: ( ( ',' ) )
             // InternalOCLinEcore.g:21882:1: ( ',' )
@@ -64947,11 +64947,11 @@
             // InternalOCLinEcore.g:21883:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); 
+               before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); 
+               after(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
             }
 
             }
@@ -64979,7 +64979,7 @@
     public final void rule__LetExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21900:1: ( rule__LetExpCS__Group_2__1__Impl )
             // InternalOCLinEcore.g:21901:2: rule__LetExpCS__Group_2__1__Impl
@@ -65012,7 +65012,7 @@
     public final void rule__LetExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21911:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) )
             // InternalOCLinEcore.g:21912:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
@@ -65021,7 +65021,7 @@
             // InternalOCLinEcore.g:21913:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1());
             }
             // InternalOCLinEcore.g:21914:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
             // InternalOCLinEcore.g:21914:2: rule__LetExpCS__OwnedVariablesAssignment_2_1
@@ -65035,7 +65035,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1());
             }
 
             }
@@ -65063,7 +65063,7 @@
     public final void rule__LetVariableCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21932:1: ( rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 )
             // InternalOCLinEcore.g:21933:2: rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1
@@ -65101,7 +65101,7 @@
     public final void rule__LetVariableCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21944:1: ( ( ( rule__LetVariableCS__NameAssignment_0 ) ) )
             // InternalOCLinEcore.g:21945:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
@@ -65110,7 +65110,7 @@
             // InternalOCLinEcore.g:21946:1: ( rule__LetVariableCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getNameAssignment_0());
             }
             // InternalOCLinEcore.g:21947:1: ( rule__LetVariableCS__NameAssignment_0 )
             // InternalOCLinEcore.g:21947:2: rule__LetVariableCS__NameAssignment_0
@@ -65124,7 +65124,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getNameAssignment_0());
             }
 
             }
@@ -65152,7 +65152,7 @@
     public final void rule__LetVariableCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21961:1: ( rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 )
             // InternalOCLinEcore.g:21962:2: rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2
@@ -65190,7 +65190,7 @@
     public final void rule__LetVariableCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21973:1: ( ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) )
             // InternalOCLinEcore.g:21974:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
@@ -65199,7 +65199,7 @@
             // InternalOCLinEcore.g:21975:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1());
             }
             // InternalOCLinEcore.g:21976:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             int alt220=2;
@@ -65224,7 +65224,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1());
             }
 
             }
@@ -65252,7 +65252,7 @@
     public final void rule__LetVariableCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:21990:1: ( rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 )
             // InternalOCLinEcore.g:21991:2: rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3
@@ -65290,7 +65290,7 @@
     public final void rule__LetVariableCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22002:1: ( ( ( rule__LetVariableCS__Group_2__0 )? ) )
             // InternalOCLinEcore.g:22003:1: ( ( rule__LetVariableCS__Group_2__0 )? )
@@ -65299,7 +65299,7 @@
             // InternalOCLinEcore.g:22004:1: ( rule__LetVariableCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getGroup_2()); 
+               before(grammarAccess.getLetVariableCSAccess().getGroup_2());
             }
             // InternalOCLinEcore.g:22005:1: ( rule__LetVariableCS__Group_2__0 )?
             int alt221=2;
@@ -65324,7 +65324,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getGroup_2()); 
+               after(grammarAccess.getLetVariableCSAccess().getGroup_2());
             }
 
             }
@@ -65352,7 +65352,7 @@
     public final void rule__LetVariableCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22019:1: ( rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 )
             // InternalOCLinEcore.g:22020:2: rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4
@@ -65390,7 +65390,7 @@
     public final void rule__LetVariableCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22031:1: ( ( '=' ) )
             // InternalOCLinEcore.g:22032:1: ( '=' )
@@ -65399,11 +65399,11 @@
             // InternalOCLinEcore.g:22033:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); 
+               before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
             }
             match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); 
+               after(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
             }
 
             }
@@ -65431,7 +65431,7 @@
     public final void rule__LetVariableCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22050:1: ( rule__LetVariableCS__Group__4__Impl )
             // InternalOCLinEcore.g:22051:2: rule__LetVariableCS__Group__4__Impl
@@ -65464,7 +65464,7 @@
     public final void rule__LetVariableCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22061:1: ( ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) )
             // InternalOCLinEcore.g:22062:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
@@ -65473,7 +65473,7 @@
             // InternalOCLinEcore.g:22063:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4());
             }
             // InternalOCLinEcore.g:22064:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
             // InternalOCLinEcore.g:22064:2: rule__LetVariableCS__OwnedInitExpressionAssignment_4
@@ -65487,7 +65487,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4());
             }
 
             }
@@ -65515,7 +65515,7 @@
     public final void rule__LetVariableCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22088:1: ( rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 )
             // InternalOCLinEcore.g:22089:2: rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1
@@ -65553,7 +65553,7 @@
     public final void rule__LetVariableCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22100:1: ( ( ':' ) )
             // InternalOCLinEcore.g:22101:1: ( ':' )
@@ -65562,11 +65562,11 @@
             // InternalOCLinEcore.g:22102:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -65594,7 +65594,7 @@
     public final void rule__LetVariableCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22119:1: ( rule__LetVariableCS__Group_2__1__Impl )
             // InternalOCLinEcore.g:22120:2: rule__LetVariableCS__Group_2__1__Impl
@@ -65627,7 +65627,7 @@
     public final void rule__LetVariableCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22130:1: ( ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) )
             // InternalOCLinEcore.g:22131:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
@@ -65636,7 +65636,7 @@
             // InternalOCLinEcore.g:22132:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1());
             }
             // InternalOCLinEcore.g:22133:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
             // InternalOCLinEcore.g:22133:2: rule__LetVariableCS__OwnedTypeAssignment_2_1
@@ -65650,7 +65650,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1());
             }
 
             }
@@ -65678,7 +65678,7 @@
     public final void rule__NestedExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22151:1: ( rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 )
             // InternalOCLinEcore.g:22152:2: rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1
@@ -65716,7 +65716,7 @@
     public final void rule__NestedExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22163:1: ( ( '(' ) )
             // InternalOCLinEcore.g:22164:1: ( '(' )
@@ -65725,11 +65725,11 @@
             // InternalOCLinEcore.g:22165:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); 
+               before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); 
+               after(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
             }
 
             }
@@ -65757,7 +65757,7 @@
     public final void rule__NestedExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22182:1: ( rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 )
             // InternalOCLinEcore.g:22183:2: rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2
@@ -65795,7 +65795,7 @@
     public final void rule__NestedExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22194:1: ( ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) )
             // InternalOCLinEcore.g:22195:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
@@ -65804,7 +65804,7 @@
             // InternalOCLinEcore.g:22196:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1()); 
+               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1());
             }
             // InternalOCLinEcore.g:22197:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
             // InternalOCLinEcore.g:22197:2: rule__NestedExpCS__OwnedExpressionAssignment_1
@@ -65818,7 +65818,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1()); 
+               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1());
             }
 
             }
@@ -65846,7 +65846,7 @@
     public final void rule__NestedExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22211:1: ( rule__NestedExpCS__Group__2__Impl )
             // InternalOCLinEcore.g:22212:2: rule__NestedExpCS__Group__2__Impl
@@ -65879,7 +65879,7 @@
     public final void rule__NestedExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22222:1: ( ( ')' ) )
             // InternalOCLinEcore.g:22223:1: ( ')' )
@@ -65888,11 +65888,11 @@
             // InternalOCLinEcore.g:22224:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); 
+               before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); 
+               after(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
             }
 
             }
@@ -65920,7 +65920,7 @@
     public final void rule__SelfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22247:1: ( rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 )
             // InternalOCLinEcore.g:22248:2: rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1
@@ -65958,7 +65958,7 @@
     public final void rule__SelfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22259:1: ( ( () ) )
             // InternalOCLinEcore.g:22260:1: ( () )
@@ -65967,15 +65967,15 @@
             // InternalOCLinEcore.g:22261:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0()); 
+               before(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0());
             }
             // InternalOCLinEcore.g:22262:1: ()
-            // InternalOCLinEcore.g:22264:1: 
+            // InternalOCLinEcore.g:22264:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0()); 
+               after(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0());
             }
 
             }
@@ -65999,7 +65999,7 @@
     public final void rule__SelfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22278:1: ( rule__SelfExpCS__Group__1__Impl )
             // InternalOCLinEcore.g:22279:2: rule__SelfExpCS__Group__1__Impl
@@ -66032,7 +66032,7 @@
     public final void rule__SelfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22289:1: ( ( 'self' ) )
             // InternalOCLinEcore.g:22290:1: ( 'self' )
@@ -66041,11 +66041,11 @@
             // InternalOCLinEcore.g:22291:1: 'self'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); 
+               before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
             }
             match(input,120,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); 
+               after(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
             }
 
             }
@@ -66073,7 +66073,7 @@
     public final void rule__MultiplicityBoundsCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22312:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
             // InternalOCLinEcore.g:22313:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
@@ -66111,7 +66111,7 @@
     public final void rule__MultiplicityBoundsCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22324:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
             // InternalOCLinEcore.g:22325:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
@@ -66120,7 +66120,7 @@
             // InternalOCLinEcore.g:22326:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
             // InternalOCLinEcore.g:22327:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             // InternalOCLinEcore.g:22327:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
@@ -66134,7 +66134,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
 
             }
@@ -66162,7 +66162,7 @@
     public final void rule__MultiplicityBoundsCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22341:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
             // InternalOCLinEcore.g:22342:2: rule__MultiplicityBoundsCS__Group__1__Impl
@@ -66195,7 +66195,7 @@
     public final void rule__MultiplicityBoundsCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22352:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
             // InternalOCLinEcore.g:22353:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
@@ -66204,7 +66204,7 @@
             // InternalOCLinEcore.g:22354:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:22355:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             int alt222=2;
@@ -66229,7 +66229,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
 
             }
@@ -66257,7 +66257,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22373:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
             // InternalOCLinEcore.g:22374:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
@@ -66295,7 +66295,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22385:1: ( ( '..' ) )
             // InternalOCLinEcore.g:22386:1: ( '..' )
@@ -66304,11 +66304,11 @@
             // InternalOCLinEcore.g:22387:1: '..'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
             }
             match(input,104,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
             }
 
             }
@@ -66336,7 +66336,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22404:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:22405:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
@@ -66369,7 +66369,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22415:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
             // InternalOCLinEcore.g:22416:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
@@ -66378,7 +66378,7 @@
             // InternalOCLinEcore.g:22417:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
             // InternalOCLinEcore.g:22418:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             // InternalOCLinEcore.g:22418:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
@@ -66392,7 +66392,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
 
             }
@@ -66420,7 +66420,7 @@
     public final void rule__MultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22436:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
             // InternalOCLinEcore.g:22437:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
@@ -66458,7 +66458,7 @@
     public final void rule__MultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22448:1: ( ( '[' ) )
             // InternalOCLinEcore.g:22449:1: ( '[' )
@@ -66467,11 +66467,11 @@
             // InternalOCLinEcore.g:22450:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
             }
             match(input,111,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
             }
 
             }
@@ -66499,7 +66499,7 @@
     public final void rule__MultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22467:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
             // InternalOCLinEcore.g:22468:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
@@ -66537,7 +66537,7 @@
     public final void rule__MultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22479:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
             // InternalOCLinEcore.g:22480:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
@@ -66546,7 +66546,7 @@
             // InternalOCLinEcore.g:22481:1: ( rule__MultiplicityCS__Alternatives_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1()); 
+               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
             // InternalOCLinEcore.g:22482:1: ( rule__MultiplicityCS__Alternatives_1 )
             // InternalOCLinEcore.g:22482:2: rule__MultiplicityCS__Alternatives_1
@@ -66560,7 +66560,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_1()); 
+               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
 
             }
@@ -66588,7 +66588,7 @@
     public final void rule__MultiplicityCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22496:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
             // InternalOCLinEcore.g:22497:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
@@ -66626,7 +66626,7 @@
     public final void rule__MultiplicityCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22508:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
             // InternalOCLinEcore.g:22509:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
@@ -66635,7 +66635,7 @@
             // InternalOCLinEcore.g:22510:1: ( rule__MultiplicityCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
             // InternalOCLinEcore.g:22511:1: ( rule__MultiplicityCS__Alternatives_2 )?
             int alt223=2;
@@ -66660,7 +66660,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
 
             }
@@ -66688,7 +66688,7 @@
     public final void rule__MultiplicityCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22525:1: ( rule__MultiplicityCS__Group__3__Impl )
             // InternalOCLinEcore.g:22526:2: rule__MultiplicityCS__Group__3__Impl
@@ -66721,7 +66721,7 @@
     public final void rule__MultiplicityCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22536:1: ( ( ']' ) )
             // InternalOCLinEcore.g:22537:1: ( ']' )
@@ -66730,11 +66730,11 @@
             // InternalOCLinEcore.g:22538:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); 
+               before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
             }
             match(input,112,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); 
+               after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
             }
 
             }
@@ -66762,7 +66762,7 @@
     public final void rule__PathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22563:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
             // InternalOCLinEcore.g:22564:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
@@ -66800,7 +66800,7 @@
     public final void rule__PathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22575:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
             // InternalOCLinEcore.g:22576:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
@@ -66809,7 +66809,7 @@
             // InternalOCLinEcore.g:22577:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
             // InternalOCLinEcore.g:22578:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             // InternalOCLinEcore.g:22578:2: rule__PathNameCS__OwnedPathElementsAssignment_0
@@ -66823,7 +66823,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
 
             }
@@ -66851,7 +66851,7 @@
     public final void rule__PathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22592:1: ( rule__PathNameCS__Group__1__Impl )
             // InternalOCLinEcore.g:22593:2: rule__PathNameCS__Group__1__Impl
@@ -66884,7 +66884,7 @@
     public final void rule__PathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22603:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
             // InternalOCLinEcore.g:22604:1: ( ( rule__PathNameCS__Group_1__0 )* )
@@ -66893,7 +66893,7 @@
             // InternalOCLinEcore.g:22605:1: ( rule__PathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getGroup_1()); 
+               before(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:22606:1: ( rule__PathNameCS__Group_1__0 )*
             loop224:
@@ -66925,7 +66925,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getGroup_1()); 
+               after(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
 
             }
@@ -66953,7 +66953,7 @@
     public final void rule__PathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22624:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
             // InternalOCLinEcore.g:22625:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
@@ -66991,7 +66991,7 @@
     public final void rule__PathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22636:1: ( ( '::' ) )
             // InternalOCLinEcore.g:22637:1: ( '::' )
@@ -67000,11 +67000,11 @@
             // InternalOCLinEcore.g:22638:1: '::'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); 
+               before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
             }
             match(input,103,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); 
+               after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
             }
 
             }
@@ -67032,7 +67032,7 @@
     public final void rule__PathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22655:1: ( rule__PathNameCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:22656:2: rule__PathNameCS__Group_1__1__Impl
@@ -67065,7 +67065,7 @@
     public final void rule__PathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22666:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
             // InternalOCLinEcore.g:22667:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
@@ -67074,7 +67074,7 @@
             // InternalOCLinEcore.g:22668:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
             // InternalOCLinEcore.g:22669:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             // InternalOCLinEcore.g:22669:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
@@ -67088,7 +67088,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
 
             }
@@ -67116,7 +67116,7 @@
     public final void rule__TemplateBindingCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22687:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
             // InternalOCLinEcore.g:22688:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
@@ -67154,7 +67154,7 @@
     public final void rule__TemplateBindingCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22699:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
             // InternalOCLinEcore.g:22700:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
@@ -67163,7 +67163,7 @@
             // InternalOCLinEcore.g:22701:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
             // InternalOCLinEcore.g:22702:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             // InternalOCLinEcore.g:22702:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
@@ -67177,7 +67177,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
 
             }
@@ -67205,7 +67205,7 @@
     public final void rule__TemplateBindingCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22716:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
             // InternalOCLinEcore.g:22717:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
@@ -67243,7 +67243,7 @@
     public final void rule__TemplateBindingCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22728:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
             // InternalOCLinEcore.g:22729:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
@@ -67252,7 +67252,7 @@
             // InternalOCLinEcore.g:22730:1: ( rule__TemplateBindingCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getGroup_1()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:22731:1: ( rule__TemplateBindingCS__Group_1__0 )*
             loop225:
@@ -67284,7 +67284,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getGroup_1()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
 
             }
@@ -67312,7 +67312,7 @@
     public final void rule__TemplateBindingCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22745:1: ( rule__TemplateBindingCS__Group__2__Impl )
             // InternalOCLinEcore.g:22746:2: rule__TemplateBindingCS__Group__2__Impl
@@ -67345,7 +67345,7 @@
     public final void rule__TemplateBindingCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22756:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
             // InternalOCLinEcore.g:22757:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
@@ -67354,7 +67354,7 @@
             // InternalOCLinEcore.g:22758:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
             // InternalOCLinEcore.g:22759:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             int alt226=2;
@@ -67379,7 +67379,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
 
             }
@@ -67407,7 +67407,7 @@
     public final void rule__TemplateBindingCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22779:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
             // InternalOCLinEcore.g:22780:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
@@ -67445,7 +67445,7 @@
     public final void rule__TemplateBindingCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22791:1: ( ( ',' ) )
             // InternalOCLinEcore.g:22792:1: ( ',' )
@@ -67454,11 +67454,11 @@
             // InternalOCLinEcore.g:22793:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
             }
 
             }
@@ -67486,7 +67486,7 @@
     public final void rule__TemplateBindingCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22810:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
             // InternalOCLinEcore.g:22811:2: rule__TemplateBindingCS__Group_1__1__Impl
@@ -67519,7 +67519,7 @@
     public final void rule__TemplateBindingCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22821:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
             // InternalOCLinEcore.g:22822:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
@@ -67528,7 +67528,7 @@
             // InternalOCLinEcore.g:22823:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
             // InternalOCLinEcore.g:22824:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             // InternalOCLinEcore.g:22824:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
@@ -67542,7 +67542,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
 
             }
@@ -67570,7 +67570,7 @@
     public final void rule__TypeParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22842:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
             // InternalOCLinEcore.g:22843:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
@@ -67608,7 +67608,7 @@
     public final void rule__TypeParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22854:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
             // InternalOCLinEcore.g:22855:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
@@ -67617,7 +67617,7 @@
             // InternalOCLinEcore.g:22856:1: ( rule__TypeParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
             // InternalOCLinEcore.g:22857:1: ( rule__TypeParameterCS__NameAssignment_0 )
             // InternalOCLinEcore.g:22857:2: rule__TypeParameterCS__NameAssignment_0
@@ -67631,7 +67631,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
 
             }
@@ -67659,7 +67659,7 @@
     public final void rule__TypeParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22871:1: ( rule__TypeParameterCS__Group__1__Impl )
             // InternalOCLinEcore.g:22872:2: rule__TypeParameterCS__Group__1__Impl
@@ -67692,7 +67692,7 @@
     public final void rule__TypeParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22882:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
             // InternalOCLinEcore.g:22883:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
@@ -67701,7 +67701,7 @@
             // InternalOCLinEcore.g:22884:1: ( rule__TypeParameterCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
             // InternalOCLinEcore.g:22885:1: ( rule__TypeParameterCS__Group_1__0 )?
             int alt227=2;
@@ -67726,7 +67726,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
 
             }
@@ -67754,7 +67754,7 @@
     public final void rule__TypeParameterCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22903:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
             // InternalOCLinEcore.g:22904:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
@@ -67792,7 +67792,7 @@
     public final void rule__TypeParameterCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22915:1: ( ( 'extends' ) )
             // InternalOCLinEcore.g:22916:1: ( 'extends' )
@@ -67801,11 +67801,11 @@
             // InternalOCLinEcore.g:22917:1: 'extends'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
             }
             match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
             }
 
             }
@@ -67833,7 +67833,7 @@
     public final void rule__TypeParameterCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22934:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
             // InternalOCLinEcore.g:22935:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
@@ -67871,7 +67871,7 @@
     public final void rule__TypeParameterCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22946:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
             // InternalOCLinEcore.g:22947:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
@@ -67880,7 +67880,7 @@
             // InternalOCLinEcore.g:22948:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
             // InternalOCLinEcore.g:22949:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             // InternalOCLinEcore.g:22949:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
@@ -67894,7 +67894,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
 
             }
@@ -67922,7 +67922,7 @@
     public final void rule__TypeParameterCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22963:1: ( rule__TypeParameterCS__Group_1__2__Impl )
             // InternalOCLinEcore.g:22964:2: rule__TypeParameterCS__Group_1__2__Impl
@@ -67955,7 +67955,7 @@
     public final void rule__TypeParameterCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22974:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
             // InternalOCLinEcore.g:22975:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
@@ -67964,7 +67964,7 @@
             // InternalOCLinEcore.g:22976:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
             // InternalOCLinEcore.g:22977:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             loop228:
@@ -67996,7 +67996,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup_1_2()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
 
             }
@@ -68024,7 +68024,7 @@
     public final void rule__TypeParameterCS__Group_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:22997:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
             // InternalOCLinEcore.g:22998:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
@@ -68062,7 +68062,7 @@
     public final void rule__TypeParameterCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23009:1: ( ( '&&' ) )
             // InternalOCLinEcore.g:23010:1: ( '&&' )
@@ -68071,11 +68071,11 @@
             // InternalOCLinEcore.g:23011:1: '&&'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
             }
             match(input,121,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
             }
 
             }
@@ -68103,7 +68103,7 @@
     public final void rule__TypeParameterCS__Group_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23028:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
             // InternalOCLinEcore.g:23029:2: rule__TypeParameterCS__Group_1_2__1__Impl
@@ -68136,7 +68136,7 @@
     public final void rule__TypeParameterCS__Group_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23039:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
             // InternalOCLinEcore.g:23040:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
@@ -68145,7 +68145,7 @@
             // InternalOCLinEcore.g:23041:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
             // InternalOCLinEcore.g:23042:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             // InternalOCLinEcore.g:23042:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
@@ -68159,7 +68159,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
 
             }
@@ -68187,7 +68187,7 @@
     public final void rule__WildcardTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23060:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
             // InternalOCLinEcore.g:23061:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
@@ -68225,7 +68225,7 @@
     public final void rule__WildcardTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23072:1: ( ( () ) )
             // InternalOCLinEcore.g:23073:1: ( () )
@@ -68234,15 +68234,15 @@
             // InternalOCLinEcore.g:23074:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
             // InternalOCLinEcore.g:23075:1: ()
-            // InternalOCLinEcore.g:23077:1: 
+            // InternalOCLinEcore.g:23077:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
 
             }
@@ -68266,7 +68266,7 @@
     public final void rule__WildcardTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23091:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
             // InternalOCLinEcore.g:23092:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
@@ -68304,7 +68304,7 @@
     public final void rule__WildcardTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23103:1: ( ( '?' ) )
             // InternalOCLinEcore.g:23104:1: ( '?' )
@@ -68313,11 +68313,11 @@
             // InternalOCLinEcore.g:23105:1: '?'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
             }
             match(input,95,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
             }
 
             }
@@ -68345,7 +68345,7 @@
     public final void rule__WildcardTypeRefCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23122:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
             // InternalOCLinEcore.g:23123:2: rule__WildcardTypeRefCS__Group__2__Impl
@@ -68378,7 +68378,7 @@
     public final void rule__WildcardTypeRefCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23133:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
             // InternalOCLinEcore.g:23134:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
@@ -68387,7 +68387,7 @@
             // InternalOCLinEcore.g:23135:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
             // InternalOCLinEcore.g:23136:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             int alt229=2;
@@ -68412,7 +68412,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
 
             }
@@ -68440,7 +68440,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23156:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
             // InternalOCLinEcore.g:23157:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
@@ -68478,7 +68478,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23168:1: ( ( 'extends' ) )
             // InternalOCLinEcore.g:23169:1: ( 'extends' )
@@ -68487,11 +68487,11 @@
             // InternalOCLinEcore.g:23170:1: 'extends'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
             }
             match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
             }
 
             }
@@ -68519,7 +68519,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23187:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
             // InternalOCLinEcore.g:23188:2: rule__WildcardTypeRefCS__Group_2__1__Impl
@@ -68552,7 +68552,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23198:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
             // InternalOCLinEcore.g:23199:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
@@ -68561,7 +68561,7 @@
             // InternalOCLinEcore.g:23200:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
             // InternalOCLinEcore.g:23201:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             // InternalOCLinEcore.g:23201:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
@@ -68575,7 +68575,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
 
             }
@@ -68603,7 +68603,7 @@
     public final void rule__TopLevelCS__OwnedImportsAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23220:1: ( ( ruleImportCS ) )
             // InternalOCLinEcore.g:23221:1: ( ruleImportCS )
@@ -68612,7 +68612,7 @@
             // InternalOCLinEcore.g:23222:1: ruleImportCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTopLevelCSAccess().getOwnedImportsImportCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTopLevelCSAccess().getOwnedImportsImportCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleImportCS();
@@ -68620,7 +68620,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTopLevelCSAccess().getOwnedImportsImportCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTopLevelCSAccess().getOwnedImportsImportCSParserRuleCall_2_0());
             }
 
             }
@@ -68648,7 +68648,7 @@
     public final void rule__TopLevelCS__OwnedPackagesAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23235:1: ( ( rulePackageCS ) )
             // InternalOCLinEcore.g:23236:1: ( rulePackageCS )
@@ -68657,7 +68657,7 @@
             // InternalOCLinEcore.g:23237:1: rulePackageCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTopLevelCSAccess().getOwnedPackagesPackageCSParserRuleCall_3_0()); 
+               before(grammarAccess.getTopLevelCSAccess().getOwnedPackagesPackageCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePackageCS();
@@ -68665,7 +68665,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTopLevelCSAccess().getOwnedPackagesPackageCSParserRuleCall_3_0()); 
+               after(grammarAccess.getTopLevelCSAccess().getOwnedPackagesPackageCSParserRuleCall_3_0());
             }
 
             }
@@ -68693,7 +68693,7 @@
     public final void rule__InvariantConstraintCS__IsCallableAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23250:1: ( ( ( 'callable' ) ) )
             // InternalOCLinEcore.g:23251:1: ( ( 'callable' ) )
@@ -68702,23 +68702,23 @@
             // InternalOCLinEcore.g:23252:1: ( 'callable' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0());
             }
             // InternalOCLinEcore.g:23253:1: ( 'callable' )
             // InternalOCLinEcore.g:23254:1: 'callable'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0());
             }
             match(input,20,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0());
             }
 
             }
@@ -68746,7 +68746,7 @@
     public final void rule__InvariantConstraintCS__StereotypeAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23273:1: ( ( ( 'invariant' ) ) )
             // InternalOCLinEcore.g:23274:1: ( ( 'invariant' ) )
@@ -68755,23 +68755,23 @@
             // InternalOCLinEcore.g:23275:1: ( 'invariant' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0());
             }
             // InternalOCLinEcore.g:23276:1: ( 'invariant' )
             // InternalOCLinEcore.g:23277:1: 'invariant'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0());
             }
             match(input,56,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0());
             }
 
             }
@@ -68799,7 +68799,7 @@
     public final void rule__InvariantConstraintCS__NameAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23296:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:23297:1: ( ruleUnrestrictedName )
@@ -68808,7 +68808,7 @@
             // InternalOCLinEcore.g:23298:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -68816,7 +68816,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0());
             }
 
             }
@@ -68844,7 +68844,7 @@
     public final void rule__InvariantConstraintCS__OwnedMessageSpecificationAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23311:1: ( ( ruleSpecificationCS ) )
             // InternalOCLinEcore.g:23312:1: ( ruleSpecificationCS )
@@ -68853,7 +68853,7 @@
             // InternalOCLinEcore.g:23313:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -68861,7 +68861,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -68889,7 +68889,7 @@
     public final void rule__InvariantConstraintCS__OwnedSpecificationAssignment_3_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23326:1: ( ( ruleSpecificationCS ) )
             // InternalOCLinEcore.g:23327:1: ( ruleSpecificationCS )
@@ -68898,7 +68898,7 @@
             // InternalOCLinEcore.g:23328:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0_1_0()); 
+               before(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -68906,7 +68906,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0_1_0()); 
+               after(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0_1_0());
             }
 
             }
@@ -68934,7 +68934,7 @@
     public final void rule__PostconditionConstraintCS__StereotypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23341:1: ( ( ( 'postcondition' ) ) )
             // InternalOCLinEcore.g:23342:1: ( ( 'postcondition' ) )
@@ -68943,23 +68943,23 @@
             // InternalOCLinEcore.g:23343:1: ( 'postcondition' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0());
             }
             // InternalOCLinEcore.g:23344:1: ( 'postcondition' )
             // InternalOCLinEcore.g:23345:1: 'postcondition'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0());
             }
             match(input,39,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0());
             }
 
             }
@@ -68987,7 +68987,7 @@
     public final void rule__PostconditionConstraintCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23364:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:23365:1: ( ruleUnrestrictedName )
@@ -68996,7 +68996,7 @@
             // InternalOCLinEcore.g:23366:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -69004,7 +69004,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
             }
 
             }
@@ -69032,7 +69032,7 @@
     public final void rule__PostconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23379:1: ( ( ruleSpecificationCS ) )
             // InternalOCLinEcore.g:23380:1: ( ruleSpecificationCS )
@@ -69041,7 +69041,7 @@
             // InternalOCLinEcore.g:23381:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -69049,7 +69049,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
             }
 
             }
@@ -69077,7 +69077,7 @@
     public final void rule__PostconditionConstraintCS__OwnedSpecificationAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23394:1: ( ( ruleSpecificationCS ) )
             // InternalOCLinEcore.g:23395:1: ( ruleSpecificationCS )
@@ -69086,7 +69086,7 @@
             // InternalOCLinEcore.g:23396:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+               before(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -69094,7 +69094,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+               after(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
             }
 
             }
@@ -69122,7 +69122,7 @@
     public final void rule__PreconditionConstraintCS__StereotypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23409:1: ( ( ( 'precondition' ) ) )
             // InternalOCLinEcore.g:23410:1: ( ( 'precondition' ) )
@@ -69131,23 +69131,23 @@
             // InternalOCLinEcore.g:23411:1: ( 'precondition' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0());
             }
             // InternalOCLinEcore.g:23412:1: ( 'precondition' )
             // InternalOCLinEcore.g:23413:1: 'precondition'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0());
             }
             match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0());
             }
 
             }
@@ -69175,7 +69175,7 @@
     public final void rule__PreconditionConstraintCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23432:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:23433:1: ( ruleUnrestrictedName )
@@ -69184,7 +69184,7 @@
             // InternalOCLinEcore.g:23434:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -69192,7 +69192,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
             }
 
             }
@@ -69220,7 +69220,7 @@
     public final void rule__PreconditionConstraintCS__OwnedMessageSpecificationAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23447:1: ( ( ruleSpecificationCS ) )
             // InternalOCLinEcore.g:23448:1: ( ruleSpecificationCS )
@@ -69229,7 +69229,7 @@
             // InternalOCLinEcore.g:23449:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -69237,7 +69237,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
             }
 
             }
@@ -69265,7 +69265,7 @@
     public final void rule__PreconditionConstraintCS__OwnedSpecificationAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23462:1: ( ( ruleSpecificationCS ) )
             // InternalOCLinEcore.g:23463:1: ( ruleSpecificationCS )
@@ -69274,7 +69274,7 @@
             // InternalOCLinEcore.g:23464:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+               before(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -69282,7 +69282,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+               after(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
             }
 
             }
@@ -69310,7 +69310,7 @@
     public final void rule__AnnotationCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23477:1: ( ( ( rule__AnnotationCS__NameAlternatives_2_0 ) ) )
             // InternalOCLinEcore.g:23478:1: ( ( rule__AnnotationCS__NameAlternatives_2_0 ) )
@@ -69319,7 +69319,7 @@
             // InternalOCLinEcore.g:23479:1: ( rule__AnnotationCS__NameAlternatives_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getNameAlternatives_2_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getNameAlternatives_2_0());
             }
             // InternalOCLinEcore.g:23480:1: ( rule__AnnotationCS__NameAlternatives_2_0 )
             // InternalOCLinEcore.g:23480:2: rule__AnnotationCS__NameAlternatives_2_0
@@ -69333,7 +69333,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getNameAlternatives_2_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getNameAlternatives_2_0());
             }
 
             }
@@ -69361,7 +69361,7 @@
     public final void rule__AnnotationCS__OwnedDetailsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23493:1: ( ( ruleDetailCS ) )
             // InternalOCLinEcore.g:23494:1: ( ruleDetailCS )
@@ -69370,7 +69370,7 @@
             // InternalOCLinEcore.g:23495:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleDetailCS();
@@ -69378,7 +69378,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
             }
 
             }
@@ -69406,7 +69406,7 @@
     public final void rule__AnnotationCS__OwnedDetailsAssignment_3_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23508:1: ( ( ruleDetailCS ) )
             // InternalOCLinEcore.g:23509:1: ( ruleDetailCS )
@@ -69415,7 +69415,7 @@
             // InternalOCLinEcore.g:23510:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleDetailCS();
@@ -69423,7 +69423,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
             }
 
             }
@@ -69451,7 +69451,7 @@
     public final void rule__AnnotationCS__OwnedAnnotationsAssignment_4_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23523:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLinEcore.g:23524:1: ( ruleAnnotationElementCS )
@@ -69460,7 +69460,7 @@
             // InternalOCLinEcore.g:23525:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -69468,7 +69468,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0());
             }
 
             }
@@ -69496,7 +69496,7 @@
     public final void rule__AnnotationCS__OwnedContentsAssignment_4_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23538:1: ( ( ruleModelElementCS ) )
             // InternalOCLinEcore.g:23539:1: ( ruleModelElementCS )
@@ -69505,7 +69505,7 @@
             // InternalOCLinEcore.g:23540:1: ruleModelElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getOwnedContentsModelElementCSParserRuleCall_4_0_1_1_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getOwnedContentsModelElementCSParserRuleCall_4_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleModelElementCS();
@@ -69513,7 +69513,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getOwnedContentsModelElementCSParserRuleCall_4_0_1_1_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getOwnedContentsModelElementCSParserRuleCall_4_0_1_1_0());
             }
 
             }
@@ -69541,7 +69541,7 @@
     public final void rule__AnnotationCS__OwnedReferencesAssignment_4_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23553:1: ( ( ruleModelElementRefCS ) )
             // InternalOCLinEcore.g:23554:1: ( ruleModelElementRefCS )
@@ -69550,7 +69550,7 @@
             // InternalOCLinEcore.g:23555:1: ruleModelElementRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getOwnedReferencesModelElementRefCSParserRuleCall_4_0_1_2_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getOwnedReferencesModelElementRefCSParserRuleCall_4_0_1_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleModelElementRefCS();
@@ -69558,7 +69558,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getOwnedReferencesModelElementRefCSParserRuleCall_4_0_1_2_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getOwnedReferencesModelElementRefCSParserRuleCall_4_0_1_2_0());
             }
 
             }
@@ -69586,7 +69586,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_0_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23568:1: ( ( ( 'static' ) ) )
             // InternalOCLinEcore.g:23569:1: ( ( 'static' ) )
@@ -69595,23 +69595,23 @@
             // InternalOCLinEcore.g:23570:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
             // InternalOCLinEcore.g:23571:1: ( 'static' )
             // InternalOCLinEcore.g:23572:1: 'static'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
             match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
 
             }
@@ -69639,7 +69639,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_0_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23591:1: ( ( ( 'definition' ) ) )
             // InternalOCLinEcore.g:23592:1: ( ( 'definition' ) )
@@ -69648,23 +69648,23 @@
             // InternalOCLinEcore.g:23593:1: ( 'definition' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
             // InternalOCLinEcore.g:23594:1: ( 'definition' )
             // InternalOCLinEcore.g:23595:1: 'definition'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
             match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
 
             }
@@ -69692,7 +69692,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23614:1: ( ( ( 'definition' ) ) )
             // InternalOCLinEcore.g:23615:1: ( ( 'definition' ) )
@@ -69701,23 +69701,23 @@
             // InternalOCLinEcore.g:23616:1: ( 'definition' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
             // InternalOCLinEcore.g:23617:1: ( 'definition' )
             // InternalOCLinEcore.g:23618:1: 'definition'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
             match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
 
             }
@@ -69745,7 +69745,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23637:1: ( ( ( 'static' ) ) )
             // InternalOCLinEcore.g:23638:1: ( ( 'static' ) )
@@ -69754,23 +69754,23 @@
             // InternalOCLinEcore.g:23639:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
             // InternalOCLinEcore.g:23640:1: ( 'static' )
             // InternalOCLinEcore.g:23641:1: 'static'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
             match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
 
             }
@@ -69798,7 +69798,7 @@
     public final void rule__AttributeCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23660:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:23661:1: ( ruleUnrestrictedName )
@@ -69807,7 +69807,7 @@
             // InternalOCLinEcore.g:23662:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
+               before(grammarAccess.getAttributeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -69815,7 +69815,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
+               after(grammarAccess.getAttributeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
             }
 
             }
@@ -69843,7 +69843,7 @@
     public final void rule__AttributeCS__OwnedTypeAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23675:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLinEcore.g:23676:1: ( ruleTypedMultiplicityRefCS )
@@ -69852,7 +69852,7 @@
             // InternalOCLinEcore.g:23677:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_3_1_0()); 
+               before(grammarAccess.getAttributeCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -69860,7 +69860,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_3_1_0()); 
+               after(grammarAccess.getAttributeCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_3_1_0());
             }
 
             }
@@ -69888,7 +69888,7 @@
     public final void rule__AttributeCS__DefaultAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23690:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalOCLinEcore.g:23691:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -69897,11 +69897,11 @@
             // InternalOCLinEcore.g:23692:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0()); 
+               before(grammarAccess.getAttributeCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0()); 
+               after(grammarAccess.getAttributeCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0());
             }
 
             }
@@ -69929,7 +69929,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23705:1: ( ( ( 'derived' ) ) )
             // InternalOCLinEcore.g:23706:1: ( ( 'derived' ) )
@@ -69938,23 +69938,23 @@
             // InternalOCLinEcore.g:23707:1: ( 'derived' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0());
             }
             // InternalOCLinEcore.g:23708:1: ( 'derived' )
             // InternalOCLinEcore.g:23709:1: 'derived'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0());
             }
             match(input,26,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0());
             }
 
             }
@@ -69982,7 +69982,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23728:1: ( ( ( '!derived' ) ) )
             // InternalOCLinEcore.g:23729:1: ( ( '!derived' ) )
@@ -69991,23 +69991,23 @@
             // InternalOCLinEcore.g:23730:1: ( '!derived' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0());
             }
             // InternalOCLinEcore.g:23731:1: ( '!derived' )
             // InternalOCLinEcore.g:23732:1: '!derived'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0());
             }
             match(input,122,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0());
             }
 
             }
@@ -70035,7 +70035,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23751:1: ( ( ( 'id' ) ) )
             // InternalOCLinEcore.g:23752:1: ( ( 'id' ) )
@@ -70044,23 +70044,23 @@
             // InternalOCLinEcore.g:23753:1: ( 'id' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0());
             }
             // InternalOCLinEcore.g:23754:1: ( 'id' )
             // InternalOCLinEcore.g:23755:1: 'id'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0());
             }
             match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0());
             }
 
             }
@@ -70088,7 +70088,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23774:1: ( ( ( '!id' ) ) )
             // InternalOCLinEcore.g:23775:1: ( ( '!id' ) )
@@ -70097,23 +70097,23 @@
             // InternalOCLinEcore.g:23776:1: ( '!id' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0());
             }
             // InternalOCLinEcore.g:23777:1: ( '!id' )
             // InternalOCLinEcore.g:23778:1: '!id'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0());
             }
             match(input,123,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0());
             }
 
             }
@@ -70141,7 +70141,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23797:1: ( ( ( 'ordered' ) ) )
             // InternalOCLinEcore.g:23798:1: ( ( 'ordered' ) )
@@ -70150,23 +70150,23 @@
             // InternalOCLinEcore.g:23799:1: ( 'ordered' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0());
             }
             // InternalOCLinEcore.g:23800:1: ( 'ordered' )
             // InternalOCLinEcore.g:23801:1: 'ordered'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0());
             }
             match(input,37,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0());
             }
 
             }
@@ -70194,7 +70194,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23820:1: ( ( ( '!ordered' ) ) )
             // InternalOCLinEcore.g:23821:1: ( ( '!ordered' ) )
@@ -70203,23 +70203,23 @@
             // InternalOCLinEcore.g:23822:1: ( '!ordered' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0());
             }
             // InternalOCLinEcore.g:23823:1: ( '!ordered' )
             // InternalOCLinEcore.g:23824:1: '!ordered'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0());
             }
             match(input,124,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0());
             }
 
             }
@@ -70247,7 +70247,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23843:1: ( ( ( 'readonly' ) ) )
             // InternalOCLinEcore.g:23844:1: ( ( 'readonly' ) )
@@ -70256,23 +70256,23 @@
             // InternalOCLinEcore.g:23845:1: ( 'readonly' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0());
             }
             // InternalOCLinEcore.g:23846:1: ( 'readonly' )
             // InternalOCLinEcore.g:23847:1: 'readonly'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0());
             }
             match(input,43,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0());
             }
 
             }
@@ -70300,7 +70300,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23866:1: ( ( ( '!readonly' ) ) )
             // InternalOCLinEcore.g:23867:1: ( ( '!readonly' ) )
@@ -70309,23 +70309,23 @@
             // InternalOCLinEcore.g:23868:1: ( '!readonly' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0());
             }
             // InternalOCLinEcore.g:23869:1: ( '!readonly' )
             // InternalOCLinEcore.g:23870:1: '!readonly'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0());
             }
             match(input,125,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0());
             }
 
             }
@@ -70353,7 +70353,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23889:1: ( ( ( 'transient' ) ) )
             // InternalOCLinEcore.g:23890:1: ( ( 'transient' ) )
@@ -70362,23 +70362,23 @@
             // InternalOCLinEcore.g:23891:1: ( 'transient' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0());
             }
             // InternalOCLinEcore.g:23892:1: ( 'transient' )
             // InternalOCLinEcore.g:23893:1: 'transient'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0());
             }
             match(input,48,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0());
             }
 
             }
@@ -70406,7 +70406,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23912:1: ( ( ( '!transient' ) ) )
             // InternalOCLinEcore.g:23913:1: ( ( '!transient' ) )
@@ -70415,23 +70415,23 @@
             // InternalOCLinEcore.g:23914:1: ( '!transient' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0());
             }
             // InternalOCLinEcore.g:23915:1: ( '!transient' )
             // InternalOCLinEcore.g:23916:1: '!transient'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0());
             }
             match(input,126,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0());
             }
 
             }
@@ -70459,7 +70459,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23935:1: ( ( ( 'unique' ) ) )
             // InternalOCLinEcore.g:23936:1: ( ( 'unique' ) )
@@ -70468,23 +70468,23 @@
             // InternalOCLinEcore.g:23937:1: ( 'unique' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0());
             }
             // InternalOCLinEcore.g:23938:1: ( 'unique' )
             // InternalOCLinEcore.g:23939:1: 'unique'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0());
             }
             match(input,49,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0());
             }
 
             }
@@ -70512,7 +70512,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_11() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23958:1: ( ( ( '!unique' ) ) )
             // InternalOCLinEcore.g:23959:1: ( ( '!unique' ) )
@@ -70521,23 +70521,23 @@
             // InternalOCLinEcore.g:23960:1: ( '!unique' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0());
             }
             // InternalOCLinEcore.g:23961:1: ( '!unique' )
             // InternalOCLinEcore.g:23962:1: '!unique'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0());
             }
             match(input,127,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0());
             }
 
             }
@@ -70565,7 +70565,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:23981:1: ( ( ( 'unsettable' ) ) )
             // InternalOCLinEcore.g:23982:1: ( ( 'unsettable' ) )
@@ -70574,23 +70574,23 @@
             // InternalOCLinEcore.g:23983:1: ( 'unsettable' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0());
             }
             // InternalOCLinEcore.g:23984:1: ( 'unsettable' )
             // InternalOCLinEcore.g:23985:1: 'unsettable'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0());
             }
             match(input,50,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0());
             }
 
             }
@@ -70618,7 +70618,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_13() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24004:1: ( ( ( '!unsettable' ) ) )
             // InternalOCLinEcore.g:24005:1: ( ( '!unsettable' ) )
@@ -70627,23 +70627,23 @@
             // InternalOCLinEcore.g:24006:1: ( '!unsettable' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0());
             }
             // InternalOCLinEcore.g:24007:1: ( '!unsettable' )
             // InternalOCLinEcore.g:24008:1: '!unsettable'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0());
             }
             match(input,128,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0());
             }
 
             }
@@ -70671,7 +70671,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_14() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24027:1: ( ( ( 'volatile' ) ) )
             // InternalOCLinEcore.g:24028:1: ( ( 'volatile' ) )
@@ -70680,23 +70680,23 @@
             // InternalOCLinEcore.g:24029:1: ( 'volatile' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0());
             }
             // InternalOCLinEcore.g:24030:1: ( 'volatile' )
             // InternalOCLinEcore.g:24031:1: 'volatile'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0());
             }
             match(input,51,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0());
             }
 
             }
@@ -70724,7 +70724,7 @@
     public final void rule__AttributeCS__QualifiersAssignment_5_1_0_15() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24050:1: ( ( ( '!volatile' ) ) )
             // InternalOCLinEcore.g:24051:1: ( ( '!volatile' ) )
@@ -70733,23 +70733,23 @@
             // InternalOCLinEcore.g:24052:1: ( '!volatile' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0());
             }
             // InternalOCLinEcore.g:24053:1: ( '!volatile' )
             // InternalOCLinEcore.g:24054:1: '!volatile'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0()); 
+               before(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0());
             }
             match(input,129,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0()); 
+               after(grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0());
             }
 
             }
@@ -70777,7 +70777,7 @@
     public final void rule__AttributeCS__OwnedAnnotationsAssignment_6_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24073:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLinEcore.g:24074:1: ( ruleAnnotationElementCS )
@@ -70786,7 +70786,7 @@
             // InternalOCLinEcore.g:24075:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0()); 
+               before(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -70794,7 +70794,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0()); 
+               after(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0());
             }
 
             }
@@ -70822,7 +70822,7 @@
     public final void rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24088:1: ( ( ruleSpecificationCS ) )
             // InternalOCLinEcore.g:24089:1: ( ruleSpecificationCS )
@@ -70831,7 +70831,7 @@
             // InternalOCLinEcore.g:24090:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_1_3_0()); 
+               before(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_1_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -70839,7 +70839,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_1_3_0()); 
+               after(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_1_3_0());
             }
 
             }
@@ -70867,7 +70867,7 @@
     public final void rule__AttributeCS__OwnedDefaultExpressionsAssignment_6_0_1_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24103:1: ( ( ruleSpecificationCS ) )
             // InternalOCLinEcore.g:24104:1: ( ruleSpecificationCS )
@@ -70876,7 +70876,7 @@
             // InternalOCLinEcore.g:24105:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_2_3_0()); 
+               before(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_2_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -70884,7 +70884,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_2_3_0()); 
+               after(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_2_3_0());
             }
 
             }
@@ -70912,7 +70912,7 @@
     public final void rule__DataTypeCS__IsPrimitiveAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24118:1: ( ( ( 'primitive' ) ) )
             // InternalOCLinEcore.g:24119:1: ( ( 'primitive' ) )
@@ -70921,23 +70921,23 @@
             // InternalOCLinEcore.g:24120:1: ( 'primitive' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0()); 
+               before(grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0());
             }
             // InternalOCLinEcore.g:24121:1: ( 'primitive' )
             // InternalOCLinEcore.g:24122:1: 'primitive'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0()); 
+               before(grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0());
             }
             match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0()); 
+               after(grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0()); 
+               after(grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0());
             }
 
             }
@@ -70965,7 +70965,7 @@
     public final void rule__DataTypeCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24141:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:24142:1: ( ruleUnrestrictedName )
@@ -70974,7 +70974,7 @@
             // InternalOCLinEcore.g:24143:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
+               before(grammarAccess.getDataTypeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -70982,7 +70982,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
+               after(grammarAccess.getDataTypeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
             }
 
             }
@@ -71010,7 +71010,7 @@
     public final void rule__DataTypeCS__OwnedSignatureAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24156:1: ( ( ruleTemplateSignatureCS ) )
             // InternalOCLinEcore.g:24157:1: ( ruleTemplateSignatureCS )
@@ -71019,7 +71019,7 @@
             // InternalOCLinEcore.g:24158:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
+               before(grammarAccess.getDataTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateSignatureCS();
@@ -71027,7 +71027,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
+               after(grammarAccess.getDataTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
             }
 
             }
@@ -71055,7 +71055,7 @@
     public final void rule__DataTypeCS__InstanceClassNameAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24171:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalOCLinEcore.g:24172:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -71064,11 +71064,11 @@
             // InternalOCLinEcore.g:24173:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0()); 
+               before(grammarAccess.getDataTypeCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0()); 
+               after(grammarAccess.getDataTypeCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0());
             }
 
             }
@@ -71096,7 +71096,7 @@
     public final void rule__DataTypeCS__IsSerializableAssignment_5_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24186:1: ( ( ( 'serializable' ) ) )
             // InternalOCLinEcore.g:24187:1: ( ( 'serializable' ) )
@@ -71105,23 +71105,23 @@
             // InternalOCLinEcore.g:24188:1: ( 'serializable' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0()); 
+               before(grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0());
             }
             // InternalOCLinEcore.g:24189:1: ( 'serializable' )
             // InternalOCLinEcore.g:24190:1: 'serializable'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0()); 
+               before(grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0());
             }
             match(input,58,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0()); 
+               after(grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0()); 
+               after(grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0());
             }
 
             }
@@ -71149,7 +71149,7 @@
     public final void rule__DataTypeCS__OwnedAnnotationsAssignment_6_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24209:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLinEcore.g:24210:1: ( ruleAnnotationElementCS )
@@ -71158,7 +71158,7 @@
             // InternalOCLinEcore.g:24211:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0()); 
+               before(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -71166,7 +71166,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0()); 
+               after(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0());
             }
 
             }
@@ -71194,7 +71194,7 @@
     public final void rule__DataTypeCS__OwnedConstraintsAssignment_6_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24224:1: ( ( ruleInvariantConstraintCS ) )
             // InternalOCLinEcore.g:24225:1: ( ruleInvariantConstraintCS )
@@ -71203,7 +71203,7 @@
             // InternalOCLinEcore.g:24226:1: ruleInvariantConstraintCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_6_0_1_1_0()); 
+               before(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_6_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleInvariantConstraintCS();
@@ -71211,7 +71211,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_6_0_1_1_0()); 
+               after(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_6_0_1_1_0());
             }
 
             }
@@ -71239,7 +71239,7 @@
     public final void rule__DetailCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24239:1: ( ( ( rule__DetailCS__NameAlternatives_0_0 ) ) )
             // InternalOCLinEcore.g:24240:1: ( ( rule__DetailCS__NameAlternatives_0_0 ) )
@@ -71248,7 +71248,7 @@
             // InternalOCLinEcore.g:24241:1: ( rule__DetailCS__NameAlternatives_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSAccess().getNameAlternatives_0_0()); 
+               before(grammarAccess.getDetailCSAccess().getNameAlternatives_0_0());
             }
             // InternalOCLinEcore.g:24242:1: ( rule__DetailCS__NameAlternatives_0_0 )
             // InternalOCLinEcore.g:24242:2: rule__DetailCS__NameAlternatives_0_0
@@ -71262,7 +71262,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSAccess().getNameAlternatives_0_0()); 
+               after(grammarAccess.getDetailCSAccess().getNameAlternatives_0_0());
             }
 
             }
@@ -71290,7 +71290,7 @@
     public final void rule__DetailCS__ValuesAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24255:1: ( ( ( rule__DetailCS__ValuesAlternatives_2_0 ) ) )
             // InternalOCLinEcore.g:24256:1: ( ( rule__DetailCS__ValuesAlternatives_2_0 ) )
@@ -71299,7 +71299,7 @@
             // InternalOCLinEcore.g:24257:1: ( rule__DetailCS__ValuesAlternatives_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSAccess().getValuesAlternatives_2_0()); 
+               before(grammarAccess.getDetailCSAccess().getValuesAlternatives_2_0());
             }
             // InternalOCLinEcore.g:24258:1: ( rule__DetailCS__ValuesAlternatives_2_0 )
             // InternalOCLinEcore.g:24258:2: rule__DetailCS__ValuesAlternatives_2_0
@@ -71313,7 +71313,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSAccess().getValuesAlternatives_2_0()); 
+               after(grammarAccess.getDetailCSAccess().getValuesAlternatives_2_0());
             }
 
             }
@@ -71341,7 +71341,7 @@
     public final void rule__DocumentationCS__ValueAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24271:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalOCLinEcore.g:24272:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -71350,11 +71350,11 @@
             // InternalOCLinEcore.g:24273:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0()); 
+               before(grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0()); 
+               after(grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0());
             }
 
             }
@@ -71382,7 +71382,7 @@
     public final void rule__DocumentationCS__OwnedDetailsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24286:1: ( ( ruleDetailCS ) )
             // InternalOCLinEcore.g:24287:1: ( ruleDetailCS )
@@ -71391,7 +71391,7 @@
             // InternalOCLinEcore.g:24288:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); 
+               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleDetailCS();
@@ -71399,7 +71399,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); 
+               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
             }
 
             }
@@ -71427,7 +71427,7 @@
     public final void rule__DocumentationCS__OwnedDetailsAssignment_3_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24301:1: ( ( ruleDetailCS ) )
             // InternalOCLinEcore.g:24302:1: ( ruleDetailCS )
@@ -71436,7 +71436,7 @@
             // InternalOCLinEcore.g:24303:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); 
+               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleDetailCS();
@@ -71444,7 +71444,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); 
+               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
             }
 
             }
@@ -71472,7 +71472,7 @@
     public final void rule__EnumerationCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24316:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:24317:1: ( ruleUnrestrictedName )
@@ -71481,7 +71481,7 @@
             // InternalOCLinEcore.g:24318:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getNameUnrestrictedNameParserRuleCall_1_0()); 
+               before(grammarAccess.getEnumerationCSAccess().getNameUnrestrictedNameParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -71489,7 +71489,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getNameUnrestrictedNameParserRuleCall_1_0()); 
+               after(grammarAccess.getEnumerationCSAccess().getNameUnrestrictedNameParserRuleCall_1_0());
             }
 
             }
@@ -71517,7 +71517,7 @@
     public final void rule__EnumerationCS__OwnedSignatureAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24331:1: ( ( ruleTemplateSignatureCS ) )
             // InternalOCLinEcore.g:24332:1: ( ruleTemplateSignatureCS )
@@ -71526,7 +71526,7 @@
             // InternalOCLinEcore.g:24333:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); 
+               before(grammarAccess.getEnumerationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateSignatureCS();
@@ -71534,7 +71534,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); 
+               after(grammarAccess.getEnumerationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
             }
 
             }
@@ -71562,7 +71562,7 @@
     public final void rule__EnumerationCS__InstanceClassNameAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24346:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalOCLinEcore.g:24347:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -71571,11 +71571,11 @@
             // InternalOCLinEcore.g:24348:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_3_1_0()); 
+               before(grammarAccess.getEnumerationCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_3_1_0());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_3_1_0()); 
+               after(grammarAccess.getEnumerationCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_3_1_0());
             }
 
             }
@@ -71603,7 +71603,7 @@
     public final void rule__EnumerationCS__IsSerializableAssignment_4_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24361:1: ( ( ( 'serializable' ) ) )
             // InternalOCLinEcore.g:24362:1: ( ( 'serializable' ) )
@@ -71612,23 +71612,23 @@
             // InternalOCLinEcore.g:24363:1: ( 'serializable' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0()); 
+               before(grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0());
             }
             // InternalOCLinEcore.g:24364:1: ( 'serializable' )
             // InternalOCLinEcore.g:24365:1: 'serializable'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0()); 
+               before(grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0());
             }
             match(input,58,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0()); 
+               after(grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0()); 
+               after(grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0());
             }
 
             }
@@ -71656,7 +71656,7 @@
     public final void rule__EnumerationCS__OwnedAnnotationsAssignment_5_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24384:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLinEcore.g:24385:1: ( ruleAnnotationElementCS )
@@ -71665,7 +71665,7 @@
             // InternalOCLinEcore.g:24386:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_5_0_1_0_0()); 
+               before(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_5_0_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -71673,7 +71673,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_5_0_1_0_0()); 
+               after(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_5_0_1_0_0());
             }
 
             }
@@ -71701,7 +71701,7 @@
     public final void rule__EnumerationCS__OwnedLiteralsAssignment_5_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24399:1: ( ( ruleEnumerationLiteralCS ) )
             // InternalOCLinEcore.g:24400:1: ( ruleEnumerationLiteralCS )
@@ -71710,7 +71710,7 @@
             // InternalOCLinEcore.g:24401:1: ruleEnumerationLiteralCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsEnumerationLiteralCSParserRuleCall_5_0_1_1_0()); 
+               before(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsEnumerationLiteralCSParserRuleCall_5_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEnumerationLiteralCS();
@@ -71718,7 +71718,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsEnumerationLiteralCSParserRuleCall_5_0_1_1_0()); 
+               after(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsEnumerationLiteralCSParserRuleCall_5_0_1_1_0());
             }
 
             }
@@ -71746,7 +71746,7 @@
     public final void rule__EnumerationCS__OwnedConstraintsAssignment_5_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24414:1: ( ( ruleInvariantConstraintCS ) )
             // InternalOCLinEcore.g:24415:1: ( ruleInvariantConstraintCS )
@@ -71755,7 +71755,7 @@
             // InternalOCLinEcore.g:24416:1: ruleInvariantConstraintCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_5_0_1_2_0()); 
+               before(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_5_0_1_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleInvariantConstraintCS();
@@ -71763,7 +71763,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_5_0_1_2_0()); 
+               after(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_5_0_1_2_0());
             }
 
             }
@@ -71791,7 +71791,7 @@
     public final void rule__EnumerationLiteralCS__NameAssignment_0_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24429:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:24430:1: ( ruleUnrestrictedName )
@@ -71800,7 +71800,7 @@
             // InternalOCLinEcore.g:24431:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_1_0()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -71808,7 +71808,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_1_0()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_1_0());
             }
 
             }
@@ -71836,7 +71836,7 @@
     public final void rule__EnumerationLiteralCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24444:1: ( ( ruleEnumerationLiteralName ) )
             // InternalOCLinEcore.g:24445:1: ( ruleEnumerationLiteralName )
@@ -71845,7 +71845,7 @@
             // InternalOCLinEcore.g:24446:1: ruleEnumerationLiteralName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getNameEnumerationLiteralNameParserRuleCall_0_1_0()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getNameEnumerationLiteralNameParserRuleCall_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEnumerationLiteralName();
@@ -71853,7 +71853,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getNameEnumerationLiteralNameParserRuleCall_0_1_0()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getNameEnumerationLiteralNameParserRuleCall_0_1_0());
             }
 
             }
@@ -71881,7 +71881,7 @@
     public final void rule__EnumerationLiteralCS__ValueAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24459:1: ( ( ruleSIGNED ) )
             // InternalOCLinEcore.g:24460:1: ( ruleSIGNED )
@@ -71890,7 +71890,7 @@
             // InternalOCLinEcore.g:24461:1: ruleSIGNED
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getValueSIGNEDParserRuleCall_1_1_0()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getValueSIGNEDParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSIGNED();
@@ -71898,7 +71898,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getValueSIGNEDParserRuleCall_1_1_0()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getValueSIGNEDParserRuleCall_1_1_0());
             }
 
             }
@@ -71926,7 +71926,7 @@
     public final void rule__EnumerationLiteralCS__OwnedAnnotationsAssignment_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24474:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLinEcore.g:24475:1: ( ruleAnnotationElementCS )
@@ -71935,7 +71935,7 @@
             // InternalOCLinEcore.g:24476:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_2_0_1_0()); 
+               before(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_2_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -71943,7 +71943,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_2_0_1_0()); 
+               after(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_2_0_1_0());
             }
 
             }
@@ -71971,7 +71971,7 @@
     public final void rule__ImportCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24489:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:24490:1: ( ruleUnrestrictedName )
@@ -71980,7 +71980,7 @@
             // InternalOCLinEcore.g:24491:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+               before(grammarAccess.getImportCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -71988,7 +71988,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+               after(grammarAccess.getImportCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
             }
 
             }
@@ -72016,7 +72016,7 @@
     public final void rule__ImportCS__OwnedPathNameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24504:1: ( ( ruleURIPathNameCS ) )
             // InternalOCLinEcore.g:24505:1: ( ruleURIPathNameCS )
@@ -72025,7 +72025,7 @@
             // InternalOCLinEcore.g:24506:1: ruleURIPathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0()); 
+               before(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleURIPathNameCS();
@@ -72033,7 +72033,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0()); 
+               after(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
             }
 
             }
@@ -72061,7 +72061,7 @@
     public final void rule__ImportCS__IsAllAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24519:1: ( ( ( '::*' ) ) )
             // InternalOCLinEcore.g:24520:1: ( ( '::*' ) )
@@ -72070,23 +72070,23 @@
             // InternalOCLinEcore.g:24521:1: ( '::*' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); 
+               before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
             // InternalOCLinEcore.g:24522:1: ( '::*' )
             // InternalOCLinEcore.g:24523:1: '::*'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); 
+               before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
             match(input,130,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); 
+               after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); 
+               after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
 
             }
@@ -72114,7 +72114,7 @@
     public final void rule__ModelElementRefCS__OwnedPathNameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24542:1: ( ( rulePathNameCS ) )
             // InternalOCLinEcore.g:24543:1: ( rulePathNameCS )
@@ -72123,7 +72123,7 @@
             // InternalOCLinEcore.g:24544:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getModelElementRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); 
+               before(grammarAccess.getModelElementRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -72131,7 +72131,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getModelElementRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); 
+               after(grammarAccess.getModelElementRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
             }
 
             }
@@ -72159,7 +72159,7 @@
     public final void rule__OperationCS__QualifiersAssignment_0_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24557:1: ( ( ( 'static' ) ) )
             // InternalOCLinEcore.g:24558:1: ( ( 'static' ) )
@@ -72168,23 +72168,23 @@
             // InternalOCLinEcore.g:24559:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
             // InternalOCLinEcore.g:24560:1: ( 'static' )
             // InternalOCLinEcore.g:24561:1: 'static'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
             match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
 
             }
@@ -72212,7 +72212,7 @@
     public final void rule__OperationCS__QualifiersAssignment_0_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24580:1: ( ( ( 'definition' ) ) )
             // InternalOCLinEcore.g:24581:1: ( ( 'definition' ) )
@@ -72221,23 +72221,23 @@
             // InternalOCLinEcore.g:24582:1: ( 'definition' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
             // InternalOCLinEcore.g:24583:1: ( 'definition' )
             // InternalOCLinEcore.g:24584:1: 'definition'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
             match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
 
             }
@@ -72265,7 +72265,7 @@
     public final void rule__OperationCS__QualifiersAssignment_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24603:1: ( ( ( 'definition' ) ) )
             // InternalOCLinEcore.g:24604:1: ( ( 'definition' ) )
@@ -72274,23 +72274,23 @@
             // InternalOCLinEcore.g:24605:1: ( 'definition' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
             // InternalOCLinEcore.g:24606:1: ( 'definition' )
             // InternalOCLinEcore.g:24607:1: 'definition'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
             match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
 
             }
@@ -72318,7 +72318,7 @@
     public final void rule__OperationCS__QualifiersAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24626:1: ( ( ( 'static' ) ) )
             // InternalOCLinEcore.g:24627:1: ( ( 'static' ) )
@@ -72327,23 +72327,23 @@
             // InternalOCLinEcore.g:24628:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
             // InternalOCLinEcore.g:24629:1: ( 'static' )
             // InternalOCLinEcore.g:24630:1: 'static'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
             match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
 
             }
@@ -72371,7 +72371,7 @@
     public final void rule__OperationCS__OwnedSignatureAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24649:1: ( ( ruleTemplateSignatureCS ) )
             // InternalOCLinEcore.g:24650:1: ( ruleTemplateSignatureCS )
@@ -72380,7 +72380,7 @@
             // InternalOCLinEcore.g:24651:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateSignatureCS();
@@ -72388,7 +72388,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
             }
 
             }
@@ -72416,7 +72416,7 @@
     public final void rule__OperationCS__NameAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24664:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:24665:1: ( ruleUnrestrictedName )
@@ -72425,7 +72425,7 @@
             // InternalOCLinEcore.g:24666:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getNameUnrestrictedNameParserRuleCall_3_0()); 
+               before(grammarAccess.getOperationCSAccess().getNameUnrestrictedNameParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -72433,7 +72433,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getNameUnrestrictedNameParserRuleCall_3_0()); 
+               after(grammarAccess.getOperationCSAccess().getNameUnrestrictedNameParserRuleCall_3_0());
             }
 
             }
@@ -72461,7 +72461,7 @@
     public final void rule__OperationCS__OwnedParametersAssignment_5_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24679:1: ( ( ruleParameterCS ) )
             // InternalOCLinEcore.g:24680:1: ( ruleParameterCS )
@@ -72470,7 +72470,7 @@
             // InternalOCLinEcore.g:24681:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleParameterCS();
@@ -72478,7 +72478,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0());
             }
 
             }
@@ -72506,7 +72506,7 @@
     public final void rule__OperationCS__OwnedParametersAssignment_5_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24694:1: ( ( ruleParameterCS ) )
             // InternalOCLinEcore.g:24695:1: ( ruleParameterCS )
@@ -72515,7 +72515,7 @@
             // InternalOCLinEcore.g:24696:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleParameterCS();
@@ -72523,7 +72523,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0());
             }
 
             }
@@ -72551,7 +72551,7 @@
     public final void rule__OperationCS__OwnedTypeAssignment_7_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24709:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLinEcore.g:24710:1: ( ruleTypedMultiplicityRefCS )
@@ -72560,7 +72560,7 @@
             // InternalOCLinEcore.g:24711:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_7_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_7_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -72568,7 +72568,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_7_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_7_1_0());
             }
 
             }
@@ -72596,7 +72596,7 @@
     public final void rule__OperationCS__OwnedExceptionsAssignment_8_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24724:1: ( ( ruleTypedRefCS ) )
             // InternalOCLinEcore.g:24725:1: ( ruleTypedRefCS )
@@ -72605,7 +72605,7 @@
             // InternalOCLinEcore.g:24726:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -72613,7 +72613,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_1_0());
             }
 
             }
@@ -72641,7 +72641,7 @@
     public final void rule__OperationCS__OwnedExceptionsAssignment_8_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24739:1: ( ( ruleTypedRefCS ) )
             // InternalOCLinEcore.g:24740:1: ( ruleTypedRefCS )
@@ -72650,7 +72650,7 @@
             // InternalOCLinEcore.g:24741:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_2_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -72658,7 +72658,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_2_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_2_1_0());
             }
 
             }
@@ -72686,7 +72686,7 @@
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24754:1: ( ( ( 'derived' ) ) )
             // InternalOCLinEcore.g:24755:1: ( ( 'derived' ) )
@@ -72695,23 +72695,23 @@
             // InternalOCLinEcore.g:24756:1: ( 'derived' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0());
             }
             // InternalOCLinEcore.g:24757:1: ( 'derived' )
             // InternalOCLinEcore.g:24758:1: 'derived'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0());
             }
             match(input,26,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0());
             }
 
             }
@@ -72739,7 +72739,7 @@
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24777:1: ( ( ( '!derived' ) ) )
             // InternalOCLinEcore.g:24778:1: ( ( '!derived' ) )
@@ -72748,23 +72748,23 @@
             // InternalOCLinEcore.g:24779:1: ( '!derived' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0());
             }
             // InternalOCLinEcore.g:24780:1: ( '!derived' )
             // InternalOCLinEcore.g:24781:1: '!derived'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0());
             }
             match(input,122,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0());
             }
 
             }
@@ -72792,7 +72792,7 @@
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24800:1: ( ( ( 'ordered' ) ) )
             // InternalOCLinEcore.g:24801:1: ( ( 'ordered' ) )
@@ -72801,23 +72801,23 @@
             // InternalOCLinEcore.g:24802:1: ( 'ordered' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0());
             }
             // InternalOCLinEcore.g:24803:1: ( 'ordered' )
             // InternalOCLinEcore.g:24804:1: 'ordered'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0());
             }
             match(input,37,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0());
             }
 
             }
@@ -72845,7 +72845,7 @@
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24823:1: ( ( ( '!ordered' ) ) )
             // InternalOCLinEcore.g:24824:1: ( ( '!ordered' ) )
@@ -72854,23 +72854,23 @@
             // InternalOCLinEcore.g:24825:1: ( '!ordered' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0());
             }
             // InternalOCLinEcore.g:24826:1: ( '!ordered' )
             // InternalOCLinEcore.g:24827:1: '!ordered'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0());
             }
             match(input,124,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0());
             }
 
             }
@@ -72898,7 +72898,7 @@
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24846:1: ( ( ( 'transient' ) ) )
             // InternalOCLinEcore.g:24847:1: ( ( 'transient' ) )
@@ -72907,23 +72907,23 @@
             // InternalOCLinEcore.g:24848:1: ( 'transient' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0());
             }
             // InternalOCLinEcore.g:24849:1: ( 'transient' )
             // InternalOCLinEcore.g:24850:1: 'transient'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0());
             }
             match(input,48,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0());
             }
 
             }
@@ -72951,7 +72951,7 @@
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24869:1: ( ( ( '!transient' ) ) )
             // InternalOCLinEcore.g:24870:1: ( ( '!transient' ) )
@@ -72960,23 +72960,23 @@
             // InternalOCLinEcore.g:24871:1: ( '!transient' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0());
             }
             // InternalOCLinEcore.g:24872:1: ( '!transient' )
             // InternalOCLinEcore.g:24873:1: '!transient'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0());
             }
             match(input,126,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0());
             }
 
             }
@@ -73004,7 +73004,7 @@
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24892:1: ( ( ( 'unique' ) ) )
             // InternalOCLinEcore.g:24893:1: ( ( 'unique' ) )
@@ -73013,23 +73013,23 @@
             // InternalOCLinEcore.g:24894:1: ( 'unique' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0());
             }
             // InternalOCLinEcore.g:24895:1: ( 'unique' )
             // InternalOCLinEcore.g:24896:1: 'unique'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0());
             }
             match(input,49,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0());
             }
 
             }
@@ -73057,7 +73057,7 @@
     public final void rule__OperationCS__QualifiersAssignment_9_1_0_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24915:1: ( ( ( '!unique' ) ) )
             // InternalOCLinEcore.g:24916:1: ( ( '!unique' ) )
@@ -73066,23 +73066,23 @@
             // InternalOCLinEcore.g:24917:1: ( '!unique' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0());
             }
             // InternalOCLinEcore.g:24918:1: ( '!unique' )
             // InternalOCLinEcore.g:24919:1: '!unique'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0()); 
+               before(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0());
             }
             match(input,127,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0()); 
+               after(grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0());
             }
 
             }
@@ -73110,7 +73110,7 @@
     public final void rule__OperationCS__OwnedAnnotationsAssignment_10_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24938:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLinEcore.g:24939:1: ( ruleAnnotationElementCS )
@@ -73119,7 +73119,7 @@
             // InternalOCLinEcore.g:24940:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_10_0_1_0_0()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_10_0_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -73127,7 +73127,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_10_0_1_0_0()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_10_0_1_0_0());
             }
 
             }
@@ -73155,7 +73155,7 @@
     public final void rule__OperationCS__OwnedPreconditionsAssignment_10_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24953:1: ( ( rulePreconditionConstraintCS ) )
             // InternalOCLinEcore.g:24954:1: ( rulePreconditionConstraintCS )
@@ -73164,7 +73164,7 @@
             // InternalOCLinEcore.g:24955:1: rulePreconditionConstraintCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedPreconditionsPreconditionConstraintCSParserRuleCall_10_0_1_1_0()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedPreconditionsPreconditionConstraintCSParserRuleCall_10_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePreconditionConstraintCS();
@@ -73172,7 +73172,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedPreconditionsPreconditionConstraintCSParserRuleCall_10_0_1_1_0()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedPreconditionsPreconditionConstraintCSParserRuleCall_10_0_1_1_0());
             }
 
             }
@@ -73200,7 +73200,7 @@
     public final void rule__OperationCS__OwnedBodyExpressionsAssignment_10_0_1_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24968:1: ( ( ruleSpecificationCS ) )
             // InternalOCLinEcore.g:24969:1: ( ruleSpecificationCS )
@@ -73209,7 +73209,7 @@
             // InternalOCLinEcore.g:24970:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_10_0_1_2_3_0()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_10_0_1_2_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -73217,7 +73217,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_10_0_1_2_3_0()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_10_0_1_2_3_0());
             }
 
             }
@@ -73245,7 +73245,7 @@
     public final void rule__OperationCS__OwnedPostconditionsAssignment_10_0_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24983:1: ( ( rulePostconditionConstraintCS ) )
             // InternalOCLinEcore.g:24984:1: ( rulePostconditionConstraintCS )
@@ -73254,7 +73254,7 @@
             // InternalOCLinEcore.g:24985:1: rulePostconditionConstraintCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getOwnedPostconditionsPostconditionConstraintCSParserRuleCall_10_0_1_3_0()); 
+               before(grammarAccess.getOperationCSAccess().getOwnedPostconditionsPostconditionConstraintCSParserRuleCall_10_0_1_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePostconditionConstraintCS();
@@ -73262,7 +73262,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getOwnedPostconditionsPostconditionConstraintCSParserRuleCall_10_0_1_3_0()); 
+               after(grammarAccess.getOperationCSAccess().getOwnedPostconditionsPostconditionConstraintCSParserRuleCall_10_0_1_3_0());
             }
 
             }
@@ -73290,7 +73290,7 @@
     public final void rule__PackageCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:24998:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:24999:1: ( ruleUnrestrictedName )
@@ -73299,7 +73299,7 @@
             // InternalOCLinEcore.g:25000:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getNameUnrestrictedNameParserRuleCall_1_0()); 
+               before(grammarAccess.getPackageCSAccess().getNameUnrestrictedNameParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -73307,7 +73307,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getNameUnrestrictedNameParserRuleCall_1_0()); 
+               after(grammarAccess.getPackageCSAccess().getNameUnrestrictedNameParserRuleCall_1_0());
             }
 
             }
@@ -73335,7 +73335,7 @@
     public final void rule__PackageCS__NsPrefixAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25013:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:25014:1: ( ruleUnrestrictedName )
@@ -73344,7 +73344,7 @@
             // InternalOCLinEcore.g:25015:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getNsPrefixUnrestrictedNameParserRuleCall_2_1_0()); 
+               before(grammarAccess.getPackageCSAccess().getNsPrefixUnrestrictedNameParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -73352,7 +73352,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getNsPrefixUnrestrictedNameParserRuleCall_2_1_0()); 
+               after(grammarAccess.getPackageCSAccess().getNsPrefixUnrestrictedNameParserRuleCall_2_1_0());
             }
 
             }
@@ -73380,7 +73380,7 @@
     public final void rule__PackageCS__NsURIAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25028:1: ( ( ruleURI ) )
             // InternalOCLinEcore.g:25029:1: ( ruleURI )
@@ -73389,7 +73389,7 @@
             // InternalOCLinEcore.g:25030:1: ruleURI
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_3_1_0()); 
+               before(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleURI();
@@ -73397,7 +73397,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_3_1_0()); 
+               after(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_3_1_0());
             }
 
             }
@@ -73425,7 +73425,7 @@
     public final void rule__PackageCS__OwnedAnnotationsAssignment_4_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25043:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLinEcore.g:25044:1: ( ruleAnnotationElementCS )
@@ -73434,7 +73434,7 @@
             // InternalOCLinEcore.g:25045:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0()); 
+               before(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -73442,7 +73442,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0()); 
+               after(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0());
             }
 
             }
@@ -73470,7 +73470,7 @@
     public final void rule__PackageCS__OwnedPackagesAssignment_4_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25058:1: ( ( rulePackageCS ) )
             // InternalOCLinEcore.g:25059:1: ( rulePackageCS )
@@ -73479,7 +73479,7 @@
             // InternalOCLinEcore.g:25060:1: rulePackageCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_1_1_0()); 
+               before(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePackageCS();
@@ -73487,7 +73487,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_1_1_0()); 
+               after(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_1_1_0());
             }
 
             }
@@ -73515,7 +73515,7 @@
     public final void rule__PackageCS__OwnedClassesAssignment_4_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25073:1: ( ( ruleClassCS ) )
             // InternalOCLinEcore.g:25074:1: ( ruleClassCS )
@@ -73524,7 +73524,7 @@
             // InternalOCLinEcore.g:25075:1: ruleClassCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_0_1_2_0()); 
+               before(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_0_1_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleClassCS();
@@ -73532,7 +73532,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_0_1_2_0()); 
+               after(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_0_1_2_0());
             }
 
             }
@@ -73560,7 +73560,7 @@
     public final void rule__ParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25088:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:25089:1: ( ruleUnrestrictedName )
@@ -73569,7 +73569,7 @@
             // InternalOCLinEcore.g:25090:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -73577,7 +73577,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -73605,7 +73605,7 @@
     public final void rule__ParameterCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25103:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLinEcore.g:25104:1: ( ruleTypedMultiplicityRefCS )
@@ -73614,7 +73614,7 @@
             // InternalOCLinEcore.g:25105:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -73622,7 +73622,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_1_1_0());
             }
 
             }
@@ -73650,7 +73650,7 @@
     public final void rule__ParameterCS__QualifiersAssignment_2_1_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25118:1: ( ( ( 'ordered' ) ) )
             // InternalOCLinEcore.g:25119:1: ( ( 'ordered' ) )
@@ -73659,23 +73659,23 @@
             // InternalOCLinEcore.g:25120:1: ( 'ordered' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0()); 
+               before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0());
             }
             // InternalOCLinEcore.g:25121:1: ( 'ordered' )
             // InternalOCLinEcore.g:25122:1: 'ordered'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0()); 
+               before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0());
             }
             match(input,37,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0()); 
+               after(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0()); 
+               after(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0());
             }
 
             }
@@ -73703,7 +73703,7 @@
     public final void rule__ParameterCS__QualifiersAssignment_2_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25141:1: ( ( ( '!ordered' ) ) )
             // InternalOCLinEcore.g:25142:1: ( ( '!ordered' ) )
@@ -73712,23 +73712,23 @@
             // InternalOCLinEcore.g:25143:1: ( '!ordered' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0()); 
+               before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0());
             }
             // InternalOCLinEcore.g:25144:1: ( '!ordered' )
             // InternalOCLinEcore.g:25145:1: '!ordered'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0()); 
+               before(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0());
             }
             match(input,124,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0()); 
+               after(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0()); 
+               after(grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0());
             }
 
             }
@@ -73756,7 +73756,7 @@
     public final void rule__ParameterCS__QualifiersAssignment_2_1_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25164:1: ( ( ( 'unique' ) ) )
             // InternalOCLinEcore.g:25165:1: ( ( 'unique' ) )
@@ -73765,23 +73765,23 @@
             // InternalOCLinEcore.g:25166:1: ( 'unique' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0()); 
+               before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0());
             }
             // InternalOCLinEcore.g:25167:1: ( 'unique' )
             // InternalOCLinEcore.g:25168:1: 'unique'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0()); 
+               before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0());
             }
             match(input,49,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0()); 
+               after(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0()); 
+               after(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0());
             }
 
             }
@@ -73809,7 +73809,7 @@
     public final void rule__ParameterCS__QualifiersAssignment_2_1_0_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25187:1: ( ( ( '!unique' ) ) )
             // InternalOCLinEcore.g:25188:1: ( ( '!unique' ) )
@@ -73818,23 +73818,23 @@
             // InternalOCLinEcore.g:25189:1: ( '!unique' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0()); 
+               before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0());
             }
             // InternalOCLinEcore.g:25190:1: ( '!unique' )
             // InternalOCLinEcore.g:25191:1: '!unique'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0()); 
+               before(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0());
             }
             match(input,127,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0()); 
+               after(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0()); 
+               after(grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0());
             }
 
             }
@@ -73862,7 +73862,7 @@
     public final void rule__ParameterCS__OwnedAnnotationsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25210:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLinEcore.g:25211:1: ( ruleAnnotationElementCS )
@@ -73871,7 +73871,7 @@
             // InternalOCLinEcore.g:25212:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_1_0()); 
+               before(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -73879,7 +73879,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_1_0()); 
+               after(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_1_0());
             }
 
             }
@@ -73907,7 +73907,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_0_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25225:1: ( ( ( 'static' ) ) )
             // InternalOCLinEcore.g:25226:1: ( ( 'static' ) )
@@ -73916,23 +73916,23 @@
             // InternalOCLinEcore.g:25227:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
             // InternalOCLinEcore.g:25228:1: ( 'static' )
             // InternalOCLinEcore.g:25229:1: 'static'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
             match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0());
             }
 
             }
@@ -73960,7 +73960,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_0_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25248:1: ( ( ( 'definition' ) ) )
             // InternalOCLinEcore.g:25249:1: ( ( 'definition' ) )
@@ -73969,23 +73969,23 @@
             // InternalOCLinEcore.g:25250:1: ( 'definition' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
             // InternalOCLinEcore.g:25251:1: ( 'definition' )
             // InternalOCLinEcore.g:25252:1: 'definition'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
             match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
             }
 
             }
@@ -74013,7 +74013,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25271:1: ( ( ( 'definition' ) ) )
             // InternalOCLinEcore.g:25272:1: ( ( 'definition' ) )
@@ -74022,23 +74022,23 @@
             // InternalOCLinEcore.g:25273:1: ( 'definition' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
             // InternalOCLinEcore.g:25274:1: ( 'definition' )
             // InternalOCLinEcore.g:25275:1: 'definition'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
             match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
             }
 
             }
@@ -74066,7 +74066,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25294:1: ( ( ( 'static' ) ) )
             // InternalOCLinEcore.g:25295:1: ( ( 'static' ) )
@@ -74075,23 +74075,23 @@
             // InternalOCLinEcore.g:25296:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
             // InternalOCLinEcore.g:25297:1: ( 'static' )
             // InternalOCLinEcore.g:25298:1: 'static'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
             match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0());
             }
 
             }
@@ -74119,7 +74119,7 @@
     public final void rule__ReferenceCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25317:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:25318:1: ( ruleUnrestrictedName )
@@ -74128,7 +74128,7 @@
             // InternalOCLinEcore.g:25319:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
+               before(grammarAccess.getReferenceCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -74136,7 +74136,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
+               after(grammarAccess.getReferenceCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
             }
 
             }
@@ -74164,7 +74164,7 @@
     public final void rule__ReferenceCS__ReferredOppositeAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25332:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalOCLinEcore.g:25333:1: ( ( ruleUnrestrictedName ) )
@@ -74173,13 +74173,13 @@
             // InternalOCLinEcore.g:25334:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyCrossReference_3_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyCrossReference_3_1_0());
             }
             // InternalOCLinEcore.g:25335:1: ( ruleUnrestrictedName )
             // InternalOCLinEcore.g:25336:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyUnrestrictedNameParserRuleCall_3_1_0_1()); 
+               before(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyUnrestrictedNameParserRuleCall_3_1_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -74187,13 +74187,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyUnrestrictedNameParserRuleCall_3_1_0_1()); 
+               after(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyUnrestrictedNameParserRuleCall_3_1_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyCrossReference_3_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyCrossReference_3_1_0());
             }
 
             }
@@ -74221,7 +74221,7 @@
     public final void rule__ReferenceCS__OwnedTypeAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25351:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLinEcore.g:25352:1: ( ruleTypedMultiplicityRefCS )
@@ -74230,7 +74230,7 @@
             // InternalOCLinEcore.g:25353:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -74238,7 +74238,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_1_0());
             }
 
             }
@@ -74266,7 +74266,7 @@
     public final void rule__ReferenceCS__DefaultAssignment_5_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25366:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalOCLinEcore.g:25367:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -74275,11 +74275,11 @@
             // InternalOCLinEcore.g:25368:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0());
             }
 
             }
@@ -74307,7 +74307,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25381:1: ( ( ( 'composes' ) ) )
             // InternalOCLinEcore.g:25382:1: ( ( 'composes' ) )
@@ -74316,23 +74316,23 @@
             // InternalOCLinEcore.g:25383:1: ( 'composes' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0());
             }
             // InternalOCLinEcore.g:25384:1: ( 'composes' )
             // InternalOCLinEcore.g:25385:1: 'composes'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0());
             }
             match(input,22,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0());
             }
 
             }
@@ -74360,7 +74360,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25404:1: ( ( ( '!composes' ) ) )
             // InternalOCLinEcore.g:25405:1: ( ( '!composes' ) )
@@ -74369,23 +74369,23 @@
             // InternalOCLinEcore.g:25406:1: ( '!composes' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0());
             }
             // InternalOCLinEcore.g:25407:1: ( '!composes' )
             // InternalOCLinEcore.g:25408:1: '!composes'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0());
             }
             match(input,131,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0());
             }
 
             }
@@ -74413,7 +74413,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25427:1: ( ( ( 'derived' ) ) )
             // InternalOCLinEcore.g:25428:1: ( ( 'derived' ) )
@@ -74422,23 +74422,23 @@
             // InternalOCLinEcore.g:25429:1: ( 'derived' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0());
             }
             // InternalOCLinEcore.g:25430:1: ( 'derived' )
             // InternalOCLinEcore.g:25431:1: 'derived'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0());
             }
             match(input,26,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0());
             }
 
             }
@@ -74466,7 +74466,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25450:1: ( ( ( '!derived' ) ) )
             // InternalOCLinEcore.g:25451:1: ( ( '!derived' ) )
@@ -74475,23 +74475,23 @@
             // InternalOCLinEcore.g:25452:1: ( '!derived' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0());
             }
             // InternalOCLinEcore.g:25453:1: ( '!derived' )
             // InternalOCLinEcore.g:25454:1: '!derived'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0());
             }
             match(input,122,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0());
             }
 
             }
@@ -74519,7 +74519,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25473:1: ( ( ( 'ordered' ) ) )
             // InternalOCLinEcore.g:25474:1: ( ( 'ordered' ) )
@@ -74528,23 +74528,23 @@
             // InternalOCLinEcore.g:25475:1: ( 'ordered' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0());
             }
             // InternalOCLinEcore.g:25476:1: ( 'ordered' )
             // InternalOCLinEcore.g:25477:1: 'ordered'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0());
             }
             match(input,37,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0());
             }
 
             }
@@ -74572,7 +74572,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25496:1: ( ( ( '!ordered' ) ) )
             // InternalOCLinEcore.g:25497:1: ( ( '!ordered' ) )
@@ -74581,23 +74581,23 @@
             // InternalOCLinEcore.g:25498:1: ( '!ordered' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0());
             }
             // InternalOCLinEcore.g:25499:1: ( '!ordered' )
             // InternalOCLinEcore.g:25500:1: '!ordered'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0());
             }
             match(input,124,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0());
             }
 
             }
@@ -74625,7 +74625,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25519:1: ( ( ( 'readonly' ) ) )
             // InternalOCLinEcore.g:25520:1: ( ( 'readonly' ) )
@@ -74634,23 +74634,23 @@
             // InternalOCLinEcore.g:25521:1: ( 'readonly' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0());
             }
             // InternalOCLinEcore.g:25522:1: ( 'readonly' )
             // InternalOCLinEcore.g:25523:1: 'readonly'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0());
             }
             match(input,43,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0());
             }
 
             }
@@ -74678,7 +74678,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25542:1: ( ( ( '!readonly' ) ) )
             // InternalOCLinEcore.g:25543:1: ( ( '!readonly' ) )
@@ -74687,23 +74687,23 @@
             // InternalOCLinEcore.g:25544:1: ( '!readonly' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0());
             }
             // InternalOCLinEcore.g:25545:1: ( '!readonly' )
             // InternalOCLinEcore.g:25546:1: '!readonly'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0());
             }
             match(input,125,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0());
             }
 
             }
@@ -74731,7 +74731,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25565:1: ( ( ( 'resolve' ) ) )
             // InternalOCLinEcore.g:25566:1: ( ( 'resolve' ) )
@@ -74740,23 +74740,23 @@
             // InternalOCLinEcore.g:25567:1: ( 'resolve' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0());
             }
             // InternalOCLinEcore.g:25568:1: ( 'resolve' )
             // InternalOCLinEcore.g:25569:1: 'resolve'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0());
             }
             match(input,45,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0());
             }
 
             }
@@ -74784,7 +74784,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25588:1: ( ( ( '!resolve' ) ) )
             // InternalOCLinEcore.g:25589:1: ( ( '!resolve' ) )
@@ -74793,23 +74793,23 @@
             // InternalOCLinEcore.g:25590:1: ( '!resolve' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0());
             }
             // InternalOCLinEcore.g:25591:1: ( '!resolve' )
             // InternalOCLinEcore.g:25592:1: '!resolve'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0());
             }
             match(input,132,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0());
             }
 
             }
@@ -74837,7 +74837,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25611:1: ( ( ( 'transient' ) ) )
             // InternalOCLinEcore.g:25612:1: ( ( 'transient' ) )
@@ -74846,23 +74846,23 @@
             // InternalOCLinEcore.g:25613:1: ( 'transient' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0());
             }
             // InternalOCLinEcore.g:25614:1: ( 'transient' )
             // InternalOCLinEcore.g:25615:1: 'transient'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0());
             }
             match(input,48,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0());
             }
 
             }
@@ -74890,7 +74890,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_11() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25634:1: ( ( ( '!transient' ) ) )
             // InternalOCLinEcore.g:25635:1: ( ( '!transient' ) )
@@ -74899,23 +74899,23 @@
             // InternalOCLinEcore.g:25636:1: ( '!transient' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0());
             }
             // InternalOCLinEcore.g:25637:1: ( '!transient' )
             // InternalOCLinEcore.g:25638:1: '!transient'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0());
             }
             match(input,126,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0());
             }
 
             }
@@ -74943,7 +74943,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25657:1: ( ( ( 'unique' ) ) )
             // InternalOCLinEcore.g:25658:1: ( ( 'unique' ) )
@@ -74952,23 +74952,23 @@
             // InternalOCLinEcore.g:25659:1: ( 'unique' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0());
             }
             // InternalOCLinEcore.g:25660:1: ( 'unique' )
             // InternalOCLinEcore.g:25661:1: 'unique'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0());
             }
             match(input,49,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0());
             }
 
             }
@@ -74996,7 +74996,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_13() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25680:1: ( ( ( '!unique' ) ) )
             // InternalOCLinEcore.g:25681:1: ( ( '!unique' ) )
@@ -75005,23 +75005,23 @@
             // InternalOCLinEcore.g:25682:1: ( '!unique' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0());
             }
             // InternalOCLinEcore.g:25683:1: ( '!unique' )
             // InternalOCLinEcore.g:25684:1: '!unique'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0());
             }
             match(input,127,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0());
             }
 
             }
@@ -75049,7 +75049,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_14() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25703:1: ( ( ( 'unsettable' ) ) )
             // InternalOCLinEcore.g:25704:1: ( ( 'unsettable' ) )
@@ -75058,23 +75058,23 @@
             // InternalOCLinEcore.g:25705:1: ( 'unsettable' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0());
             }
             // InternalOCLinEcore.g:25706:1: ( 'unsettable' )
             // InternalOCLinEcore.g:25707:1: 'unsettable'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0());
             }
             match(input,50,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0());
             }
 
             }
@@ -75102,7 +75102,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_15() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25726:1: ( ( ( '!unsettable' ) ) )
             // InternalOCLinEcore.g:25727:1: ( ( '!unsettable' ) )
@@ -75111,23 +75111,23 @@
             // InternalOCLinEcore.g:25728:1: ( '!unsettable' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0());
             }
             // InternalOCLinEcore.g:25729:1: ( '!unsettable' )
             // InternalOCLinEcore.g:25730:1: '!unsettable'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0());
             }
             match(input,128,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0());
             }
 
             }
@@ -75155,7 +75155,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_16() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25749:1: ( ( ( 'volatile' ) ) )
             // InternalOCLinEcore.g:25750:1: ( ( 'volatile' ) )
@@ -75164,23 +75164,23 @@
             // InternalOCLinEcore.g:25751:1: ( 'volatile' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0());
             }
             // InternalOCLinEcore.g:25752:1: ( 'volatile' )
             // InternalOCLinEcore.g:25753:1: 'volatile'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0());
             }
             match(input,51,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0());
             }
 
             }
@@ -75208,7 +75208,7 @@
     public final void rule__ReferenceCS__QualifiersAssignment_6_1_0_17() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25772:1: ( ( ( '!volatile' ) ) )
             // InternalOCLinEcore.g:25773:1: ( ( '!volatile' ) )
@@ -75217,23 +75217,23 @@
             // InternalOCLinEcore.g:25774:1: ( '!volatile' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0());
             }
             // InternalOCLinEcore.g:25775:1: ( '!volatile' )
             // InternalOCLinEcore.g:25776:1: '!volatile'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0()); 
+               before(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0());
             }
             match(input,129,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0()); 
+               after(grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0());
             }
 
             }
@@ -75261,7 +75261,7 @@
     public final void rule__ReferenceCS__OwnedAnnotationsAssignment_7_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25795:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLinEcore.g:25796:1: ( ruleAnnotationElementCS )
@@ -75270,7 +75270,7 @@
             // InternalOCLinEcore.g:25797:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); 
+               before(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -75278,7 +75278,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); 
+               after(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
             }
 
             }
@@ -75306,7 +75306,7 @@
     public final void rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25810:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalOCLinEcore.g:25811:1: ( ( ruleUnrestrictedName ) )
@@ -75315,13 +75315,13 @@
             // InternalOCLinEcore.g:25812:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_1_0());
             }
             // InternalOCLinEcore.g:25813:1: ( ruleUnrestrictedName )
             // InternalOCLinEcore.g:25814:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyUnrestrictedNameParserRuleCall_7_0_1_1_1_0_1()); 
+               before(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyUnrestrictedNameParserRuleCall_7_0_1_1_1_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -75329,13 +75329,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyUnrestrictedNameParserRuleCall_7_0_1_1_1_0_1()); 
+               after(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyUnrestrictedNameParserRuleCall_7_0_1_1_1_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_1_0());
             }
 
             }
@@ -75363,7 +75363,7 @@
     public final void rule__ReferenceCS__ReferredKeysAssignment_7_0_1_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25829:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalOCLinEcore.g:25830:1: ( ( ruleUnrestrictedName ) )
@@ -75372,13 +75372,13 @@
             // InternalOCLinEcore.g:25831:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_2_1_0()); 
+               before(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_2_1_0());
             }
             // InternalOCLinEcore.g:25832:1: ( ruleUnrestrictedName )
             // InternalOCLinEcore.g:25833:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyUnrestrictedNameParserRuleCall_7_0_1_1_2_1_0_1()); 
+               before(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyUnrestrictedNameParserRuleCall_7_0_1_1_2_1_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -75386,13 +75386,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyUnrestrictedNameParserRuleCall_7_0_1_1_2_1_0_1()); 
+               after(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyUnrestrictedNameParserRuleCall_7_0_1_1_2_1_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_2_1_0()); 
+               after(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_2_1_0());
             }
 
             }
@@ -75420,7 +75420,7 @@
     public final void rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25848:1: ( ( ruleSpecificationCS ) )
             // InternalOCLinEcore.g:25849:1: ( ruleSpecificationCS )
@@ -75429,7 +75429,7 @@
             // InternalOCLinEcore.g:25850:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_2_3_0()); 
+               before(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_2_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -75437,7 +75437,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_2_3_0()); 
+               after(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_2_3_0());
             }
 
             }
@@ -75465,7 +75465,7 @@
     public final void rule__ReferenceCS__OwnedDefaultExpressionsAssignment_7_0_1_3_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25863:1: ( ( ruleSpecificationCS ) )
             // InternalOCLinEcore.g:25864:1: ( ruleSpecificationCS )
@@ -75474,7 +75474,7 @@
             // InternalOCLinEcore.g:25865:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_3_3_0()); 
+               before(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_3_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -75482,7 +75482,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_3_3_0()); 
+               after(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_3_3_0());
             }
 
             }
@@ -75510,7 +75510,7 @@
     public final void rule__SpecificationCS__OwnedExpressionAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25878:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:25879:1: ( ruleExpCS )
@@ -75519,7 +75519,7 @@
             // InternalOCLinEcore.g:25880:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0()); 
+               before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -75527,7 +75527,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0()); 
+               after(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0());
             }
 
             }
@@ -75555,7 +75555,7 @@
     public final void rule__SpecificationCS__ExprStringAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25893:1: ( ( RULE_UNQUOTED_STRING ) )
             // InternalOCLinEcore.g:25894:1: ( RULE_UNQUOTED_STRING )
@@ -75564,11 +75564,11 @@
             // InternalOCLinEcore.g:25895:1: RULE_UNQUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0()); 
+               before(grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0());
             }
             match(input,RULE_UNQUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0()); 
+               after(grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0());
             }
 
             }
@@ -75596,7 +75596,7 @@
     public final void rule__StructuredClassCS__IsAbstractAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25908:1: ( ( ( 'abstract' ) ) )
             // InternalOCLinEcore.g:25909:1: ( ( 'abstract' ) )
@@ -75605,23 +75605,23 @@
             // InternalOCLinEcore.g:25910:1: ( 'abstract' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0());
             }
             // InternalOCLinEcore.g:25911:1: ( 'abstract' )
             // InternalOCLinEcore.g:25912:1: 'abstract'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0());
             }
             match(input,17,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0());
             }
 
             }
@@ -75649,7 +75649,7 @@
     public final void rule__StructuredClassCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25931:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:25932:1: ( ruleUnrestrictedName )
@@ -75658,7 +75658,7 @@
             // InternalOCLinEcore.g:25933:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -75666,7 +75666,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
             }
 
             }
@@ -75694,7 +75694,7 @@
     public final void rule__StructuredClassCS__OwnedSignatureAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25946:1: ( ( ruleTemplateSignatureCS ) )
             // InternalOCLinEcore.g:25947:1: ( ruleTemplateSignatureCS )
@@ -75703,7 +75703,7 @@
             // InternalOCLinEcore.g:25948:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateSignatureCS();
@@ -75711,7 +75711,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
             }
 
             }
@@ -75739,7 +75739,7 @@
     public final void rule__StructuredClassCS__OwnedSuperTypesAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25961:1: ( ( ruleTypedRefCS ) )
             // InternalOCLinEcore.g:25962:1: ( ruleTypedRefCS )
@@ -75748,7 +75748,7 @@
             // InternalOCLinEcore.g:25963:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_1_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -75756,7 +75756,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_1_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_1_0());
             }
 
             }
@@ -75784,7 +75784,7 @@
     public final void rule__StructuredClassCS__OwnedSuperTypesAssignment_4_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25976:1: ( ( ruleTypedRefCS ) )
             // InternalOCLinEcore.g:25977:1: ( ruleTypedRefCS )
@@ -75793,7 +75793,7 @@
             // InternalOCLinEcore.g:25978:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_2_1_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -75801,7 +75801,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_2_1_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_2_1_0());
             }
 
             }
@@ -75829,7 +75829,7 @@
     public final void rule__StructuredClassCS__InstanceClassNameAssignment_5_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:25991:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalOCLinEcore.g:25992:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -75838,11 +75838,11 @@
             // InternalOCLinEcore.g:25993:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0());
             }
 
             }
@@ -75870,7 +75870,7 @@
     public final void rule__StructuredClassCS__IsInterfaceAssignment_6_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26006:1: ( ( ( 'interface' ) ) )
             // InternalOCLinEcore.g:26007:1: ( ( 'interface' ) )
@@ -75879,23 +75879,23 @@
             // InternalOCLinEcore.g:26008:1: ( 'interface' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0());
             }
             // InternalOCLinEcore.g:26009:1: ( 'interface' )
             // InternalOCLinEcore.g:26010:1: 'interface'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0());
             }
             match(input,32,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0());
             }
 
             }
@@ -75923,7 +75923,7 @@
     public final void rule__StructuredClassCS__OwnedAnnotationsAssignment_7_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26029:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLinEcore.g:26030:1: ( ruleAnnotationElementCS )
@@ -75932,7 +75932,7 @@
             // InternalOCLinEcore.g:26031:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -75940,7 +75940,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
             }
 
             }
@@ -75968,7 +75968,7 @@
     public final void rule__StructuredClassCS__OwnedOperationsAssignment_7_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26044:1: ( ( ruleOperationCS ) )
             // InternalOCLinEcore.g:26045:1: ( ruleOperationCS )
@@ -75977,7 +75977,7 @@
             // InternalOCLinEcore.g:26046:1: ruleOperationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_1_1_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleOperationCS();
@@ -75985,7 +75985,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_1_1_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_1_1_0());
             }
 
             }
@@ -76013,7 +76013,7 @@
     public final void rule__StructuredClassCS__OwnedPropertiesAssignment_7_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26059:1: ( ( ruleStructuralFeatureCS ) )
             // InternalOCLinEcore.g:26060:1: ( ruleStructuralFeatureCS )
@@ -76022,7 +76022,7 @@
             // InternalOCLinEcore.g:26061:1: ruleStructuralFeatureCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesStructuralFeatureCSParserRuleCall_7_0_1_2_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesStructuralFeatureCSParserRuleCall_7_0_1_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleStructuralFeatureCS();
@@ -76030,7 +76030,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesStructuralFeatureCSParserRuleCall_7_0_1_2_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesStructuralFeatureCSParserRuleCall_7_0_1_2_0());
             }
 
             }
@@ -76058,7 +76058,7 @@
     public final void rule__StructuredClassCS__OwnedConstraintsAssignment_7_0_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26074:1: ( ( ruleInvariantConstraintCS ) )
             // InternalOCLinEcore.g:26075:1: ( ruleInvariantConstraintCS )
@@ -76067,7 +76067,7 @@
             // InternalOCLinEcore.g:26076:1: ruleInvariantConstraintCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_7_0_1_3_0()); 
+               before(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_7_0_1_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleInvariantConstraintCS();
@@ -76075,7 +76075,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_7_0_1_3_0()); 
+               after(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_7_0_1_3_0());
             }
 
             }
@@ -76103,7 +76103,7 @@
     public final void rule__SysMLCS__OwnedDetailsAssignment_2_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26089:1: ( ( ruleDetailCS ) )
             // InternalOCLinEcore.g:26090:1: ( ruleDetailCS )
@@ -76112,7 +76112,7 @@
             // InternalOCLinEcore.g:26091:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_0_0_0()); 
+               before(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleDetailCS();
@@ -76120,7 +76120,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_0_0_0()); 
+               after(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_0_0_0());
             }
 
             }
@@ -76148,7 +76148,7 @@
     public final void rule__SysMLCS__OwnedDetailsAssignment_2_1_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26104:1: ( ( ruleDetailCS ) )
             // InternalOCLinEcore.g:26105:1: ( ruleDetailCS )
@@ -76157,7 +76157,7 @@
             // InternalOCLinEcore.g:26106:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_1_0_0()); 
+               before(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleDetailCS();
@@ -76165,7 +76165,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_1_0_0()); 
+               after(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_1_0_0());
             }
 
             }
@@ -76193,7 +76193,7 @@
     public final void rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26119:1: ( ( ruleMultiplicityCS ) )
             // InternalOCLinEcore.g:26120:1: ( ruleMultiplicityCS )
@@ -76202,7 +76202,7 @@
             // InternalOCLinEcore.g:26121:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               before(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -76210,7 +76210,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               after(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
 
             }
@@ -76238,7 +76238,7 @@
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26134:1: ( ( ruleTypeParameterCS ) )
             // InternalOCLinEcore.g:26135:1: ( ruleTypeParameterCS )
@@ -76247,7 +76247,7 @@
             // InternalOCLinEcore.g:26136:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeParameterCS();
@@ -76255,7 +76255,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0());
             }
 
             }
@@ -76283,7 +76283,7 @@
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26149:1: ( ( ruleTypeParameterCS ) )
             // InternalOCLinEcore.g:26150:1: ( ruleTypeParameterCS )
@@ -76292,7 +76292,7 @@
             // InternalOCLinEcore.g:26151:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeParameterCS();
@@ -76300,7 +76300,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0());
             }
 
             }
@@ -76328,7 +76328,7 @@
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26164:1: ( ( ruleTypeParameterCS ) )
             // InternalOCLinEcore.g:26165:1: ( ruleTypeParameterCS )
@@ -76337,7 +76337,7 @@
             // InternalOCLinEcore.g:26166:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeParameterCS();
@@ -76345,7 +76345,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0());
             }
 
             }
@@ -76373,7 +76373,7 @@
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26179:1: ( ( ruleTypeParameterCS ) )
             // InternalOCLinEcore.g:26180:1: ( ruleTypeParameterCS )
@@ -76382,7 +76382,7 @@
             // InternalOCLinEcore.g:26181:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeParameterCS();
@@ -76390,7 +76390,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0());
             }
 
             }
@@ -76418,7 +76418,7 @@
     public final void rule__TypedTypeRefCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26194:1: ( ( rulePathNameCS ) )
             // InternalOCLinEcore.g:26195:1: ( rulePathNameCS )
@@ -76427,7 +76427,7 @@
             // InternalOCLinEcore.g:26196:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -76435,7 +76435,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
 
             }
@@ -76463,7 +76463,7 @@
     public final void rule__TypedTypeRefCS__OwnedBindingAssignment_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26209:1: ( ( ruleTemplateBindingCS ) )
             // InternalOCLinEcore.g:26210:1: ( ruleTemplateBindingCS )
@@ -76472,7 +76472,7 @@
             // InternalOCLinEcore.g:26211:1: ruleTemplateBindingCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_0_1_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateBindingCS();
@@ -76480,7 +76480,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_0_1_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_0_1_0());
             }
 
             }
@@ -76508,7 +76508,7 @@
     public final void rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26224:1: ( ( ruleTemplateBindingCS ) )
             // InternalOCLinEcore.g:26225:1: ( ruleTemplateBindingCS )
@@ -76517,7 +76517,7 @@
             // InternalOCLinEcore.g:26226:1: ruleTemplateBindingCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateBindingCS();
@@ -76525,7 +76525,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0());
             }
 
             }
@@ -76553,7 +76553,7 @@
     public final void rule__URIPathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26240:1: ( ( ruleURIFirstPathElementCS ) )
             // InternalOCLinEcore.g:26241:1: ( ruleURIFirstPathElementCS )
@@ -76562,7 +76562,7 @@
             // InternalOCLinEcore.g:26242:1: ruleURIFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0()); 
+               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleURIFirstPathElementCS();
@@ -76570,7 +76570,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0()); 
+               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
             }
 
             }
@@ -76598,7 +76598,7 @@
     public final void rule__URIPathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26255:1: ( ( ruleNextPathElementCS ) )
             // InternalOCLinEcore.g:26256:1: ( ruleNextPathElementCS )
@@ -76607,7 +76607,7 @@
             // InternalOCLinEcore.g:26257:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNextPathElementCS();
@@ -76615,7 +76615,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
 
             }
@@ -76643,7 +76643,7 @@
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26270:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalOCLinEcore.g:26271:1: ( ( ruleUnrestrictedName ) )
@@ -76652,13 +76652,13 @@
             // InternalOCLinEcore.g:26272:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
             }
             // InternalOCLinEcore.g:26273:1: ( ruleUnrestrictedName )
             // InternalOCLinEcore.g:26274:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -76666,13 +76666,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
             }
 
             }
@@ -76700,7 +76700,7 @@
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26289:1: ( ( ( ruleURI ) ) )
             // InternalOCLinEcore.g:26290:1: ( ( ruleURI ) )
@@ -76709,13 +76709,13 @@
             // InternalOCLinEcore.g:26291:1: ( ruleURI )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
             }
             // InternalOCLinEcore.g:26292:1: ( ruleURI )
             // InternalOCLinEcore.g:26293:1: ruleURI
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleURI();
@@ -76723,13 +76723,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
             }
 
             }
@@ -76757,7 +76757,7 @@
     public final void rule__PrimitiveTypeCS__NameAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26308:1: ( ( rulePrimitiveTypeIdentifier ) )
             // InternalOCLinEcore.g:26309:1: ( rulePrimitiveTypeIdentifier )
@@ -76766,7 +76766,7 @@
             // InternalOCLinEcore.g:26310:1: rulePrimitiveTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
+               before(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrimitiveTypeIdentifier();
@@ -76774,7 +76774,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
+               after(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
             }
 
             }
@@ -76802,7 +76802,7 @@
     public final void rule__CollectionTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26323:1: ( ( ruleCollectionTypeIdentifier ) )
             // InternalOCLinEcore.g:26324:1: ( ruleCollectionTypeIdentifier )
@@ -76811,7 +76811,7 @@
             // InternalOCLinEcore.g:26325:1: ruleCollectionTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionTypeIdentifier();
@@ -76819,7 +76819,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
             }
 
             }
@@ -76847,7 +76847,7 @@
     public final void rule__CollectionTypeCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26338:1: ( ( ruleTypeExpCS ) )
             // InternalOCLinEcore.g:26339:1: ( ruleTypeExpCS )
@@ -76856,7 +76856,7 @@
             // InternalOCLinEcore.g:26340:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -76864,7 +76864,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -76892,7 +76892,7 @@
     public final void rule__MapTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26353:1: ( ( ( 'Map' ) ) )
             // InternalOCLinEcore.g:26354:1: ( ( 'Map' ) )
@@ -76901,23 +76901,23 @@
             // InternalOCLinEcore.g:26355:1: ( 'Map' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
             // InternalOCLinEcore.g:26356:1: ( 'Map' )
             // InternalOCLinEcore.g:26357:1: 'Map'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
             match(input,79,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
 
             }
@@ -76945,7 +76945,7 @@
     public final void rule__MapTypeCS__OwnedKeyTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26376:1: ( ( ruleTypeExpCS ) )
             // InternalOCLinEcore.g:26377:1: ( ruleTypeExpCS )
@@ -76954,7 +76954,7 @@
             // InternalOCLinEcore.g:26378:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -76962,7 +76962,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -76990,7 +76990,7 @@
     public final void rule__MapTypeCS__OwnedValueTypeAssignment_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26391:1: ( ( ruleTypeExpCS ) )
             // InternalOCLinEcore.g:26392:1: ( ruleTypeExpCS )
@@ -76999,7 +76999,7 @@
             // InternalOCLinEcore.g:26393:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -77007,7 +77007,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
             }
 
             }
@@ -77035,7 +77035,7 @@
     public final void rule__TupleTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26406:1: ( ( ( 'Tuple' ) ) )
             // InternalOCLinEcore.g:26407:1: ( ( 'Tuple' ) )
@@ -77044,23 +77044,23 @@
             // InternalOCLinEcore.g:26408:1: ( 'Tuple' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
             // InternalOCLinEcore.g:26409:1: ( 'Tuple' )
             // InternalOCLinEcore.g:26410:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
             match(input,80,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
 
             }
@@ -77088,7 +77088,7 @@
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26429:1: ( ( ruleTuplePartCS ) )
             // InternalOCLinEcore.g:26430:1: ( ruleTuplePartCS )
@@ -77097,7 +77097,7 @@
             // InternalOCLinEcore.g:26431:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTuplePartCS();
@@ -77105,7 +77105,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
             }
 
             }
@@ -77133,7 +77133,7 @@
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26444:1: ( ( ruleTuplePartCS ) )
             // InternalOCLinEcore.g:26445:1: ( ruleTuplePartCS )
@@ -77142,7 +77142,7 @@
             // InternalOCLinEcore.g:26446:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTuplePartCS();
@@ -77150,7 +77150,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
             }
 
             }
@@ -77178,7 +77178,7 @@
     public final void rule__TuplePartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26459:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:26460:1: ( ruleUnrestrictedName )
@@ -77187,7 +77187,7 @@
             // InternalOCLinEcore.g:26461:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -77195,7 +77195,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -77223,7 +77223,7 @@
     public final void rule__TuplePartCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26474:1: ( ( ruleTypeExpCS ) )
             // InternalOCLinEcore.g:26475:1: ( ruleTypeExpCS )
@@ -77232,7 +77232,7 @@
             // InternalOCLinEcore.g:26476:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -77240,7 +77240,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
             }
 
             }
@@ -77268,7 +77268,7 @@
     public final void rule__CollectionLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26489:1: ( ( ruleCollectionTypeCS ) )
             // InternalOCLinEcore.g:26490:1: ( ruleCollectionTypeCS )
@@ -77277,7 +77277,7 @@
             // InternalOCLinEcore.g:26491:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionTypeCS();
@@ -77285,7 +77285,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
 
             }
@@ -77313,7 +77313,7 @@
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26504:1: ( ( ruleCollectionLiteralPartCS ) )
             // InternalOCLinEcore.g:26505:1: ( ruleCollectionLiteralPartCS )
@@ -77322,7 +77322,7 @@
             // InternalOCLinEcore.g:26506:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionLiteralPartCS();
@@ -77330,7 +77330,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
             }
 
             }
@@ -77358,7 +77358,7 @@
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26519:1: ( ( ruleCollectionLiteralPartCS ) )
             // InternalOCLinEcore.g:26520:1: ( ruleCollectionLiteralPartCS )
@@ -77367,7 +77367,7 @@
             // InternalOCLinEcore.g:26521:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionLiteralPartCS();
@@ -77375,7 +77375,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -77403,7 +77403,7 @@
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26534:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:26535:1: ( ruleExpCS )
@@ -77412,7 +77412,7 @@
             // InternalOCLinEcore.g:26536:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -77420,7 +77420,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
             }
 
             }
@@ -77448,7 +77448,7 @@
     public final void rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26549:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:26550:1: ( ruleExpCS )
@@ -77457,7 +77457,7 @@
             // InternalOCLinEcore.g:26551:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -77465,7 +77465,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
             }
 
             }
@@ -77493,7 +77493,7 @@
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26564:1: ( ( rulePatternExpCS ) )
             // InternalOCLinEcore.g:26565:1: ( rulePatternExpCS )
@@ -77502,7 +77502,7 @@
             // InternalOCLinEcore.g:26566:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePatternExpCS();
@@ -77510,7 +77510,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
             }
 
             }
@@ -77538,7 +77538,7 @@
     public final void rule__CollectionPatternCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26579:1: ( ( ruleCollectionTypeCS ) )
             // InternalOCLinEcore.g:26580:1: ( ruleCollectionTypeCS )
@@ -77547,7 +77547,7 @@
             // InternalOCLinEcore.g:26581:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionTypeCS();
@@ -77555,7 +77555,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
 
             }
@@ -77583,7 +77583,7 @@
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26594:1: ( ( rulePatternExpCS ) )
             // InternalOCLinEcore.g:26595:1: ( rulePatternExpCS )
@@ -77592,7 +77592,7 @@
             // InternalOCLinEcore.g:26596:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePatternExpCS();
@@ -77600,7 +77600,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
             }
 
             }
@@ -77628,7 +77628,7 @@
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26609:1: ( ( rulePatternExpCS ) )
             // InternalOCLinEcore.g:26610:1: ( rulePatternExpCS )
@@ -77637,7 +77637,7 @@
             // InternalOCLinEcore.g:26611:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePatternExpCS();
@@ -77645,7 +77645,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -77673,7 +77673,7 @@
     public final void rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26624:1: ( ( ruleIdentifier ) )
             // InternalOCLinEcore.g:26625:1: ( ruleIdentifier )
@@ -77682,7 +77682,7 @@
             // InternalOCLinEcore.g:26626:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -77690,7 +77690,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
             }
 
             }
@@ -77718,7 +77718,7 @@
     public final void rule__ShadowPartCS__ReferredPropertyAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26639:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalOCLinEcore.g:26640:1: ( ( ruleUnrestrictedName ) )
@@ -77727,13 +77727,13 @@
             // InternalOCLinEcore.g:26641:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
+               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
             }
             // InternalOCLinEcore.g:26642:1: ( ruleUnrestrictedName )
             // InternalOCLinEcore.g:26643:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1()); 
+               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -77741,13 +77741,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1()); 
+               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
+               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
             }
 
             }
@@ -77775,7 +77775,7 @@
     public final void rule__ShadowPartCS__OwnedInitExpressionAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26658:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 ) ) )
             // InternalOCLinEcore.g:26659:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 ) )
@@ -77784,7 +77784,7 @@
             // InternalOCLinEcore.g:26660:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0()); 
+               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0());
             }
             // InternalOCLinEcore.g:26661:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 )
             // InternalOCLinEcore.g:26661:2: rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0
@@ -77798,7 +77798,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0()); 
+               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0());
             }
 
             }
@@ -77826,7 +77826,7 @@
     public final void rule__PatternExpCS__PatternVariableNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26674:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:26675:1: ( ruleUnrestrictedName )
@@ -77835,7 +77835,7 @@
             // InternalOCLinEcore.g:26676:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -77843,7 +77843,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -77871,7 +77871,7 @@
     public final void rule__PatternExpCS__OwnedPatternTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26689:1: ( ( ruleTypeExpCS ) )
             // InternalOCLinEcore.g:26690:1: ( ruleTypeExpCS )
@@ -77880,7 +77880,7 @@
             // InternalOCLinEcore.g:26691:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -77888,7 +77888,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
             }
 
             }
@@ -77916,7 +77916,7 @@
     public final void rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26704:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:26705:1: ( ruleExpCS )
@@ -77925,7 +77925,7 @@
             // InternalOCLinEcore.g:26706:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -77933,7 +77933,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
             }
 
             }
@@ -77961,7 +77961,7 @@
     public final void rule__MapLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26719:1: ( ( ruleMapTypeCS ) )
             // InternalOCLinEcore.g:26720:1: ( ruleMapTypeCS )
@@ -77970,7 +77970,7 @@
             // InternalOCLinEcore.g:26721:1: ruleMapTypeCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMapTypeCS();
@@ -77978,7 +77978,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
             }
 
             }
@@ -78006,7 +78006,7 @@
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26734:1: ( ( ruleMapLiteralPartCS ) )
             // InternalOCLinEcore.g:26735:1: ( ruleMapLiteralPartCS )
@@ -78015,7 +78015,7 @@
             // InternalOCLinEcore.g:26736:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMapLiteralPartCS();
@@ -78023,7 +78023,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
             }
 
             }
@@ -78051,7 +78051,7 @@
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26749:1: ( ( ruleMapLiteralPartCS ) )
             // InternalOCLinEcore.g:26750:1: ( ruleMapLiteralPartCS )
@@ -78060,7 +78060,7 @@
             // InternalOCLinEcore.g:26751:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMapLiteralPartCS();
@@ -78068,7 +78068,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -78096,7 +78096,7 @@
     public final void rule__MapLiteralPartCS__OwnedKeyAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26764:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:26765:1: ( ruleExpCS )
@@ -78105,7 +78105,7 @@
             // InternalOCLinEcore.g:26766:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -78113,7 +78113,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
             }
 
             }
@@ -78141,7 +78141,7 @@
     public final void rule__MapLiteralPartCS__OwnedValueAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26779:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:26780:1: ( ruleExpCS )
@@ -78150,7 +78150,7 @@
             // InternalOCLinEcore.g:26781:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -78158,7 +78158,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
             }
 
             }
@@ -78186,7 +78186,7 @@
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26794:1: ( ( ruleTupleLiteralPartCS ) )
             // InternalOCLinEcore.g:26795:1: ( ruleTupleLiteralPartCS )
@@ -78195,7 +78195,7 @@
             // InternalOCLinEcore.g:26796:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTupleLiteralPartCS();
@@ -78203,7 +78203,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
             }
 
             }
@@ -78231,7 +78231,7 @@
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26809:1: ( ( ruleTupleLiteralPartCS ) )
             // InternalOCLinEcore.g:26810:1: ( ruleTupleLiteralPartCS )
@@ -78240,7 +78240,7 @@
             // InternalOCLinEcore.g:26811:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTupleLiteralPartCS();
@@ -78248,7 +78248,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
             }
 
             }
@@ -78276,7 +78276,7 @@
     public final void rule__TupleLiteralPartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26824:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:26825:1: ( ruleUnrestrictedName )
@@ -78285,7 +78285,7 @@
             // InternalOCLinEcore.g:26826:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -78293,7 +78293,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -78321,7 +78321,7 @@
     public final void rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26839:1: ( ( ruleTypeExpCS ) )
             // InternalOCLinEcore.g:26840:1: ( ruleTypeExpCS )
@@ -78330,7 +78330,7 @@
             // InternalOCLinEcore.g:26841:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -78338,7 +78338,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -78366,7 +78366,7 @@
     public final void rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26854:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:26855:1: ( ruleExpCS )
@@ -78375,7 +78375,7 @@
             // InternalOCLinEcore.g:26856:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -78383,7 +78383,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
             }
 
             }
@@ -78411,7 +78411,7 @@
     public final void rule__NumberLiteralExpCS__SymbolAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26869:1: ( ( ruleNUMBER_LITERAL ) )
             // InternalOCLinEcore.g:26870:1: ( ruleNUMBER_LITERAL )
@@ -78420,7 +78420,7 @@
             // InternalOCLinEcore.g:26871:1: ruleNUMBER_LITERAL
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
+               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNUMBER_LITERAL();
@@ -78428,7 +78428,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
+               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
             }
 
             }
@@ -78456,7 +78456,7 @@
     public final void rule__StringLiteralExpCS__SegmentsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26884:1: ( ( ruleStringLiteral ) )
             // InternalOCLinEcore.g:26885:1: ( ruleStringLiteral )
@@ -78465,7 +78465,7 @@
             // InternalOCLinEcore.g:26886:1: ruleStringLiteral
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
+               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleStringLiteral();
@@ -78473,7 +78473,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
+               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
             }
 
             }
@@ -78501,7 +78501,7 @@
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26899:1: ( ( ( 'true' ) ) )
             // InternalOCLinEcore.g:26900:1: ( ( 'true' ) )
@@ -78510,23 +78510,23 @@
             // InternalOCLinEcore.g:26901:1: ( 'true' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
             // InternalOCLinEcore.g:26902:1: ( 'true' )
             // InternalOCLinEcore.g:26903:1: 'true'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
             match(input,133,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
 
             }
@@ -78554,7 +78554,7 @@
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26922:1: ( ( ( 'false' ) ) )
             // InternalOCLinEcore.g:26923:1: ( ( 'false' ) )
@@ -78563,23 +78563,23 @@
             // InternalOCLinEcore.g:26924:1: ( 'false' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
             // InternalOCLinEcore.g:26925:1: ( 'false' )
             // InternalOCLinEcore.g:26926:1: 'false'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
             match(input,134,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
 
             }
@@ -78607,7 +78607,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26945:1: ( ( ruleMultiplicityCS ) )
             // InternalOCLinEcore.g:26946:1: ( ruleMultiplicityCS )
@@ -78616,7 +78616,7 @@
             // InternalOCLinEcore.g:26947:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -78624,7 +78624,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
 
             }
@@ -78652,7 +78652,7 @@
     public final void rule__TypeLiteralExpCS__OwnedTypeAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26960:1: ( ( ruleTypeLiteralWithMultiplicityCS ) )
             // InternalOCLinEcore.g:26961:1: ( ruleTypeLiteralWithMultiplicityCS )
@@ -78661,7 +78661,7 @@
             // InternalOCLinEcore.g:26962:1: ruleTypeLiteralWithMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
+               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeLiteralWithMultiplicityCS();
@@ -78669,7 +78669,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
+               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
             }
 
             }
@@ -78697,7 +78697,7 @@
     public final void rule__TypeNameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26975:1: ( ( rulePathNameCS ) )
             // InternalOCLinEcore.g:26976:1: ( rulePathNameCS )
@@ -78706,7 +78706,7 @@
             // InternalOCLinEcore.g:26977:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -78714,7 +78714,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
 
             }
@@ -78742,7 +78742,7 @@
     public final void rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:26990:1: ( ( ruleCurlyBracketedClauseCS ) )
             // InternalOCLinEcore.g:26991:1: ( ruleCurlyBracketedClauseCS )
@@ -78751,7 +78751,7 @@
             // InternalOCLinEcore.g:26992:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCurlyBracketedClauseCS();
@@ -78759,7 +78759,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
             }
 
             }
@@ -78787,7 +78787,7 @@
     public final void rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27005:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27006:1: ( ruleExpCS )
@@ -78796,7 +78796,7 @@
             // InternalOCLinEcore.g:27007:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -78804,7 +78804,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
             }
 
             }
@@ -78832,7 +78832,7 @@
     public final void rule__TypeExpCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27020:1: ( ( ruleMultiplicityCS ) )
             // InternalOCLinEcore.g:27021:1: ( ruleMultiplicityCS )
@@ -78841,7 +78841,7 @@
             // InternalOCLinEcore.g:27022:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -78849,7 +78849,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
 
             }
@@ -78877,7 +78877,7 @@
     public final void rule__ExpCS__NameAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27035:1: ( ( ruleBinaryOperatorName ) )
             // InternalOCLinEcore.g:27036:1: ( ruleBinaryOperatorName )
@@ -78886,7 +78886,7 @@
             // InternalOCLinEcore.g:27037:1: ruleBinaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
+               before(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleBinaryOperatorName();
@@ -78894,7 +78894,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
+               after(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
             }
 
             }
@@ -78922,7 +78922,7 @@
     public final void rule__ExpCS__OwnedRightAssignment_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27050:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27051:1: ( ruleExpCS )
@@ -78931,7 +78931,7 @@
             // InternalOCLinEcore.g:27052:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
+               before(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -78939,7 +78939,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
+               after(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
             }
 
             }
@@ -78967,7 +78967,7 @@
     public final void rule__PrefixedLetExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27065:1: ( ( ruleUnaryOperatorName ) )
             // InternalOCLinEcore.g:27066:1: ( ruleUnaryOperatorName )
@@ -78976,7 +78976,7 @@
             // InternalOCLinEcore.g:27067:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnaryOperatorName();
@@ -78984,7 +78984,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
 
             }
@@ -79012,7 +79012,7 @@
     public final void rule__PrefixedLetExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27080:1: ( ( rulePrefixedLetExpCS ) )
             // InternalOCLinEcore.g:27081:1: ( rulePrefixedLetExpCS )
@@ -79021,7 +79021,7 @@
             // InternalOCLinEcore.g:27082:1: rulePrefixedLetExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrefixedLetExpCS();
@@ -79029,7 +79029,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
             }
 
             }
@@ -79057,7 +79057,7 @@
     public final void rule__PrefixedPrimaryExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27095:1: ( ( ruleUnaryOperatorName ) )
             // InternalOCLinEcore.g:27096:1: ( ruleUnaryOperatorName )
@@ -79066,7 +79066,7 @@
             // InternalOCLinEcore.g:27097:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnaryOperatorName();
@@ -79074,7 +79074,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
 
             }
@@ -79102,7 +79102,7 @@
     public final void rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27110:1: ( ( rulePrefixedPrimaryExpCS ) )
             // InternalOCLinEcore.g:27111:1: ( rulePrefixedPrimaryExpCS )
@@ -79111,7 +79111,7 @@
             // InternalOCLinEcore.g:27112:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrefixedPrimaryExpCS();
@@ -79119,7 +79119,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
             }
 
             }
@@ -79147,7 +79147,7 @@
     public final void rule__NameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27125:1: ( ( rulePathNameCS ) )
             // InternalOCLinEcore.g:27126:1: ( rulePathNameCS )
@@ -79156,7 +79156,7 @@
             // InternalOCLinEcore.g:27127:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -79164,7 +79164,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
 
             }
@@ -79192,7 +79192,7 @@
     public final void rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27140:1: ( ( ruleSquareBracketedClauseCS ) )
             // InternalOCLinEcore.g:27141:1: ( ruleSquareBracketedClauseCS )
@@ -79201,7 +79201,7 @@
             // InternalOCLinEcore.g:27142:1: ruleSquareBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSquareBracketedClauseCS();
@@ -79209,7 +79209,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
             }
 
             }
@@ -79237,7 +79237,7 @@
     public final void rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27155:1: ( ( ruleRoundBracketedClauseCS ) )
             // InternalOCLinEcore.g:27156:1: ( ruleRoundBracketedClauseCS )
@@ -79246,7 +79246,7 @@
             // InternalOCLinEcore.g:27157:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleRoundBracketedClauseCS();
@@ -79254,7 +79254,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
             }
 
             }
@@ -79282,7 +79282,7 @@
     public final void rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27170:1: ( ( ruleCurlyBracketedClauseCS ) )
             // InternalOCLinEcore.g:27171:1: ( ruleCurlyBracketedClauseCS )
@@ -79291,7 +79291,7 @@
             // InternalOCLinEcore.g:27172:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCurlyBracketedClauseCS();
@@ -79299,7 +79299,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
             }
 
             }
@@ -79327,7 +79327,7 @@
     public final void rule__NameExpCS__IsPreAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27185:1: ( ( ( '@' ) ) )
             // InternalOCLinEcore.g:27186:1: ( ( '@' ) )
@@ -79336,23 +79336,23 @@
             // InternalOCLinEcore.g:27187:1: ( '@' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
             // InternalOCLinEcore.g:27188:1: ( '@' )
             // InternalOCLinEcore.g:27189:1: '@'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
             match(input,135,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
 
             }
@@ -79380,7 +79380,7 @@
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27208:1: ( ( ruleShadowPartCS ) )
             // InternalOCLinEcore.g:27209:1: ( ruleShadowPartCS )
@@ -79389,7 +79389,7 @@
             // InternalOCLinEcore.g:27210:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleShadowPartCS();
@@ -79397,7 +79397,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
             }
 
             }
@@ -79425,7 +79425,7 @@
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27223:1: ( ( ruleShadowPartCS ) )
             // InternalOCLinEcore.g:27224:1: ( ruleShadowPartCS )
@@ -79434,7 +79434,7 @@
             // InternalOCLinEcore.g:27225:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleShadowPartCS();
@@ -79442,7 +79442,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
             }
 
             }
@@ -79470,7 +79470,7 @@
     public final void rule__CurlyBracketedClauseCS__ValueAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27238:1: ( ( ruleStringLiteral ) )
             // InternalOCLinEcore.g:27239:1: ( ruleStringLiteral )
@@ -79479,7 +79479,7 @@
             // InternalOCLinEcore.g:27240:1: ruleStringLiteral
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleStringLiteral();
@@ -79487,7 +79487,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
             }
 
             }
@@ -79515,7 +79515,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27253:1: ( ( ruleNavigatingArgCS ) )
             // InternalOCLinEcore.g:27254:1: ( ruleNavigatingArgCS )
@@ -79524,7 +79524,7 @@
             // InternalOCLinEcore.g:27255:1: ruleNavigatingArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgCS();
@@ -79532,7 +79532,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
             }
 
             }
@@ -79560,7 +79560,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27268:1: ( ( ruleNavigatingCommaArgCS ) )
             // InternalOCLinEcore.g:27269:1: ( ruleNavigatingCommaArgCS )
@@ -79569,7 +79569,7 @@
             // InternalOCLinEcore.g:27270:1: ruleNavigatingCommaArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingCommaArgCS();
@@ -79577,7 +79577,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
             }
 
             }
@@ -79605,7 +79605,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27283:1: ( ( ruleNavigatingSemiArgCS ) )
             // InternalOCLinEcore.g:27284:1: ( ruleNavigatingSemiArgCS )
@@ -79614,7 +79614,7 @@
             // InternalOCLinEcore.g:27285:1: ruleNavigatingSemiArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingSemiArgCS();
@@ -79622,7 +79622,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
             }
 
             }
@@ -79650,7 +79650,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27298:1: ( ( ruleNavigatingCommaArgCS ) )
             // InternalOCLinEcore.g:27299:1: ( ruleNavigatingCommaArgCS )
@@ -79659,7 +79659,7 @@
             // InternalOCLinEcore.g:27300:1: ruleNavigatingCommaArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingCommaArgCS();
@@ -79667,7 +79667,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
             }
 
             }
@@ -79695,7 +79695,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27313:1: ( ( ruleNavigatingBarArgCS ) )
             // InternalOCLinEcore.g:27314:1: ( ruleNavigatingBarArgCS )
@@ -79704,7 +79704,7 @@
             // InternalOCLinEcore.g:27315:1: ruleNavigatingBarArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingBarArgCS();
@@ -79712,7 +79712,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
             }
 
             }
@@ -79740,7 +79740,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27328:1: ( ( ruleNavigatingCommaArgCS ) )
             // InternalOCLinEcore.g:27329:1: ( ruleNavigatingCommaArgCS )
@@ -79749,7 +79749,7 @@
             // InternalOCLinEcore.g:27330:1: ruleNavigatingCommaArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingCommaArgCS();
@@ -79757,7 +79757,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
             }
 
             }
@@ -79785,7 +79785,7 @@
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27343:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27344:1: ( ruleExpCS )
@@ -79794,7 +79794,7 @@
             // InternalOCLinEcore.g:27345:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -79802,7 +79802,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
             }
 
             }
@@ -79830,7 +79830,7 @@
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27358:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27359:1: ( ruleExpCS )
@@ -79839,7 +79839,7 @@
             // InternalOCLinEcore.g:27360:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -79847,7 +79847,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -79875,7 +79875,7 @@
     public final void rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27373:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalOCLinEcore.g:27374:1: ( ruleNavigatingArgExpCS )
@@ -79884,7 +79884,7 @@
             // InternalOCLinEcore.g:27375:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -79892,7 +79892,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
             }
 
             }
@@ -79920,7 +79920,7 @@
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27388:1: ( ( ruleTypeExpCS ) )
             // InternalOCLinEcore.g:27389:1: ( ruleTypeExpCS )
@@ -79929,7 +79929,7 @@
             // InternalOCLinEcore.g:27390:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -79937,7 +79937,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
             }
 
             }
@@ -79965,7 +79965,7 @@
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27403:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27404:1: ( ruleExpCS )
@@ -79974,7 +79974,7 @@
             // InternalOCLinEcore.g:27405:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -79982,7 +79982,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
             }
 
             }
@@ -80010,7 +80010,7 @@
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27418:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27419:1: ( ruleExpCS )
@@ -80019,7 +80019,7 @@
             // InternalOCLinEcore.g:27420:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -80027,7 +80027,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
             }
 
             }
@@ -80055,7 +80055,7 @@
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27433:1: ( ( ruleTypeExpCS ) )
             // InternalOCLinEcore.g:27434:1: ( ruleTypeExpCS )
@@ -80064,7 +80064,7 @@
             // InternalOCLinEcore.g:27435:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -80072,7 +80072,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -80100,7 +80100,7 @@
     public final void rule__NavigatingBarArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27448:1: ( ( ( '|' ) ) )
             // InternalOCLinEcore.g:27449:1: ( ( '|' ) )
@@ -80109,23 +80109,23 @@
             // InternalOCLinEcore.g:27450:1: ( '|' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
             // InternalOCLinEcore.g:27451:1: ( '|' )
             // InternalOCLinEcore.g:27452:1: '|'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
             match(input,136,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
 
             }
@@ -80153,7 +80153,7 @@
     public final void rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27471:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalOCLinEcore.g:27472:1: ( ruleNavigatingArgExpCS )
@@ -80162,7 +80162,7 @@
             // InternalOCLinEcore.g:27473:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -80170,7 +80170,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
 
             }
@@ -80198,7 +80198,7 @@
     public final void rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27486:1: ( ( ruleTypeExpCS ) )
             // InternalOCLinEcore.g:27487:1: ( ruleTypeExpCS )
@@ -80207,7 +80207,7 @@
             // InternalOCLinEcore.g:27488:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -80215,7 +80215,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -80243,7 +80243,7 @@
     public final void rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27501:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27502:1: ( ruleExpCS )
@@ -80252,7 +80252,7 @@
             // InternalOCLinEcore.g:27503:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -80260,7 +80260,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
 
             }
@@ -80288,7 +80288,7 @@
     public final void rule__NavigatingCommaArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27516:1: ( ( ( ',' ) ) )
             // InternalOCLinEcore.g:27517:1: ( ( ',' ) )
@@ -80297,23 +80297,23 @@
             // InternalOCLinEcore.g:27518:1: ( ',' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
             // InternalOCLinEcore.g:27519:1: ( ',' )
             // InternalOCLinEcore.g:27520:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
 
             }
@@ -80341,7 +80341,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27539:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalOCLinEcore.g:27540:1: ( ruleNavigatingArgExpCS )
@@ -80350,7 +80350,7 @@
             // InternalOCLinEcore.g:27541:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -80358,7 +80358,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
 
             }
@@ -80386,7 +80386,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27554:1: ( ( ruleTypeExpCS ) )
             // InternalOCLinEcore.g:27555:1: ( ruleTypeExpCS )
@@ -80395,7 +80395,7 @@
             // InternalOCLinEcore.g:27556:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -80403,7 +80403,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
             }
 
             }
@@ -80431,7 +80431,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27569:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27570:1: ( ruleExpCS )
@@ -80440,7 +80440,7 @@
             // InternalOCLinEcore.g:27571:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -80448,7 +80448,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
             }
 
             }
@@ -80476,7 +80476,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27584:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27585:1: ( ruleExpCS )
@@ -80485,7 +80485,7 @@
             // InternalOCLinEcore.g:27586:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -80493,7 +80493,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -80521,7 +80521,7 @@
     public final void rule__NavigatingSemiArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27599:1: ( ( ( ';' ) ) )
             // InternalOCLinEcore.g:27600:1: ( ( ';' ) )
@@ -80530,23 +80530,23 @@
             // InternalOCLinEcore.g:27601:1: ( ';' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
             // InternalOCLinEcore.g:27602:1: ( ';' )
             // InternalOCLinEcore.g:27603:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
             match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
 
             }
@@ -80574,7 +80574,7 @@
     public final void rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27622:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalOCLinEcore.g:27623:1: ( ruleNavigatingArgExpCS )
@@ -80583,7 +80583,7 @@
             // InternalOCLinEcore.g:27624:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -80591,7 +80591,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
 
             }
@@ -80619,7 +80619,7 @@
     public final void rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27637:1: ( ( ruleTypeExpCS ) )
             // InternalOCLinEcore.g:27638:1: ( ruleTypeExpCS )
@@ -80628,7 +80628,7 @@
             // InternalOCLinEcore.g:27639:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -80636,7 +80636,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -80664,7 +80664,7 @@
     public final void rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27652:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27653:1: ( ruleExpCS )
@@ -80673,7 +80673,7 @@
             // InternalOCLinEcore.g:27654:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -80681,7 +80681,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
 
             }
@@ -80709,7 +80709,7 @@
     public final void rule__IfExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27667:1: ( ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) )
             // InternalOCLinEcore.g:27668:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
@@ -80718,7 +80718,7 @@
             // InternalOCLinEcore.g:27669:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0());
             }
             // InternalOCLinEcore.g:27670:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
             // InternalOCLinEcore.g:27670:2: rule__IfExpCS__OwnedConditionAlternatives_1_0
@@ -80732,7 +80732,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0());
             }
 
             }
@@ -80760,7 +80760,7 @@
     public final void rule__IfExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27683:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27684:1: ( ruleExpCS )
@@ -80769,7 +80769,7 @@
             // InternalOCLinEcore.g:27685:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -80777,7 +80777,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
 
             }
@@ -80805,7 +80805,7 @@
     public final void rule__IfExpCS__OwnedIfThenExpressionsAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27698:1: ( ( ruleElseIfThenExpCS ) )
             // InternalOCLinEcore.g:27699:1: ( ruleElseIfThenExpCS )
@@ -80814,7 +80814,7 @@
             // InternalOCLinEcore.g:27700:1: ruleElseIfThenExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleElseIfThenExpCS();
@@ -80822,7 +80822,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
             }
 
             }
@@ -80850,7 +80850,7 @@
     public final void rule__IfExpCS__OwnedElseExpressionAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27713:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27714:1: ( ruleExpCS )
@@ -80859,7 +80859,7 @@
             // InternalOCLinEcore.g:27715:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -80867,7 +80867,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
             }
 
             }
@@ -80895,7 +80895,7 @@
     public final void rule__ElseIfThenExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27728:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27729:1: ( ruleExpCS )
@@ -80904,7 +80904,7 @@
             // InternalOCLinEcore.g:27730:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -80912,7 +80912,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
             }
 
             }
@@ -80940,7 +80940,7 @@
     public final void rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27743:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27744:1: ( ruleExpCS )
@@ -80949,7 +80949,7 @@
             // InternalOCLinEcore.g:27745:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -80957,7 +80957,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
 
             }
@@ -80985,7 +80985,7 @@
     public final void rule__LetExpCS__OwnedVariablesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27758:1: ( ( ruleLetVariableCS ) )
             // InternalOCLinEcore.g:27759:1: ( ruleLetVariableCS )
@@ -80994,7 +80994,7 @@
             // InternalOCLinEcore.g:27760:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLetVariableCS();
@@ -81002,7 +81002,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
             }
 
             }
@@ -81030,7 +81030,7 @@
     public final void rule__LetExpCS__OwnedVariablesAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27773:1: ( ( ruleLetVariableCS ) )
             // InternalOCLinEcore.g:27774:1: ( ruleLetVariableCS )
@@ -81039,7 +81039,7 @@
             // InternalOCLinEcore.g:27775:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLetVariableCS();
@@ -81047,7 +81047,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
             }
 
             }
@@ -81075,7 +81075,7 @@
     public final void rule__LetExpCS__OwnedInExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27788:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27789:1: ( ruleExpCS )
@@ -81084,7 +81084,7 @@
             // InternalOCLinEcore.g:27790:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -81092,7 +81092,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
             }
 
             }
@@ -81120,7 +81120,7 @@
     public final void rule__LetVariableCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27803:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:27804:1: ( ruleUnrestrictedName )
@@ -81129,7 +81129,7 @@
             // InternalOCLinEcore.g:27805:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -81137,7 +81137,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -81165,7 +81165,7 @@
     public final void rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27818:1: ( ( ruleRoundBracketedClauseCS ) )
             // InternalOCLinEcore.g:27819:1: ( ruleRoundBracketedClauseCS )
@@ -81174,7 +81174,7 @@
             // InternalOCLinEcore.g:27820:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleRoundBracketedClauseCS();
@@ -81182,7 +81182,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
             }
 
             }
@@ -81210,7 +81210,7 @@
     public final void rule__LetVariableCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27833:1: ( ( ruleTypeExpCS ) )
             // InternalOCLinEcore.g:27834:1: ( ruleTypeExpCS )
@@ -81219,7 +81219,7 @@
             // InternalOCLinEcore.g:27835:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -81227,7 +81227,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -81255,7 +81255,7 @@
     public final void rule__LetVariableCS__OwnedInitExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27848:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27849:1: ( ruleExpCS )
@@ -81264,7 +81264,7 @@
             // InternalOCLinEcore.g:27850:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -81272,7 +81272,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
             }
 
             }
@@ -81300,7 +81300,7 @@
     public final void rule__NestedExpCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27863:1: ( ( ruleExpCS ) )
             // InternalOCLinEcore.g:27864:1: ( ruleExpCS )
@@ -81309,7 +81309,7 @@
             // InternalOCLinEcore.g:27865:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -81317,7 +81317,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
             }
 
             }
@@ -81345,7 +81345,7 @@
     public final void rule__MultiplicityBoundsCS__LowerBoundAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27878:1: ( ( ruleLOWER ) )
             // InternalOCLinEcore.g:27879:1: ( ruleLOWER )
@@ -81354,7 +81354,7 @@
             // InternalOCLinEcore.g:27880:1: ruleLOWER
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLOWER();
@@ -81362,7 +81362,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
             }
 
             }
@@ -81390,7 +81390,7 @@
     public final void rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27893:1: ( ( ruleUPPER ) )
             // InternalOCLinEcore.g:27894:1: ( ruleUPPER )
@@ -81399,7 +81399,7 @@
             // InternalOCLinEcore.g:27895:1: ruleUPPER
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUPPER();
@@ -81407,7 +81407,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
             }
 
             }
@@ -81435,7 +81435,7 @@
     public final void rule__MultiplicityCS__IsNullFreeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27908:1: ( ( ( '|1' ) ) )
             // InternalOCLinEcore.g:27909:1: ( ( '|1' ) )
@@ -81444,23 +81444,23 @@
             // InternalOCLinEcore.g:27910:1: ( '|1' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
             // InternalOCLinEcore.g:27911:1: ( '|1' )
             // InternalOCLinEcore.g:27912:1: '|1'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
             match(input,137,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
 
             }
@@ -81488,7 +81488,7 @@
     public final void rule__MultiplicityStringCS__StringBoundsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27931:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
             // InternalOCLinEcore.g:27932:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
@@ -81497,7 +81497,7 @@
             // InternalOCLinEcore.g:27933:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0()); 
+               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
             // InternalOCLinEcore.g:27934:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             // InternalOCLinEcore.g:27934:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
@@ -81511,7 +81511,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0()); 
+               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
 
             }
@@ -81539,7 +81539,7 @@
     public final void rule__PathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27947:1: ( ( ruleFirstPathElementCS ) )
             // InternalOCLinEcore.g:27948:1: ( ruleFirstPathElementCS )
@@ -81548,7 +81548,7 @@
             // InternalOCLinEcore.g:27949:1: ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleFirstPathElementCS();
@@ -81556,7 +81556,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
             }
 
             }
@@ -81584,7 +81584,7 @@
     public final void rule__PathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27962:1: ( ( ruleNextPathElementCS ) )
             // InternalOCLinEcore.g:27963:1: ( ruleNextPathElementCS )
@@ -81593,7 +81593,7 @@
             // InternalOCLinEcore.g:27964:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNextPathElementCS();
@@ -81601,7 +81601,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
 
             }
@@ -81629,7 +81629,7 @@
     public final void rule__FirstPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27977:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalOCLinEcore.g:27978:1: ( ( ruleUnrestrictedName ) )
@@ -81638,13 +81638,13 @@
             // InternalOCLinEcore.g:27979:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
             // InternalOCLinEcore.g:27980:1: ( ruleUnrestrictedName )
             // InternalOCLinEcore.g:27981:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -81652,13 +81652,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
 
             }
@@ -81686,7 +81686,7 @@
     public final void rule__NextPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:27996:1: ( ( ( ruleUnreservedName ) ) )
             // InternalOCLinEcore.g:27997:1: ( ( ruleUnreservedName ) )
@@ -81695,13 +81695,13 @@
             // InternalOCLinEcore.g:27998:1: ( ruleUnreservedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
             // InternalOCLinEcore.g:27999:1: ( ruleUnreservedName )
             // InternalOCLinEcore.g:28000:1: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnreservedName();
@@ -81709,13 +81709,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
 
             }
@@ -81743,7 +81743,7 @@
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:28015:1: ( ( ruleTemplateParameterSubstitutionCS ) )
             // InternalOCLinEcore.g:28016:1: ( ruleTemplateParameterSubstitutionCS )
@@ -81752,7 +81752,7 @@
             // InternalOCLinEcore.g:28017:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateParameterSubstitutionCS();
@@ -81760,7 +81760,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
             }
 
             }
@@ -81788,7 +81788,7 @@
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:28030:1: ( ( ruleTemplateParameterSubstitutionCS ) )
             // InternalOCLinEcore.g:28031:1: ( ruleTemplateParameterSubstitutionCS )
@@ -81797,7 +81797,7 @@
             // InternalOCLinEcore.g:28032:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateParameterSubstitutionCS();
@@ -81805,7 +81805,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
             }
 
             }
@@ -81833,7 +81833,7 @@
     public final void rule__TemplateBindingCS__OwnedMultiplicityAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:28045:1: ( ( ruleMultiplicityCS ) )
             // InternalOCLinEcore.g:28046:1: ( ruleMultiplicityCS )
@@ -81842,7 +81842,7 @@
             // InternalOCLinEcore.g:28047:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -81850,7 +81850,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
             }
 
             }
@@ -81878,7 +81878,7 @@
     public final void rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:28060:1: ( ( ruleTypeRefCS ) )
             // InternalOCLinEcore.g:28061:1: ( ruleTypeRefCS )
@@ -81887,7 +81887,7 @@
             // InternalOCLinEcore.g:28062:1: ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeRefCS();
@@ -81895,7 +81895,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
             }
 
             }
@@ -81923,7 +81923,7 @@
     public final void rule__TypeParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:28075:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:28076:1: ( ruleUnrestrictedName )
@@ -81932,7 +81932,7 @@
             // InternalOCLinEcore.g:28077:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -81940,7 +81940,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -81968,7 +81968,7 @@
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:28090:1: ( ( ruleTypedRefCS ) )
             // InternalOCLinEcore.g:28091:1: ( ruleTypedRefCS )
@@ -81977,7 +81977,7 @@
             // InternalOCLinEcore.g:28092:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -81985,7 +81985,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
             }
 
             }
@@ -82013,7 +82013,7 @@
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:28105:1: ( ( ruleTypedRefCS ) )
             // InternalOCLinEcore.g:28106:1: ( ruleTypedRefCS )
@@ -82022,7 +82022,7 @@
             // InternalOCLinEcore.g:28107:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -82030,7 +82030,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
             }
 
             }
@@ -82058,7 +82058,7 @@
     public final void rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLinEcore.g:28120:1: ( ( ruleTypedRefCS ) )
             // InternalOCLinEcore.g:28121:1: ( ruleTypedRefCS )
@@ -82067,7 +82067,7 @@
             // InternalOCLinEcore.g:28122:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -82075,7 +82075,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
             }
 
             }
@@ -82098,7 +82098,7 @@
     // $ANTLR end "rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1"
 
     // $ANTLR start synpred183_InternalOCLinEcore
-    public final void synpred183_InternalOCLinEcore_fragment() throws RecognitionException {   
+    public final void synpred183_InternalOCLinEcore_fragment() throws RecognitionException {
         // InternalOCLinEcore.g:5304:6: ( ( ruleTypeLiteralCS ) )
         // InternalOCLinEcore.g:5304:6: ( ruleTypeLiteralCS )
         {
@@ -82106,7 +82106,7 @@
         // InternalOCLinEcore.g:5305:1: ruleTypeLiteralCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+           before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleTypeLiteralCS();
@@ -82122,7 +82122,7 @@
     // $ANTLR end synpred183_InternalOCLinEcore
 
     // $ANTLR start synpred184_InternalOCLinEcore
-    public final void synpred184_InternalOCLinEcore_fragment() throws RecognitionException {   
+    public final void synpred184_InternalOCLinEcore_fragment() throws RecognitionException {
         // InternalOCLinEcore.g:5326:1: ( ( ( rule__ExpCS__Group_0__0 ) ) )
         // InternalOCLinEcore.g:5326:1: ( ( rule__ExpCS__Group_0__0 ) )
         {
@@ -82130,7 +82130,7 @@
         // InternalOCLinEcore.g:5327:1: ( rule__ExpCS__Group_0__0 )
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getExpCSAccess().getGroup_0()); 
+           before(grammarAccess.getExpCSAccess().getGroup_0());
         }
         // InternalOCLinEcore.g:5328:1: ( rule__ExpCS__Group_0__0 )
         // InternalOCLinEcore.g:5328:2: rule__ExpCS__Group_0__0
@@ -82152,7 +82152,7 @@
     // $ANTLR end synpred184_InternalOCLinEcore
 
     // $ANTLR start synpred191_InternalOCLinEcore
-    public final void synpred191_InternalOCLinEcore_fragment() throws RecognitionException {   
+    public final void synpred191_InternalOCLinEcore_fragment() throws RecognitionException {
         // InternalOCLinEcore.g:5416:6: ( ( ruleTupleLiteralExpCS ) )
         // InternalOCLinEcore.g:5416:6: ( ruleTupleLiteralExpCS )
         {
@@ -82160,7 +82160,7 @@
         // InternalOCLinEcore.g:5417:1: ruleTupleLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleTupleLiteralExpCS();
@@ -82176,7 +82176,7 @@
     // $ANTLR end synpred191_InternalOCLinEcore
 
     // $ANTLR start synpred192_InternalOCLinEcore
-    public final void synpred192_InternalOCLinEcore_fragment() throws RecognitionException {   
+    public final void synpred192_InternalOCLinEcore_fragment() throws RecognitionException {
         // InternalOCLinEcore.g:5422:6: ( ( ruleMapLiteralExpCS ) )
         // InternalOCLinEcore.g:5422:6: ( ruleMapLiteralExpCS )
         {
@@ -82184,7 +82184,7 @@
         // InternalOCLinEcore.g:5423:1: ruleMapLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleMapLiteralExpCS();
@@ -82200,7 +82200,7 @@
     // $ANTLR end synpred192_InternalOCLinEcore
 
     // $ANTLR start synpred193_InternalOCLinEcore
-    public final void synpred193_InternalOCLinEcore_fragment() throws RecognitionException {   
+    public final void synpred193_InternalOCLinEcore_fragment() throws RecognitionException {
         // InternalOCLinEcore.g:5428:6: ( ( ruleCollectionLiteralExpCS ) )
         // InternalOCLinEcore.g:5428:6: ( ruleCollectionLiteralExpCS )
         {
@@ -82208,7 +82208,7 @@
         // InternalOCLinEcore.g:5429:1: ruleCollectionLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleCollectionLiteralExpCS();
@@ -82224,7 +82224,7 @@
     // $ANTLR end synpred193_InternalOCLinEcore
 
     // $ANTLR start synpred195_InternalOCLinEcore
-    public final void synpred195_InternalOCLinEcore_fragment() throws RecognitionException {   
+    public final void synpred195_InternalOCLinEcore_fragment() throws RecognitionException {
         // InternalOCLinEcore.g:5440:6: ( ( ruleTypeLiteralExpCS ) )
         // InternalOCLinEcore.g:5440:6: ( ruleTypeLiteralExpCS )
         {
@@ -82232,7 +82232,7 @@
         // InternalOCLinEcore.g:5441:1: ruleTypeLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleTypeLiteralExpCS();
@@ -82636,10 +82636,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA58_52 = input.LA(1);
 
-                         
+
                         int index58_52 = input.index();
                         input.rewind();
                         s = -1;
@@ -82647,14 +82647,14 @@
 
                         else if ( (true) ) {s = 59;}
 
-                         
+
                         input.seek(index58_52);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA58_53 = input.LA(1);
 
-                         
+
                         int index58_53 = input.index();
                         input.rewind();
                         s = -1;
@@ -82662,14 +82662,14 @@
 
                         else if ( (true) ) {s = 59;}
 
-                         
+
                         input.seek(index58_53);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA58_54 = input.LA(1);
 
-                         
+
                         int index58_54 = input.index();
                         input.rewind();
                         s = -1;
@@ -82677,14 +82677,14 @@
 
                         else if ( (true) ) {s = 59;}
 
-                         
+
                         input.seek(index58_54);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA58_55 = input.LA(1);
 
-                         
+
                         int index58_55 = input.index();
                         input.rewind();
                         s = -1;
@@ -82692,14 +82692,14 @@
 
                         else if ( (true) ) {s = 59;}
 
-                         
+
                         input.seek(index58_55);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA58_56 = input.LA(1);
 
-                         
+
                         int index58_56 = input.index();
                         input.rewind();
                         s = -1;
@@ -82707,7 +82707,7 @@
 
                         else if ( (true) ) {s = 59;}
 
-                         
+
                         input.seek(index58_56);
                         if ( s>=0 ) return s;
                         break;
@@ -82827,10 +82827,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA59_1 = input.LA(1);
 
-                         
+
                         int index59_1 = input.index();
                         input.rewind();
                         s = -1;
@@ -82838,14 +82838,14 @@
 
                         else if ( (true) ) {s = 72;}
 
-                         
+
                         input.seek(index59_1);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA59_2 = input.LA(1);
 
-                         
+
                         int index59_2 = input.index();
                         input.rewind();
                         s = -1;
@@ -82853,7 +82853,7 @@
 
                         else if ( (true) ) {s = 72;}
 
-                         
+
                         input.seek(index59_2);
                         if ( s>=0 ) return s;
                         break;
@@ -82970,10 +82970,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA62_11 = input.LA(1);
 
-                         
+
                         int index62_11 = input.index();
                         input.rewind();
                         s = -1;
@@ -82981,14 +82981,14 @@
 
                         else if ( (synpred195_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index62_11);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA62_12 = input.LA(1);
 
-                         
+
                         int index62_12 = input.index();
                         input.rewind();
                         s = -1;
@@ -82996,14 +82996,14 @@
 
                         else if ( (synpred195_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index62_12);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA62_13 = input.LA(1);
 
-                         
+
                         int index62_13 = input.index();
                         input.rewind();
                         s = -1;
@@ -83011,14 +83011,14 @@
 
                         else if ( (synpred195_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index62_13);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA62_14 = input.LA(1);
 
-                         
+
                         int index62_14 = input.index();
                         input.rewind();
                         s = -1;
@@ -83026,14 +83026,14 @@
 
                         else if ( (synpred195_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index62_14);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA62_15 = input.LA(1);
 
-                         
+
                         int index62_15 = input.index();
                         input.rewind();
                         s = -1;
@@ -83041,14 +83041,14 @@
 
                         else if ( (synpred195_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index62_15);
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA62_16 = input.LA(1);
 
-                         
+
                         int index62_16 = input.index();
                         input.rewind();
                         s = -1;
@@ -83056,14 +83056,14 @@
 
                         else if ( (synpred195_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index62_16);
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA62_17 = input.LA(1);
 
-                         
+
                         int index62_17 = input.index();
                         input.rewind();
                         s = -1;
@@ -83071,7 +83071,7 @@
 
                         else if ( (synpred195_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index62_17);
                         if ( s>=0 ) return s;
                         break;
@@ -83223,9 +83223,9 @@
             return "10194:1: ( rule__ImportCS__Group_1__0 )?";
         }
     }
- 
 
-    
+
+
     private static class FollowSets000 {
         public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
         public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/internal/OCLinEcoreActivator.java b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/internal/OCLinEcoreActivator.java
index d79aa73..01de28d 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/internal/OCLinEcoreActivator.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore.ui/src-gen/org/eclipse/ocl/xtext/oclinecore/ui/internal/OCLinEcoreActivator.java
@@ -26,35 +26,35 @@
 
 /**
  * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
+ * introduced subclass.
  */
 public class OCLinEcoreActivator extends AbstractUIPlugin {
-	
+
 	public static final String ORG_ECLIPSE_OCL_XTEXT_OCLINECORE_OCLINECORE = "org.eclipse.ocl.xtext.oclinecore.OCLinEcore";
-	
+
 	private static final Logger logger = Logger.getLogger(OCLinEcoreActivator.class);
-	
+
 	private static OCLinEcoreActivator INSTANCE;
-	
+
 	private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1));
-	
+
 	@Override
 	public void start(BundleContext context) throws Exception {
 		super.start(context);
 		INSTANCE = this;
 	}
-	
+
 	@Override
 	public void stop(BundleContext context) throws Exception {
 		injectors.clear();
 		INSTANCE = null;
 		super.stop(context);
 	}
-	
+
 	public static OCLinEcoreActivator getInstance() {
 		return INSTANCE;
 	}
-	
+
 	public Injector getInjector(String language) {
 		synchronized (injectors) {
 			Injector injector = injectors.get(language);
@@ -64,7 +64,7 @@
 			return injector;
 		}
 	}
-	
+
 	protected Injector createInjector(String language) {
 		try {
 			Module runtimeModule = getRuntimeModule(language);
@@ -83,20 +83,20 @@
 		if (ORG_ECLIPSE_OCL_XTEXT_OCLINECORE_OCLINECORE.equals(grammar)) {
 			return new org.eclipse.ocl.xtext.oclinecore.OCLinEcoreRuntimeModule();
 		}
-		
+
 		throw new IllegalArgumentException(grammar);
 	}
-	
+
 	protected Module getUiModule(String grammar) {
 		if (ORG_ECLIPSE_OCL_XTEXT_OCLINECORE_OCLINECORE.equals(grammar)) {
 			return new org.eclipse.ocl.xtext.oclinecore.ui.OCLinEcoreUiModule(this);
 		}
-		
+
 		throw new IllegalArgumentException(grammar);
 	}
-	
+
 	protected Module getSharedStateModule() {
 		return new SharedStateModule();
 	}
-	
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractDelegatingOCLinEcoreCSVisitor.java b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractDelegatingOCLinEcoreCSVisitor.java
index ee85b28..07f6bc8 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractDelegatingOCLinEcoreCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractDelegatingOCLinEcoreCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractExtendingOCLinEcoreCSVisitor.java b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractExtendingOCLinEcoreCSVisitor.java
index 2128d2d..bb5fdbb 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractExtendingOCLinEcoreCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractExtendingOCLinEcoreCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -30,12 +30,12 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractExtendingOCLinEcoreCSVisitor(C context) {
 		super(context);
-	}	
+	}
 
 	@Override
 	public R visitOCLinEcoreConstraintCS(org.eclipse.ocl.xtext.oclinecorecs.@NonNull OCLinEcoreConstraintCS object) {
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractNullOCLinEcoreCSVisitor.java b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractNullOCLinEcoreCSVisitor.java
index 5e20a04..5ba6239 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractNullOCLinEcoreCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractNullOCLinEcoreCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -22,7 +22,7 @@
  * An AbstractNullOCLinEcoreCSVisitor provides a default implementation for each
  * visitXxx method that returns null.
  *
- * @deprecated Explicit 'Null' functionality is obsolete with Java 8 @Nullable annotations.  
+ * @deprecated Explicit 'Null' functionality is obsolete with Java 8 @Nullable annotations.
  */
  @Deprecated
 public abstract class AbstractNullOCLinEcoreCSVisitor<@Nullable R, C>
@@ -30,12 +30,12 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractNullOCLinEcoreCSVisitor(C context) {
 		super(context);
-	}	
+	}
 
 	@Override
 	public R visitOCLinEcoreConstraintCS(org.eclipse.ocl.xtext.oclinecorecs.@NonNull OCLinEcoreConstraintCS object) {
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSContainmentVisitor.java b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSContainmentVisitor.java
index 61c4637..8bbb89c 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSContainmentVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSContainmentVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSLeft2RightVisitor.java b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSLeft2RightVisitor.java
index 660d322..b17170a 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSLeft2RightVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSLeft2RightVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSPostOrderVisitor.java b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSPostOrderVisitor.java
index bfd3c2a..76ab060 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSPostOrderVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSPostOrderVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSPreOrderVisitor.java b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSPreOrderVisitor.java
index 2c1f136..304ee98 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSPreOrderVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSPreOrderVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSVisitor.java b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSVisitor.java
index 2e436b7..8c86e02 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/AbstractOCLinEcoreCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -26,7 +26,7 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractOCLinEcoreCSVisitor(C context) {
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/DecorableOCLinEcoreCSVisitor.java b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/DecorableOCLinEcoreCSVisitor.java
index 254d389..db9bdc2 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/DecorableOCLinEcoreCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/DecorableOCLinEcoreCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/OCLinEcoreCSVisitor.java b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/OCLinEcoreCSVisitor.java
index fbf3314..8078d4e 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/OCLinEcoreCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/emf-gen/org/eclipse/ocl/xtext/oclinecorecs/util/OCLinEcoreCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -18,6 +18,7 @@
 import org.eclipse.jdt.annotation.NonNull;
 
 /**
+ * @noimplement This interface is not intended to be implemented by clients.
  */
 public interface OCLinEcoreCSVisitor<R> extends org.eclipse.ocl.xtext.essentialoclcs.util.EssentialOCLCSVisitor<R>
 {
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/AbstractOCLinEcoreRuntimeModule.java b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/AbstractOCLinEcoreRuntimeModule.java
index 0e5b77a..4dabfd5 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/AbstractOCLinEcoreRuntimeModule.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/AbstractOCLinEcoreRuntimeModule.java
@@ -30,16 +30,16 @@
 		properties = tryBindProperties(binder, "org/eclipse/ocl/xtext/oclinecore/OCLinEcore.properties");
 		super.configure(binder);
 	}
-	
+
 	public void configureLanguageName(Binder binder) {
 		binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.eclipse.ocl.xtext.oclinecore.OCLinEcore");
 	}
-	
+
 	public void configureFileExtensions(Binder binder) {
 		if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
 			binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("oclinecore");
 	}
-	
+
 	// contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
 	public java.lang.ClassLoader bindClassLoaderToInstance() {
 		return getClass().getClassLoader();
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 18faa43..8cce82e 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
@@ -9,7 +9,7 @@
  *     E.D.Willink - initial API and implementation
  *******************************************************************************
  * This code is 100% auto-generated
- * from: E:\GIT\org.eclipse.ocl\examples..\..\plugins\org.eclipse.ocl.xtext.oclinecore\src-gen\org\eclipse\ocl\xtext\oclinecore\OCLinEcore.xtextbin
+ * from: E:\GIT\org.eclipse.ocl\plugins..\..\plugins\org.eclipse.ocl.xtext.oclinecore\src-gen\org\eclipse\ocl\xtext\oclinecore\OCLinEcore.xtextbin
  * by: org.eclipse.ocl.examples.build.xtend.generateGrammar.xtend
  *
  * Do not edit it.
@@ -73,7 +73,7 @@
 
 	/*
 	 * This class should be bound to org.eclipse.xtext.service.GrammarProvider.
-	 */ 
+	 */
 	@Singleton
 	public static class GrammarProvider extends org.eclipse.xtext.service.GrammarProvider
 	{
@@ -87,7 +87,7 @@
 			return OCLinEcoreGrammarResource.GRAMMAR;
 		}
 	}
-	
+
 	private static class _OCLinEcore
 	{
 		private static final @NonNull ReferencedMetamodel MM = createReferencedMetamodel(org.eclipse.ocl.xtext.oclinecorecs.OCLinEcoreCSPackage.eINSTANCE, null); // http://www.eclipse.org/ocl/2015/OCLinEcoreCS
@@ -95,13 +95,13 @@
 		private static final @NonNull ReferencedMetamodel MM_ecore = createReferencedMetamodel(org.eclipse.emf.ecore.EcorePackage.eINSTANCE, "ecore"); // http://www.eclipse.org/emf/2002/Ecore
 		private static final @NonNull ReferencedMetamodel MM_essentialocl = createReferencedMetamodel(org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.eINSTANCE, "essentialocl"); // http://www.eclipse.org/ocl/2015/EssentialOCLCS
 		private static final @NonNull ReferencedMetamodel MM_pivot = createReferencedMetamodel(org.eclipse.ocl.pivot.PivotPackage.eINSTANCE, "pivot"); // http://www.eclipse.org/ocl/2015/Pivot
-		
+
 		private static final @NonNull TerminalRule TR_UNQUOTED_STRING = createTerminalRule("UNQUOTED_STRING", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initTerminalRules() {
 			TR_UNQUOTED_STRING.setAlternatives(createKeyword("\u00A3$%^\u00A3$%^"));
 		}
-		
+
 		private static final @NonNull ParserRule PR_AnnotationCS = createParserRule("AnnotationCS", createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.ANNOTATION_CS));
 		private static final @NonNull ParserRule PR_AnnotationElementCS = createParserRule("AnnotationElementCS", createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.ANNOTATION_ELEMENT_CS));
 		private static final @NonNull ParserRule PR_AttributeCS = createParserRule("AttributeCS", createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.ATTRIBUTE_CS));
@@ -135,7 +135,7 @@
 		private static final @NonNull ParserRule PR_TypedRefCS = createParserRule("TypedRefCS", createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.TYPED_REF_CS));
 		private static final @NonNull ParserRule PR_TypedTypeRefCS = createParserRule("TypedTypeRefCS", createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.TYPED_TYPE_REF_CS));
 		private static final @NonNull ParserRule PR_UnrestrictedName = createParserRule("UnrestrictedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initParserRules() {
 			PR_AnnotationCS.setAlternatives(createGroup(createAction(null, null, createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.ANNOTATION_CS)), createKeyword("annotation"), setCardinality("?", createAssignment("name", "=", createAlternatives(createRuleCall(PR_UnrestrictedName), createRuleCall(_Base.TR_SINGLE_QUOTED_STRING)))), setCardinality("?", createGroup(createKeyword("("), createAssignment("ownedDetails", "+=", createRuleCall(PR_DetailCS)), setCardinality("*", createGroup(createKeyword(","), createAssignment("ownedDetails", "+=", createRuleCall(PR_DetailCS)))), createKeyword(")"))), createAlternatives(createGroup(createKeyword("{"), setCardinality("+", createAlternatives(createAssignment("ownedAnnotations", "+=", createRuleCall(PR_AnnotationElementCS)), createAssignment("ownedContents", "+=", createRuleCall(PR_ModelElementCS)), createAssignment("ownedReferences", "+=", createRuleCall(PR_ModelElementRefCS)))), createKeyword("}")), createKeyword(";"))));
 			PR_AnnotationElementCS.setAlternatives(createAlternatives(createRuleCall(PR_AnnotationCS), createRuleCall(PR_DocumentationCS), createRuleCall(PR_SysMLCS)));
@@ -171,7 +171,7 @@
 			PR_TypedTypeRefCS.setAlternatives(createGroup(createAssignment("ownedPathName", "=", createRuleCall(_Base.PR_PathNameCS)), setCardinality("?", createAlternatives(createGroup(createKeyword("("), createAssignment("ownedBinding", "=", createRuleCall(_Base.PR_TemplateBindingCS)), createKeyword(")")), createGroup(createKeyword("<"), createAssignment("ownedBinding", "=", createRuleCall(_Base.PR_TemplateBindingCS)), createKeyword(">"))))));
 			PR_UnrestrictedName.setAlternatives(createAlternatives(createRuleCall(PR_EnumerationLiteralName), createKeyword("annotation"), createKeyword("documentation"), createKeyword("invariant"), createKeyword("literal"), createKeyword("serializable"), createKeyword("sysml")));
 		}
-		
+
 		private static @NonNull Grammar initGrammar() {
 			initTerminalRules();
 			initParserRules();
@@ -228,14 +228,14 @@
 			return grammar;
 		}
 	}
-	
+
 	private static class _EssentialOCL
 	{
 		private static final @NonNull ReferencedMetamodel MM = createReferencedMetamodel(org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.eINSTANCE, null); // http://www.eclipse.org/ocl/2015/EssentialOCLCS
 		private static final @NonNull ReferencedMetamodel MM_base = createReferencedMetamodel(org.eclipse.ocl.xtext.basecs.BaseCSPackage.eINSTANCE, "base"); // http://www.eclipse.org/ocl/2015/BaseCS
 		private static final @NonNull ReferencedMetamodel MM_ecore = createReferencedMetamodel(org.eclipse.emf.ecore.EcorePackage.eINSTANCE, "ecore"); // http://www.eclipse.org/emf/2002/Ecore
 		private static final @NonNull ReferencedMetamodel MM_pivot = createReferencedMetamodel(org.eclipse.ocl.pivot.PivotPackage.eINSTANCE, "pivot"); // http://www.eclipse.org/ocl/2015/Pivot
-		
+
 		private static final @NonNull ParserRule PR_BinaryOperatorName = createParserRule("BinaryOperatorName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_BooleanLiteralExpCS = createParserRule("BooleanLiteralExpCS", createTypeRef(MM, org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.Literals.BOOLEAN_LITERAL_EXP_CS));
 		private static final @NonNull ParserRule PR_CollectionLiteralExpCS = createParserRule("CollectionLiteralExpCS", createTypeRef(MM, org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.Literals.COLLECTION_LITERAL_EXP_CS));
@@ -299,7 +299,7 @@
 		private static final @NonNull ParserRule PR_UnlimitedNaturalLiteralExpCS = createParserRule("UnlimitedNaturalLiteralExpCS", createTypeRef(MM, org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.Literals.UNLIMITED_NATURAL_LITERAL_EXP_CS));
 		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_UnrestrictedName = createParserRule("UnrestrictedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initParserRules() {
 			PR_BinaryOperatorName.setAlternatives(createAlternatives(createRuleCall(PR_InfixOperatorName), createRuleCall(PR_NavigationOperatorName)));
 			PR_BooleanLiteralExpCS.setAlternatives(createAlternatives(createAssignment("symbol", "=", createKeyword("true")), createAssignment("symbol", "=", createKeyword("false"))));
@@ -365,7 +365,7 @@
 			PR_UnreservedName.setAlternatives(createRuleCall(PR_EssentialOCLUnreservedName));
 			PR_UnrestrictedName.setAlternatives(createRuleCall(PR_EssentialOCLUnrestrictedName));
 		}
-		
+
 		private static @NonNull Grammar initGrammar() {
 			initParserRules();
 			Grammar grammar = G_EssentialOCL;
@@ -449,13 +449,13 @@
 			return grammar;
 		}
 	}
-	
+
 	private static class _Base
 	{
 		private static final @NonNull ReferencedMetamodel MM = createReferencedMetamodel(org.eclipse.ocl.xtext.basecs.BaseCSPackage.eINSTANCE, null); // http://www.eclipse.org/ocl/2015/BaseCS
 		private static final @NonNull ReferencedMetamodel MM_ecore = createReferencedMetamodel(org.eclipse.emf.ecore.EcorePackage.eINSTANCE, "ecore"); // http://www.eclipse.org/emf/2002/Ecore
 		private static final @NonNull ReferencedMetamodel MM_pivot = createReferencedMetamodel(org.eclipse.ocl.pivot.PivotPackage.eINSTANCE, "pivot"); // http://www.eclipse.org/ocl/2015/Pivot
-		
+
 		private static final @NonNull TerminalRule TR_ANY_OTHER = createTerminalRule("ANY_OTHER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_DOUBLE_QUOTED_STRING = createTerminalRule("DOUBLE_QUOTED_STRING", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_ESCAPED_CHARACTER = createTerminalRule("ESCAPED_CHARACTER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
@@ -468,7 +468,7 @@
 		private static final @NonNull TerminalRule TR_SINGLE_QUOTED_STRING = createTerminalRule("SINGLE_QUOTED_STRING", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_SL_COMMENT = createTerminalRule("SL_COMMENT", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_WS = createTerminalRule("WS", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initTerminalRules() {
 			TR_ANY_OTHER.setAlternatives(createWildcard());
 			TR_DOUBLE_QUOTED_STRING.setAlternatives(createGroup(createKeyword("\""), setCardinality("*", createAlternatives(createRuleCall(TR_ESCAPED_CHARACTER), createNegatedToken(createAlternatives(createKeyword("\\"), createKeyword("\""))))), createKeyword("\"")));
@@ -485,7 +485,7 @@
 			TR_SL_COMMENT.setAlternatives(createGroup(createKeyword("--"), setCardinality("*", createNegatedToken(createAlternatives(createKeyword("\n"), createKeyword("\r")))), setCardinality("?", createGroup(setCardinality("?", createKeyword("\r")), createKeyword("\n")))));
 			TR_WS.setAlternatives(setCardinality("+", createAlternatives(createKeyword(" "), createKeyword("\t"), createKeyword("\r"), createKeyword("\n"))));
 		}
-		
+
 		private static final @NonNull ParserRule PR_FirstPathElementCS = createParserRule("FirstPathElementCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.PATH_ELEMENT_CS));
 		private static final @NonNull ParserRule PR_ID = createParserRule("ID", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_Identifier = createParserRule("Identifier", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
@@ -509,7 +509,7 @@
 		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_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));
-		
+
 		private static void initParserRules() {
 			PR_FirstPathElementCS.setAlternatives(createAssignment("referredElement", "=", createCrossReference(createTypeRef(MM_pivot, org.eclipse.ocl.pivot.PivotPackage.Literals.NAMED_ELEMENT), createRuleCall(_OCLinEcore.PR_UnrestrictedName))));
 			PR_ID.setAlternatives(createAlternatives(createRuleCall(TR_SIMPLE_ID), createRuleCall(TR_ESCAPED_ID)));
@@ -535,7 +535,7 @@
 			PR_UnrestrictedName.setAlternatives(createRuleCall(PR_Identifier));
 			PR_WildcardTypeRefCS.setAlternatives(createGroup(createAction(null, null, createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.WILDCARD_TYPE_REF_CS)), createKeyword("?"), setCardinality("?", createGroup(createKeyword("extends"), createAssignment("ownedExtends", "=", createRuleCall(_OCLinEcore.PR_TypedRefCS))))));
 		}
-		
+
 		private static @NonNull Grammar initGrammar() {
 			initTerminalRules();
 			initParserRules();
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/OCLinEcoreStandaloneSetupGenerated.java b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/OCLinEcoreStandaloneSetupGenerated.java
index e3bf569..00ef686 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/OCLinEcoreStandaloneSetupGenerated.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/OCLinEcoreStandaloneSetupGenerated.java
@@ -31,18 +31,18 @@
 		register(injector);
 		return injector;
 	}
-	
+
 	public Injector createInjector() {
 		return Guice.createInjector(new org.eclipse.ocl.xtext.oclinecore.OCLinEcoreRuntimeModule());
 	}
-	
+
 	public void register(Injector injector) {
 
 		org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class);
 		org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class);
 		Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("oclinecore", resourceFactory);
 		org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("oclinecore", serviceProvider);
-		
+
 
 
 
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/OCLinEcoreAntlrTokenFileProvider.java b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/OCLinEcoreAntlrTokenFileProvider.java
index 4218b71..df620e5 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/OCLinEcoreAntlrTokenFileProvider.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/OCLinEcoreAntlrTokenFileProvider.java
@@ -14,7 +14,7 @@
 import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider;
 
 public class OCLinEcoreAntlrTokenFileProvider implements IAntlrTokenFileProvider {
-	
+
 	@Override
 	public InputStream getAntlrTokenFile() {
 		ClassLoader classLoader = getClass().getClassLoader();
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/OCLinEcoreParser.java b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/OCLinEcoreParser.java
index 95354e4..29ca7ed 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/OCLinEcoreParser.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/parser/antlr/OCLinEcoreParser.java
@@ -16,31 +16,31 @@
 import org.eclipse.ocl.xtext.oclinecore.services.OCLinEcoreGrammarAccess;
 
 public class OCLinEcoreParser extends org.eclipse.xtext.parser.antlr.AbstractAntlrParser {
-	
+
 	@Inject
 	private OCLinEcoreGrammarAccess grammarAccess;
-	
+
 	@Override
 	protected void setInitialHiddenTokens(XtextTokenStream tokenStream) {
 		tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT");
 	}
-	
+
 	@Override
 	protected org.eclipse.ocl.xtext.oclinecore.parser.antlr.internal.InternalOCLinEcoreParser createParser(XtextTokenStream stream) {
 		return new org.eclipse.ocl.xtext.oclinecore.parser.antlr.internal.InternalOCLinEcoreParser(stream, getGrammarAccess());
 	}
-	
-	@Override 
+
+	@Override
 	protected String getDefaultRuleName() {
 		return "TopLevelCS";
 	}
-	
+
 	public OCLinEcoreGrammarAccess getGrammarAccess() {
 		return this.grammarAccess;
 	}
-	
+
 	public void setGrammarAccess(OCLinEcoreGrammarAccess grammarAccess) {
 		this.grammarAccess = grammarAccess;
 	}
-	
+
 }
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 178b0b9..73704fb 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
@@ -13,19 +13,19 @@
 options {
 	superClass=AbstractInternalAntlrParser;
 	backtrack=true;
-	
+
 }
 
 @lexer::header {
 package org.eclipse.ocl.xtext.oclinecore.parser.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.parser.antlr.Lexer;
 }
 
 @parser::header {
-package org.eclipse.ocl.xtext.oclinecore.parser.antlr.internal; 
+package org.eclipse.ocl.xtext.oclinecore.parser.antlr.internal;
 
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
@@ -46,87 +46,87 @@
   This grammar contains a lot of empty actions to work around a bug in ANTLR.
   Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases.
 */
- 
+
  	private OCLinEcoreGrammarAccess grammarAccess;
- 	
+
     public InternalOCLinEcoreParser(TokenStream input, OCLinEcoreGrammarAccess grammarAccess) {
         this(input);
         this.grammarAccess = grammarAccess;
         registerRules(grammarAccess.getGrammar());
     }
-    
+
     @Override
     protected String getFirstRuleName() {
-    	return "TopLevelCS";	
+    	return "TopLevelCS";
    	}
-   	
+
    	@Override
    	protected OCLinEcoreGrammarAccess getGrammarAccess() {
    		return grammarAccess;
    	}
 }
 
-@rulecatch { 
-    catch (RecognitionException re) { 
-        recover(input,re); 
+@rulecatch {
+    catch (RecognitionException re) {
+        recover(input,re);
         appendSkippedTokens();
-    } 
+    }
 }
 
 
 
 
 // Entry rule entryRuleTopLevelCS
-entryRuleTopLevelCS returns [EObject current=null] 
+entryRuleTopLevelCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTopLevelCSRule()); }
-	 iv_ruleTopLevelCS=ruleTopLevelCS 
-	 { $current=$iv_ruleTopLevelCS.current; } 
-	 EOF 
+	 iv_ruleTopLevelCS=ruleTopLevelCS
+	 { $current=$iv_ruleTopLevelCS.current; }
+	 EOF
 ;
 
 // Rule TopLevelCS
-ruleTopLevelCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTopLevelCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getTopLevelCSAccess().getTopLevelCSAction_0(),
             $current);
     }
-)(	otherlv_1='module' 
+)(	otherlv_1='module'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTopLevelCSAccess().getModuleKeyword_1_0());
     }
 
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTopLevelCSAccess().getUnrestrictedNameParserRuleCall_1_1()); 
+    {
+        newCompositeNode(grammarAccess.getTopLevelCSAccess().getUnrestrictedNameParserRuleCall_1_1());
     }
 ruleUnrestrictedName
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTopLevelCSAccess().getOwnedImportsImportCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTopLevelCSAccess().getOwnedImportsImportCSParserRuleCall_2_0());
 	    }
 		lv_ownedImports_3_0=ruleImportCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTopLevelCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedImports",
-        		lv_ownedImports_3_0, 
+        		lv_ownedImports_3_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ImportCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -134,17 +134,17 @@
 )
 )*(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTopLevelCSAccess().getOwnedPackagesPackageCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTopLevelCSAccess().getOwnedPackagesPackageCSParserRuleCall_3_0());
 	    }
 		lv_ownedPackages_4_0=rulePackageCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTopLevelCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPackages",
-        		lv_ownedPackages_4_0, 
+        		lv_ownedPackages_4_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.PackageCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -160,31 +160,31 @@
 
 
 // Entry rule entryRuleSIGNED
-entryRuleSIGNED returns [String current=null] 
+entryRuleSIGNED returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getSIGNEDRule()); } 
-	 iv_ruleSIGNED=ruleSIGNED 
-	 { $current=$iv_ruleSIGNED.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getSIGNEDRule()); }
+	 iv_ruleSIGNED=ruleSIGNED
+	 { $current=$iv_ruleSIGNED.current.getText(); }
+	 EOF
 ;
 
 // Rule SIGNED
-ruleSIGNED returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleSIGNED returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	kw='-' 
+	kw='-'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getSIGNEDAccess().getHyphenMinusKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getSIGNEDAccess().getHyphenMinusKeyword_0());
     }
 )?    this_INT_1=RULE_INT    {
 		$current.merge(this_INT_1);
     }
 
-    { 
-    newLeafNode(this_INT_1, grammarAccess.getSIGNEDAccess().getINTTerminalRuleCall_1()); 
+    {
+    newLeafNode(this_INT_1, grammarAccess.getSIGNEDAccess().getINTTerminalRuleCall_1());
     }
 )
     ;
@@ -194,274 +194,274 @@
 
 
 // Entry rule entryRuleEnumerationLiteralName
-entryRuleEnumerationLiteralName returns [String current=null] 
+entryRuleEnumerationLiteralName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEnumerationLiteralNameRule()); } 
-	 iv_ruleEnumerationLiteralName=ruleEnumerationLiteralName 
-	 { $current=$iv_ruleEnumerationLiteralName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEnumerationLiteralNameRule()); }
+	 iv_ruleEnumerationLiteralName=ruleEnumerationLiteralName
+	 { $current=$iv_ruleEnumerationLiteralName.current.getText(); }
+	 EOF
 ;
 
 // Rule EnumerationLiteralName
-ruleEnumerationLiteralName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEnumerationLiteralName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getEnumerationLiteralNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getEnumerationLiteralNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0());
     }
     this_EssentialOCLUnrestrictedName_0=ruleEssentialOCLUnrestrictedName    {
 		$current.merge(this_EssentialOCLUnrestrictedName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-	kw='abstract' 
+	kw='abstract'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getAbstractKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getAbstractKeyword_1());
     }
 
     |
-	kw='attribute' 
+	kw='attribute'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getAttributeKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getAttributeKeyword_2());
     }
 
     |
-	kw='body' 
+	kw='body'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getBodyKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getBodyKeyword_3());
     }
 
     |
-	kw='callable' 
+	kw='callable'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getCallableKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getCallableKeyword_4());
     }
 
     |
-	kw='class' 
+	kw='class'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getClassKeyword_5()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getClassKeyword_5());
     }
 
     |
-	kw='composes' 
+	kw='composes'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getComposesKeyword_6()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getComposesKeyword_6());
     }
 
     |
-	kw='datatype' 
+	kw='datatype'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDatatypeKeyword_7()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDatatypeKeyword_7());
     }
 
     |
-	kw='definition' 
+	kw='definition'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDefinitionKeyword_8()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDefinitionKeyword_8());
     }
 
     |
-	kw='derivation' 
+	kw='derivation'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDerivationKeyword_9()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDerivationKeyword_9());
     }
 
     |
-	kw='derived' 
+	kw='derived'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDerivedKeyword_10()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDerivedKeyword_10());
     }
 
     |
-	kw='enum' 
+	kw='enum'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getEnumKeyword_11()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getEnumKeyword_11());
     }
 
     |
-	kw='extends' 
+	kw='extends'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getExtendsKeyword_12()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getExtendsKeyword_12());
     }
 
     |
-	kw='id' 
+	kw='id'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getIdKeyword_13()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getIdKeyword_13());
     }
 
     |
-	kw='import' 
+	kw='import'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getImportKeyword_14()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getImportKeyword_14());
     }
 
     |
-	kw='initial' 
+	kw='initial'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getInitialKeyword_15()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getInitialKeyword_15());
     }
 
     |
-	kw='interface' 
+	kw='interface'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getInterfaceKeyword_16()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getInterfaceKeyword_16());
     }
 
     |
-	kw='key' 
+	kw='key'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getKeyKeyword_17()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getKeyKeyword_17());
     }
 
     |
-	kw='library' 
+	kw='library'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getLibraryKeyword_18()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getLibraryKeyword_18());
     }
 
     |
-	kw='module' 
+	kw='module'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getModuleKeyword_19()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getModuleKeyword_19());
     }
 
     |
-	kw='operation' 
+	kw='operation'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getOperationKeyword_20()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getOperationKeyword_20());
     }
 
     |
-	kw='ordered' 
+	kw='ordered'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getOrderedKeyword_21()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getOrderedKeyword_21());
     }
 
     |
-	kw='package' 
+	kw='package'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPackageKeyword_22()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPackageKeyword_22());
     }
 
     |
-	kw='postcondition' 
+	kw='postcondition'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPostconditionKeyword_23()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPostconditionKeyword_23());
     }
 
     |
-	kw='precondition' 
+	kw='precondition'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPreconditionKeyword_24()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPreconditionKeyword_24());
     }
 
     |
-	kw='primitive' 
+	kw='primitive'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPrimitiveKeyword_25()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPrimitiveKeyword_25());
     }
 
     |
-	kw='property' 
+	kw='property'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPropertyKeyword_26()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPropertyKeyword_26());
     }
 
     |
-	kw='readonly' 
+	kw='readonly'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getReadonlyKeyword_27()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getReadonlyKeyword_27());
     }
 
     |
-	kw='reference' 
+	kw='reference'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getReferenceKeyword_28()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getReferenceKeyword_28());
     }
 
     |
-	kw='resolve' 
+	kw='resolve'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getResolveKeyword_29()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getResolveKeyword_29());
     }
 
     |
-	kw='static' 
+	kw='static'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getStaticKeyword_30()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getStaticKeyword_30());
     }
 
     |
-	kw='throws' 
+	kw='throws'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getThrowsKeyword_31()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getThrowsKeyword_31());
     }
 
     |
-	kw='transient' 
+	kw='transient'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getTransientKeyword_32()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getTransientKeyword_32());
     }
 
     |
-	kw='unique' 
+	kw='unique'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getUniqueKeyword_33()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getUniqueKeyword_33());
     }
 
     |
-	kw='unsettable' 
+	kw='unsettable'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getUnsettableKeyword_34()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getUnsettableKeyword_34());
     }
 
     |
-	kw='volatile' 
+	kw='volatile'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getVolatileKeyword_35()); 
+        newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getVolatileKeyword_35());
     }
 )
     ;
@@ -471,26 +471,26 @@
 
 
 // Entry rule entryRuleInvariantConstraintCS
-entryRuleInvariantConstraintCS returns [EObject current=null] 
+entryRuleInvariantConstraintCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getInvariantConstraintCSRule()); }
-	 iv_ruleInvariantConstraintCS=ruleInvariantConstraintCS 
-	 { $current=$iv_ruleInvariantConstraintCS.current; } 
-	 EOF 
+	 iv_ruleInvariantConstraintCS=ruleInvariantConstraintCS
+	 { $current=$iv_ruleInvariantConstraintCS.current; }
+	 EOF
 ;
 
 // Rule InvariantConstraintCS
-ruleInvariantConstraintCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleInvariantConstraintCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_isCallable_0_0=	'callable' 
+		lv_isCallable_0_0=	'callable'
     {
         newLeafNode(lv_isCallable_0_0, grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getInvariantConstraintCSRule());
@@ -501,11 +501,11 @@
 )
 )?(
 (
-		lv_stereotype_1_0=	'invariant' 
+		lv_stereotype_1_0=	'invariant'
     {
         newLeafNode(lv_stereotype_1_0, grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getInvariantConstraintCSRule());
@@ -516,76 +516,76 @@
 )
 )((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0());
 	    }
 		lv_name_2_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getInvariantConstraintCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_0, 
+        		lv_name_2_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3='(' 
+)(	otherlv_3='('
     {
     	newLeafNode(otherlv_3, grammarAccess.getInvariantConstraintCSAccess().getLeftParenthesisKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedMessageSpecification_4_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getInvariantConstraintCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMessageSpecification",
-        		lv_ownedMessageSpecification_4_0, 
+        		lv_ownedMessageSpecification_4_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_5=')' 
+)	otherlv_5=')'
     {
     	newLeafNode(otherlv_5, grammarAccess.getInvariantConstraintCSAccess().getRightParenthesisKeyword_2_1_2());
     }
-)?)?((	otherlv_6=':' 
+)?)?((	otherlv_6=':'
     {
     	newLeafNode(otherlv_6, grammarAccess.getInvariantConstraintCSAccess().getColonKeyword_3_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0_1_0());
 	    }
 		lv_ownedSpecification_7_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getInvariantConstraintCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSpecification",
-        		lv_ownedSpecification_7_0, 
+        		lv_ownedSpecification_7_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_8=';' 
+)?	otherlv_8=';'
     {
     	newLeafNode(otherlv_8, grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_0_2());
     }
 )
-    |	otherlv_9=';' 
+    |	otherlv_9=';'
     {
     	newLeafNode(otherlv_9, grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_1());
     }
@@ -597,26 +597,26 @@
 
 
 // Entry rule entryRulePostconditionConstraintCS
-entryRulePostconditionConstraintCS returns [EObject current=null] 
+entryRulePostconditionConstraintCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPostconditionConstraintCSRule()); }
-	 iv_rulePostconditionConstraintCS=rulePostconditionConstraintCS 
-	 { $current=$iv_rulePostconditionConstraintCS.current; } 
-	 EOF 
+	 iv_rulePostconditionConstraintCS=rulePostconditionConstraintCS
+	 { $current=$iv_rulePostconditionConstraintCS.current; }
+	 EOF
 ;
 
 // Rule PostconditionConstraintCS
-rulePostconditionConstraintCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePostconditionConstraintCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_stereotype_0_0=	'postcondition' 
+		lv_stereotype_0_0=	'postcondition'
     {
         newLeafNode(lv_stereotype_0_0, grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getPostconditionConstraintCSRule());
@@ -627,71 +627,71 @@
 )
 )((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
 	    }
 		lv_name_1_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPostconditionConstraintCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2='(' 
+)(	otherlv_2='('
     {
     	newLeafNode(otherlv_2, grammarAccess.getPostconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
 	    }
 		lv_ownedMessageSpecification_3_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPostconditionConstraintCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMessageSpecification",
-        		lv_ownedMessageSpecification_3_0, 
+        		lv_ownedMessageSpecification_3_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_4=')' 
+)	otherlv_4=')'
     {
     	newLeafNode(otherlv_4, grammarAccess.getPostconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2());
     }
-)?)?	otherlv_5=':' 
+)?)?	otherlv_5=':'
     {
     	newLeafNode(otherlv_5, grammarAccess.getPostconditionConstraintCSAccess().getColonKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
 	    }
 		lv_ownedSpecification_6_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPostconditionConstraintCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSpecification",
-        		lv_ownedSpecification_6_0, 
+        		lv_ownedSpecification_6_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_7=';' 
+)?	otherlv_7=';'
     {
     	newLeafNode(otherlv_7, grammarAccess.getPostconditionConstraintCSAccess().getSemicolonKeyword_4());
     }
@@ -703,26 +703,26 @@
 
 
 // Entry rule entryRulePreconditionConstraintCS
-entryRulePreconditionConstraintCS returns [EObject current=null] 
+entryRulePreconditionConstraintCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPreconditionConstraintCSRule()); }
-	 iv_rulePreconditionConstraintCS=rulePreconditionConstraintCS 
-	 { $current=$iv_rulePreconditionConstraintCS.current; } 
-	 EOF 
+	 iv_rulePreconditionConstraintCS=rulePreconditionConstraintCS
+	 { $current=$iv_rulePreconditionConstraintCS.current; }
+	 EOF
 ;
 
 // Rule PreconditionConstraintCS
-rulePreconditionConstraintCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePreconditionConstraintCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_stereotype_0_0=	'precondition' 
+		lv_stereotype_0_0=	'precondition'
     {
         newLeafNode(lv_stereotype_0_0, grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getPreconditionConstraintCSRule());
@@ -733,71 +733,71 @@
 )
 )((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
 	    }
 		lv_name_1_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPreconditionConstraintCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2='(' 
+)(	otherlv_2='('
     {
     	newLeafNode(otherlv_2, grammarAccess.getPreconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
 	    }
 		lv_ownedMessageSpecification_3_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPreconditionConstraintCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMessageSpecification",
-        		lv_ownedMessageSpecification_3_0, 
+        		lv_ownedMessageSpecification_3_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_4=')' 
+)	otherlv_4=')'
     {
     	newLeafNode(otherlv_4, grammarAccess.getPreconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2());
     }
-)?)?	otherlv_5=':' 
+)?)?	otherlv_5=':'
     {
     	newLeafNode(otherlv_5, grammarAccess.getPreconditionConstraintCSAccess().getColonKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
 	    }
 		lv_ownedSpecification_6_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPreconditionConstraintCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSpecification",
-        		lv_ownedSpecification_6_0, 
+        		lv_ownedSpecification_6_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_7=';' 
+)?	otherlv_7=';'
     {
     	newLeafNode(otherlv_7, grammarAccess.getPreconditionConstraintCSAccess().getSemicolonKeyword_4());
     }
@@ -809,133 +809,133 @@
 
 
 // Entry rule entryRuleAnnotationCS
-entryRuleAnnotationCS returns [EObject current=null] 
+entryRuleAnnotationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getAnnotationCSRule()); }
-	 iv_ruleAnnotationCS=ruleAnnotationCS 
-	 { $current=$iv_ruleAnnotationCS.current; } 
-	 EOF 
+	 iv_ruleAnnotationCS=ruleAnnotationCS
+	 { $current=$iv_ruleAnnotationCS.current; }
+	 EOF
 ;
 
 // Rule AnnotationCS
-ruleAnnotationCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleAnnotationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getAnnotationCSAccess().getAnnotationCSAction_0(),
             $current);
     }
-)	otherlv_1='annotation' 
+)	otherlv_1='annotation'
     {
     	newLeafNode(otherlv_1, grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_1());
     }
 (
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0());
 	    }
 		lv_name_2_1=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_1, 
+        		lv_name_2_1,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
     |		lv_name_2_2=RULE_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_name_2_2, grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); 
+			newLeafNode(lv_name_2_2, grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAnnotationCSRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_2, 
+        		lv_name_2_2,
         		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
 	    }
 
 )
 
 )
-)?(	otherlv_3='(' 
+)?(	otherlv_3='('
     {
     	newLeafNode(otherlv_3, grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_3_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
 	    }
 		lv_ownedDetails_4_0=ruleDetailCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDetails",
-        		lv_ownedDetails_4_0, 
+        		lv_ownedDetails_4_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_5=',' 
+)(	otherlv_5=','
     {
     	newLeafNode(otherlv_5, grammarAccess.getAnnotationCSAccess().getCommaKeyword_3_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
 	    }
 		lv_ownedDetails_6_0=ruleDetailCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDetails",
-        		lv_ownedDetails_6_0, 
+        		lv_ownedDetails_6_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_7=')' 
+))*	otherlv_7=')'
     {
     	newLeafNode(otherlv_7, grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_3_3());
     }
-)?((	otherlv_8='{' 
+)?((	otherlv_8='{'
     {
     	newLeafNode(otherlv_8, grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_4_0_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0());
 	    }
 		lv_ownedAnnotations_9_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_9_0, 
+        		lv_ownedAnnotations_9_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -944,17 +944,17 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedContentsModelElementCSParserRuleCall_4_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedContentsModelElementCSParserRuleCall_4_0_1_1_0());
 	    }
 		lv_ownedContents_10_0=ruleModelElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedContents",
-        		lv_ownedContents_10_0, 
+        		lv_ownedContents_10_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ModelElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -963,28 +963,28 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedReferencesModelElementRefCSParserRuleCall_4_0_1_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedReferencesModelElementRefCSParserRuleCall_4_0_1_2_0());
 	    }
 		lv_ownedReferences_11_0=ruleModelElementRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedReferences",
-        		lv_ownedReferences_11_0, 
+        		lv_ownedReferences_11_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ModelElementRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))+	otherlv_12='}' 
+))+	otherlv_12='}'
     {
     	newLeafNode(otherlv_12, grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_4_0_2());
     }
 )
-    |	otherlv_13=';' 
+    |	otherlv_13=';'
     {
     	newLeafNode(otherlv_13, grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_4_1());
     }
@@ -996,55 +996,55 @@
 
 
 // Entry rule entryRuleAnnotationElementCS
-entryRuleAnnotationElementCS returns [EObject current=null] 
+entryRuleAnnotationElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getAnnotationElementCSRule()); }
-	 iv_ruleAnnotationElementCS=ruleAnnotationElementCS 
-	 { $current=$iv_ruleAnnotationElementCS.current; } 
-	 EOF 
+	 iv_ruleAnnotationElementCS=ruleAnnotationElementCS
+	 { $current=$iv_ruleAnnotationElementCS.current; }
+	 EOF
 ;
 
 // Rule AnnotationElementCS
-ruleAnnotationElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleAnnotationElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0());
     }
     this_AnnotationCS_0=ruleAnnotationCS
-    { 
-        $current = $this_AnnotationCS_0.current; 
+    {
+        $current = $this_AnnotationCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1());
     }
     this_DocumentationCS_1=ruleDocumentationCS
-    { 
-        $current = $this_DocumentationCS_1.current; 
+    {
+        $current = $this_DocumentationCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getSysMLCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getSysMLCSParserRuleCall_2());
     }
     this_SysMLCS_2=ruleSysMLCS
-    { 
-        $current = $this_SysMLCS_2.current; 
+    {
+        $current = $this_SysMLCS_2.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -1055,26 +1055,26 @@
 
 
 // Entry rule entryRuleAttributeCS
-entryRuleAttributeCS returns [EObject current=null] 
+entryRuleAttributeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getAttributeCSRule()); }
-	 iv_ruleAttributeCS=ruleAttributeCS 
-	 { $current=$iv_ruleAttributeCS.current; } 
-	 EOF 
+	 iv_ruleAttributeCS=ruleAttributeCS
+	 { $current=$iv_ruleAttributeCS.current; }
+	 EOF
 ;
 
 // Rule AttributeCS
-ruleAttributeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleAttributeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((((
 (
-		lv_qualifiers_0_0=	'static' 
+		lv_qualifiers_0_0=	'static'
     {
         newLeafNode(lv_qualifiers_0_0, grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1085,11 +1085,11 @@
 )
 )(
 (
-		lv_qualifiers_1_0=	'definition' 
+		lv_qualifiers_1_0=	'definition'
     {
         newLeafNode(lv_qualifiers_1_0, grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1101,11 +1101,11 @@
 )?)
     |((
 (
-		lv_qualifiers_2_0=	'definition' 
+		lv_qualifiers_2_0=	'definition'
     {
         newLeafNode(lv_qualifiers_2_0, grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1116,11 +1116,11 @@
 )
 )(
 (
-		lv_qualifiers_3_0=	'static' 
+		lv_qualifiers_3_0=	'static'
     {
         newLeafNode(lv_qualifiers_3_0, grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1129,51 +1129,51 @@
 	    }
 
 )
-)?))?	otherlv_4='attribute' 
+)?))?	otherlv_4='attribute'
     {
     	newLeafNode(otherlv_4, grammarAccess.getAttributeCSAccess().getAttributeKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAttributeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAttributeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
 	    }
 		lv_name_5_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAttributeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_5_0, 
+        		lv_name_5_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_6=':' 
+)(	otherlv_6=':'
     {
     	newLeafNode(otherlv_6, grammarAccess.getAttributeCSAccess().getColonKeyword_3_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_3_1_0());
 	    }
 		lv_ownedType_7_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAttributeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_7_0, 
+        		lv_ownedType_7_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?(	otherlv_8='=' 
+))?(	otherlv_8='='
     {
     	newLeafNode(otherlv_8, grammarAccess.getAttributeCSAccess().getEqualsSignKeyword_4_0());
     }
@@ -1181,31 +1181,31 @@
 (
 		lv_default_9_0=RULE_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_default_9_0, grammarAccess.getAttributeCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0()); 
+			newLeafNode(lv_default_9_0, grammarAccess.getAttributeCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"default",
-        		lv_default_9_0, 
+        		lv_default_9_0,
         		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
 	    }
 
 )
-))?(	otherlv_10='{' 
+))?(	otherlv_10='{'
     {
     	newLeafNode(otherlv_10, grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_5_0());
     }
 (((
 (
-		lv_qualifiers_11_0=	'derived' 
+		lv_qualifiers_11_0=	'derived'
     {
         newLeafNode(lv_qualifiers_11_0, grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1217,11 +1217,11 @@
 )
     |(
 (
-		lv_qualifiers_12_0=	'!derived' 
+		lv_qualifiers_12_0=	'!derived'
     {
         newLeafNode(lv_qualifiers_12_0, grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1233,11 +1233,11 @@
 )
     |(
 (
-		lv_qualifiers_13_0=	'id' 
+		lv_qualifiers_13_0=	'id'
     {
         newLeafNode(lv_qualifiers_13_0, grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1249,11 +1249,11 @@
 )
     |(
 (
-		lv_qualifiers_14_0=	'!id' 
+		lv_qualifiers_14_0=	'!id'
     {
         newLeafNode(lv_qualifiers_14_0, grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1265,11 +1265,11 @@
 )
     |(
 (
-		lv_qualifiers_15_0=	'ordered' 
+		lv_qualifiers_15_0=	'ordered'
     {
         newLeafNode(lv_qualifiers_15_0, grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1281,11 +1281,11 @@
 )
     |(
 (
-		lv_qualifiers_16_0=	'!ordered' 
+		lv_qualifiers_16_0=	'!ordered'
     {
         newLeafNode(lv_qualifiers_16_0, grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1297,11 +1297,11 @@
 )
     |(
 (
-		lv_qualifiers_17_0=	'readonly' 
+		lv_qualifiers_17_0=	'readonly'
     {
         newLeafNode(lv_qualifiers_17_0, grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1313,11 +1313,11 @@
 )
     |(
 (
-		lv_qualifiers_18_0=	'!readonly' 
+		lv_qualifiers_18_0=	'!readonly'
     {
         newLeafNode(lv_qualifiers_18_0, grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1329,11 +1329,11 @@
 )
     |(
 (
-		lv_qualifiers_19_0=	'transient' 
+		lv_qualifiers_19_0=	'transient'
     {
         newLeafNode(lv_qualifiers_19_0, grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1345,11 +1345,11 @@
 )
     |(
 (
-		lv_qualifiers_20_0=	'!transient' 
+		lv_qualifiers_20_0=	'!transient'
     {
         newLeafNode(lv_qualifiers_20_0, grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1361,11 +1361,11 @@
 )
     |(
 (
-		lv_qualifiers_21_0=	'unique' 
+		lv_qualifiers_21_0=	'unique'
     {
         newLeafNode(lv_qualifiers_21_0, grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1377,11 +1377,11 @@
 )
     |(
 (
-		lv_qualifiers_22_0=	'!unique' 
+		lv_qualifiers_22_0=	'!unique'
     {
         newLeafNode(lv_qualifiers_22_0, grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1393,11 +1393,11 @@
 )
     |(
 (
-		lv_qualifiers_23_0=	'unsettable' 
+		lv_qualifiers_23_0=	'unsettable'
     {
         newLeafNode(lv_qualifiers_23_0, grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1409,11 +1409,11 @@
 )
     |(
 (
-		lv_qualifiers_24_0=	'!unsettable' 
+		lv_qualifiers_24_0=	'!unsettable'
     {
         newLeafNode(lv_qualifiers_24_0, grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1425,11 +1425,11 @@
 )
     |(
 (
-		lv_qualifiers_25_0=	'volatile' 
+		lv_qualifiers_25_0=	'volatile'
     {
         newLeafNode(lv_qualifiers_25_0, grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1441,11 +1441,11 @@
 )
     |(
 (
-		lv_qualifiers_26_0=	'!volatile' 
+		lv_qualifiers_26_0=	'!volatile'
     {
         newLeafNode(lv_qualifiers_26_0, grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAttributeCSRule());
@@ -1454,126 +1454,126 @@
 	    }
 
 )
-))(	otherlv_27=',' 
+))(	otherlv_27=','
     {
     	newLeafNode(otherlv_27, grammarAccess.getAttributeCSAccess().getCommaKeyword_5_1_1());
     }
-)?)+	otherlv_28='}' 
+)?)+	otherlv_28='}'
     {
     	newLeafNode(otherlv_28, grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_5_2());
     }
-)?((	otherlv_29='{' 
+)?((	otherlv_29='{'
     {
     	newLeafNode(otherlv_29, grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_6_0_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0());
 	    }
 		lv_ownedAnnotations_30_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAttributeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_30_0, 
+        		lv_ownedAnnotations_30_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 )
-    |(	otherlv_31='initial' 
+    |(	otherlv_31='initial'
     {
     	newLeafNode(otherlv_31, grammarAccess.getAttributeCSAccess().getInitialKeyword_6_0_1_1_0());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_1_1()); 
+    {
+        newCompositeNode(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_1_1());
     }
 ruleUnrestrictedName
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
-)?	otherlv_33=':' 
+)?	otherlv_33=':'
     {
     	newLeafNode(otherlv_33, grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_1_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_1_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_1_3_0());
 	    }
 		lv_ownedDefaultExpressions_34_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAttributeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDefaultExpressions",
-        		lv_ownedDefaultExpressions_34_0, 
+        		lv_ownedDefaultExpressions_34_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_35=';' 
+)?	otherlv_35=';'
     {
     	newLeafNode(otherlv_35, grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_1_4());
     }
 )
-    |(	otherlv_36='derivation' 
+    |(	otherlv_36='derivation'
     {
     	newLeafNode(otherlv_36, grammarAccess.getAttributeCSAccess().getDerivationKeyword_6_0_1_2_0());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_2_1()); 
+    {
+        newCompositeNode(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_2_1());
     }
 ruleUnrestrictedName
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
-)?	otherlv_38=':' 
+)?	otherlv_38=':'
     {
     	newLeafNode(otherlv_38, grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_2_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_2_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_2_3_0());
 	    }
 		lv_ownedDefaultExpressions_39_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAttributeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDefaultExpressions",
-        		lv_ownedDefaultExpressions_39_0, 
+        		lv_ownedDefaultExpressions_39_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_40=';' 
+)?	otherlv_40=';'
     {
     	newLeafNode(otherlv_40, grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_2_4());
     }
-))*	otherlv_41='}' 
+))*	otherlv_41='}'
     {
     	newLeafNode(otherlv_41, grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_6_0_2());
     }
 )
-    |	otherlv_42=';' 
+    |	otherlv_42=';'
     {
     	newLeafNode(otherlv_42, grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_1());
     }
@@ -1585,55 +1585,55 @@
 
 
 // Entry rule entryRuleClassCS
-entryRuleClassCS returns [EObject current=null] 
+entryRuleClassCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getClassCSRule()); }
-	 iv_ruleClassCS=ruleClassCS 
-	 { $current=$iv_ruleClassCS.current; } 
-	 EOF 
+	 iv_ruleClassCS=ruleClassCS
+	 { $current=$iv_ruleClassCS.current; }
+	 EOF
 ;
 
 // Rule ClassCS
-ruleClassCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleClassCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getClassCSAccess().getStructuredClassCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getClassCSAccess().getStructuredClassCSParserRuleCall_0());
     }
     this_StructuredClassCS_0=ruleStructuredClassCS
-    { 
-        $current = $this_StructuredClassCS_0.current; 
+    {
+        $current = $this_StructuredClassCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getClassCSAccess().getDataTypeCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getClassCSAccess().getDataTypeCSParserRuleCall_1());
     }
     this_DataTypeCS_1=ruleDataTypeCS
-    { 
-        $current = $this_DataTypeCS_1.current; 
+    {
+        $current = $this_DataTypeCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getClassCSAccess().getEnumerationCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getClassCSAccess().getEnumerationCSParserRuleCall_2());
     }
     this_EnumerationCS_2=ruleEnumerationCS
-    { 
-        $current = $this_EnumerationCS_2.current; 
+    {
+        $current = $this_EnumerationCS_2.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -1644,26 +1644,26 @@
 
 
 // Entry rule entryRuleDataTypeCS
-entryRuleDataTypeCS returns [EObject current=null] 
+entryRuleDataTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getDataTypeCSRule()); }
-	 iv_ruleDataTypeCS=ruleDataTypeCS 
-	 { $current=$iv_ruleDataTypeCS.current; } 
-	 EOF 
+	 iv_ruleDataTypeCS=ruleDataTypeCS
+	 { $current=$iv_ruleDataTypeCS.current; }
+	 EOF
 ;
 
 // Rule DataTypeCS
-ruleDataTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleDataTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_isPrimitive_0_0=	'primitive' 
+		lv_isPrimitive_0_0=	'primitive'
     {
         newLeafNode(lv_isPrimitive_0_0, grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getDataTypeCSRule());
@@ -1672,23 +1672,23 @@
 	    }
 
 )
-)?	otherlv_1='datatype' 
+)?	otherlv_1='datatype'
     {
     	newLeafNode(otherlv_1, grammarAccess.getDataTypeCSAccess().getDatatypeKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
 	    }
 		lv_name_2_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDataTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_0, 
+        		lv_name_2_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1696,23 +1696,23 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
 	    }
 		lv_ownedSignature_3_0=ruleTemplateSignatureCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDataTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSignature",
-        		lv_ownedSignature_3_0, 
+        		lv_ownedSignature_3_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TemplateSignatureCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?(	otherlv_4=':' 
+)?(	otherlv_4=':'
     {
     	newLeafNode(otherlv_4, grammarAccess.getDataTypeCSAccess().getColonKeyword_4_0());
     }
@@ -1720,31 +1720,31 @@
 (
 		lv_instanceClassName_5_0=RULE_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_instanceClassName_5_0, grammarAccess.getDataTypeCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0()); 
+			newLeafNode(lv_instanceClassName_5_0, grammarAccess.getDataTypeCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getDataTypeCSRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"instanceClassName",
-        		lv_instanceClassName_5_0, 
+        		lv_instanceClassName_5_0,
         		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
 	    }
 
 )
-))?(	otherlv_6='{' 
+))?(	otherlv_6='{'
     {
     	newLeafNode(otherlv_6, grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_5_0());
     }
 ((
 (
-		lv_isSerializable_7_0=	'serializable' 
+		lv_isSerializable_7_0=	'serializable'
     {
         newLeafNode(lv_isSerializable_7_0, grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getDataTypeCSRule());
@@ -1754,31 +1754,31 @@
 
 )
 )
-    |	otherlv_8='!serializable' 
+    |	otherlv_8='!serializable'
     {
     	newLeafNode(otherlv_8, grammarAccess.getDataTypeCSAccess().getSerializableKeyword_5_1_1());
     }
-)?	otherlv_9='}' 
+)?	otherlv_9='}'
     {
     	newLeafNode(otherlv_9, grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_5_2());
     }
-)?((	otherlv_10='{' 
+)?((	otherlv_10='{'
     {
     	newLeafNode(otherlv_10, grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_6_0_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0());
 	    }
 		lv_ownedAnnotations_11_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDataTypeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_11_0, 
+        		lv_ownedAnnotations_11_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1787,28 +1787,28 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_6_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_6_0_1_1_0());
 	    }
 		lv_ownedConstraints_12_0=ruleInvariantConstraintCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDataTypeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedConstraints",
-        		lv_ownedConstraints_12_0, 
+        		lv_ownedConstraints_12_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.InvariantConstraintCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_13='}' 
+))*	otherlv_13='}'
     {
     	newLeafNode(otherlv_13, grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_6_0_2());
     }
 )
-    |	otherlv_14=';' 
+    |	otherlv_14=';'
     {
     	newLeafNode(otherlv_14, grammarAccess.getDataTypeCSAccess().getSemicolonKeyword_6_1());
     }
@@ -1820,56 +1820,56 @@
 
 
 // Entry rule entryRuleDetailCS
-entryRuleDetailCS returns [EObject current=null] 
+entryRuleDetailCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getDetailCSRule()); }
-	 iv_ruleDetailCS=ruleDetailCS 
-	 { $current=$iv_ruleDetailCS.current; } 
-	 EOF 
+	 iv_ruleDetailCS=ruleDetailCS
+	 { $current=$iv_ruleDetailCS.current; }
+	 EOF
 ;
 
 // Rule DetailCS
-ruleDetailCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleDetailCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDetailCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDetailCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
 	    }
 		lv_name_0_1=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDetailCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_1, 
+        		lv_name_0_1,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
     |		lv_name_0_2=RULE_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_name_0_2, grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1()); 
+			newLeafNode(lv_name_0_2, grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getDetailCSRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_2, 
+        		lv_name_0_2,
         		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
 	    }
 
 )
 
 )
-)	otherlv_1='=' 
+)	otherlv_1='='
     {
     	newLeafNode(otherlv_1, grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1());
     }
@@ -1878,31 +1878,31 @@
 (
 		lv_values_2_1=RULE_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_values_2_1, grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0()); 
+			newLeafNode(lv_values_2_1, grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getDetailCSRule());
 	        }
        		addWithLastConsumed(
-       			$current, 
+       			$current,
        			"values",
-        		lv_values_2_1, 
+        		lv_values_2_1,
         		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
 	    }
 
     |		lv_values_2_2=RULE_ML_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_values_2_2, grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); 
+			newLeafNode(lv_values_2_2, grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getDetailCSRule());
 	        }
        		addWithLastConsumed(
-       			$current, 
+       			$current,
        			"values",
-        		lv_values_2_2, 
+        		lv_values_2_2,
         		"org.eclipse.ocl.xtext.base.Base.ML_SINGLE_QUOTED_STRING");
 	    }
 
@@ -1917,29 +1917,29 @@
 
 
 // Entry rule entryRuleDocumentationCS
-entryRuleDocumentationCS returns [EObject current=null] 
+entryRuleDocumentationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getDocumentationCSRule()); }
-	 iv_ruleDocumentationCS=ruleDocumentationCS 
-	 { $current=$iv_ruleDocumentationCS.current; } 
-	 EOF 
+	 iv_ruleDocumentationCS=ruleDocumentationCS
+	 { $current=$iv_ruleDocumentationCS.current; }
+	 EOF
 ;
 
 // Rule DocumentationCS
-ruleDocumentationCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleDocumentationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0(),
             $current);
     }
-)	otherlv_1='documentation' 
+)	otherlv_1='documentation'
     {
     	newLeafNode(otherlv_1, grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1());
     }
@@ -1947,69 +1947,69 @@
 (
 		lv_value_2_0=RULE_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_value_2_0, grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0()); 
+			newLeafNode(lv_value_2_0, grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getDocumentationCSRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"value",
-        		lv_value_2_0, 
+        		lv_value_2_0,
         		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
 	    }
 
 )
-)?(	otherlv_3='(' 
+)?(	otherlv_3='('
     {
     	newLeafNode(otherlv_3, grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
 	    }
 		lv_ownedDetails_4_0=ruleDetailCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDocumentationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDetails",
-        		lv_ownedDetails_4_0, 
+        		lv_ownedDetails_4_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_5=',' 
+)(	otherlv_5=','
     {
     	newLeafNode(otherlv_5, grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
 	    }
 		lv_ownedDetails_6_0=ruleDetailCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDocumentationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDetails",
-        		lv_ownedDetails_6_0, 
+        		lv_ownedDetails_6_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_7=')' 
+))*	otherlv_7=')'
     {
     	newLeafNode(otherlv_7, grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3());
     }
-)?	otherlv_8=';' 
+)?	otherlv_8=';'
     {
     	newLeafNode(otherlv_8, grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4());
     }
@@ -2021,36 +2021,36 @@
 
 
 // Entry rule entryRuleEnumerationCS
-entryRuleEnumerationCS returns [EObject current=null] 
+entryRuleEnumerationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getEnumerationCSRule()); }
-	 iv_ruleEnumerationCS=ruleEnumerationCS 
-	 { $current=$iv_ruleEnumerationCS.current; } 
-	 EOF 
+	 iv_ruleEnumerationCS=ruleEnumerationCS
+	 { $current=$iv_ruleEnumerationCS.current; }
+	 EOF
 ;
 
 // Rule EnumerationCS
-ruleEnumerationCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleEnumerationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='enum' 
+(	otherlv_0='enum'
     {
     	newLeafNode(otherlv_0, grammarAccess.getEnumerationCSAccess().getEnumKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getNameUnrestrictedNameParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getNameUnrestrictedNameParserRuleCall_1_0());
 	    }
 		lv_name_1_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getEnumerationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2058,23 +2058,23 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
 	    }
 		lv_ownedSignature_2_0=ruleTemplateSignatureCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getEnumerationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSignature",
-        		lv_ownedSignature_2_0, 
+        		lv_ownedSignature_2_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TemplateSignatureCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?(	otherlv_3=':' 
+)?(	otherlv_3=':'
     {
     	newLeafNode(otherlv_3, grammarAccess.getEnumerationCSAccess().getColonKeyword_3_0());
     }
@@ -2082,31 +2082,31 @@
 (
 		lv_instanceClassName_4_0=RULE_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_instanceClassName_4_0, grammarAccess.getEnumerationCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_3_1_0()); 
+			newLeafNode(lv_instanceClassName_4_0, grammarAccess.getEnumerationCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_3_1_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getEnumerationCSRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"instanceClassName",
-        		lv_instanceClassName_4_0, 
+        		lv_instanceClassName_4_0,
         		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
 	    }
 
 )
-))?(	otherlv_5='{' 
+))?(	otherlv_5='{'
     {
     	newLeafNode(otherlv_5, grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_4_0());
     }
 ((
 (
-		lv_isSerializable_6_0=	'serializable' 
+		lv_isSerializable_6_0=	'serializable'
     {
         newLeafNode(lv_isSerializable_6_0, grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getEnumerationCSRule());
@@ -2116,31 +2116,31 @@
 
 )
 )
-    |	otherlv_7='!serializable' 
+    |	otherlv_7='!serializable'
     {
     	newLeafNode(otherlv_7, grammarAccess.getEnumerationCSAccess().getSerializableKeyword_4_1_1());
     }
-)?	otherlv_8='}' 
+)?	otherlv_8='}'
     {
     	newLeafNode(otherlv_8, grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_4_2());
     }
-)?((	otherlv_9='{' 
+)?((	otherlv_9='{'
     {
     	newLeafNode(otherlv_9, grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_5_0_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_5_0_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_5_0_1_0_0());
 	    }
 		lv_ownedAnnotations_10_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getEnumerationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_10_0, 
+        		lv_ownedAnnotations_10_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2149,17 +2149,17 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsEnumerationLiteralCSParserRuleCall_5_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsEnumerationLiteralCSParserRuleCall_5_0_1_1_0());
 	    }
 		lv_ownedLiterals_11_0=ruleEnumerationLiteralCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getEnumerationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedLiterals",
-        		lv_ownedLiterals_11_0, 
+        		lv_ownedLiterals_11_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.EnumerationLiteralCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2168,28 +2168,28 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_5_0_1_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_5_0_1_2_0());
 	    }
 		lv_ownedConstraints_12_0=ruleInvariantConstraintCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getEnumerationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedConstraints",
-        		lv_ownedConstraints_12_0, 
+        		lv_ownedConstraints_12_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.InvariantConstraintCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_13='}' 
+))*	otherlv_13='}'
     {
     	newLeafNode(otherlv_13, grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_5_0_2());
     }
 )
-    |	otherlv_14=';' 
+    |	otherlv_14=';'
     {
     	newLeafNode(otherlv_14, grammarAccess.getEnumerationCSAccess().getSemicolonKeyword_5_1());
     }
@@ -2201,36 +2201,36 @@
 
 
 // Entry rule entryRuleEnumerationLiteralCS
-entryRuleEnumerationLiteralCS returns [EObject current=null] 
+entryRuleEnumerationLiteralCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getEnumerationLiteralCSRule()); }
-	 iv_ruleEnumerationLiteralCS=ruleEnumerationLiteralCS 
-	 { $current=$iv_ruleEnumerationLiteralCS.current; } 
-	 EOF 
+	 iv_ruleEnumerationLiteralCS=ruleEnumerationLiteralCS
+	 { $current=$iv_ruleEnumerationLiteralCS.current; }
+	 EOF
 ;
 
 // Rule EnumerationLiteralCS
-ruleEnumerationLiteralCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleEnumerationLiteralCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(((	otherlv_0='literal' 
+(((	otherlv_0='literal'
     {
     	newLeafNode(otherlv_0, grammarAccess.getEnumerationLiteralCSAccess().getLiteralKeyword_0_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_1_0());
 	    }
 		lv_name_1_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getEnumerationLiteralCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2239,72 +2239,72 @@
 ))
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getNameEnumerationLiteralNameParserRuleCall_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getNameEnumerationLiteralNameParserRuleCall_0_1_0());
 	    }
 		lv_name_2_0=ruleEnumerationLiteralName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getEnumerationLiteralCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_0, 
+        		lv_name_2_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.EnumerationLiteralName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))(	otherlv_3='=' 
+))(	otherlv_3='='
     {
     	newLeafNode(otherlv_3, grammarAccess.getEnumerationLiteralCSAccess().getEqualsSignKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getValueSIGNEDParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getValueSIGNEDParserRuleCall_1_1_0());
 	    }
 		lv_value_4_0=ruleSIGNED		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getEnumerationLiteralCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"value",
-        		lv_value_4_0, 
+        		lv_value_4_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SIGNED");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?((	otherlv_5='{' 
+))?((	otherlv_5='{'
     {
     	newLeafNode(otherlv_5, grammarAccess.getEnumerationLiteralCSAccess().getLeftCurlyBracketKeyword_2_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_2_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_2_0_1_0());
 	    }
 		lv_ownedAnnotations_6_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getEnumerationLiteralCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_6_0, 
+        		lv_ownedAnnotations_6_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_7='}' 
+)*	otherlv_7='}'
     {
     	newLeafNode(otherlv_7, grammarAccess.getEnumerationLiteralCSAccess().getRightCurlyBracketKeyword_2_0_2());
     }
 )
-    |	otherlv_8=';' 
+    |	otherlv_8=';'
     {
     	newLeafNode(otherlv_8, grammarAccess.getEnumerationLiteralCSAccess().getSemicolonKeyword_2_1());
     }
@@ -2316,63 +2316,63 @@
 
 
 // Entry rule entryRuleImportCS
-entryRuleImportCS returns [EObject current=null] 
+entryRuleImportCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getImportCSRule()); }
-	 iv_ruleImportCS=ruleImportCS 
-	 { $current=$iv_ruleImportCS.current; } 
-	 EOF 
+	 iv_ruleImportCS=ruleImportCS
+	 { $current=$iv_ruleImportCS.current; }
+	 EOF
 ;
 
 // Rule ImportCS
-ruleImportCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleImportCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-((	otherlv_0='import' 
+((	otherlv_0='import'
     {
     	newLeafNode(otherlv_0, grammarAccess.getImportCSAccess().getImportKeyword_0_0());
     }
 
-    |	otherlv_1='library' 
+    |	otherlv_1='library'
     {
     	newLeafNode(otherlv_1, grammarAccess.getImportCSAccess().getLibraryKeyword_0_1());
     }
 )((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getImportCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getImportCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
 	    }
 		lv_name_2_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getImportCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_0, 
+        		lv_name_2_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=':' 
+)	otherlv_3=':'
     {
     	newLeafNode(otherlv_3, grammarAccess.getImportCSAccess().getColonKeyword_1_1());
     }
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
 	    }
 		lv_ownedPathName_4_0=ruleURIPathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getImportCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_4_0, 
+        		lv_ownedPathName_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIPathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2380,11 +2380,11 @@
 )
 )(
 (
-		lv_isAll_5_0=	'::*' 
+		lv_isAll_5_0=	'::*'
     {
         newLeafNode(lv_isAll_5_0, grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getImportCSRule());
@@ -2393,7 +2393,7 @@
 	    }
 
 )
-)?	otherlv_6=';' 
+)?	otherlv_6=';'
     {
     	newLeafNode(otherlv_6, grammarAccess.getImportCSAccess().getSemicolonKeyword_4());
     }
@@ -2405,81 +2405,81 @@
 
 
 // Entry rule entryRuleModelElementCS
-entryRuleModelElementCS returns [EObject current=null] 
+entryRuleModelElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getModelElementCSRule()); }
-	 iv_ruleModelElementCS=ruleModelElementCS 
-	 { $current=$iv_ruleModelElementCS.current; } 
-	 EOF 
+	 iv_ruleModelElementCS=ruleModelElementCS
+	 { $current=$iv_ruleModelElementCS.current; }
+	 EOF
 ;
 
 // Rule ModelElementCS
-ruleModelElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleModelElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getModelElementCSAccess().getClassCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getModelElementCSAccess().getClassCSParserRuleCall_0());
     }
     this_ClassCS_0=ruleClassCS
-    { 
-        $current = $this_ClassCS_0.current; 
+    {
+        $current = $this_ClassCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getModelElementCSAccess().getEnumerationLiteralCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getModelElementCSAccess().getEnumerationLiteralCSParserRuleCall_1());
     }
     this_EnumerationLiteralCS_1=ruleEnumerationLiteralCS
-    { 
-        $current = $this_EnumerationLiteralCS_1.current; 
+    {
+        $current = $this_EnumerationLiteralCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getModelElementCSAccess().getOperationCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getModelElementCSAccess().getOperationCSParserRuleCall_2());
     }
     this_OperationCS_2=ruleOperationCS
-    { 
-        $current = $this_OperationCS_2.current; 
+    {
+        $current = $this_OperationCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getModelElementCSAccess().getPackageCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getModelElementCSAccess().getPackageCSParserRuleCall_3());
     }
     this_PackageCS_3=rulePackageCS
-    { 
-        $current = $this_PackageCS_3.current; 
+    {
+        $current = $this_PackageCS_3.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getModelElementCSAccess().getStructuralFeatureCSParserRuleCall_4()); 
+    {
+        newCompositeNode(grammarAccess.getModelElementCSAccess().getStructuralFeatureCSParserRuleCall_4());
     }
     this_StructuralFeatureCS_4=ruleStructuralFeatureCS
-    { 
-        $current = $this_StructuralFeatureCS_4.current; 
+    {
+        $current = $this_StructuralFeatureCS_4.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -2490,42 +2490,42 @@
 
 
 // Entry rule entryRuleModelElementRefCS
-entryRuleModelElementRefCS returns [EObject current=null] 
+entryRuleModelElementRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getModelElementRefCSRule()); }
-	 iv_ruleModelElementRefCS=ruleModelElementRefCS 
-	 { $current=$iv_ruleModelElementRefCS.current; } 
-	 EOF 
+	 iv_ruleModelElementRefCS=ruleModelElementRefCS
+	 { $current=$iv_ruleModelElementRefCS.current; }
+	 EOF
 ;
 
 // Rule ModelElementRefCS
-ruleModelElementRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleModelElementRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='reference' 
+(	otherlv_0='reference'
     {
     	newLeafNode(otherlv_0, grammarAccess.getModelElementRefCSAccess().getReferenceKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getModelElementRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getModelElementRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
 	    }
 		lv_ownedPathName_1_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getModelElementRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_1_0, 
+        		lv_ownedPathName_1_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_2=';' 
+)	otherlv_2=';'
     {
     	newLeafNode(otherlv_2, grammarAccess.getModelElementRefCSAccess().getSemicolonKeyword_2());
     }
@@ -2537,26 +2537,26 @@
 
 
 // Entry rule entryRuleOperationCS
-entryRuleOperationCS returns [EObject current=null] 
+entryRuleOperationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getOperationCSRule()); }
-	 iv_ruleOperationCS=ruleOperationCS 
-	 { $current=$iv_ruleOperationCS.current; } 
-	 EOF 
+	 iv_ruleOperationCS=ruleOperationCS
+	 { $current=$iv_ruleOperationCS.current; }
+	 EOF
 ;
 
 // Rule OperationCS
-ruleOperationCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleOperationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((((
 (
-		lv_qualifiers_0_0=	'static' 
+		lv_qualifiers_0_0=	'static'
     {
         newLeafNode(lv_qualifiers_0_0, grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getOperationCSRule());
@@ -2567,11 +2567,11 @@
 )
 )(
 (
-		lv_qualifiers_1_0=	'definition' 
+		lv_qualifiers_1_0=	'definition'
     {
         newLeafNode(lv_qualifiers_1_0, grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getOperationCSRule());
@@ -2583,11 +2583,11 @@
 )?)
     |((
 (
-		lv_qualifiers_2_0=	'definition' 
+		lv_qualifiers_2_0=	'definition'
     {
         newLeafNode(lv_qualifiers_2_0, grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getOperationCSRule());
@@ -2598,11 +2598,11 @@
 )
 )(
 (
-		lv_qualifiers_3_0=	'static' 
+		lv_qualifiers_3_0=	'static'
     {
         newLeafNode(lv_qualifiers_3_0, grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getOperationCSRule());
@@ -2611,23 +2611,23 @@
 	    }
 
 )
-)?))?	otherlv_4='operation' 
+)?))?	otherlv_4='operation'
     {
     	newLeafNode(otherlv_4, grammarAccess.getOperationCSAccess().getOperationKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
 	    }
 		lv_ownedSignature_5_0=ruleTemplateSignatureCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSignature",
-        		lv_ownedSignature_5_0, 
+        		lv_ownedSignature_5_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TemplateSignatureCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2635,147 +2635,147 @@
 )
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationCSAccess().getNameUnrestrictedNameParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationCSAccess().getNameUnrestrictedNameParserRuleCall_3_0());
 	    }
 		lv_name_6_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_6_0, 
+        		lv_name_6_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_7='(' 
+)	otherlv_7='('
     {
     	newLeafNode(otherlv_7, grammarAccess.getOperationCSAccess().getLeftParenthesisKeyword_4());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0());
 	    }
 		lv_ownedParameters_8_0=ruleParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_8_0, 
+        		lv_ownedParameters_8_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_9=',' 
+)(	otherlv_9=','
     {
     	newLeafNode(otherlv_9, grammarAccess.getOperationCSAccess().getCommaKeyword_5_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0());
 	    }
 		lv_ownedParameters_10_0=ruleParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_10_0, 
+        		lv_ownedParameters_10_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_11=')' 
+))*)?	otherlv_11=')'
     {
     	newLeafNode(otherlv_11, grammarAccess.getOperationCSAccess().getRightParenthesisKeyword_6());
     }
-(	otherlv_12=':' 
+(	otherlv_12=':'
     {
     	newLeafNode(otherlv_12, grammarAccess.getOperationCSAccess().getColonKeyword_7_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_7_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_7_1_0());
 	    }
 		lv_ownedType_13_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_13_0, 
+        		lv_ownedType_13_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?(	otherlv_14='throws' 
+))?(	otherlv_14='throws'
     {
     	newLeafNode(otherlv_14, grammarAccess.getOperationCSAccess().getThrowsKeyword_8_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_1_0());
 	    }
 		lv_ownedExceptions_15_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedExceptions",
-        		lv_ownedExceptions_15_0, 
+        		lv_ownedExceptions_15_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_16=',' 
+)(	otherlv_16=','
     {
     	newLeafNode(otherlv_16, grammarAccess.getOperationCSAccess().getCommaKeyword_8_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_2_1_0());
 	    }
 		lv_ownedExceptions_17_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedExceptions",
-        		lv_ownedExceptions_17_0, 
+        		lv_ownedExceptions_17_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?(	otherlv_18='{' 
+))*)?(	otherlv_18='{'
     {
     	newLeafNode(otherlv_18, grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_9_0());
     }
 (((
 (
-		lv_qualifiers_19_0=	'derived' 
+		lv_qualifiers_19_0=	'derived'
     {
         newLeafNode(lv_qualifiers_19_0, grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getOperationCSRule());
@@ -2787,11 +2787,11 @@
 )
     |(
 (
-		lv_qualifiers_20_0=	'!derived' 
+		lv_qualifiers_20_0=	'!derived'
     {
         newLeafNode(lv_qualifiers_20_0, grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getOperationCSRule());
@@ -2803,11 +2803,11 @@
 )
     |(
 (
-		lv_qualifiers_21_0=	'ordered' 
+		lv_qualifiers_21_0=	'ordered'
     {
         newLeafNode(lv_qualifiers_21_0, grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getOperationCSRule());
@@ -2819,11 +2819,11 @@
 )
     |(
 (
-		lv_qualifiers_22_0=	'!ordered' 
+		lv_qualifiers_22_0=	'!ordered'
     {
         newLeafNode(lv_qualifiers_22_0, grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getOperationCSRule());
@@ -2835,11 +2835,11 @@
 )
     |(
 (
-		lv_qualifiers_23_0=	'transient' 
+		lv_qualifiers_23_0=	'transient'
     {
         newLeafNode(lv_qualifiers_23_0, grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getOperationCSRule());
@@ -2851,11 +2851,11 @@
 )
     |(
 (
-		lv_qualifiers_24_0=	'!transient' 
+		lv_qualifiers_24_0=	'!transient'
     {
         newLeafNode(lv_qualifiers_24_0, grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getOperationCSRule());
@@ -2867,11 +2867,11 @@
 )
     |(
 (
-		lv_qualifiers_25_0=	'unique' 
+		lv_qualifiers_25_0=	'unique'
     {
         newLeafNode(lv_qualifiers_25_0, grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getOperationCSRule());
@@ -2883,11 +2883,11 @@
 )
     |(
 (
-		lv_qualifiers_26_0=	'!unique' 
+		lv_qualifiers_26_0=	'!unique'
     {
         newLeafNode(lv_qualifiers_26_0, grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getOperationCSRule());
@@ -2896,31 +2896,31 @@
 	    }
 
 )
-))(	otherlv_27=',' 
+))(	otherlv_27=','
     {
     	newLeafNode(otherlv_27, grammarAccess.getOperationCSAccess().getCommaKeyword_9_1_1());
     }
-)?)+	otherlv_28='}' 
+)?)+	otherlv_28='}'
     {
     	newLeafNode(otherlv_28, grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_9_2());
     }
-)?((	otherlv_29='{' 
+)?((	otherlv_29='{'
     {
     	newLeafNode(otherlv_29, grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_10_0_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_10_0_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_10_0_1_0_0());
 	    }
 		lv_ownedAnnotations_30_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_30_0, 
+        		lv_ownedAnnotations_30_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2929,89 +2929,89 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedPreconditionsPreconditionConstraintCSParserRuleCall_10_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedPreconditionsPreconditionConstraintCSParserRuleCall_10_0_1_1_0());
 	    }
 		lv_ownedPreconditions_31_0=rulePreconditionConstraintCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPreconditions",
-        		lv_ownedPreconditions_31_0, 
+        		lv_ownedPreconditions_31_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.PreconditionConstraintCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 )
-    |(	otherlv_32='body' 
+    |(	otherlv_32='body'
     {
     	newLeafNode(otherlv_32, grammarAccess.getOperationCSAccess().getBodyKeyword_10_0_1_2_0());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getOperationCSAccess().getUnrestrictedNameParserRuleCall_10_0_1_2_1()); 
+    {
+        newCompositeNode(grammarAccess.getOperationCSAccess().getUnrestrictedNameParserRuleCall_10_0_1_2_1());
     }
 ruleUnrestrictedName
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
-)?	otherlv_34=':' 
+)?	otherlv_34=':'
     {
     	newLeafNode(otherlv_34, grammarAccess.getOperationCSAccess().getColonKeyword_10_0_1_2_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_10_0_1_2_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_10_0_1_2_3_0());
 	    }
 		lv_ownedBodyExpressions_35_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedBodyExpressions",
-        		lv_ownedBodyExpressions_35_0, 
+        		lv_ownedBodyExpressions_35_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_36=';' 
+)?	otherlv_36=';'
     {
     	newLeafNode(otherlv_36, grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_0_1_2_4());
     }
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedPostconditionsPostconditionConstraintCSParserRuleCall_10_0_1_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedPostconditionsPostconditionConstraintCSParserRuleCall_10_0_1_3_0());
 	    }
 		lv_ownedPostconditions_37_0=rulePostconditionConstraintCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPostconditions",
-        		lv_ownedPostconditions_37_0, 
+        		lv_ownedPostconditions_37_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.PostconditionConstraintCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_38='}' 
+))*	otherlv_38='}'
     {
     	newLeafNode(otherlv_38, grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_10_0_2());
     }
 )
-    |	otherlv_39=';' 
+    |	otherlv_39=';'
     {
     	newLeafNode(otherlv_39, grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_1());
     }
@@ -3023,102 +3023,102 @@
 
 
 // Entry rule entryRulePackageCS
-entryRulePackageCS returns [EObject current=null] 
+entryRulePackageCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPackageCSRule()); }
-	 iv_rulePackageCS=rulePackageCS 
-	 { $current=$iv_rulePackageCS.current; } 
-	 EOF 
+	 iv_rulePackageCS=rulePackageCS
+	 { $current=$iv_rulePackageCS.current; }
+	 EOF
 ;
 
 // Rule PackageCS
-rulePackageCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePackageCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='package' 
+(	otherlv_0='package'
     {
     	newLeafNode(otherlv_0, grammarAccess.getPackageCSAccess().getPackageKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageCSAccess().getNameUnrestrictedNameParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageCSAccess().getNameUnrestrictedNameParserRuleCall_1_0());
 	    }
 		lv_name_1_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=':' 
+)(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getPackageCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsPrefixUnrestrictedNameParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsPrefixUnrestrictedNameParserRuleCall_2_1_0());
 	    }
 		lv_nsPrefix_3_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"nsPrefix",
-        		lv_nsPrefix_3_0, 
+        		lv_nsPrefix_3_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?(	otherlv_4='=' 
+))?(	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getPackageCSAccess().getEqualsSignKeyword_3_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_3_1_0());
 	    }
 		lv_nsURI_5_0=ruleURI		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"nsURI",
-        		lv_nsURI_5_0, 
+        		lv_nsURI_5_0,
         		"org.eclipse.ocl.xtext.base.Base.URI");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?((	otherlv_6='{' 
+))?((	otherlv_6='{'
     {
     	newLeafNode(otherlv_6, grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_4_0_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0());
 	    }
 		lv_ownedAnnotations_7_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_7_0, 
+        		lv_ownedAnnotations_7_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3127,17 +3127,17 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_1_1_0());
 	    }
 		lv_ownedPackages_8_0=rulePackageCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPackages",
-        		lv_ownedPackages_8_0, 
+        		lv_ownedPackages_8_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.PackageCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3146,28 +3146,28 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_0_1_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_0_1_2_0());
 	    }
 		lv_ownedClasses_9_0=ruleClassCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedClasses",
-        		lv_ownedClasses_9_0, 
+        		lv_ownedClasses_9_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ClassCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_10='}' 
+))*	otherlv_10='}'
     {
     	newLeafNode(otherlv_10, grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_4_0_2());
     }
 )
-    |	otherlv_11=';' 
+    |	otherlv_11=';'
     {
     	newLeafNode(otherlv_11, grammarAccess.getPackageCSAccess().getSemicolonKeyword_4_1());
     }
@@ -3179,70 +3179,70 @@
 
 
 // Entry rule entryRuleParameterCS
-entryRuleParameterCS returns [EObject current=null] 
+entryRuleParameterCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getParameterCSRule()); }
-	 iv_ruleParameterCS=ruleParameterCS 
-	 { $current=$iv_ruleParameterCS.current; } 
-	 EOF 
+	 iv_ruleParameterCS=ruleParameterCS
+	 { $current=$iv_ruleParameterCS.current; }
+	 EOF
 ;
 
 // Rule ParameterCS
-ruleParameterCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleParameterCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getParameterCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1=':' 
+)(	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getParameterCSAccess().getColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getParameterCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?(	otherlv_3='{' 
+))?(	otherlv_3='{'
     {
     	newLeafNode(otherlv_3, grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_2_0());
     }
 (((
 (
-		lv_qualifiers_4_0=	'ordered' 
+		lv_qualifiers_4_0=	'ordered'
     {
         newLeafNode(lv_qualifiers_4_0, grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getParameterCSRule());
@@ -3254,11 +3254,11 @@
 )
     |(
 (
-		lv_qualifiers_5_0=	'!ordered' 
+		lv_qualifiers_5_0=	'!ordered'
     {
         newLeafNode(lv_qualifiers_5_0, grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getParameterCSRule());
@@ -3270,11 +3270,11 @@
 )
     |(
 (
-		lv_qualifiers_6_0=	'unique' 
+		lv_qualifiers_6_0=	'unique'
     {
         newLeafNode(lv_qualifiers_6_0, grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getParameterCSRule());
@@ -3286,11 +3286,11 @@
 )
     |(
 (
-		lv_qualifiers_7_0=	'!unique' 
+		lv_qualifiers_7_0=	'!unique'
     {
         newLeafNode(lv_qualifiers_7_0, grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getParameterCSRule());
@@ -3299,37 +3299,37 @@
 	    }
 
 )
-))(	otherlv_8=',' 
+))(	otherlv_8=','
     {
     	newLeafNode(otherlv_8, grammarAccess.getParameterCSAccess().getCommaKeyword_2_1_1());
     }
-)?)+	otherlv_9='}' 
+)?)+	otherlv_9='}'
     {
     	newLeafNode(otherlv_9, grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_2_2());
     }
-)?(	otherlv_10='{' 
+)?(	otherlv_10='{'
     {
     	newLeafNode(otherlv_10, grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_3_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_1_0());
 	    }
 		lv_ownedAnnotations_11_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getParameterCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_11_0, 
+        		lv_ownedAnnotations_11_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_12='}' 
+)*	otherlv_12='}'
     {
     	newLeafNode(otherlv_12, grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_3_2());
     }
@@ -3341,26 +3341,26 @@
 
 
 // Entry rule entryRuleReferenceCS
-entryRuleReferenceCS returns [EObject current=null] 
+entryRuleReferenceCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getReferenceCSRule()); }
-	 iv_ruleReferenceCS=ruleReferenceCS 
-	 { $current=$iv_ruleReferenceCS.current; } 
-	 EOF 
+	 iv_ruleReferenceCS=ruleReferenceCS
+	 { $current=$iv_ruleReferenceCS.current; }
+	 EOF
 ;
 
 // Rule ReferenceCS
-ruleReferenceCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleReferenceCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((((
 (
-		lv_qualifiers_0_0=	'static' 
+		lv_qualifiers_0_0=	'static'
     {
         newLeafNode(lv_qualifiers_0_0, grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3371,11 +3371,11 @@
 )
 )(
 (
-		lv_qualifiers_1_0=	'definition' 
+		lv_qualifiers_1_0=	'definition'
     {
         newLeafNode(lv_qualifiers_1_0, grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3387,11 +3387,11 @@
 )?)
     |((
 (
-		lv_qualifiers_2_0=	'definition' 
+		lv_qualifiers_2_0=	'definition'
     {
         newLeafNode(lv_qualifiers_2_0, grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3402,11 +3402,11 @@
 )
 )(
 (
-		lv_qualifiers_3_0=	'static' 
+		lv_qualifiers_3_0=	'static'
     {
         newLeafNode(lv_qualifiers_3_0, grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3415,73 +3415,73 @@
 	    }
 
 )
-)?))?	otherlv_4='property' 
+)?))?	otherlv_4='property'
     {
     	newLeafNode(otherlv_4, grammarAccess.getReferenceCSAccess().getPropertyKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getReferenceCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getReferenceCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
 	    }
 		lv_name_5_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getReferenceCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_5_0, 
+        		lv_name_5_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_6='#' 
+)(	otherlv_6='#'
     {
     	newLeafNode(otherlv_6, grammarAccess.getReferenceCSAccess().getNumberSignKeyword_3_0());
     }
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyCrossReference_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyCrossReference_3_1_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?(	otherlv_8=':' 
+))?(	otherlv_8=':'
     {
     	newLeafNode(otherlv_8, grammarAccess.getReferenceCSAccess().getColonKeyword_4_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_1_0());
 	    }
 		lv_ownedType_9_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getReferenceCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_9_0, 
+        		lv_ownedType_9_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?(	otherlv_10='=' 
+))?(	otherlv_10='='
     {
     	newLeafNode(otherlv_10, grammarAccess.getReferenceCSAccess().getEqualsSignKeyword_5_0());
     }
@@ -3489,31 +3489,31 @@
 (
 		lv_default_11_0=RULE_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_default_11_0, grammarAccess.getReferenceCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0()); 
+			newLeafNode(lv_default_11_0, grammarAccess.getReferenceCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"default",
-        		lv_default_11_0, 
+        		lv_default_11_0,
         		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
 	    }
 
 )
-))?(	otherlv_12='{' 
+))?(	otherlv_12='{'
     {
     	newLeafNode(otherlv_12, grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_6_0());
     }
 (((
 (
-		lv_qualifiers_13_0=	'composes' 
+		lv_qualifiers_13_0=	'composes'
     {
         newLeafNode(lv_qualifiers_13_0, grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3525,11 +3525,11 @@
 )
     |(
 (
-		lv_qualifiers_14_0=	'!composes' 
+		lv_qualifiers_14_0=	'!composes'
     {
         newLeafNode(lv_qualifiers_14_0, grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3541,11 +3541,11 @@
 )
     |(
 (
-		lv_qualifiers_15_0=	'derived' 
+		lv_qualifiers_15_0=	'derived'
     {
         newLeafNode(lv_qualifiers_15_0, grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3557,11 +3557,11 @@
 )
     |(
 (
-		lv_qualifiers_16_0=	'!derived' 
+		lv_qualifiers_16_0=	'!derived'
     {
         newLeafNode(lv_qualifiers_16_0, grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3573,11 +3573,11 @@
 )
     |(
 (
-		lv_qualifiers_17_0=	'ordered' 
+		lv_qualifiers_17_0=	'ordered'
     {
         newLeafNode(lv_qualifiers_17_0, grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3589,11 +3589,11 @@
 )
     |(
 (
-		lv_qualifiers_18_0=	'!ordered' 
+		lv_qualifiers_18_0=	'!ordered'
     {
         newLeafNode(lv_qualifiers_18_0, grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3605,11 +3605,11 @@
 )
     |(
 (
-		lv_qualifiers_19_0=	'readonly' 
+		lv_qualifiers_19_0=	'readonly'
     {
         newLeafNode(lv_qualifiers_19_0, grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3621,11 +3621,11 @@
 )
     |(
 (
-		lv_qualifiers_20_0=	'!readonly' 
+		lv_qualifiers_20_0=	'!readonly'
     {
         newLeafNode(lv_qualifiers_20_0, grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3637,11 +3637,11 @@
 )
     |(
 (
-		lv_qualifiers_21_0=	'resolve' 
+		lv_qualifiers_21_0=	'resolve'
     {
         newLeafNode(lv_qualifiers_21_0, grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3653,11 +3653,11 @@
 )
     |(
 (
-		lv_qualifiers_22_0=	'!resolve' 
+		lv_qualifiers_22_0=	'!resolve'
     {
         newLeafNode(lv_qualifiers_22_0, grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3669,11 +3669,11 @@
 )
     |(
 (
-		lv_qualifiers_23_0=	'transient' 
+		lv_qualifiers_23_0=	'transient'
     {
         newLeafNode(lv_qualifiers_23_0, grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3685,11 +3685,11 @@
 )
     |(
 (
-		lv_qualifiers_24_0=	'!transient' 
+		lv_qualifiers_24_0=	'!transient'
     {
         newLeafNode(lv_qualifiers_24_0, grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3701,11 +3701,11 @@
 )
     |(
 (
-		lv_qualifiers_25_0=	'unique' 
+		lv_qualifiers_25_0=	'unique'
     {
         newLeafNode(lv_qualifiers_25_0, grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3717,11 +3717,11 @@
 )
     |(
 (
-		lv_qualifiers_26_0=	'!unique' 
+		lv_qualifiers_26_0=	'!unique'
     {
         newLeafNode(lv_qualifiers_26_0, grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3733,11 +3733,11 @@
 )
     |(
 (
-		lv_qualifiers_27_0=	'unsettable' 
+		lv_qualifiers_27_0=	'unsettable'
     {
         newLeafNode(lv_qualifiers_27_0, grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3749,11 +3749,11 @@
 )
     |(
 (
-		lv_qualifiers_28_0=	'!unsettable' 
+		lv_qualifiers_28_0=	'!unsettable'
     {
         newLeafNode(lv_qualifiers_28_0, grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3765,11 +3765,11 @@
 )
     |(
 (
-		lv_qualifiers_29_0=	'volatile' 
+		lv_qualifiers_29_0=	'volatile'
     {
         newLeafNode(lv_qualifiers_29_0, grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3781,11 +3781,11 @@
 )
     |(
 (
-		lv_qualifiers_30_0=	'!volatile' 
+		lv_qualifiers_30_0=	'!volatile'
     {
         newLeafNode(lv_qualifiers_30_0, grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
@@ -3794,175 +3794,175 @@
 	    }
 
 )
-))(	otherlv_31=',' 
+))(	otherlv_31=','
     {
     	newLeafNode(otherlv_31, grammarAccess.getReferenceCSAccess().getCommaKeyword_6_1_1());
     }
-)?)+	otherlv_32='}' 
+)?)+	otherlv_32='}'
     {
     	newLeafNode(otherlv_32, grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_6_2());
     }
-)?((	otherlv_33='{' 
+)?((	otherlv_33='{'
     {
     	newLeafNode(otherlv_33, grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_7_0_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
 	    }
 		lv_ownedAnnotations_34_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getReferenceCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_34_0, 
+        		lv_ownedAnnotations_34_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 )
-    |(	otherlv_35='key' 
+    |(	otherlv_35='key'
     {
     	newLeafNode(otherlv_35, grammarAccess.getReferenceCSAccess().getKeyKeyword_7_0_1_1_0());
     }
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_1_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_37=',' 
+)(	otherlv_37=','
     {
     	newLeafNode(otherlv_37, grammarAccess.getReferenceCSAccess().getCommaKeyword_7_0_1_1_2_0());
     }
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getReferenceCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_2_1_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_39=';' 
+))*	otherlv_39=';'
     {
     	newLeafNode(otherlv_39, grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_1_3());
     }
 )
-    |(	otherlv_40='initial' 
+    |(	otherlv_40='initial'
     {
     	newLeafNode(otherlv_40, grammarAccess.getReferenceCSAccess().getInitialKeyword_7_0_1_2_0());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_2_1()); 
+    {
+        newCompositeNode(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_2_1());
     }
 ruleUnrestrictedName
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
-)?	otherlv_42=':' 
+)?	otherlv_42=':'
     {
     	newLeafNode(otherlv_42, grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_2_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_2_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_2_3_0());
 	    }
 		lv_ownedDefaultExpressions_43_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getReferenceCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDefaultExpressions",
-        		lv_ownedDefaultExpressions_43_0, 
+        		lv_ownedDefaultExpressions_43_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_44=';' 
+)?	otherlv_44=';'
     {
     	newLeafNode(otherlv_44, grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_2_4());
     }
 )
-    |(	otherlv_45='derivation' 
+    |(	otherlv_45='derivation'
     {
     	newLeafNode(otherlv_45, grammarAccess.getReferenceCSAccess().getDerivationKeyword_7_0_1_3_0());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_3_1()); 
+    {
+        newCompositeNode(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_3_1());
     }
 ruleUnrestrictedName
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
-)?	otherlv_47=':' 
+)?	otherlv_47=':'
     {
     	newLeafNode(otherlv_47, grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_3_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_3_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_3_3_0());
 	    }
 		lv_ownedDefaultExpressions_48_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getReferenceCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDefaultExpressions",
-        		lv_ownedDefaultExpressions_48_0, 
+        		lv_ownedDefaultExpressions_48_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_49=';' 
+)?	otherlv_49=';'
     {
     	newLeafNode(otherlv_49, grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_3_4());
     }
-))*	otherlv_50='}' 
+))*	otherlv_50='}'
     {
     	newLeafNode(otherlv_50, grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_7_0_2());
     }
 )
-    |	otherlv_51=';' 
+    |	otherlv_51=';'
     {
     	newLeafNode(otherlv_51, grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_1());
     }
@@ -3974,32 +3974,32 @@
 
 
 // Entry rule entryRuleSpecificationCS
-entryRuleSpecificationCS returns [EObject current=null] 
+entryRuleSpecificationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getSpecificationCSRule()); }
-	 iv_ruleSpecificationCS=ruleSpecificationCS 
-	 { $current=$iv_ruleSpecificationCS.current; } 
-	 EOF 
+	 iv_ruleSpecificationCS=ruleSpecificationCS
+	 { $current=$iv_ruleSpecificationCS.current; }
+	 EOF
 ;
 
 // Rule SpecificationCS
-ruleSpecificationCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleSpecificationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0());
 	    }
 		lv_ownedExpression_0_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getSpecificationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_0_0, 
+        		lv_ownedExpression_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4010,16 +4010,16 @@
 (
 		lv_exprString_1_0=RULE_UNQUOTED_STRING
 		{
-			newLeafNode(lv_exprString_1_0, grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0()); 
+			newLeafNode(lv_exprString_1_0, grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getSpecificationCSRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"exprString",
-        		lv_exprString_1_0, 
+        		lv_exprString_1_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UNQUOTED_STRING");
 	    }
 
@@ -4032,26 +4032,26 @@
 
 
 // Entry rule entryRuleStructuredClassCS
-entryRuleStructuredClassCS returns [EObject current=null] 
+entryRuleStructuredClassCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getStructuredClassCSRule()); }
-	 iv_ruleStructuredClassCS=ruleStructuredClassCS 
-	 { $current=$iv_ruleStructuredClassCS.current; } 
-	 EOF 
+	 iv_ruleStructuredClassCS=ruleStructuredClassCS
+	 { $current=$iv_ruleStructuredClassCS.current; }
+	 EOF
 ;
 
 // Rule StructuredClassCS
-ruleStructuredClassCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleStructuredClassCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_isAbstract_0_0=	'abstract' 
+		lv_isAbstract_0_0=	'abstract'
     {
         newLeafNode(lv_isAbstract_0_0, grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getStructuredClassCSRule());
@@ -4060,23 +4060,23 @@
 	    }
 
 )
-)?	otherlv_1='class' 
+)?	otherlv_1='class'
     {
     	newLeafNode(otherlv_1, grammarAccess.getStructuredClassCSAccess().getClassKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
 	    }
 		lv_name_2_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_0, 
+        		lv_name_2_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4084,67 +4084,67 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
 	    }
 		lv_ownedSignature_3_0=ruleTemplateSignatureCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSignature",
-        		lv_ownedSignature_3_0, 
+        		lv_ownedSignature_3_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TemplateSignatureCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?(	otherlv_4='extends' 
+)?(	otherlv_4='extends'
     {
     	newLeafNode(otherlv_4, grammarAccess.getStructuredClassCSAccess().getExtendsKeyword_4_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_1_0());
 	    }
 		lv_ownedSuperTypes_5_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSuperTypes",
-        		lv_ownedSuperTypes_5_0, 
+        		lv_ownedSuperTypes_5_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_6=',' 
+)(	otherlv_6=','
     {
     	newLeafNode(otherlv_6, grammarAccess.getStructuredClassCSAccess().getCommaKeyword_4_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_2_1_0());
 	    }
 		lv_ownedSuperTypes_7_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSuperTypes",
-        		lv_ownedSuperTypes_7_0, 
+        		lv_ownedSuperTypes_7_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?(	otherlv_8=':' 
+))*)?(	otherlv_8=':'
     {
     	newLeafNode(otherlv_8, grammarAccess.getStructuredClassCSAccess().getColonKeyword_5_0());
     }
@@ -4152,31 +4152,31 @@
 (
 		lv_instanceClassName_9_0=RULE_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_instanceClassName_9_0, grammarAccess.getStructuredClassCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0()); 
+			newLeafNode(lv_instanceClassName_9_0, grammarAccess.getStructuredClassCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getStructuredClassCSRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"instanceClassName",
-        		lv_instanceClassName_9_0, 
+        		lv_instanceClassName_9_0,
         		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
 	    }
 
 )
-))?(	otherlv_10='{' 
+))?(	otherlv_10='{'
     {
     	newLeafNode(otherlv_10, grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_6_0());
     }
 (
 (
-		lv_isInterface_11_0=	'interface' 
+		lv_isInterface_11_0=	'interface'
     {
         newLeafNode(lv_isInterface_11_0, grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getStructuredClassCSRule());
@@ -4185,27 +4185,27 @@
 	    }
 
 )
-)?	otherlv_12='}' 
+)?	otherlv_12='}'
     {
     	newLeafNode(otherlv_12, grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_6_2());
     }
-)?((	otherlv_13='{' 
+)?((	otherlv_13='{'
     {
     	newLeafNode(otherlv_13, grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_7_0_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
 	    }
 		lv_ownedAnnotations_14_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_14_0, 
+        		lv_ownedAnnotations_14_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4214,17 +4214,17 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_1_1_0());
 	    }
 		lv_ownedOperations_15_0=ruleOperationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedOperations",
-        		lv_ownedOperations_15_0, 
+        		lv_ownedOperations_15_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.OperationCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4233,17 +4233,17 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesStructuralFeatureCSParserRuleCall_7_0_1_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesStructuralFeatureCSParserRuleCall_7_0_1_2_0());
 	    }
 		lv_ownedProperties_16_0=ruleStructuralFeatureCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedProperties",
-        		lv_ownedProperties_16_0, 
+        		lv_ownedProperties_16_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.StructuralFeatureCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4252,28 +4252,28 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_7_0_1_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_7_0_1_3_0());
 	    }
 		lv_ownedConstraints_17_0=ruleInvariantConstraintCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedConstraints",
-        		lv_ownedConstraints_17_0, 
+        		lv_ownedConstraints_17_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.InvariantConstraintCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_18='}' 
+))*	otherlv_18='}'
     {
     	newLeafNode(otherlv_18, grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_7_0_2());
     }
 )
-    |	otherlv_19=';' 
+    |	otherlv_19=';'
     {
     	newLeafNode(otherlv_19, grammarAccess.getStructuredClassCSAccess().getSemicolonKeyword_7_1());
     }
@@ -4285,42 +4285,42 @@
 
 
 // Entry rule entryRuleStructuralFeatureCS
-entryRuleStructuralFeatureCS returns [EObject current=null] 
+entryRuleStructuralFeatureCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getStructuralFeatureCSRule()); }
-	 iv_ruleStructuralFeatureCS=ruleStructuralFeatureCS 
-	 { $current=$iv_ruleStructuralFeatureCS.current; } 
-	 EOF 
+	 iv_ruleStructuralFeatureCS=ruleStructuralFeatureCS
+	 { $current=$iv_ruleStructuralFeatureCS.current; }
+	 EOF
 ;
 
 // Rule StructuralFeatureCS
-ruleStructuralFeatureCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleStructuralFeatureCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getStructuralFeatureCSAccess().getAttributeCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getStructuralFeatureCSAccess().getAttributeCSParserRuleCall_0());
     }
     this_AttributeCS_0=ruleAttributeCS
-    { 
-        $current = $this_AttributeCS_0.current; 
+    {
+        $current = $this_AttributeCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getStructuralFeatureCSAccess().getReferenceCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getStructuralFeatureCSAccess().getReferenceCSParserRuleCall_1());
     }
     this_ReferenceCS_1=ruleReferenceCS
-    { 
-        $current = $this_ReferenceCS_1.current; 
+    {
+        $current = $this_ReferenceCS_1.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -4331,82 +4331,82 @@
 
 
 // Entry rule entryRuleSysMLCS
-entryRuleSysMLCS returns [EObject current=null] 
+entryRuleSysMLCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getSysMLCSRule()); }
-	 iv_ruleSysMLCS=ruleSysMLCS 
-	 { $current=$iv_ruleSysMLCS.current; } 
-	 EOF 
+	 iv_ruleSysMLCS=ruleSysMLCS
+	 { $current=$iv_ruleSysMLCS.current; }
+	 EOF
 ;
 
 // Rule SysMLCS
-ruleSysMLCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleSysMLCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getSysMLCSAccess().getSysMLCSAction_0(),
             $current);
     }
-)	otherlv_1='sysml' 
+)	otherlv_1='sysml'
     {
     	newLeafNode(otherlv_1, grammarAccess.getSysMLCSAccess().getSysmlKeyword_1());
     }
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_0_0_0());
 	    }
 		lv_ownedDetails_2_0=ruleDetailCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getSysMLCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDetails",
-        		lv_ownedDetails_2_0, 
+        		lv_ownedDetails_2_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=';' 
+)	otherlv_3=';'
     {
     	newLeafNode(otherlv_3, grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_0_1());
     }
 )
-    |(	otherlv_4='{' 
+    |(	otherlv_4='{'
     {
     	newLeafNode(otherlv_4, grammarAccess.getSysMLCSAccess().getLeftCurlyBracketKeyword_2_1_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_1_0_0());
 	    }
 		lv_ownedDetails_5_0=ruleDetailCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getSysMLCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDetails",
-        		lv_ownedDetails_5_0, 
+        		lv_ownedDetails_5_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_6=';' 
+)	otherlv_6=';'
     {
     	newLeafNode(otherlv_6, grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_1_1_1());
     }
-)*	otherlv_7='}' 
+)*	otherlv_7='}'
     {
     	newLeafNode(otherlv_7, grammarAccess.getSysMLCSAccess().getRightCurlyBracketKeyword_2_1_2());
     }
@@ -4420,44 +4420,44 @@
 
 
 // Entry rule entryRuleTypedMultiplicityRefCS
-entryRuleTypedMultiplicityRefCS returns [EObject current=null] 
+entryRuleTypedMultiplicityRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypedMultiplicityRefCSRule()); }
-	 iv_ruleTypedMultiplicityRefCS=ruleTypedMultiplicityRefCS 
-	 { $current=$iv_ruleTypedMultiplicityRefCS.current; } 
-	 EOF 
+	 iv_ruleTypedMultiplicityRefCS=ruleTypedMultiplicityRefCS
+	 { $current=$iv_ruleTypedMultiplicityRefCS.current; }
+	 EOF
 ;
 
 // Rule TypedMultiplicityRefCS
-ruleTypedMultiplicityRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypedMultiplicityRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedRefCSParserRuleCall_0());
     }
     this_TypedRefCS_0=ruleTypedRefCS
-    { 
-        $current = $this_TypedRefCS_0.current; 
+    {
+        $current = $this_TypedRefCS_0.current;
         afterParserOrEnumRuleCall();
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
 	    }
 		lv_ownedMultiplicity_1_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedMultiplicityRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_1_0, 
+        		lv_ownedMultiplicity_1_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4471,113 +4471,113 @@
 
 
 // Entry rule entryRuleTemplateSignatureCS
-entryRuleTemplateSignatureCS returns [EObject current=null] 
+entryRuleTemplateSignatureCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTemplateSignatureCSRule()); }
-	 iv_ruleTemplateSignatureCS=ruleTemplateSignatureCS 
-	 { $current=$iv_ruleTemplateSignatureCS.current; } 
-	 EOF 
+	 iv_ruleTemplateSignatureCS=ruleTemplateSignatureCS
+	 { $current=$iv_ruleTemplateSignatureCS.current; }
+	 EOF
 ;
 
 // Rule TemplateSignatureCS
-ruleTemplateSignatureCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTemplateSignatureCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-((	otherlv_0='(' 
+((	otherlv_0='('
     {
     	newLeafNode(otherlv_0, grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0());
 	    }
 		lv_ownedParameters_1_0=ruleTypeParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_1_0, 
+        		lv_ownedParameters_1_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=',' 
+)(	otherlv_2=','
     {
     	newLeafNode(otherlv_2, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0());
 	    }
 		lv_ownedParameters_3_0=ruleTypeParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_3_0, 
+        		lv_ownedParameters_3_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_4=')' 
+))*	otherlv_4=')'
     {
     	newLeafNode(otherlv_4, grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3());
     }
 )
-    |(	otherlv_5='<' 
+    |(	otherlv_5='<'
     {
     	newLeafNode(otherlv_5, grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedParameters_6_0=ruleTypeParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_6_0, 
+        		lv_ownedParameters_6_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_7=',' 
+)(	otherlv_7=','
     {
     	newLeafNode(otherlv_7, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0());
 	    }
 		lv_ownedParameters_8_0=ruleTypeParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_8_0, 
+        		lv_ownedParameters_8_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_9='>' 
+))*	otherlv_9='>'
     {
     	newLeafNode(otherlv_9, grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3());
     }
@@ -4589,42 +4589,42 @@
 
 
 // Entry rule entryRuleTypedRefCS
-entryRuleTypedRefCS returns [EObject current=null] 
+entryRuleTypedRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypedRefCSRule()); }
-	 iv_ruleTypedRefCS=ruleTypedRefCS 
-	 { $current=$iv_ruleTypedRefCS.current; } 
-	 EOF 
+	 iv_ruleTypedRefCS=ruleTypedRefCS
+	 { $current=$iv_ruleTypedRefCS.current; }
+	 EOF
 ;
 
 // Rule TypedRefCS
-ruleTypedRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypedRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0());
     }
     this_TypeLiteralCS_0=ruleTypeLiteralCS
-    { 
-        $current = $this_TypeLiteralCS_0.current; 
+    {
+        $current = $this_TypeLiteralCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1());
     }
     this_TypedTypeRefCS_1=ruleTypedTypeRefCS
-    { 
-        $current = $this_TypedTypeRefCS_1.current; 
+    {
+        $current = $this_TypedTypeRefCS_1.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -4635,87 +4635,87 @@
 
 
 // Entry rule entryRuleTypedTypeRefCS
-entryRuleTypedTypeRefCS returns [EObject current=null] 
+entryRuleTypedTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypedTypeRefCSRule()); }
-	 iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS 
-	 { $current=$iv_ruleTypedTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS
+	 { $current=$iv_ruleTypedTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule TypedTypeRefCS
-ruleTypedTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypedTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathName_0_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_0_0, 
+        		lv_ownedPathName_0_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)((	otherlv_1='(' 
+)((	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_0_1_0());
 	    }
 		lv_ownedBinding_2_0=ruleTemplateBindingCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedBinding",
-        		lv_ownedBinding_2_0, 
+        		lv_ownedBinding_2_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateBindingCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=')' 
+)	otherlv_3=')'
     {
     	newLeafNode(otherlv_3, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_0_2());
     }
 )
-    |(	otherlv_4='<' 
+    |(	otherlv_4='<'
     {
     	newLeafNode(otherlv_4, grammarAccess.getTypedTypeRefCSAccess().getLessThanSignKeyword_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0());
 	    }
 		lv_ownedBinding_5_0=ruleTemplateBindingCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedBinding",
-        		lv_ownedBinding_5_0, 
+        		lv_ownedBinding_5_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateBindingCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_6='>' 
+)	otherlv_6='>'
     {
     	newLeafNode(otherlv_6, grammarAccess.getTypedTypeRefCSAccess().getGreaterThanSignKeyword_1_1_2());
     }
@@ -4727,71 +4727,71 @@
 
 
 // Entry rule entryRuleUnrestrictedName
-entryRuleUnrestrictedName returns [String current=null] 
+entryRuleUnrestrictedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnrestrictedNameRule()); } 
-	 iv_ruleUnrestrictedName=ruleUnrestrictedName 
-	 { $current=$iv_ruleUnrestrictedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnrestrictedNameRule()); }
+	 iv_ruleUnrestrictedName=ruleUnrestrictedName
+	 { $current=$iv_ruleUnrestrictedName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnrestrictedName
-ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEnumerationLiteralNameParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEnumerationLiteralNameParserRuleCall_0());
     }
     this_EnumerationLiteralName_0=ruleEnumerationLiteralName    {
 		$current.merge(this_EnumerationLiteralName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-	kw='annotation' 
+	kw='annotation'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getAnnotationKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getAnnotationKeyword_1());
     }
 
     |
-	kw='documentation' 
+	kw='documentation'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getDocumentationKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getDocumentationKeyword_2());
     }
 
     |
-	kw='invariant' 
+	kw='invariant'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getInvariantKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getInvariantKeyword_3());
     }
 
     |
-	kw='literal' 
+	kw='literal'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getLiteralKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getLiteralKeyword_4());
     }
 
     |
-	kw='serializable' 
+	kw='serializable'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getSerializableKeyword_5()); 
+        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getSerializableKeyword_5());
     }
 
     |
-	kw='sysml' 
+	kw='sysml'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getSysmlKeyword_6()); 
+        newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getSysmlKeyword_6());
     }
 )
     ;
@@ -4805,31 +4805,31 @@
 
 
 // Entry rule entryRuleEssentialOCLUnaryOperatorName
-entryRuleEssentialOCLUnaryOperatorName returns [String current=null] 
+entryRuleEssentialOCLUnaryOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); } 
-	 iv_ruleEssentialOCLUnaryOperatorName=ruleEssentialOCLUnaryOperatorName 
-	 { $current=$iv_ruleEssentialOCLUnaryOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); }
+	 iv_ruleEssentialOCLUnaryOperatorName=ruleEssentialOCLUnaryOperatorName
+	 { $current=$iv_ruleEssentialOCLUnaryOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnaryOperatorName
-ruleEssentialOCLUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='-' 
+	kw='-'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
     }
 
     |
-	kw='not' 
+	kw='not'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
     }
 )
     ;
@@ -4839,115 +4839,115 @@
 
 
 // Entry rule entryRuleEssentialOCLInfixOperatorName
-entryRuleEssentialOCLInfixOperatorName returns [String current=null] 
+entryRuleEssentialOCLInfixOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule()); } 
-	 iv_ruleEssentialOCLInfixOperatorName=ruleEssentialOCLInfixOperatorName 
-	 { $current=$iv_ruleEssentialOCLInfixOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule()); }
+	 iv_ruleEssentialOCLInfixOperatorName=ruleEssentialOCLInfixOperatorName
+	 { $current=$iv_ruleEssentialOCLInfixOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLInfixOperatorName
-ruleEssentialOCLInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='*' 
+	kw='*'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
     }
 
     |
-	kw='/' 
+	kw='/'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
     }
 
     |
-	kw='+' 
+	kw='+'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
     }
 
     |
-	kw='-' 
+	kw='-'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
     }
 
     |
-	kw='>' 
+	kw='>'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
     }
 
     |
-	kw='<' 
+	kw='<'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
     }
 
     |
-	kw='>=' 
+	kw='>='
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
     }
 
     |
-	kw='<=' 
+	kw='<='
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
     }
 
     |
-	kw='=' 
+	kw='='
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
     }
 
     |
-	kw='<>' 
+	kw='<>'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
     }
 
     |
-	kw='and' 
+	kw='and'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
     }
 
     |
-	kw='or' 
+	kw='or'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
     }
 
     |
-	kw='xor' 
+	kw='xor'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
     }
 
     |
-	kw='implies' 
+	kw='implies'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
     }
 )
     ;
@@ -4957,45 +4957,45 @@
 
 
 // Entry rule entryRuleEssentialOCLNavigationOperatorName
-entryRuleEssentialOCLNavigationOperatorName returns [String current=null] 
+entryRuleEssentialOCLNavigationOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); } 
-	 iv_ruleEssentialOCLNavigationOperatorName=ruleEssentialOCLNavigationOperatorName 
-	 { $current=$iv_ruleEssentialOCLNavigationOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); }
+	 iv_ruleEssentialOCLNavigationOperatorName=ruleEssentialOCLNavigationOperatorName
+	 { $current=$iv_ruleEssentialOCLNavigationOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLNavigationOperatorName
-ruleEssentialOCLNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='.' 
+	kw='.'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
     }
 
     |
-	kw='->' 
+	kw='->'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
     }
 
     |
-	kw='?.' 
+	kw='?.'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
     }
 
     |
-	kw='?->' 
+	kw='?->'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
     }
 )
     ;
@@ -5005,40 +5005,40 @@
 
 
 // Entry rule entryRuleBinaryOperatorName
-entryRuleBinaryOperatorName returns [String current=null] 
+entryRuleBinaryOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getBinaryOperatorNameRule()); } 
-	 iv_ruleBinaryOperatorName=ruleBinaryOperatorName 
-	 { $current=$iv_ruleBinaryOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getBinaryOperatorNameRule()); }
+	 iv_ruleBinaryOperatorName=ruleBinaryOperatorName
+	 { $current=$iv_ruleBinaryOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule BinaryOperatorName
-ruleBinaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleBinaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
     }
     this_InfixOperatorName_0=ruleInfixOperatorName    {
 		$current.merge(this_InfixOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
     }
     this_NavigationOperatorName_1=ruleNavigationOperatorName    {
 		$current.merge(this_NavigationOperatorName_1);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 )
@@ -5049,28 +5049,28 @@
 
 
 // Entry rule entryRuleInfixOperatorName
-entryRuleInfixOperatorName returns [String current=null] 
+entryRuleInfixOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getInfixOperatorNameRule()); } 
-	 iv_ruleInfixOperatorName=ruleInfixOperatorName 
-	 { $current=$iv_ruleInfixOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getInfixOperatorNameRule()); }
+	 iv_ruleInfixOperatorName=ruleInfixOperatorName
+	 { $current=$iv_ruleInfixOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule InfixOperatorName
-ruleInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
     }
     this_EssentialOCLInfixOperatorName_0=ruleEssentialOCLInfixOperatorName    {
 		$current.merge(this_EssentialOCLInfixOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -5081,28 +5081,28 @@
 
 
 // Entry rule entryRuleNavigationOperatorName
-entryRuleNavigationOperatorName returns [String current=null] 
+entryRuleNavigationOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getNavigationOperatorNameRule()); } 
-	 iv_ruleNavigationOperatorName=ruleNavigationOperatorName 
-	 { $current=$iv_ruleNavigationOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getNavigationOperatorNameRule()); }
+	 iv_ruleNavigationOperatorName=ruleNavigationOperatorName
+	 { $current=$iv_ruleNavigationOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule NavigationOperatorName
-ruleNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall());
     }
     this_EssentialOCLNavigationOperatorName_0=ruleEssentialOCLNavigationOperatorName    {
 		$current.merge(this_EssentialOCLNavigationOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -5113,28 +5113,28 @@
 
 
 // Entry rule entryRuleUnaryOperatorName
-entryRuleUnaryOperatorName returns [String current=null] 
+entryRuleUnaryOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnaryOperatorNameRule()); } 
-	 iv_ruleUnaryOperatorName=ruleUnaryOperatorName 
-	 { $current=$iv_ruleUnaryOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnaryOperatorNameRule()); }
+	 iv_ruleUnaryOperatorName=ruleUnaryOperatorName
+	 { $current=$iv_ruleUnaryOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnaryOperatorName
-ruleUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
     }
     this_EssentialOCLUnaryOperatorName_0=ruleEssentialOCLUnaryOperatorName    {
 		$current.merge(this_EssentialOCLUnaryOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -5145,28 +5145,28 @@
 
 
 // Entry rule entryRuleEssentialOCLUnrestrictedName
-entryRuleEssentialOCLUnrestrictedName returns [String current=null] 
+entryRuleEssentialOCLUnrestrictedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule()); } 
-	 iv_ruleEssentialOCLUnrestrictedName=ruleEssentialOCLUnrestrictedName 
-	 { $current=$iv_ruleEssentialOCLUnrestrictedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule()); }
+	 iv_ruleEssentialOCLUnrestrictedName=ruleEssentialOCLUnrestrictedName
+	 { $current=$iv_ruleEssentialOCLUnrestrictedName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnrestrictedName
-ruleEssentialOCLUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
     }
     this_Identifier_0=ruleIdentifier    {
 		$current.merge(this_Identifier_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -5177,67 +5177,67 @@
 
 
 // Entry rule entryRuleEssentialOCLUnreservedName
-entryRuleEssentialOCLUnreservedName returns [String current=null] 
+entryRuleEssentialOCLUnreservedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule()); } 
-	 iv_ruleEssentialOCLUnreservedName=ruleEssentialOCLUnreservedName 
-	 { $current=$iv_ruleEssentialOCLUnreservedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule()); }
+	 iv_ruleEssentialOCLUnreservedName=ruleEssentialOCLUnreservedName
+	 { $current=$iv_ruleEssentialOCLUnreservedName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnreservedName
-ruleEssentialOCLUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
     }
     this_UnrestrictedName_0=ruleUnrestrictedName    {
 		$current.merge(this_UnrestrictedName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
     }
     this_CollectionTypeIdentifier_1=ruleCollectionTypeIdentifier    {
 		$current.merge(this_CollectionTypeIdentifier_1);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
     }
     this_PrimitiveTypeIdentifier_2=rulePrimitiveTypeIdentifier    {
 		$current.merge(this_PrimitiveTypeIdentifier_2);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-	kw='Map' 
+	kw='Map'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
     }
 
     |
-	kw='Tuple' 
+	kw='Tuple'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
     }
 )
     ;
@@ -5247,28 +5247,28 @@
 
 
 // Entry rule entryRuleUnreservedName
-entryRuleUnreservedName returns [String current=null] 
+entryRuleUnreservedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnreservedNameRule()); } 
-	 iv_ruleUnreservedName=ruleUnreservedName 
-	 { $current=$iv_ruleUnreservedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnreservedNameRule()); }
+	 iv_ruleUnreservedName=ruleUnreservedName
+	 { $current=$iv_ruleUnreservedName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnreservedName
-ruleUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
     }
     this_EssentialOCLUnreservedName_0=ruleEssentialOCLUnreservedName    {
 		$current.merge(this_EssentialOCLUnreservedName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -5279,54 +5279,54 @@
 
 
 // Entry rule entryRuleURIPathNameCS
-entryRuleURIPathNameCS returns [EObject current=null] 
+entryRuleURIPathNameCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getURIPathNameCSRule()); }
-	 iv_ruleURIPathNameCS=ruleURIPathNameCS 
-	 { $current=$iv_ruleURIPathNameCS.current; } 
-	 EOF 
+	 iv_ruleURIPathNameCS=ruleURIPathNameCS
+	 { $current=$iv_ruleURIPathNameCS.current; }
+	 EOF
 ;
 
 // Rule URIPathNameCS
-ruleURIPathNameCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleURIPathNameCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathElements_0_0=ruleURIFirstPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getURIPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_0_0, 
+        		lv_ownedPathElements_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIFirstPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='::' 
+)(	otherlv_1='::'
     {
     	newLeafNode(otherlv_1, grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedPathElements_2_0=ruleNextPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getURIPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_2_0, 
+        		lv_ownedPathElements_2_0,
         		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5340,41 +5340,41 @@
 
 
 // Entry rule entryRuleURIFirstPathElementCS
-entryRuleURIFirstPathElementCS returns [EObject current=null] 
+entryRuleURIFirstPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getURIFirstPathElementCSRule()); }
-	 iv_ruleURIFirstPathElementCS=ruleURIFirstPathElementCS 
-	 { $current=$iv_ruleURIFirstPathElementCS.current; } 
-	 EOF 
+	 iv_ruleURIFirstPathElementCS=ruleURIFirstPathElementCS
+	 { $current=$iv_ruleURIFirstPathElementCS.current; }
+	 EOF
 ;
 
 // Rule URIFirstPathElementCS
-ruleURIFirstPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleURIFirstPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 )
     |((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
@@ -5383,18 +5383,18 @@
     }
 )(
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
 	    }
-		ruleURI		{ 
+		ruleURI		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -5407,73 +5407,73 @@
 
 
 // Entry rule entryRulePrimitiveTypeIdentifier
-entryRulePrimitiveTypeIdentifier returns [String current=null] 
+entryRulePrimitiveTypeIdentifier returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule()); } 
-	 iv_rulePrimitiveTypeIdentifier=rulePrimitiveTypeIdentifier 
-	 { $current=$iv_rulePrimitiveTypeIdentifier.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule()); }
+	 iv_rulePrimitiveTypeIdentifier=rulePrimitiveTypeIdentifier
+	 { $current=$iv_rulePrimitiveTypeIdentifier.current.getText(); }
+	 EOF
 ;
 
 // Rule PrimitiveTypeIdentifier
-rulePrimitiveTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+rulePrimitiveTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='Boolean' 
+	kw='Boolean'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
     }
 
     |
-	kw='Integer' 
+	kw='Integer'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
     }
 
     |
-	kw='Real' 
+	kw='Real'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
     }
 
     |
-	kw='String' 
+	kw='String'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
     }
 
     |
-	kw='UnlimitedNatural' 
+	kw='UnlimitedNatural'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
     }
 
     |
-	kw='OclAny' 
+	kw='OclAny'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
     }
 
     |
-	kw='OclInvalid' 
+	kw='OclInvalid'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
     }
 
     |
-	kw='OclVoid' 
+	kw='OclVoid'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
     }
 )
     ;
@@ -5483,32 +5483,32 @@
 
 
 // Entry rule entryRulePrimitiveTypeCS
-entryRulePrimitiveTypeCS returns [EObject current=null] 
+entryRulePrimitiveTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrimitiveTypeCSRule()); }
-	 iv_rulePrimitiveTypeCS=rulePrimitiveTypeCS 
-	 { $current=$iv_rulePrimitiveTypeCS.current; } 
-	 EOF 
+	 iv_rulePrimitiveTypeCS=rulePrimitiveTypeCS
+	 { $current=$iv_rulePrimitiveTypeCS.current; }
+	 EOF
 ;
 
 // Rule PrimitiveTypeCS
-rulePrimitiveTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrimitiveTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
 	    }
 		lv_name_0_0=rulePrimitiveTypeIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrimitiveTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrimitiveTypeIdentifier");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5522,52 +5522,52 @@
 
 
 // Entry rule entryRuleCollectionTypeIdentifier
-entryRuleCollectionTypeIdentifier returns [String current=null] 
+entryRuleCollectionTypeIdentifier returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule()); } 
-	 iv_ruleCollectionTypeIdentifier=ruleCollectionTypeIdentifier 
-	 { $current=$iv_ruleCollectionTypeIdentifier.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule()); }
+	 iv_ruleCollectionTypeIdentifier=ruleCollectionTypeIdentifier
+	 { $current=$iv_ruleCollectionTypeIdentifier.current.getText(); }
+	 EOF
 ;
 
 // Rule CollectionTypeIdentifier
-ruleCollectionTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleCollectionTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='Set' 
+	kw='Set'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
     }
 
     |
-	kw='Bag' 
+	kw='Bag'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
     }
 
     |
-	kw='Sequence' 
+	kw='Sequence'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
     }
 
     |
-	kw='Collection' 
+	kw='Collection'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
     }
 
     |
-	kw='OrderedSet' 
+	kw='OrderedSet'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
     }
 )
     ;
@@ -5577,60 +5577,60 @@
 
 
 // Entry rule entryRuleCollectionTypeCS
-entryRuleCollectionTypeCS returns [EObject current=null] 
+entryRuleCollectionTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionTypeCSRule()); }
-	 iv_ruleCollectionTypeCS=ruleCollectionTypeCS 
-	 { $current=$iv_ruleCollectionTypeCS.current; } 
-	 EOF 
+	 iv_ruleCollectionTypeCS=ruleCollectionTypeCS
+	 { $current=$iv_ruleCollectionTypeCS.current; }
+	 EOF
 ;
 
 // Rule CollectionTypeCS
-ruleCollectionTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleCollectionTypeIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeIdentifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=')' 
+)	otherlv_3=')'
     {
     	newLeafNode(otherlv_3, grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
     }
@@ -5642,26 +5642,26 @@
 
 
 // Entry rule entryRuleMapTypeCS
-entryRuleMapTypeCS returns [EObject current=null] 
+entryRuleMapTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMapTypeCSRule()); }
-	 iv_ruleMapTypeCS=ruleMapTypeCS 
-	 { $current=$iv_ruleMapTypeCS.current; } 
-	 EOF 
+	 iv_ruleMapTypeCS=ruleMapTypeCS
+	 { $current=$iv_ruleMapTypeCS.current; }
+	 EOF
 ;
 
 // Rule MapTypeCS
-ruleMapTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMapTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_name_0_0=	'Map' 
+		lv_name_0_0=	'Map'
     {
         newLeafNode(lv_name_0_0, grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMapTypeCSRule());
@@ -5670,51 +5670,51 @@
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedKeyType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedKeyType",
-        		lv_ownedKeyType_2_0, 
+        		lv_ownedKeyType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=',' 
+)	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
 	    }
 		lv_ownedValueType_4_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedValueType",
-        		lv_ownedValueType_4_0, 
+        		lv_ownedValueType_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_5=')' 
+)	otherlv_5=')'
     {
     	newLeafNode(otherlv_5, grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
     }
@@ -5726,26 +5726,26 @@
 
 
 // Entry rule entryRuleTupleTypeCS
-entryRuleTupleTypeCS returns [EObject current=null] 
+entryRuleTupleTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTupleTypeCSRule()); }
-	 iv_ruleTupleTypeCS=ruleTupleTypeCS 
-	 { $current=$iv_ruleTupleTypeCS.current; } 
-	 EOF 
+	 iv_ruleTupleTypeCS=ruleTupleTypeCS
+	 { $current=$iv_ruleTupleTypeCS.current; }
+	 EOF
 ;
 
 // Rule TupleTypeCS
-ruleTupleTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTupleTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_name_0_0=	'Tuple' 
+		lv_name_0_0=	'Tuple'
     {
         newLeafNode(lv_name_0_0, grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getTupleTypeCSRule());
@@ -5754,51 +5754,51 @@
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
 	    }
 		lv_ownedParts_2_0=ruleTuplePartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleTuplePartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_5=')' 
+))*)?	otherlv_5=')'
     {
     	newLeafNode(otherlv_5, grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
     }
@@ -5810,54 +5810,54 @@
 
 
 // Entry rule entryRuleTuplePartCS
-entryRuleTuplePartCS returns [EObject current=null] 
+entryRuleTuplePartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTuplePartCSRule()); }
-	 iv_ruleTuplePartCS=ruleTuplePartCS 
-	 { $current=$iv_ruleTuplePartCS.current; } 
-	 EOF 
+	 iv_ruleTuplePartCS=ruleTuplePartCS
+	 { $current=$iv_ruleTuplePartCS.current; }
+	 EOF
 ;
 
 // Rule TuplePartCS
-ruleTuplePartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTuplePartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1=':' 
+)	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5871,82 +5871,82 @@
 
 
 // Entry rule entryRuleCollectionLiteralExpCS
-entryRuleCollectionLiteralExpCS returns [EObject current=null] 
+entryRuleCollectionLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionLiteralExpCSRule()); }
-	 iv_ruleCollectionLiteralExpCS=ruleCollectionLiteralExpCS 
-	 { $current=$iv_ruleCollectionLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleCollectionLiteralExpCS=ruleCollectionLiteralExpCS
+	 { $current=$iv_ruleCollectionLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule CollectionLiteralExpCS
-ruleCollectionLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
 	    }
 		lv_ownedType_0_0=ruleCollectionTypeCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedParts_2_0=ruleCollectionLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleCollectionLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_5='}' 
+))*)?	otherlv_5='}'
     {
     	newLeafNode(otherlv_5, grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -5958,54 +5958,54 @@
 
 
 // Entry rule entryRuleCollectionLiteralPartCS
-entryRuleCollectionLiteralPartCS returns [EObject current=null] 
+entryRuleCollectionLiteralPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionLiteralPartCSRule()); }
-	 iv_ruleCollectionLiteralPartCS=ruleCollectionLiteralPartCS 
-	 { $current=$iv_ruleCollectionLiteralPartCS.current; } 
-	 EOF 
+	 iv_ruleCollectionLiteralPartCS=ruleCollectionLiteralPartCS
+	 { $current=$iv_ruleCollectionLiteralPartCS.current; }
+	 EOF
 ;
 
 // Rule CollectionLiteralPartCS
-ruleCollectionLiteralPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionLiteralPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
 	    }
 		lv_ownedExpression_0_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_0_0, 
+        		lv_ownedExpression_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='..' 
+)(	otherlv_1='..'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
 	    }
 		lv_ownedLastExpression_2_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedLastExpression",
-        		lv_ownedLastExpression_2_0, 
+        		lv_ownedLastExpression_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6014,17 +6014,17 @@
 ))?)
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedExpression_3_0=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_3_0, 
+        		lv_ownedExpression_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6038,104 +6038,104 @@
 
 
 // Entry rule entryRuleCollectionPatternCS
-entryRuleCollectionPatternCS returns [EObject current=null] 
+entryRuleCollectionPatternCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionPatternCSRule()); }
-	 iv_ruleCollectionPatternCS=ruleCollectionPatternCS 
-	 { $current=$iv_ruleCollectionPatternCS.current; } 
-	 EOF 
+	 iv_ruleCollectionPatternCS=ruleCollectionPatternCS
+	 { $current=$iv_ruleCollectionPatternCS.current; }
+	 EOF
 ;
 
 // Rule CollectionPatternCS
-ruleCollectionPatternCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionPatternCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
 	    }
 		lv_ownedType_0_0=ruleCollectionTypeCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedParts_2_0=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedParts_4_0=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*(	otherlv_5='++' 
+))*(	otherlv_5='++'
     {
     	newLeafNode(otherlv_5, grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
 	    }
 		lv_restVariableName_6_0=ruleIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"restVariableName",
-        		lv_restVariableName_6_0, 
+        		lv_restVariableName_6_0,
         		"org.eclipse.ocl.xtext.base.Base.Identifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)))?	otherlv_7='}' 
+)))?	otherlv_7='}'
     {
     	newLeafNode(otherlv_7, grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -6147,70 +6147,70 @@
 
 
 // Entry rule entryRuleShadowPartCS
-entryRuleShadowPartCS returns [EObject current=null] 
+entryRuleShadowPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getShadowPartCSRule()); }
-	 iv_ruleShadowPartCS=ruleShadowPartCS 
-	 { $current=$iv_ruleShadowPartCS.current; } 
-	 EOF 
+	 iv_ruleShadowPartCS=ruleShadowPartCS
+	 { $current=$iv_ruleShadowPartCS.current; }
+	 EOF
 ;
 
 // Rule ShadowPartCS
-ruleShadowPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleShadowPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getShadowPartCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='=' 
+)	otherlv_1='='
     {
     	newLeafNode(otherlv_1, grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
     }
 (
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedInitExpression_2_1=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_2_1, 
+        		lv_ownedInitExpression_2_1,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
-    |		{ 
-	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
+    |		{
+	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
 	    }
 		lv_ownedInitExpression_2_2=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_2_2, 
+        		lv_ownedInitExpression_2_2,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6226,54 +6226,54 @@
 
 
 // Entry rule entryRulePatternExpCS
-entryRulePatternExpCS returns [EObject current=null] 
+entryRulePatternExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPatternExpCSRule()); }
-	 iv_rulePatternExpCS=rulePatternExpCS 
-	 { $current=$iv_rulePatternExpCS.current; } 
-	 EOF 
+	 iv_rulePatternExpCS=rulePatternExpCS
+	 { $current=$iv_rulePatternExpCS.current; }
+	 EOF
 ;
 
 // Rule PatternExpCS
-rulePatternExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePatternExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_patternVariableName_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"patternVariableName",
-        		lv_patternVariableName_0_0, 
+        		lv_patternVariableName_0_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_1=':' 
+)?	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedPatternType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPatternType",
-        		lv_ownedPatternType_2_0, 
+        		lv_ownedPatternType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6287,46 +6287,46 @@
 
 
 // Entry rule entryRuleLambdaLiteralExpCS
-entryRuleLambdaLiteralExpCS returns [EObject current=null] 
+entryRuleLambdaLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLambdaLiteralExpCSRule()); }
-	 iv_ruleLambdaLiteralExpCS=ruleLambdaLiteralExpCS 
-	 { $current=$iv_ruleLambdaLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleLambdaLiteralExpCS=ruleLambdaLiteralExpCS
+	 { $current=$iv_ruleLambdaLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule LambdaLiteralExpCS
-ruleLambdaLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLambdaLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='Lambda' 
+(	otherlv_0='Lambda'
     {
     	newLeafNode(otherlv_0, grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
     }
-	otherlv_1='{' 
+	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedExpressionCS_2_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLambdaLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpressionCS",
-        		lv_ownedExpressionCS_2_0, 
+        		lv_ownedExpressionCS_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3='}' 
+)	otherlv_3='}'
     {
     	newLeafNode(otherlv_3, grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -6338,82 +6338,82 @@
 
 
 // Entry rule entryRuleMapLiteralExpCS
-entryRuleMapLiteralExpCS returns [EObject current=null] 
+entryRuleMapLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMapLiteralExpCSRule()); }
-	 iv_ruleMapLiteralExpCS=ruleMapLiteralExpCS 
-	 { $current=$iv_ruleMapLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleMapLiteralExpCS=ruleMapLiteralExpCS
+	 { $current=$iv_ruleMapLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule MapLiteralExpCS
-ruleMapLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMapLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
 	    }
 		lv_ownedType_0_0=ruleMapTypeCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapTypeCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedParts_2_0=ruleMapLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleMapLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_5='}' 
+))*)?	otherlv_5='}'
     {
     	newLeafNode(otherlv_5, grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -6425,54 +6425,54 @@
 
 
 // Entry rule entryRuleMapLiteralPartCS
-entryRuleMapLiteralPartCS returns [EObject current=null] 
+entryRuleMapLiteralPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMapLiteralPartCSRule()); }
-	 iv_ruleMapLiteralPartCS=ruleMapLiteralPartCS 
-	 { $current=$iv_ruleMapLiteralPartCS.current; } 
-	 EOF 
+	 iv_ruleMapLiteralPartCS=ruleMapLiteralPartCS
+	 { $current=$iv_ruleMapLiteralPartCS.current; }
+	 EOF
 ;
 
 // Rule MapLiteralPartCS
-ruleMapLiteralPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMapLiteralPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
 	    }
 		lv_ownedKey_0_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedKey",
-        		lv_ownedKey_0_0, 
+        		lv_ownedKey_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='<-' 
+)	otherlv_1='<-'
     {
     	newLeafNode(otherlv_1, grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedValue_2_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedValue",
-        		lv_ownedValue_2_0, 
+        		lv_ownedValue_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6486,94 +6486,94 @@
 
 
 // Entry rule entryRulePrimitiveLiteralExpCS
-entryRulePrimitiveLiteralExpCS returns [EObject current=null] 
+entryRulePrimitiveLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSRule()); }
-	 iv_rulePrimitiveLiteralExpCS=rulePrimitiveLiteralExpCS 
-	 { $current=$iv_rulePrimitiveLiteralExpCS.current; } 
-	 EOF 
+	 iv_rulePrimitiveLiteralExpCS=rulePrimitiveLiteralExpCS
+	 { $current=$iv_rulePrimitiveLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule PrimitiveLiteralExpCS
-rulePrimitiveLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrimitiveLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
     }
     this_NumberLiteralExpCS_0=ruleNumberLiteralExpCS
-    { 
-        $current = $this_NumberLiteralExpCS_0.current; 
+    {
+        $current = $this_NumberLiteralExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
     }
     this_StringLiteralExpCS_1=ruleStringLiteralExpCS
-    { 
-        $current = $this_StringLiteralExpCS_1.current; 
+    {
+        $current = $this_StringLiteralExpCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
     }
     this_BooleanLiteralExpCS_2=ruleBooleanLiteralExpCS
-    { 
-        $current = $this_BooleanLiteralExpCS_2.current; 
+    {
+        $current = $this_BooleanLiteralExpCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
     }
     this_UnlimitedNaturalLiteralExpCS_3=ruleUnlimitedNaturalLiteralExpCS
-    { 
-        $current = $this_UnlimitedNaturalLiteralExpCS_3.current; 
+    {
+        $current = $this_UnlimitedNaturalLiteralExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
     }
     this_InvalidLiteralExpCS_4=ruleInvalidLiteralExpCS
-    { 
-        $current = $this_InvalidLiteralExpCS_4.current; 
+    {
+        $current = $this_InvalidLiteralExpCS_4.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
     }
     this_NullLiteralExpCS_5=ruleNullLiteralExpCS
-    { 
-        $current = $this_NullLiteralExpCS_5.current; 
+    {
+        $current = $this_NullLiteralExpCS_5.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -6584,68 +6584,68 @@
 
 
 // Entry rule entryRuleTupleLiteralExpCS
-entryRuleTupleLiteralExpCS returns [EObject current=null] 
+entryRuleTupleLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTupleLiteralExpCSRule()); }
-	 iv_ruleTupleLiteralExpCS=ruleTupleLiteralExpCS 
-	 { $current=$iv_ruleTupleLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleTupleLiteralExpCS=ruleTupleLiteralExpCS
+	 { $current=$iv_ruleTupleLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule TupleLiteralExpCS
-ruleTupleLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTupleLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='Tuple' 
+(	otherlv_0='Tuple'
     {
     	newLeafNode(otherlv_0, grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
     }
-	otherlv_1='{' 
+	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
 	    }
 		lv_ownedParts_2_0=ruleTupleLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
 	    }
 		lv_ownedParts_4_0=ruleTupleLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_5='}' 
+))*	otherlv_5='}'
     {
     	newLeafNode(otherlv_5, grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
     }
@@ -6657,76 +6657,76 @@
 
 
 // Entry rule entryRuleTupleLiteralPartCS
-entryRuleTupleLiteralPartCS returns [EObject current=null] 
+entryRuleTupleLiteralPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTupleLiteralPartCSRule()); }
-	 iv_ruleTupleLiteralPartCS=ruleTupleLiteralPartCS 
-	 { $current=$iv_ruleTupleLiteralPartCS.current; } 
-	 EOF 
+	 iv_ruleTupleLiteralPartCS=ruleTupleLiteralPartCS
+	 { $current=$iv_ruleTupleLiteralPartCS.current; }
+	 EOF
 ;
 
 // Rule TupleLiteralPartCS
-ruleTupleLiteralPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTupleLiteralPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1=':' 
+)(	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?	otherlv_3='=' 
+))?	otherlv_3='='
     {
     	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
 	    }
 		lv_ownedInitExpression_4_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_4_0, 
+        		lv_ownedInitExpression_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6740,32 +6740,32 @@
 
 
 // Entry rule entryRuleNumberLiteralExpCS
-entryRuleNumberLiteralExpCS returns [EObject current=null] 
+entryRuleNumberLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNumberLiteralExpCSRule()); }
-	 iv_ruleNumberLiteralExpCS=ruleNumberLiteralExpCS 
-	 { $current=$iv_ruleNumberLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleNumberLiteralExpCS=ruleNumberLiteralExpCS
+	 { $current=$iv_ruleNumberLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule NumberLiteralExpCS
-ruleNumberLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNumberLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
 	    }
 		lv_symbol_0_0=ruleNUMBER_LITERAL		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNumberLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"symbol",
-        		lv_symbol_0_0, 
+        		lv_symbol_0_0,
         		"org.eclipse.ocl.xtext.base.Base.NUMBER_LITERAL");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6779,32 +6779,32 @@
 
 
 // Entry rule entryRuleStringLiteralExpCS
-entryRuleStringLiteralExpCS returns [EObject current=null] 
+entryRuleStringLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getStringLiteralExpCSRule()); }
-	 iv_ruleStringLiteralExpCS=ruleStringLiteralExpCS 
-	 { $current=$iv_ruleStringLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleStringLiteralExpCS=ruleStringLiteralExpCS
+	 { $current=$iv_ruleStringLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule StringLiteralExpCS
-ruleStringLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleStringLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
 	    }
 		lv_segments_0_0=ruleStringLiteral		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getStringLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"segments",
-        		lv_segments_0_0, 
+        		lv_segments_0_0,
         		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6818,26 +6818,26 @@
 
 
 // Entry rule entryRuleBooleanLiteralExpCS
-entryRuleBooleanLiteralExpCS returns [EObject current=null] 
+entryRuleBooleanLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getBooleanLiteralExpCSRule()); }
-	 iv_ruleBooleanLiteralExpCS=ruleBooleanLiteralExpCS 
-	 { $current=$iv_ruleBooleanLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleBooleanLiteralExpCS=ruleBooleanLiteralExpCS
+	 { $current=$iv_ruleBooleanLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule BooleanLiteralExpCS
-ruleBooleanLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleBooleanLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_symbol_0_0=	'true' 
+		lv_symbol_0_0=	'true'
     {
         newLeafNode(lv_symbol_0_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
@@ -6849,11 +6849,11 @@
 )
     |(
 (
-		lv_symbol_1_0=	'false' 
+		lv_symbol_1_0=	'false'
     {
         newLeafNode(lv_symbol_1_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
@@ -6870,29 +6870,29 @@
 
 
 // Entry rule entryRuleUnlimitedNaturalLiteralExpCS
-entryRuleUnlimitedNaturalLiteralExpCS returns [EObject current=null] 
+entryRuleUnlimitedNaturalLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); }
-	 iv_ruleUnlimitedNaturalLiteralExpCS=ruleUnlimitedNaturalLiteralExpCS 
-	 { $current=$iv_ruleUnlimitedNaturalLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleUnlimitedNaturalLiteralExpCS=ruleUnlimitedNaturalLiteralExpCS
+	 { $current=$iv_ruleUnlimitedNaturalLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule UnlimitedNaturalLiteralExpCS
-ruleUnlimitedNaturalLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleUnlimitedNaturalLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0(),
             $current);
     }
-)	otherlv_1='*' 
+)	otherlv_1='*'
     {
     	newLeafNode(otherlv_1, grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
     }
@@ -6904,29 +6904,29 @@
 
 
 // Entry rule entryRuleInvalidLiteralExpCS
-entryRuleInvalidLiteralExpCS returns [EObject current=null] 
+entryRuleInvalidLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getInvalidLiteralExpCSRule()); }
-	 iv_ruleInvalidLiteralExpCS=ruleInvalidLiteralExpCS 
-	 { $current=$iv_ruleInvalidLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleInvalidLiteralExpCS=ruleInvalidLiteralExpCS
+	 { $current=$iv_ruleInvalidLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule InvalidLiteralExpCS
-ruleInvalidLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleInvalidLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0(),
             $current);
     }
-)	otherlv_1='invalid' 
+)	otherlv_1='invalid'
     {
     	newLeafNode(otherlv_1, grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
     }
@@ -6938,29 +6938,29 @@
 
 
 // Entry rule entryRuleNullLiteralExpCS
-entryRuleNullLiteralExpCS returns [EObject current=null] 
+entryRuleNullLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNullLiteralExpCSRule()); }
-	 iv_ruleNullLiteralExpCS=ruleNullLiteralExpCS 
-	 { $current=$iv_ruleNullLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleNullLiteralExpCS=ruleNullLiteralExpCS
+	 { $current=$iv_ruleNullLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule NullLiteralExpCS
-ruleNullLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNullLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0(),
             $current);
     }
-)	otherlv_1='null' 
+)	otherlv_1='null'
     {
     	newLeafNode(otherlv_1, grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
     }
@@ -6972,68 +6972,68 @@
 
 
 // Entry rule entryRuleTypeLiteralCS
-entryRuleTypeLiteralCS returns [EObject current=null] 
+entryRuleTypeLiteralCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeLiteralCSRule()); }
-	 iv_ruleTypeLiteralCS=ruleTypeLiteralCS 
-	 { $current=$iv_ruleTypeLiteralCS.current; } 
-	 EOF 
+	 iv_ruleTypeLiteralCS=ruleTypeLiteralCS
+	 { $current=$iv_ruleTypeLiteralCS.current; }
+	 EOF
 ;
 
 // Rule TypeLiteralCS
-ruleTypeLiteralCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeLiteralCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
     }
     this_PrimitiveTypeCS_0=rulePrimitiveTypeCS
-    { 
-        $current = $this_PrimitiveTypeCS_0.current; 
+    {
+        $current = $this_PrimitiveTypeCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
     }
     this_CollectionTypeCS_1=ruleCollectionTypeCS
-    { 
-        $current = $this_CollectionTypeCS_1.current; 
+    {
+        $current = $this_CollectionTypeCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
     }
     this_MapTypeCS_2=ruleMapTypeCS
-    { 
-        $current = $this_MapTypeCS_2.current; 
+    {
+        $current = $this_MapTypeCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
     }
     this_TupleTypeCS_3=ruleTupleTypeCS
-    { 
-        $current = $this_TupleTypeCS_3.current; 
+    {
+        $current = $this_TupleTypeCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -7044,44 +7044,44 @@
 
 
 // Entry rule entryRuleTypeLiteralWithMultiplicityCS
-entryRuleTypeLiteralWithMultiplicityCS returns [EObject current=null] 
+entryRuleTypeLiteralWithMultiplicityCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); }
-	 iv_ruleTypeLiteralWithMultiplicityCS=ruleTypeLiteralWithMultiplicityCS 
-	 { $current=$iv_ruleTypeLiteralWithMultiplicityCS.current; } 
-	 EOF 
+	 iv_ruleTypeLiteralWithMultiplicityCS=ruleTypeLiteralWithMultiplicityCS
+	 { $current=$iv_ruleTypeLiteralWithMultiplicityCS.current; }
+	 EOF
 ;
 
 // Rule TypeLiteralWithMultiplicityCS
-ruleTypeLiteralWithMultiplicityCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeLiteralWithMultiplicityCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
     }
     this_TypeLiteralCS_0=ruleTypeLiteralCS
-    { 
-        $current = $this_TypeLiteralCS_0.current; 
+    {
+        $current = $this_TypeLiteralCS_0.current;
         afterParserOrEnumRuleCall();
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
 	    }
 		lv_ownedMultiplicity_1_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_1_0, 
+        		lv_ownedMultiplicity_1_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7095,32 +7095,32 @@
 
 
 // Entry rule entryRuleTypeLiteralExpCS
-entryRuleTypeLiteralExpCS returns [EObject current=null] 
+entryRuleTypeLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeLiteralExpCSRule()); }
-	 iv_ruleTypeLiteralExpCS=ruleTypeLiteralExpCS 
-	 { $current=$iv_ruleTypeLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleTypeLiteralExpCS=ruleTypeLiteralExpCS
+	 { $current=$iv_ruleTypeLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule TypeLiteralExpCS
-ruleTypeLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
 	    }
 		lv_ownedType_0_0=ruleTypeLiteralWithMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeLiteralWithMultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7134,32 +7134,32 @@
 
 
 // Entry rule entryRuleTypeNameExpCS
-entryRuleTypeNameExpCS returns [EObject current=null] 
+entryRuleTypeNameExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeNameExpCSRule()); }
-	 iv_ruleTypeNameExpCS=ruleTypeNameExpCS 
-	 { $current=$iv_ruleTypeNameExpCS.current; } 
-	 EOF 
+	 iv_ruleTypeNameExpCS=ruleTypeNameExpCS
+	 { $current=$iv_ruleTypeNameExpCS.current; }
+	 EOF
 ;
 
 // Rule TypeNameExpCS
-ruleTypeNameExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeNameExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathName_0_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_0_0, 
+        		lv_ownedPathName_0_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7167,45 +7167,45 @@
 )
 )((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
 	    }
 		lv_ownedCurlyBracketedClause_1_0=ruleCurlyBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCurlyBracketedClause",
-        		lv_ownedCurlyBracketedClause_1_0, 
+        		lv_ownedCurlyBracketedClause_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2='{' 
+)(	otherlv_2='{'
     {
     	newLeafNode(otherlv_2, grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
 	    }
 		lv_ownedPatternGuard_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPatternGuard",
-        		lv_ownedPatternGuard_3_0, 
+        		lv_ownedPatternGuard_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_4='}' 
+)	otherlv_4='}'
     {
     	newLeafNode(otherlv_4, grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
     }
@@ -7217,70 +7217,70 @@
 
 
 // Entry rule entryRuleTypeExpCS
-entryRuleTypeExpCS returns [EObject current=null] 
+entryRuleTypeExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeExpCSRule()); }
-	 iv_ruleTypeExpCS=ruleTypeExpCS 
-	 { $current=$iv_ruleTypeExpCS.current; } 
-	 EOF 
+	 iv_ruleTypeExpCS=ruleTypeExpCS
+	 { $current=$iv_ruleTypeExpCS.current; }
+	 EOF
 ;
 
 // Rule TypeExpCS
-ruleTypeExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
     }
     this_TypeNameExpCS_0=ruleTypeNameExpCS
-    { 
-        $current = $this_TypeNameExpCS_0.current; 
+    {
+        $current = $this_TypeNameExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
     }
     this_TypeLiteralCS_1=ruleTypeLiteralCS
-    { 
-        $current = $this_TypeLiteralCS_1.current; 
+    {
+        $current = $this_TypeLiteralCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
+    {
+        newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
     }
     this_CollectionPatternCS_2=ruleCollectionPatternCS
-    { 
-        $current = $this_CollectionPatternCS_2.current; 
+    {
+        $current = $this_CollectionPatternCS_2.current;
         afterParserOrEnumRuleCall();
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
 	    }
 		lv_ownedMultiplicity_3_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_3_0, 
+        		lv_ownedMultiplicity_3_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7294,34 +7294,34 @@
 
 
 // Entry rule entryRuleExpCS
-entryRuleExpCS returns [EObject current=null] 
+entryRuleExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getExpCSRule()); }
-	 iv_ruleExpCS=ruleExpCS 
-	 { $current=$iv_ruleExpCS.current; } 
-	 EOF 
+	 iv_ruleExpCS=ruleExpCS
+	 { $current=$iv_ruleExpCS.current; }
+	 EOF
 ;
 
 // Rule ExpCS
-ruleExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
+    {
+        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
     }
     this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS
-    { 
-        $current = $this_PrefixedPrimaryExpCS_0.current; 
+    {
+        $current = $this_PrefixedPrimaryExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElementAndSet(
@@ -7330,17 +7330,17 @@
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
 	    }
 		lv_name_2_0=ruleBinaryOperatorName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_0, 
+        		lv_name_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.BinaryOperatorName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7348,17 +7348,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
 	    }
 		lv_ownedRight_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRight",
-        		lv_ownedRight_3_0, 
+        		lv_ownedRight_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7366,15 +7366,15 @@
 )
 ))?)
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
     }
     this_PrefixedLetExpCS_4=rulePrefixedLetExpCS
-    { 
-        $current = $this_PrefixedLetExpCS_4.current; 
+    {
+        $current = $this_PrefixedLetExpCS_4.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -7385,22 +7385,22 @@
 
 
 // Entry rule entryRulePrefixedLetExpCS
-entryRulePrefixedLetExpCS returns [EObject current=null] 
+entryRulePrefixedLetExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrefixedLetExpCSRule()); }
-	 iv_rulePrefixedLetExpCS=rulePrefixedLetExpCS 
-	 { $current=$iv_rulePrefixedLetExpCS.current; } 
-	 EOF 
+	 iv_rulePrefixedLetExpCS=rulePrefixedLetExpCS
+	 { $current=$iv_rulePrefixedLetExpCS.current; }
+	 EOF
 ;
 
 // Rule PrefixedLetExpCS
-rulePrefixedLetExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrefixedLetExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
@@ -7409,17 +7409,17 @@
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
 	    }
 		lv_name_1_0=ruleUnaryOperatorName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7427,17 +7427,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
 	    }
 		lv_ownedRight_2_0=rulePrefixedLetExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRight",
-        		lv_ownedRight_2_0, 
+        		lv_ownedRight_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedLetExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7445,15 +7445,15 @@
 )
 ))
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
     }
     this_LetExpCS_3=ruleLetExpCS
-    { 
-        $current = $this_LetExpCS_3.current; 
+    {
+        $current = $this_LetExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -7464,22 +7464,22 @@
 
 
 // Entry rule entryRulePrefixedPrimaryExpCS
-entryRulePrefixedPrimaryExpCS returns [EObject current=null] 
+entryRulePrefixedPrimaryExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSRule()); }
-	 iv_rulePrefixedPrimaryExpCS=rulePrefixedPrimaryExpCS 
-	 { $current=$iv_rulePrefixedPrimaryExpCS.current; } 
-	 EOF 
+	 iv_rulePrefixedPrimaryExpCS=rulePrefixedPrimaryExpCS
+	 { $current=$iv_rulePrefixedPrimaryExpCS.current; }
+	 EOF
 ;
 
 // Rule PrefixedPrimaryExpCS
-rulePrefixedPrimaryExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrefixedPrimaryExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
@@ -7488,17 +7488,17 @@
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
 	    }
 		lv_name_1_0=ruleUnaryOperatorName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7506,17 +7506,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
 	    }
 		lv_ownedRight_2_0=rulePrefixedPrimaryExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRight",
-        		lv_ownedRight_2_0, 
+        		lv_ownedRight_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedPrimaryExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7524,15 +7524,15 @@
 )
 ))
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
     }
     this_PrimaryExpCS_3=rulePrimaryExpCS
-    { 
-        $current = $this_PrimaryExpCS_3.current; 
+    {
+        $current = $this_PrimaryExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -7543,146 +7543,146 @@
 
 
 // Entry rule entryRulePrimaryExpCS
-entryRulePrimaryExpCS returns [EObject current=null] 
+entryRulePrimaryExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrimaryExpCSRule()); }
-	 iv_rulePrimaryExpCS=rulePrimaryExpCS 
-	 { $current=$iv_rulePrimaryExpCS.current; } 
-	 EOF 
+	 iv_rulePrimaryExpCS=rulePrimaryExpCS
+	 { $current=$iv_rulePrimaryExpCS.current; }
+	 EOF
 ;
 
 // Rule PrimaryExpCS
-rulePrimaryExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrimaryExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
     }
     this_NestedExpCS_0=ruleNestedExpCS
-    { 
-        $current = $this_NestedExpCS_0.current; 
+    {
+        $current = $this_NestedExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
     }
     this_IfExpCS_1=ruleIfExpCS
-    { 
-        $current = $this_IfExpCS_1.current; 
+    {
+        $current = $this_IfExpCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
     }
     this_SelfExpCS_2=ruleSelfExpCS
-    { 
-        $current = $this_SelfExpCS_2.current; 
+    {
+        $current = $this_SelfExpCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
     }
     this_PrimitiveLiteralExpCS_3=rulePrimitiveLiteralExpCS
-    { 
-        $current = $this_PrimitiveLiteralExpCS_3.current; 
+    {
+        $current = $this_PrimitiveLiteralExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
     }
     this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS
-    { 
-        $current = $this_TupleLiteralExpCS_4.current; 
+    {
+        $current = $this_TupleLiteralExpCS_4.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
     }
     this_MapLiteralExpCS_5=ruleMapLiteralExpCS
-    { 
-        $current = $this_MapLiteralExpCS_5.current; 
+    {
+        $current = $this_MapLiteralExpCS_5.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
     }
     this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS
-    { 
-        $current = $this_CollectionLiteralExpCS_6.current; 
+    {
+        $current = $this_CollectionLiteralExpCS_6.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
     }
     this_LambdaLiteralExpCS_7=ruleLambdaLiteralExpCS
-    { 
-        $current = $this_LambdaLiteralExpCS_7.current; 
+    {
+        $current = $this_LambdaLiteralExpCS_7.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
     }
     this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS
-    { 
-        $current = $this_TypeLiteralExpCS_8.current; 
+    {
+        $current = $this_TypeLiteralExpCS_8.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
     }
     this_NameExpCS_9=ruleNameExpCS
-    { 
-        $current = $this_NameExpCS_9.current; 
+    {
+        $current = $this_NameExpCS_9.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -7693,32 +7693,32 @@
 
 
 // Entry rule entryRuleNameExpCS
-entryRuleNameExpCS returns [EObject current=null] 
+entryRuleNameExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNameExpCSRule()); }
-	 iv_ruleNameExpCS=ruleNameExpCS 
-	 { $current=$iv_ruleNameExpCS.current; } 
-	 EOF 
+	 iv_ruleNameExpCS=ruleNameExpCS
+	 { $current=$iv_ruleNameExpCS.current; }
+	 EOF
 ;
 
 // Rule NameExpCS
-ruleNameExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNameExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathName_0_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_0_0, 
+        		lv_ownedPathName_0_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7726,17 +7726,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
 	    }
 		lv_ownedSquareBracketedClauses_1_0=ruleSquareBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSquareBracketedClauses",
-        		lv_ownedSquareBracketedClauses_1_0, 
+        		lv_ownedSquareBracketedClauses_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.SquareBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7744,17 +7744,17 @@
 )
 )*(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
 	    }
 		lv_ownedRoundBracketedClause_2_0=ruleRoundBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRoundBracketedClause",
-        		lv_ownedRoundBracketedClause_2_0, 
+        		lv_ownedRoundBracketedClause_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7762,17 +7762,17 @@
 )
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
 	    }
 		lv_ownedCurlyBracketedClause_3_0=ruleCurlyBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCurlyBracketedClause",
-        		lv_ownedCurlyBracketedClause_3_0, 
+        		lv_ownedCurlyBracketedClause_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7780,11 +7780,11 @@
 )
 )?((
 (
-		lv_isPre_4_0=	'@' 
+		lv_isPre_4_0=	'@'
     {
         newLeafNode(lv_isPre_4_0, grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNameExpCSRule());
@@ -7793,7 +7793,7 @@
 	    }
 
 )
-)	otherlv_5='pre' 
+)	otherlv_5='pre'
     {
     	newLeafNode(otherlv_5, grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
     }
@@ -7805,67 +7805,67 @@
 
 
 // Entry rule entryRuleCurlyBracketedClauseCS
-entryRuleCurlyBracketedClauseCS returns [EObject current=null] 
+entryRuleCurlyBracketedClauseCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCurlyBracketedClauseCSRule()); }
-	 iv_ruleCurlyBracketedClauseCS=ruleCurlyBracketedClauseCS 
-	 { $current=$iv_ruleCurlyBracketedClauseCS.current; } 
-	 EOF 
+	 iv_ruleCurlyBracketedClauseCS=ruleCurlyBracketedClauseCS
+	 { $current=$iv_ruleCurlyBracketedClauseCS.current; }
+	 EOF
 ;
 
 // Rule CurlyBracketedClauseCS
-ruleCurlyBracketedClauseCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCurlyBracketedClauseCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0(),
             $current);
     }
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
     }
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
 	    }
 		lv_ownedParts_2_0=ruleShadowPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleShadowPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7874,23 +7874,23 @@
 ))*)?
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
 	    }
 		lv_value_5_0=ruleStringLiteral		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"value",
-        		lv_value_5_0, 
+        		lv_value_5_0,
         		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))	otherlv_6='}' 
+))	otherlv_6='}'
     {
     	newLeafNode(otherlv_6, grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -7902,45 +7902,45 @@
 
 
 // Entry rule entryRuleRoundBracketedClauseCS
-entryRuleRoundBracketedClauseCS returns [EObject current=null] 
+entryRuleRoundBracketedClauseCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getRoundBracketedClauseCSRule()); }
-	 iv_ruleRoundBracketedClauseCS=ruleRoundBracketedClauseCS 
-	 { $current=$iv_ruleRoundBracketedClauseCS.current; } 
-	 EOF 
+	 iv_ruleRoundBracketedClauseCS=ruleRoundBracketedClauseCS
+	 { $current=$iv_ruleRoundBracketedClauseCS.current; }
+	 EOF
 ;
 
 // Rule RoundBracketedClauseCS
-ruleRoundBracketedClauseCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleRoundBracketedClauseCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0(),
             $current);
     }
-)	otherlv_1='(' 
+)	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedArguments_2_0=ruleNavigatingArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_2_0, 
+        		lv_ownedArguments_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7948,17 +7948,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedArguments_3_0=ruleNavigatingCommaArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_3_0, 
+        		lv_ownedArguments_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7966,17 +7966,17 @@
 )
 )*((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
 	    }
 		lv_ownedArguments_4_0=ruleNavigatingSemiArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_4_0, 
+        		lv_ownedArguments_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingSemiArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7984,17 +7984,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
 	    }
 		lv_ownedArguments_5_0=ruleNavigatingCommaArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_5_0, 
+        		lv_ownedArguments_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8002,17 +8002,17 @@
 )
 )*)?((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
 	    }
 		lv_ownedArguments_6_0=ruleNavigatingBarArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_6_0, 
+        		lv_ownedArguments_6_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingBarArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8020,23 +8020,23 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
 	    }
 		lv_ownedArguments_7_0=ruleNavigatingCommaArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_7_0, 
+        		lv_ownedArguments_7_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*)*)?	otherlv_8=')' 
+)*)*)?	otherlv_8=')'
     {
     	newLeafNode(otherlv_8, grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
     }
@@ -8048,64 +8048,64 @@
 
 
 // Entry rule entryRuleSquareBracketedClauseCS
-entryRuleSquareBracketedClauseCS returns [EObject current=null] 
+entryRuleSquareBracketedClauseCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getSquareBracketedClauseCSRule()); }
-	 iv_ruleSquareBracketedClauseCS=ruleSquareBracketedClauseCS 
-	 { $current=$iv_ruleSquareBracketedClauseCS.current; } 
-	 EOF 
+	 iv_ruleSquareBracketedClauseCS=ruleSquareBracketedClauseCS
+	 { $current=$iv_ruleSquareBracketedClauseCS.current; }
+	 EOF
 ;
 
 // Rule SquareBracketedClauseCS
-ruleSquareBracketedClauseCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleSquareBracketedClauseCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='[' 
+(	otherlv_0='['
     {
     	newLeafNode(otherlv_0, grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedTerms_1_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedTerms",
-        		lv_ownedTerms_1_0, 
+        		lv_ownedTerms_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=',' 
+)(	otherlv_2=','
     {
     	newLeafNode(otherlv_2, grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedTerms_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedTerms",
-        		lv_ownedTerms_3_0, 
+        		lv_ownedTerms_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_4=']' 
+))*	otherlv_4=']'
     {
     	newLeafNode(otherlv_4, grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
     }
@@ -8117,122 +8117,122 @@
 
 
 // Entry rule entryRuleNavigatingArgCS
-entryRuleNavigatingArgCS returns [EObject current=null] 
+entryRuleNavigatingArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingArgCSRule()); }
-	 iv_ruleNavigatingArgCS=ruleNavigatingArgCS 
-	 { $current=$iv_ruleNavigatingArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingArgCS=ruleNavigatingArgCS
+	 { $current=$iv_ruleNavigatingArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingArgCS
-ruleNavigatingArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
 	    }
 		lv_ownedNameExpression_0_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_0_0, 
+        		lv_ownedNameExpression_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)((	otherlv_1=':' 
+)((	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3='=' 
+)(	otherlv_3='='
     {
     	newLeafNode(otherlv_3, grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
 	    }
 		lv_ownedInitExpression_4_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_4_0, 
+        		lv_ownedInitExpression_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 ))?)
-    |(	otherlv_5='in' 
+    |(	otherlv_5='in'
     {
     	newLeafNode(otherlv_5, grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
 	    }
 		lv_ownedInitExpression_6_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_6_0, 
+        		lv_ownedInitExpression_6_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 )))?)
-    |(	otherlv_7=':' 
+    |(	otherlv_7=':'
     {
     	newLeafNode(otherlv_7, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedType_8_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_8_0, 
+        		lv_ownedType_8_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8246,26 +8246,26 @@
 
 
 // Entry rule entryRuleNavigatingBarArgCS
-entryRuleNavigatingBarArgCS returns [EObject current=null] 
+entryRuleNavigatingBarArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingBarArgCSRule()); }
-	 iv_ruleNavigatingBarArgCS=ruleNavigatingBarArgCS 
-	 { $current=$iv_ruleNavigatingBarArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingBarArgCS=ruleNavigatingBarArgCS
+	 { $current=$iv_ruleNavigatingBarArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingBarArgCS
-ruleNavigatingBarArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingBarArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_prefix_0_0=	'|' 
+		lv_prefix_0_0=	'|'
     {
         newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNavigatingBarArgCSRule());
@@ -8276,61 +8276,61 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_1_0, 
+        		lv_ownedNameExpression_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=':' 
+)(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_4='=' 
+)(	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8344,26 +8344,26 @@
 
 
 // Entry rule entryRuleNavigatingCommaArgCS
-entryRuleNavigatingCommaArgCS returns [EObject current=null] 
+entryRuleNavigatingCommaArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingCommaArgCSRule()); }
-	 iv_ruleNavigatingCommaArgCS=ruleNavigatingCommaArgCS 
-	 { $current=$iv_ruleNavigatingCommaArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingCommaArgCS=ruleNavigatingCommaArgCS
+	 { $current=$iv_ruleNavigatingCommaArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingCommaArgCS
-ruleNavigatingCommaArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingCommaArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_prefix_0_0=	',' 
+		lv_prefix_0_0=	','
     {
         newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNavigatingCommaArgCSRule());
@@ -8374,84 +8374,84 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_1_0, 
+        		lv_ownedNameExpression_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)((	otherlv_2=':' 
+)((	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_4='=' 
+)(	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 ))?)
-    |(	otherlv_6='in' 
+    |(	otherlv_6='in'
     {
     	newLeafNode(otherlv_6, grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedInitExpression_7_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_7_0, 
+        		lv_ownedInitExpression_7_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8465,26 +8465,26 @@
 
 
 // Entry rule entryRuleNavigatingSemiArgCS
-entryRuleNavigatingSemiArgCS returns [EObject current=null] 
+entryRuleNavigatingSemiArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingSemiArgCSRule()); }
-	 iv_ruleNavigatingSemiArgCS=ruleNavigatingSemiArgCS 
-	 { $current=$iv_ruleNavigatingSemiArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingSemiArgCS=ruleNavigatingSemiArgCS
+	 { $current=$iv_ruleNavigatingSemiArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingSemiArgCS
-ruleNavigatingSemiArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingSemiArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_prefix_0_0=	';' 
+		lv_prefix_0_0=	';'
     {
         newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNavigatingSemiArgCSRule());
@@ -8495,61 +8495,61 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_1_0, 
+        		lv_ownedNameExpression_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=':' 
+)(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_4='=' 
+)(	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8563,29 +8563,29 @@
 
 
 // Entry rule entryRuleNavigatingArgExpCS
-entryRuleNavigatingArgExpCS returns [EObject current=null] 
+entryRuleNavigatingArgExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingArgExpCSRule()); }
-	 iv_ruleNavigatingArgExpCS=ruleNavigatingArgExpCS 
-	 { $current=$iv_ruleNavigatingArgExpCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingArgExpCS=ruleNavigatingArgExpCS
+	 { $current=$iv_ruleNavigatingArgExpCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingArgExpCS
-ruleNavigatingArgExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingArgExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall());
     }
     this_ExpCS_0=ruleExpCS
-    { 
-        $current = $this_ExpCS_0.current; 
+    {
+        $current = $this_ExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
@@ -8596,52 +8596,52 @@
 
 
 // Entry rule entryRuleIfExpCS
-entryRuleIfExpCS returns [EObject current=null] 
+entryRuleIfExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getIfExpCSRule()); }
-	 iv_ruleIfExpCS=ruleIfExpCS 
-	 { $current=$iv_ruleIfExpCS.current; } 
-	 EOF 
+	 iv_ruleIfExpCS=ruleIfExpCS
+	 { $current=$iv_ruleIfExpCS.current; }
+	 EOF
 ;
 
 // Rule IfExpCS
-ruleIfExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleIfExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='if' 
+(	otherlv_0='if'
     {
     	newLeafNode(otherlv_0, grammarAccess.getIfExpCSAccess().getIfKeyword_0());
     }
 (
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
 	    }
 		lv_ownedCondition_1_1=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCondition",
-        		lv_ownedCondition_1_1, 
+        		lv_ownedCondition_1_1,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
-    |		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
+    |		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
 	    }
 		lv_ownedCondition_1_2=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCondition",
-        		lv_ownedCondition_1_2, 
+        		lv_ownedCondition_1_2,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8649,23 +8649,23 @@
 )
 
 )
-)	otherlv_2='then' 
+)	otherlv_2='then'
     {
     	newLeafNode(otherlv_2, grammarAccess.getIfExpCSAccess().getThenKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
 	    }
 		lv_ownedThenExpression_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedThenExpression",
-        		lv_ownedThenExpression_3_0, 
+        		lv_ownedThenExpression_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8673,45 +8673,45 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
 	    }
 		lv_ownedIfThenExpressions_4_0=ruleElseIfThenExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedIfThenExpressions",
-        		lv_ownedIfThenExpressions_4_0, 
+        		lv_ownedIfThenExpressions_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ElseIfThenExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_5='else' 
+)*	otherlv_5='else'
     {
     	newLeafNode(otherlv_5, grammarAccess.getIfExpCSAccess().getElseKeyword_5());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
 	    }
 		lv_ownedElseExpression_6_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedElseExpression",
-        		lv_ownedElseExpression_6_0, 
+        		lv_ownedElseExpression_6_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_7='endif' 
+)	otherlv_7='endif'
     {
     	newLeafNode(otherlv_7, grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
     }
@@ -8723,58 +8723,58 @@
 
 
 // Entry rule entryRuleElseIfThenExpCS
-entryRuleElseIfThenExpCS returns [EObject current=null] 
+entryRuleElseIfThenExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getElseIfThenExpCSRule()); }
-	 iv_ruleElseIfThenExpCS=ruleElseIfThenExpCS 
-	 { $current=$iv_ruleElseIfThenExpCS.current; } 
-	 EOF 
+	 iv_ruleElseIfThenExpCS=ruleElseIfThenExpCS
+	 { $current=$iv_ruleElseIfThenExpCS.current; }
+	 EOF
 ;
 
 // Rule ElseIfThenExpCS
-ruleElseIfThenExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleElseIfThenExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='elseif' 
+(	otherlv_0='elseif'
     {
     	newLeafNode(otherlv_0, grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedCondition_1_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCondition",
-        		lv_ownedCondition_1_0, 
+        		lv_ownedCondition_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_2='then' 
+)	otherlv_2='then'
     {
     	newLeafNode(otherlv_2, grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
 	    }
 		lv_ownedThenExpression_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedThenExpression",
-        		lv_ownedThenExpression_3_0, 
+        		lv_ownedThenExpression_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8788,80 +8788,80 @@
 
 
 // Entry rule entryRuleLetExpCS
-entryRuleLetExpCS returns [EObject current=null] 
+entryRuleLetExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLetExpCSRule()); }
-	 iv_ruleLetExpCS=ruleLetExpCS 
-	 { $current=$iv_ruleLetExpCS.current; } 
-	 EOF 
+	 iv_ruleLetExpCS=ruleLetExpCS
+	 { $current=$iv_ruleLetExpCS.current; }
+	 EOF
 ;
 
 // Rule LetExpCS
-ruleLetExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLetExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='let' 
+(	otherlv_0='let'
     {
     	newLeafNode(otherlv_0, grammarAccess.getLetExpCSAccess().getLetKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
 	    }
 		lv_ownedVariables_1_0=ruleLetVariableCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedVariables",
-        		lv_ownedVariables_1_0, 
+        		lv_ownedVariables_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=',' 
+)(	otherlv_2=','
     {
     	newLeafNode(otherlv_2, grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedVariables_3_0=ruleLetVariableCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedVariables",
-        		lv_ownedVariables_3_0, 
+        		lv_ownedVariables_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_4='in' 
+))*	otherlv_4='in'
     {
     	newLeafNode(otherlv_4, grammarAccess.getLetExpCSAccess().getInKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
 	    }
 		lv_ownedInExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInExpression",
-        		lv_ownedInExpression_5_0, 
+        		lv_ownedInExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8875,32 +8875,32 @@
 
 
 // Entry rule entryRuleLetVariableCS
-entryRuleLetVariableCS returns [EObject current=null] 
+entryRuleLetVariableCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLetVariableCSRule()); }
-	 iv_ruleLetVariableCS=ruleLetVariableCS 
-	 { $current=$iv_ruleLetVariableCS.current; } 
-	 EOF 
+	 iv_ruleLetVariableCS=ruleLetVariableCS
+	 { $current=$iv_ruleLetVariableCS.current; }
+	 EOF
 ;
 
 // Rule LetVariableCS
-ruleLetVariableCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLetVariableCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8908,61 +8908,61 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
 	    }
 		lv_ownedRoundBracketedClause_1_0=ruleRoundBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRoundBracketedClause",
-        		lv_ownedRoundBracketedClause_1_0, 
+        		lv_ownedRoundBracketedClause_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?(	otherlv_2=':' 
+)?(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?	otherlv_4='=' 
+))?	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8976,42 +8976,42 @@
 
 
 // Entry rule entryRuleNestedExpCS
-entryRuleNestedExpCS returns [EObject current=null] 
+entryRuleNestedExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNestedExpCSRule()); }
-	 iv_ruleNestedExpCS=ruleNestedExpCS 
-	 { $current=$iv_ruleNestedExpCS.current; } 
-	 EOF 
+	 iv_ruleNestedExpCS=ruleNestedExpCS
+	 { $current=$iv_ruleNestedExpCS.current; }
+	 EOF
 ;
 
 // Rule NestedExpCS
-ruleNestedExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNestedExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='(' 
+(	otherlv_0='('
     {
     	newLeafNode(otherlv_0, grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedExpression_1_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNestedExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_1_0, 
+        		lv_ownedExpression_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_2=')' 
+)	otherlv_2=')'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
     }
@@ -9023,29 +9023,29 @@
 
 
 // Entry rule entryRuleSelfExpCS
-entryRuleSelfExpCS returns [EObject current=null] 
+entryRuleSelfExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getSelfExpCSRule()); }
-	 iv_ruleSelfExpCS=ruleSelfExpCS 
-	 { $current=$iv_ruleSelfExpCS.current; } 
-	 EOF 
+	 iv_ruleSelfExpCS=ruleSelfExpCS
+	 { $current=$iv_ruleSelfExpCS.current; }
+	 EOF
 ;
 
 // Rule SelfExpCS
-ruleSelfExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleSelfExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0(),
             $current);
     }
-)	otherlv_1='self' 
+)	otherlv_1='self'
     {
     	newLeafNode(otherlv_1, grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
     }
@@ -9057,54 +9057,54 @@
 
 
 // Entry rule entryRuleMultiplicityBoundsCS
-entryRuleMultiplicityBoundsCS returns [EObject current=null] 
+entryRuleMultiplicityBoundsCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule()); }
-	 iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS 
-	 { $current=$iv_ruleMultiplicityBoundsCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS
+	 { $current=$iv_ruleMultiplicityBoundsCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityBoundsCS
-ruleMultiplicityBoundsCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityBoundsCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
 	    }
 		lv_lowerBound_0_0=ruleLOWER		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"lowerBound",
-        		lv_lowerBound_0_0, 
+        		lv_lowerBound_0_0,
         		"org.eclipse.ocl.xtext.base.Base.LOWER");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='..' 
+)(	otherlv_1='..'
     {
     	newLeafNode(otherlv_1, grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
 	    }
 		lv_upperBound_2_0=ruleUPPER		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"upperBound",
-        		lv_upperBound_2_0, 
+        		lv_upperBound_2_0,
         		"org.eclipse.ocl.xtext.base.Base.UPPER");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -9118,60 +9118,60 @@
 
 
 // Entry rule entryRuleMultiplicityCS
-entryRuleMultiplicityCS returns [EObject current=null] 
+entryRuleMultiplicityCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityCSRule()); }
-	 iv_ruleMultiplicityCS=ruleMultiplicityCS 
-	 { $current=$iv_ruleMultiplicityCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityCS=ruleMultiplicityCS
+	 { $current=$iv_ruleMultiplicityCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityCS
-ruleMultiplicityCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='[' 
+(	otherlv_0='['
     {
     	newLeafNode(otherlv_0, grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+    {
+        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
     }
     this_MultiplicityBoundsCS_1=ruleMultiplicityBoundsCS
-    { 
-        $current = $this_MultiplicityBoundsCS_1.current; 
+    {
+        $current = $this_MultiplicityBoundsCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+    {
+        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
     }
     this_MultiplicityStringCS_2=ruleMultiplicityStringCS
-    { 
-        $current = $this_MultiplicityStringCS_2.current; 
+    {
+        $current = $this_MultiplicityStringCS_2.current;
         afterParserOrEnumRuleCall();
     }
-)(	otherlv_3='|?' 
+)(	otherlv_3='|?'
     {
     	newLeafNode(otherlv_3, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
     }
 
     |(
 (
-		lv_isNullFree_4_0=	'|1' 
+		lv_isNullFree_4_0=	'|1'
     {
         newLeafNode(lv_isNullFree_4_0, grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityCSRule());
@@ -9180,7 +9180,7 @@
 	    }
 
 )
-))?	otherlv_5=']' 
+))?	otherlv_5=']'
     {
     	newLeafNode(otherlv_5, grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
     }
@@ -9192,27 +9192,27 @@
 
 
 // Entry rule entryRuleMultiplicityStringCS
-entryRuleMultiplicityStringCS returns [EObject current=null] 
+entryRuleMultiplicityStringCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityStringCSRule()); }
-	 iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS 
-	 { $current=$iv_ruleMultiplicityStringCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS
+	 { $current=$iv_ruleMultiplicityStringCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityStringCS
-ruleMultiplicityStringCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityStringCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
 (
-		lv_stringBounds_0_1=	'*' 
+		lv_stringBounds_0_1=	'*'
     {
         newLeafNode(lv_stringBounds_0_1, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -9220,11 +9220,11 @@
        		setWithLastConsumed($current, "stringBounds", lv_stringBounds_0_1, null);
 	    }
 
-    |		lv_stringBounds_0_2=	'+' 
+    |		lv_stringBounds_0_2=	'+'
     {
         newLeafNode(lv_stringBounds_0_2, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -9232,11 +9232,11 @@
        		setWithLastConsumed($current, "stringBounds", lv_stringBounds_0_2, null);
 	    }
 
-    |		lv_stringBounds_0_3=	'?' 
+    |		lv_stringBounds_0_3=	'?'
     {
         newLeafNode(lv_stringBounds_0_3, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -9255,54 +9255,54 @@
 
 
 // Entry rule entryRulePathNameCS
-entryRulePathNameCS returns [EObject current=null] 
+entryRulePathNameCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPathNameCSRule()); }
-	 iv_rulePathNameCS=rulePathNameCS 
-	 { $current=$iv_rulePathNameCS.current; } 
-	 EOF 
+	 iv_rulePathNameCS=rulePathNameCS
+	 { $current=$iv_rulePathNameCS.current; }
+	 EOF
 ;
 
 // Rule PathNameCS
-rulePathNameCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePathNameCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathElements_0_0=ruleFirstPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_0_0, 
+        		lv_ownedPathElements_0_0,
         		"org.eclipse.ocl.xtext.base.Base.FirstPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='::' 
+)(	otherlv_1='::'
     {
     	newLeafNode(otherlv_1, grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedPathElements_2_0=ruleNextPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_2_0, 
+        		lv_ownedPathElements_2_0,
         		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -9316,33 +9316,33 @@
 
 
 // Entry rule entryRuleFirstPathElementCS
-entryRuleFirstPathElementCS returns [EObject current=null] 
+entryRuleFirstPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getFirstPathElementCSRule()); }
-	 iv_ruleFirstPathElementCS=ruleFirstPathElementCS 
-	 { $current=$iv_ruleFirstPathElementCS.current; } 
-	 EOF 
+	 iv_ruleFirstPathElementCS=ruleFirstPathElementCS
+	 { $current=$iv_ruleFirstPathElementCS.current; }
+	 EOF
 ;
 
 // Rule FirstPathElementCS
-ruleFirstPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleFirstPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getFirstPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+		{
+	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -9355,33 +9355,33 @@
 
 
 // Entry rule entryRuleNextPathElementCS
-entryRuleNextPathElementCS returns [EObject current=null] 
+entryRuleNextPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNextPathElementCSRule()); }
-	 iv_ruleNextPathElementCS=ruleNextPathElementCS 
-	 { $current=$iv_ruleNextPathElementCS.current; } 
-	 EOF 
+	 iv_ruleNextPathElementCS=ruleNextPathElementCS
+	 { $current=$iv_ruleNextPathElementCS.current; }
+	 EOF
 ;
 
 // Rule NextPathElementCS
-ruleNextPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNextPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNextPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
 	    }
-		ruleUnreservedName		{ 
+		ruleUnreservedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -9394,54 +9394,54 @@
 
 
 // Entry rule entryRuleTemplateBindingCS
-entryRuleTemplateBindingCS returns [EObject current=null] 
+entryRuleTemplateBindingCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTemplateBindingCSRule()); }
-	 iv_ruleTemplateBindingCS=ruleTemplateBindingCS 
-	 { $current=$iv_ruleTemplateBindingCS.current; } 
-	 EOF 
+	 iv_ruleTemplateBindingCS=ruleTemplateBindingCS
+	 { $current=$iv_ruleTemplateBindingCS.current; }
+	 EOF
 ;
 
 // Rule TemplateBindingCS
-ruleTemplateBindingCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTemplateBindingCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
 	    }
 		lv_ownedSubstitutions_0_0=ruleTemplateParameterSubstitutionCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSubstitutions",
-        		lv_ownedSubstitutions_0_0, 
+        		lv_ownedSubstitutions_0_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1=',' 
+)(	otherlv_1=','
     {
     	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedSubstitutions_2_0=ruleTemplateParameterSubstitutionCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSubstitutions",
-        		lv_ownedSubstitutions_2_0, 
+        		lv_ownedSubstitutions_2_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -9449,17 +9449,17 @@
 )
 ))*(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
 	    }
 		lv_ownedMultiplicity_3_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_3_0, 
+        		lv_ownedMultiplicity_3_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -9473,32 +9473,32 @@
 
 
 // Entry rule entryRuleTemplateParameterSubstitutionCS
-entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] 
+entryRuleTemplateParameterSubstitutionCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
-	 iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS 
-	 { $current=$iv_ruleTemplateParameterSubstitutionCS.current; } 
-	 EOF 
+	 iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS
+	 { $current=$iv_ruleTemplateParameterSubstitutionCS.current; }
+	 EOF
 ;
 
 // Rule TemplateParameterSubstitutionCS
-ruleTemplateParameterSubstitutionCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTemplateParameterSubstitutionCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
 	    }
 		lv_ownedActualParameter_0_0=ruleTypeRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateParameterSubstitutionCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedActualParameter",
-        		lv_ownedActualParameter_0_0, 
+        		lv_ownedActualParameter_0_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -9512,76 +9512,76 @@
 
 
 // Entry rule entryRuleTypeParameterCS
-entryRuleTypeParameterCS returns [EObject current=null] 
+entryRuleTypeParameterCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeParameterCSRule()); }
-	 iv_ruleTypeParameterCS=ruleTypeParameterCS 
-	 { $current=$iv_ruleTypeParameterCS.current; } 
-	 EOF 
+	 iv_ruleTypeParameterCS=ruleTypeParameterCS
+	 { $current=$iv_ruleTypeParameterCS.current; }
+	 EOF
 ;
 
 // Rule TypeParameterCS
-ruleTypeParameterCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeParameterCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='extends' 
+)(	otherlv_1='extends'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedExtends_2_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_2_0, 
+        		lv_ownedExtends_2_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3='&&' 
+)(	otherlv_3='&&'
     {
     	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
 	    }
 		lv_ownedExtends_4_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_4_0, 
+        		lv_ownedExtends_4_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -9595,42 +9595,42 @@
 
 
 // Entry rule entryRuleTypeRefCS
-entryRuleTypeRefCS returns [EObject current=null] 
+entryRuleTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeRefCSRule()); }
-	 iv_ruleTypeRefCS=ruleTypeRefCS 
-	 { $current=$iv_ruleTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleTypeRefCS=ruleTypeRefCS
+	 { $current=$iv_ruleTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule TypeRefCS
-ruleTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
     }
     this_TypedRefCS_0=ruleTypedRefCS
-    { 
-        $current = $this_TypedRefCS_0.current; 
+    {
+        $current = $this_TypedRefCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
     }
     this_WildcardTypeRefCS_1=ruleWildcardTypeRefCS
-    { 
-        $current = $this_WildcardTypeRefCS_1.current; 
+    {
+        $current = $this_WildcardTypeRefCS_1.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -9641,49 +9641,49 @@
 
 
 // Entry rule entryRuleWildcardTypeRefCS
-entryRuleWildcardTypeRefCS returns [EObject current=null] 
+entryRuleWildcardTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getWildcardTypeRefCSRule()); }
-	 iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS 
-	 { $current=$iv_ruleWildcardTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS
+	 { $current=$iv_ruleWildcardTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule WildcardTypeRefCS
-ruleWildcardTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleWildcardTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0(),
             $current);
     }
-)	otherlv_1='?' 
+)	otherlv_1='?'
     {
     	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
     }
-(	otherlv_2='extends' 
+(	otherlv_2='extends'
     {
     	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedExtends_3_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getWildcardTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_3_0, 
+        		lv_ownedExtends_3_0,
         		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -9697,33 +9697,33 @@
 
 
 // Entry rule entryRuleID
-entryRuleID returns [String current=null] 
+entryRuleID returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getIDRule()); } 
-	 iv_ruleID=ruleID 
-	 { $current=$iv_ruleID.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getIDRule()); }
+	 iv_ruleID=ruleID
+	 { $current=$iv_ruleID.current.getText(); }
+	 EOF
 ;
 
 // Rule ID
-ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (    this_SIMPLE_ID_0=RULE_SIMPLE_ID    {
 		$current.merge(this_SIMPLE_ID_0);
     }
 
-    { 
-    newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+    {
+    newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
     }
 
     |    this_ESCAPED_ID_1=RULE_ESCAPED_ID    {
 		$current.merge(this_ESCAPED_ID_1);
     }
 
-    { 
-    newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+    {
+    newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
     }
 )
     ;
@@ -9733,28 +9733,28 @@
 
 
 // Entry rule entryRuleIdentifier
-entryRuleIdentifier returns [String current=null] 
+entryRuleIdentifier returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getIdentifierRule()); } 
-	 iv_ruleIdentifier=ruleIdentifier 
-	 { $current=$iv_ruleIdentifier.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getIdentifierRule()); }
+	 iv_ruleIdentifier=ruleIdentifier
+	 { $current=$iv_ruleIdentifier.current.getText(); }
+	 EOF
 ;
 
 // Rule Identifier
-ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
     }
     this_ID_0=ruleID    {
 		$current.merge(this_ID_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -9765,25 +9765,25 @@
 
 
 // Entry rule entryRuleLOWER
-entryRuleLOWER returns [String current=null] 
+entryRuleLOWER returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getLOWERRule()); } 
-	 iv_ruleLOWER=ruleLOWER 
-	 { $current=$iv_ruleLOWER.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getLOWERRule()); }
+	 iv_ruleLOWER=ruleLOWER
+	 { $current=$iv_ruleLOWER.current.getText(); }
+	 EOF
 ;
 
 // Rule LOWER
-ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
     }
 
     ;
@@ -9793,25 +9793,25 @@
 
 
 // Entry rule entryRuleNUMBER_LITERAL
-entryRuleNUMBER_LITERAL returns [String current=null] 
+entryRuleNUMBER_LITERAL returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getNUMBER_LITERALRule()); } 
-	 iv_ruleNUMBER_LITERAL=ruleNUMBER_LITERAL 
-	 { $current=$iv_ruleNUMBER_LITERAL.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getNUMBER_LITERALRule()); }
+	 iv_ruleNUMBER_LITERAL=ruleNUMBER_LITERAL
+	 { $current=$iv_ruleNUMBER_LITERAL.current.getText(); }
+	 EOF
 ;
 
 // Rule NUMBER_LITERAL
-ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
     }
 
     ;
@@ -9821,25 +9821,25 @@
 
 
 // Entry rule entryRuleStringLiteral
-entryRuleStringLiteral returns [String current=null] 
+entryRuleStringLiteral returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getStringLiteralRule()); } 
-	 iv_ruleStringLiteral=ruleStringLiteral 
-	 { $current=$iv_ruleStringLiteral.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getStringLiteralRule()); }
+	 iv_ruleStringLiteral=ruleStringLiteral
+	 { $current=$iv_ruleStringLiteral.current.getText(); }
+	 EOF
 ;
 
 // Rule StringLiteral
-ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_SINGLE_QUOTED_STRING_0=RULE_SINGLE_QUOTED_STRING    {
 		$current.merge(this_SINGLE_QUOTED_STRING_0);
     }
 
-    { 
-    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+    {
+    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
     }
 
     ;
@@ -9849,32 +9849,32 @@
 
 
 // Entry rule entryRuleUPPER
-entryRuleUPPER returns [String current=null] 
+entryRuleUPPER returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUPPERRule()); } 
-	 iv_ruleUPPER=ruleUPPER 
-	 { $current=$iv_ruleUPPER.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUPPERRule()); }
+	 iv_ruleUPPER=ruleUPPER
+	 { $current=$iv_ruleUPPER.current.getText(); }
+	 EOF
 ;
 
 // Rule UPPER
-ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (    this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
     }
 
     |
-	kw='*' 
+	kw='*'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
     }
 )
     ;
@@ -9884,25 +9884,25 @@
 
 
 // Entry rule entryRuleURI
-entryRuleURI returns [String current=null] 
+entryRuleURI returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getURIRule()); } 
-	 iv_ruleURI=ruleURI 
-	 { $current=$iv_ruleURI.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getURIRule()); }
+	 iv_ruleURI=ruleURI
+	 { $current=$iv_ruleURI.current.getText(); }
+	 EOF
 ;
 
 // Rule URI
-ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_SINGLE_QUOTED_STRING_0=RULE_SINGLE_QUOTED_STRING    {
 		$current.merge(this_SINGLE_QUOTED_STRING_0);
     }
 
-    { 
-    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+    {
+    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
     }
 
     ;
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 cd16a26..1cd7c5f 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
@@ -1,6 +1,6 @@
 package org.eclipse.ocl.xtext.oclinecore.parser.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.parser.antlr.Lexer;
 
@@ -151,7 +151,7 @@
     // delegates
     // delegators
 
-    public InternalOCLinEcoreLexer() {;} 
+    public InternalOCLinEcoreLexer() {;}
     public InternalOCLinEcoreLexer(CharStream input) {
         this(input, new RecognizerSharedState());
     }
@@ -169,7 +169,7 @@
             // InternalOCLinEcore.g:11:7: ( 'module' )
             // InternalOCLinEcore.g:11:9: 'module'
             {
-            match("module"); 
+            match("module");
 
 
             }
@@ -190,7 +190,7 @@
             // InternalOCLinEcore.g:12:7: ( '-' )
             // InternalOCLinEcore.g:12:9: '-'
             {
-            match('-'); 
+            match('-');
 
             }
 
@@ -210,7 +210,7 @@
             // InternalOCLinEcore.g:13:7: ( 'abstract' )
             // InternalOCLinEcore.g:13:9: 'abstract'
             {
-            match("abstract"); 
+            match("abstract");
 
 
             }
@@ -231,7 +231,7 @@
             // InternalOCLinEcore.g:14:7: ( 'attribute' )
             // InternalOCLinEcore.g:14:9: 'attribute'
             {
-            match("attribute"); 
+            match("attribute");
 
 
             }
@@ -252,7 +252,7 @@
             // InternalOCLinEcore.g:15:7: ( 'body' )
             // InternalOCLinEcore.g:15:9: 'body'
             {
-            match("body"); 
+            match("body");
 
 
             }
@@ -273,7 +273,7 @@
             // InternalOCLinEcore.g:16:7: ( 'callable' )
             // InternalOCLinEcore.g:16:9: 'callable'
             {
-            match("callable"); 
+            match("callable");
 
 
             }
@@ -294,7 +294,7 @@
             // InternalOCLinEcore.g:17:7: ( 'class' )
             // InternalOCLinEcore.g:17:9: 'class'
             {
-            match("class"); 
+            match("class");
 
 
             }
@@ -315,7 +315,7 @@
             // InternalOCLinEcore.g:18:7: ( 'composes' )
             // InternalOCLinEcore.g:18:9: 'composes'
             {
-            match("composes"); 
+            match("composes");
 
 
             }
@@ -336,7 +336,7 @@
             // InternalOCLinEcore.g:19:7: ( 'datatype' )
             // InternalOCLinEcore.g:19:9: 'datatype'
             {
-            match("datatype"); 
+            match("datatype");
 
 
             }
@@ -357,7 +357,7 @@
             // InternalOCLinEcore.g:20:7: ( 'definition' )
             // InternalOCLinEcore.g:20:9: 'definition'
             {
-            match("definition"); 
+            match("definition");
 
 
             }
@@ -378,7 +378,7 @@
             // InternalOCLinEcore.g:21:7: ( 'derivation' )
             // InternalOCLinEcore.g:21:9: 'derivation'
             {
-            match("derivation"); 
+            match("derivation");
 
 
             }
@@ -399,7 +399,7 @@
             // InternalOCLinEcore.g:22:7: ( 'derived' )
             // InternalOCLinEcore.g:22:9: 'derived'
             {
-            match("derived"); 
+            match("derived");
 
 
             }
@@ -420,7 +420,7 @@
             // InternalOCLinEcore.g:23:7: ( 'enum' )
             // InternalOCLinEcore.g:23:9: 'enum'
             {
-            match("enum"); 
+            match("enum");
 
 
             }
@@ -441,7 +441,7 @@
             // InternalOCLinEcore.g:24:7: ( 'extends' )
             // InternalOCLinEcore.g:24:9: 'extends'
             {
-            match("extends"); 
+            match("extends");
 
 
             }
@@ -462,7 +462,7 @@
             // InternalOCLinEcore.g:25:7: ( 'id' )
             // InternalOCLinEcore.g:25:9: 'id'
             {
-            match("id"); 
+            match("id");
 
 
             }
@@ -483,7 +483,7 @@
             // InternalOCLinEcore.g:26:7: ( 'import' )
             // InternalOCLinEcore.g:26:9: 'import'
             {
-            match("import"); 
+            match("import");
 
 
             }
@@ -504,7 +504,7 @@
             // InternalOCLinEcore.g:27:7: ( 'initial' )
             // InternalOCLinEcore.g:27:9: 'initial'
             {
-            match("initial"); 
+            match("initial");
 
 
             }
@@ -525,7 +525,7 @@
             // InternalOCLinEcore.g:28:7: ( 'interface' )
             // InternalOCLinEcore.g:28:9: 'interface'
             {
-            match("interface"); 
+            match("interface");
 
 
             }
@@ -546,7 +546,7 @@
             // InternalOCLinEcore.g:29:7: ( 'key' )
             // InternalOCLinEcore.g:29:9: 'key'
             {
-            match("key"); 
+            match("key");
 
 
             }
@@ -567,7 +567,7 @@
             // InternalOCLinEcore.g:30:7: ( 'library' )
             // InternalOCLinEcore.g:30:9: 'library'
             {
-            match("library"); 
+            match("library");
 
 
             }
@@ -588,7 +588,7 @@
             // InternalOCLinEcore.g:31:7: ( 'operation' )
             // InternalOCLinEcore.g:31:9: 'operation'
             {
-            match("operation"); 
+            match("operation");
 
 
             }
@@ -609,7 +609,7 @@
             // InternalOCLinEcore.g:32:7: ( 'ordered' )
             // InternalOCLinEcore.g:32:9: 'ordered'
             {
-            match("ordered"); 
+            match("ordered");
 
 
             }
@@ -630,7 +630,7 @@
             // InternalOCLinEcore.g:33:7: ( 'package' )
             // InternalOCLinEcore.g:33:9: 'package'
             {
-            match("package"); 
+            match("package");
 
 
             }
@@ -651,7 +651,7 @@
             // InternalOCLinEcore.g:34:7: ( 'postcondition' )
             // InternalOCLinEcore.g:34:9: 'postcondition'
             {
-            match("postcondition"); 
+            match("postcondition");
 
 
             }
@@ -672,7 +672,7 @@
             // InternalOCLinEcore.g:35:7: ( 'precondition' )
             // InternalOCLinEcore.g:35:9: 'precondition'
             {
-            match("precondition"); 
+            match("precondition");
 
 
             }
@@ -693,7 +693,7 @@
             // InternalOCLinEcore.g:36:7: ( 'primitive' )
             // InternalOCLinEcore.g:36:9: 'primitive'
             {
-            match("primitive"); 
+            match("primitive");
 
 
             }
@@ -714,7 +714,7 @@
             // InternalOCLinEcore.g:37:7: ( 'property' )
             // InternalOCLinEcore.g:37:9: 'property'
             {
-            match("property"); 
+            match("property");
 
 
             }
@@ -735,7 +735,7 @@
             // InternalOCLinEcore.g:38:7: ( 'readonly' )
             // InternalOCLinEcore.g:38:9: 'readonly'
             {
-            match("readonly"); 
+            match("readonly");
 
 
             }
@@ -756,7 +756,7 @@
             // InternalOCLinEcore.g:39:7: ( 'reference' )
             // InternalOCLinEcore.g:39:9: 'reference'
             {
-            match("reference"); 
+            match("reference");
 
 
             }
@@ -777,7 +777,7 @@
             // InternalOCLinEcore.g:40:7: ( 'resolve' )
             // InternalOCLinEcore.g:40:9: 'resolve'
             {
-            match("resolve"); 
+            match("resolve");
 
 
             }
@@ -798,7 +798,7 @@
             // InternalOCLinEcore.g:41:7: ( 'static' )
             // InternalOCLinEcore.g:41:9: 'static'
             {
-            match("static"); 
+            match("static");
 
 
             }
@@ -819,7 +819,7 @@
             // InternalOCLinEcore.g:42:7: ( 'throws' )
             // InternalOCLinEcore.g:42:9: 'throws'
             {
-            match("throws"); 
+            match("throws");
 
 
             }
@@ -840,7 +840,7 @@
             // InternalOCLinEcore.g:43:7: ( 'transient' )
             // InternalOCLinEcore.g:43:9: 'transient'
             {
-            match("transient"); 
+            match("transient");
 
 
             }
@@ -861,7 +861,7 @@
             // InternalOCLinEcore.g:44:7: ( 'unique' )
             // InternalOCLinEcore.g:44:9: 'unique'
             {
-            match("unique"); 
+            match("unique");
 
 
             }
@@ -882,7 +882,7 @@
             // InternalOCLinEcore.g:45:7: ( 'unsettable' )
             // InternalOCLinEcore.g:45:9: 'unsettable'
             {
-            match("unsettable"); 
+            match("unsettable");
 
 
             }
@@ -903,7 +903,7 @@
             // InternalOCLinEcore.g:46:7: ( 'volatile' )
             // InternalOCLinEcore.g:46:9: 'volatile'
             {
-            match("volatile"); 
+            match("volatile");
 
 
             }
@@ -924,7 +924,7 @@
             // InternalOCLinEcore.g:47:7: ( 'invariant' )
             // InternalOCLinEcore.g:47:9: 'invariant'
             {
-            match("invariant"); 
+            match("invariant");
 
 
             }
@@ -945,7 +945,7 @@
             // InternalOCLinEcore.g:48:7: ( '(' )
             // InternalOCLinEcore.g:48:9: '('
             {
-            match('('); 
+            match('(');
 
             }
 
@@ -965,7 +965,7 @@
             // InternalOCLinEcore.g:49:7: ( ')' )
             // InternalOCLinEcore.g:49:9: ')'
             {
-            match(')'); 
+            match(')');
 
             }
 
@@ -985,7 +985,7 @@
             // InternalOCLinEcore.g:50:7: ( ':' )
             // InternalOCLinEcore.g:50:9: ':'
             {
-            match(':'); 
+            match(':');
 
             }
 
@@ -1005,7 +1005,7 @@
             // InternalOCLinEcore.g:51:7: ( ';' )
             // InternalOCLinEcore.g:51:9: ';'
             {
-            match(';'); 
+            match(';');
 
             }
 
@@ -1025,7 +1025,7 @@
             // InternalOCLinEcore.g:52:7: ( 'annotation' )
             // InternalOCLinEcore.g:52:9: 'annotation'
             {
-            match("annotation"); 
+            match("annotation");
 
 
             }
@@ -1046,7 +1046,7 @@
             // InternalOCLinEcore.g:53:7: ( ',' )
             // InternalOCLinEcore.g:53:9: ','
             {
-            match(','); 
+            match(',');
 
             }
 
@@ -1066,7 +1066,7 @@
             // InternalOCLinEcore.g:54:7: ( '{' )
             // InternalOCLinEcore.g:54:9: '{'
             {
-            match('{'); 
+            match('{');
 
             }
 
@@ -1086,7 +1086,7 @@
             // InternalOCLinEcore.g:55:7: ( '}' )
             // InternalOCLinEcore.g:55:9: '}'
             {
-            match('}'); 
+            match('}');
 
             }
 
@@ -1106,7 +1106,7 @@
             // InternalOCLinEcore.g:56:7: ( '=' )
             // InternalOCLinEcore.g:56:9: '='
             {
-            match('='); 
+            match('=');
 
             }
 
@@ -1126,7 +1126,7 @@
             // InternalOCLinEcore.g:57:7: ( '!derived' )
             // InternalOCLinEcore.g:57:9: '!derived'
             {
-            match("!derived"); 
+            match("!derived");
 
 
             }
@@ -1147,7 +1147,7 @@
             // InternalOCLinEcore.g:58:7: ( '!id' )
             // InternalOCLinEcore.g:58:9: '!id'
             {
-            match("!id"); 
+            match("!id");
 
 
             }
@@ -1168,7 +1168,7 @@
             // InternalOCLinEcore.g:59:7: ( '!ordered' )
             // InternalOCLinEcore.g:59:9: '!ordered'
             {
-            match("!ordered"); 
+            match("!ordered");
 
 
             }
@@ -1189,7 +1189,7 @@
             // InternalOCLinEcore.g:60:7: ( '!readonly' )
             // InternalOCLinEcore.g:60:9: '!readonly'
             {
-            match("!readonly"); 
+            match("!readonly");
 
 
             }
@@ -1210,7 +1210,7 @@
             // InternalOCLinEcore.g:61:7: ( '!transient' )
             // InternalOCLinEcore.g:61:9: '!transient'
             {
-            match("!transient"); 
+            match("!transient");
 
 
             }
@@ -1231,7 +1231,7 @@
             // InternalOCLinEcore.g:62:7: ( '!unique' )
             // InternalOCLinEcore.g:62:9: '!unique'
             {
-            match("!unique"); 
+            match("!unique");
 
 
             }
@@ -1252,7 +1252,7 @@
             // InternalOCLinEcore.g:63:7: ( '!unsettable' )
             // InternalOCLinEcore.g:63:9: '!unsettable'
             {
-            match("!unsettable"); 
+            match("!unsettable");
 
 
             }
@@ -1273,7 +1273,7 @@
             // InternalOCLinEcore.g:64:7: ( '!volatile' )
             // InternalOCLinEcore.g:64:9: '!volatile'
             {
-            match("!volatile"); 
+            match("!volatile");
 
 
             }
@@ -1294,7 +1294,7 @@
             // InternalOCLinEcore.g:65:7: ( 'serializable' )
             // InternalOCLinEcore.g:65:9: 'serializable'
             {
-            match("serializable"); 
+            match("serializable");
 
 
             }
@@ -1315,7 +1315,7 @@
             // InternalOCLinEcore.g:66:7: ( '!serializable' )
             // InternalOCLinEcore.g:66:9: '!serializable'
             {
-            match("!serializable"); 
+            match("!serializable");
 
 
             }
@@ -1336,7 +1336,7 @@
             // InternalOCLinEcore.g:67:7: ( 'documentation' )
             // InternalOCLinEcore.g:67:9: 'documentation'
             {
-            match("documentation"); 
+            match("documentation");
 
 
             }
@@ -1357,7 +1357,7 @@
             // InternalOCLinEcore.g:68:7: ( 'literal' )
             // InternalOCLinEcore.g:68:9: 'literal'
             {
-            match("literal"); 
+            match("literal");
 
 
             }
@@ -1378,7 +1378,7 @@
             // InternalOCLinEcore.g:69:7: ( '::*' )
             // InternalOCLinEcore.g:69:9: '::*'
             {
-            match("::*"); 
+            match("::*");
 
 
             }
@@ -1399,7 +1399,7 @@
             // InternalOCLinEcore.g:70:7: ( '#' )
             // InternalOCLinEcore.g:70:9: '#'
             {
-            match('#'); 
+            match('#');
 
             }
 
@@ -1419,7 +1419,7 @@
             // InternalOCLinEcore.g:71:7: ( '!composes' )
             // InternalOCLinEcore.g:71:9: '!composes'
             {
-            match("!composes"); 
+            match("!composes");
 
 
             }
@@ -1440,7 +1440,7 @@
             // InternalOCLinEcore.g:72:7: ( '!resolve' )
             // InternalOCLinEcore.g:72:9: '!resolve'
             {
-            match("!resolve"); 
+            match("!resolve");
 
 
             }
@@ -1461,7 +1461,7 @@
             // InternalOCLinEcore.g:73:7: ( 'sysml' )
             // InternalOCLinEcore.g:73:9: 'sysml'
             {
-            match("sysml"); 
+            match("sysml");
 
 
             }
@@ -1482,7 +1482,7 @@
             // InternalOCLinEcore.g:74:7: ( '<' )
             // InternalOCLinEcore.g:74:9: '<'
             {
-            match('<'); 
+            match('<');
 
             }
 
@@ -1502,7 +1502,7 @@
             // InternalOCLinEcore.g:75:7: ( '>' )
             // InternalOCLinEcore.g:75:9: '>'
             {
-            match('>'); 
+            match('>');
 
             }
 
@@ -1522,7 +1522,7 @@
             // InternalOCLinEcore.g:76:7: ( 'not' )
             // InternalOCLinEcore.g:76:9: 'not'
             {
-            match("not"); 
+            match("not");
 
 
             }
@@ -1543,7 +1543,7 @@
             // InternalOCLinEcore.g:77:7: ( '*' )
             // InternalOCLinEcore.g:77:9: '*'
             {
-            match('*'); 
+            match('*');
 
             }
 
@@ -1563,7 +1563,7 @@
             // InternalOCLinEcore.g:78:7: ( '/' )
             // InternalOCLinEcore.g:78:9: '/'
             {
-            match('/'); 
+            match('/');
 
             }
 
@@ -1583,7 +1583,7 @@
             // InternalOCLinEcore.g:79:7: ( '+' )
             // InternalOCLinEcore.g:79:9: '+'
             {
-            match('+'); 
+            match('+');
 
             }
 
@@ -1603,7 +1603,7 @@
             // InternalOCLinEcore.g:80:7: ( '>=' )
             // InternalOCLinEcore.g:80:9: '>='
             {
-            match(">="); 
+            match(">=");
 
 
             }
@@ -1624,7 +1624,7 @@
             // InternalOCLinEcore.g:81:7: ( '<=' )
             // InternalOCLinEcore.g:81:9: '<='
             {
-            match("<="); 
+            match("<=");
 
 
             }
@@ -1645,7 +1645,7 @@
             // InternalOCLinEcore.g:82:7: ( '<>' )
             // InternalOCLinEcore.g:82:9: '<>'
             {
-            match("<>"); 
+            match("<>");
 
 
             }
@@ -1666,7 +1666,7 @@
             // InternalOCLinEcore.g:83:7: ( 'and' )
             // InternalOCLinEcore.g:83:9: 'and'
             {
-            match("and"); 
+            match("and");
 
 
             }
@@ -1687,7 +1687,7 @@
             // InternalOCLinEcore.g:84:7: ( 'or' )
             // InternalOCLinEcore.g:84:9: 'or'
             {
-            match("or"); 
+            match("or");
 
 
             }
@@ -1708,7 +1708,7 @@
             // InternalOCLinEcore.g:85:7: ( 'xor' )
             // InternalOCLinEcore.g:85:9: 'xor'
             {
-            match("xor"); 
+            match("xor");
 
 
             }
@@ -1729,7 +1729,7 @@
             // InternalOCLinEcore.g:86:7: ( 'implies' )
             // InternalOCLinEcore.g:86:9: 'implies'
             {
-            match("implies"); 
+            match("implies");
 
 
             }
@@ -1750,7 +1750,7 @@
             // InternalOCLinEcore.g:87:7: ( '.' )
             // InternalOCLinEcore.g:87:9: '.'
             {
-            match('.'); 
+            match('.');
 
             }
 
@@ -1770,7 +1770,7 @@
             // InternalOCLinEcore.g:88:7: ( '->' )
             // InternalOCLinEcore.g:88:9: '->'
             {
-            match("->"); 
+            match("->");
 
 
             }
@@ -1791,7 +1791,7 @@
             // InternalOCLinEcore.g:89:7: ( '?.' )
             // InternalOCLinEcore.g:89:9: '?.'
             {
-            match("?."); 
+            match("?.");
 
 
             }
@@ -1812,7 +1812,7 @@
             // InternalOCLinEcore.g:90:7: ( '?->' )
             // InternalOCLinEcore.g:90:9: '?->'
             {
-            match("?->"); 
+            match("?->");
 
 
             }
@@ -1833,7 +1833,7 @@
             // InternalOCLinEcore.g:91:7: ( 'Map' )
             // InternalOCLinEcore.g:91:9: 'Map'
             {
-            match("Map"); 
+            match("Map");
 
 
             }
@@ -1854,7 +1854,7 @@
             // InternalOCLinEcore.g:92:7: ( 'Tuple' )
             // InternalOCLinEcore.g:92:9: 'Tuple'
             {
-            match("Tuple"); 
+            match("Tuple");
 
 
             }
@@ -1875,7 +1875,7 @@
             // InternalOCLinEcore.g:93:7: ( '::' )
             // InternalOCLinEcore.g:93:9: '::'
             {
-            match("::"); 
+            match("::");
 
 
             }
@@ -1896,7 +1896,7 @@
             // InternalOCLinEcore.g:94:8: ( 'Boolean' )
             // InternalOCLinEcore.g:94:10: 'Boolean'
             {
-            match("Boolean"); 
+            match("Boolean");
 
 
             }
@@ -1917,7 +1917,7 @@
             // InternalOCLinEcore.g:95:8: ( 'Integer' )
             // InternalOCLinEcore.g:95:10: 'Integer'
             {
-            match("Integer"); 
+            match("Integer");
 
 
             }
@@ -1938,7 +1938,7 @@
             // InternalOCLinEcore.g:96:8: ( 'Real' )
             // InternalOCLinEcore.g:96:10: 'Real'
             {
-            match("Real"); 
+            match("Real");
 
 
             }
@@ -1959,7 +1959,7 @@
             // InternalOCLinEcore.g:97:8: ( 'String' )
             // InternalOCLinEcore.g:97:10: 'String'
             {
-            match("String"); 
+            match("String");
 
 
             }
@@ -1980,7 +1980,7 @@
             // InternalOCLinEcore.g:98:8: ( 'UnlimitedNatural' )
             // InternalOCLinEcore.g:98:10: 'UnlimitedNatural'
             {
-            match("UnlimitedNatural"); 
+            match("UnlimitedNatural");
 
 
             }
@@ -2001,7 +2001,7 @@
             // InternalOCLinEcore.g:99:8: ( 'OclAny' )
             // InternalOCLinEcore.g:99:10: 'OclAny'
             {
-            match("OclAny"); 
+            match("OclAny");
 
 
             }
@@ -2022,7 +2022,7 @@
             // InternalOCLinEcore.g:100:8: ( 'OclInvalid' )
             // InternalOCLinEcore.g:100:10: 'OclInvalid'
             {
-            match("OclInvalid"); 
+            match("OclInvalid");
 
 
             }
@@ -2043,7 +2043,7 @@
             // InternalOCLinEcore.g:101:8: ( 'OclVoid' )
             // InternalOCLinEcore.g:101:10: 'OclVoid'
             {
-            match("OclVoid"); 
+            match("OclVoid");
 
 
             }
@@ -2064,7 +2064,7 @@
             // InternalOCLinEcore.g:102:8: ( 'Set' )
             // InternalOCLinEcore.g:102:10: 'Set'
             {
-            match("Set"); 
+            match("Set");
 
 
             }
@@ -2085,7 +2085,7 @@
             // InternalOCLinEcore.g:103:8: ( 'Bag' )
             // InternalOCLinEcore.g:103:10: 'Bag'
             {
-            match("Bag"); 
+            match("Bag");
 
 
             }
@@ -2106,7 +2106,7 @@
             // InternalOCLinEcore.g:104:8: ( 'Sequence' )
             // InternalOCLinEcore.g:104:10: 'Sequence'
             {
-            match("Sequence"); 
+            match("Sequence");
 
 
             }
@@ -2127,7 +2127,7 @@
             // InternalOCLinEcore.g:105:8: ( 'Collection' )
             // InternalOCLinEcore.g:105:10: 'Collection'
             {
-            match("Collection"); 
+            match("Collection");
 
 
             }
@@ -2148,7 +2148,7 @@
             // InternalOCLinEcore.g:106:8: ( 'OrderedSet' )
             // InternalOCLinEcore.g:106:10: 'OrderedSet'
             {
-            match("OrderedSet"); 
+            match("OrderedSet");
 
 
             }
@@ -2169,7 +2169,7 @@
             // InternalOCLinEcore.g:107:8: ( '..' )
             // InternalOCLinEcore.g:107:10: '..'
             {
-            match(".."); 
+            match("..");
 
 
             }
@@ -2190,7 +2190,7 @@
             // InternalOCLinEcore.g:108:8: ( '++' )
             // InternalOCLinEcore.g:108:10: '++'
             {
-            match("++"); 
+            match("++");
 
 
             }
@@ -2211,7 +2211,7 @@
             // InternalOCLinEcore.g:109:8: ( 'Lambda' )
             // InternalOCLinEcore.g:109:10: 'Lambda'
             {
-            match("Lambda"); 
+            match("Lambda");
 
 
             }
@@ -2232,7 +2232,7 @@
             // InternalOCLinEcore.g:110:8: ( '<-' )
             // InternalOCLinEcore.g:110:10: '<-'
             {
-            match("<-"); 
+            match("<-");
 
 
             }
@@ -2253,7 +2253,7 @@
             // InternalOCLinEcore.g:111:8: ( 'true' )
             // InternalOCLinEcore.g:111:10: 'true'
             {
-            match("true"); 
+            match("true");
 
 
             }
@@ -2274,7 +2274,7 @@
             // InternalOCLinEcore.g:112:8: ( 'false' )
             // InternalOCLinEcore.g:112:10: 'false'
             {
-            match("false"); 
+            match("false");
 
 
             }
@@ -2295,7 +2295,7 @@
             // InternalOCLinEcore.g:113:8: ( 'invalid' )
             // InternalOCLinEcore.g:113:10: 'invalid'
             {
-            match("invalid"); 
+            match("invalid");
 
 
             }
@@ -2316,7 +2316,7 @@
             // InternalOCLinEcore.g:114:8: ( 'null' )
             // InternalOCLinEcore.g:114:10: 'null'
             {
-            match("null"); 
+            match("null");
 
 
             }
@@ -2337,7 +2337,7 @@
             // InternalOCLinEcore.g:115:8: ( '@' )
             // InternalOCLinEcore.g:115:10: '@'
             {
-            match('@'); 
+            match('@');
 
             }
 
@@ -2357,7 +2357,7 @@
             // InternalOCLinEcore.g:116:8: ( 'pre' )
             // InternalOCLinEcore.g:116:10: 'pre'
             {
-            match("pre"); 
+            match("pre");
 
 
             }
@@ -2378,7 +2378,7 @@
             // InternalOCLinEcore.g:117:8: ( '[' )
             // InternalOCLinEcore.g:117:10: '['
             {
-            match('['); 
+            match('[');
 
             }
 
@@ -2398,7 +2398,7 @@
             // InternalOCLinEcore.g:118:8: ( ']' )
             // InternalOCLinEcore.g:118:10: ']'
             {
-            match(']'); 
+            match(']');
 
             }
 
@@ -2418,7 +2418,7 @@
             // InternalOCLinEcore.g:119:8: ( 'in' )
             // InternalOCLinEcore.g:119:10: 'in'
             {
-            match("in"); 
+            match("in");
 
 
             }
@@ -2439,7 +2439,7 @@
             // InternalOCLinEcore.g:120:8: ( '|' )
             // InternalOCLinEcore.g:120:10: '|'
             {
-            match('|'); 
+            match('|');
 
             }
 
@@ -2459,7 +2459,7 @@
             // InternalOCLinEcore.g:121:8: ( 'if' )
             // InternalOCLinEcore.g:121:10: 'if'
             {
-            match("if"); 
+            match("if");
 
 
             }
@@ -2480,7 +2480,7 @@
             // InternalOCLinEcore.g:122:8: ( 'then' )
             // InternalOCLinEcore.g:122:10: 'then'
             {
-            match("then"); 
+            match("then");
 
 
             }
@@ -2501,7 +2501,7 @@
             // InternalOCLinEcore.g:123:8: ( 'else' )
             // InternalOCLinEcore.g:123:10: 'else'
             {
-            match("else"); 
+            match("else");
 
 
             }
@@ -2522,7 +2522,7 @@
             // InternalOCLinEcore.g:124:8: ( 'endif' )
             // InternalOCLinEcore.g:124:10: 'endif'
             {
-            match("endif"); 
+            match("endif");
 
 
             }
@@ -2543,7 +2543,7 @@
             // InternalOCLinEcore.g:125:8: ( 'elseif' )
             // InternalOCLinEcore.g:125:10: 'elseif'
             {
-            match("elseif"); 
+            match("elseif");
 
 
             }
@@ -2564,7 +2564,7 @@
             // InternalOCLinEcore.g:126:8: ( 'let' )
             // InternalOCLinEcore.g:126:10: 'let'
             {
-            match("let"); 
+            match("let");
 
 
             }
@@ -2585,7 +2585,7 @@
             // InternalOCLinEcore.g:127:8: ( 'self' )
             // InternalOCLinEcore.g:127:10: 'self'
             {
-            match("self"); 
+            match("self");
 
 
             }
@@ -2606,7 +2606,7 @@
             // InternalOCLinEcore.g:128:8: ( '|?' )
             // InternalOCLinEcore.g:128:10: '|?'
             {
-            match("|?"); 
+            match("|?");
 
 
             }
@@ -2627,7 +2627,7 @@
             // InternalOCLinEcore.g:129:8: ( '|1' )
             // InternalOCLinEcore.g:129:10: '|1'
             {
-            match("|1"); 
+            match("|1");
 
 
             }
@@ -2648,7 +2648,7 @@
             // InternalOCLinEcore.g:130:8: ( '?' )
             // InternalOCLinEcore.g:130:10: '?'
             {
-            match('?'); 
+            match('?');
 
             }
 
@@ -2668,7 +2668,7 @@
             // InternalOCLinEcore.g:131:8: ( '&&' )
             // InternalOCLinEcore.g:131:10: '&&'
             {
-            match("&&"); 
+            match("&&");
 
 
             }
@@ -2689,7 +2689,7 @@
             // InternalOCLinEcore.g:9914:22: ( '\\u00A3$%^\\u00A3$%^' )
             // InternalOCLinEcore.g:9914:24: '\\u00A3$%^\\u00A3$%^'
             {
-            match("\u00A3$%^\u00A3$%^"); 
+            match("\u00A3$%^\u00A3$%^");
 
 
             }
@@ -2708,7 +2708,7 @@
             // InternalOCLinEcore.g:9916:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
             // InternalOCLinEcore.g:9916:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
-            match('\\'); 
+            match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
                 input.consume();
 
@@ -2759,7 +2759,7 @@
             // InternalOCLinEcore.g:9920:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
             // InternalOCLinEcore.g:9920:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
-            match('\"'); 
+            match('\"');
             // InternalOCLinEcore.g:9920:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
@@ -2778,7 +2778,7 @@
             	case 1 :
             	    // InternalOCLinEcore.g:9920:34: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -2803,7 +2803,7 @@
                 }
             } while (true);
 
-            match('\"'); 
+            match('\"');
 
             }
 
@@ -2823,7 +2823,7 @@
             // InternalOCLinEcore.g:9922:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             // InternalOCLinEcore.g:9922:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
-            match('\''); 
+            match('\'');
             // InternalOCLinEcore.g:9922:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
@@ -2842,7 +2842,7 @@
             	case 1 :
             	    // InternalOCLinEcore.g:9922:35: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -2867,7 +2867,7 @@
                 }
             } while (true);
 
-            match('\''); 
+            match('\'');
 
             }
 
@@ -2887,7 +2887,7 @@
             // InternalOCLinEcore.g:9924:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
             // InternalOCLinEcore.g:9924:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
-            match("/'"); 
+            match("/'");
 
             // InternalOCLinEcore.g:9924:38: ( options {greedy=false; } : . )*
             loop3:
@@ -2916,7 +2916,7 @@
             	case 1 :
             	    // InternalOCLinEcore.g:9924:66: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -2926,7 +2926,7 @@
                 }
             } while (true);
 
-            match("'/"); 
+            match("'/");
 
 
             }
@@ -2947,7 +2947,7 @@
             // InternalOCLinEcore.g:9926:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
             // InternalOCLinEcore.g:9926:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
-            mRULE_LETTER_CHARACTER(); 
+            mRULE_LETTER_CHARACTER();
             // InternalOCLinEcore.g:9926:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
@@ -3000,8 +3000,8 @@
             // InternalOCLinEcore.g:9928:17: ( '_' RULE_SINGLE_QUOTED_STRING )
             // InternalOCLinEcore.g:9928:19: '_' RULE_SINGLE_QUOTED_STRING
             {
-            match('_'); 
-            mRULE_SINGLE_QUOTED_STRING(); 
+            match('_');
+            mRULE_SINGLE_QUOTED_STRING();
 
             }
 
@@ -3037,7 +3037,7 @@
             	case 1 :
             	    // InternalOCLinEcore.g:9930:13: '0' .. '9'
             	    {
-            	    matchRange('0','9'); 
+            	    matchRange('0','9');
 
             	    }
             	    break;
@@ -3070,7 +3070,7 @@
             // InternalOCLinEcore.g:9932:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
             // InternalOCLinEcore.g:9932:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
-            match("/*"); 
+            match("/*");
 
             // InternalOCLinEcore.g:9932:24: ( options {greedy=false; } : . )*
             loop6:
@@ -3099,7 +3099,7 @@
             	case 1 :
             	    // InternalOCLinEcore.g:9932:52: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -3109,7 +3109,7 @@
                 }
             } while (true);
 
-            match("*/"); 
+            match("*/");
 
 
             }
@@ -3130,7 +3130,7 @@
             // InternalOCLinEcore.g:9934:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
             // InternalOCLinEcore.g:9934:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
-            match("--"); 
+            match("--");
 
             // InternalOCLinEcore.g:9934:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
@@ -3187,14 +3187,14 @@
                         case 1 :
                             // InternalOCLinEcore.g:9934:41: '\\r'
                             {
-                            match('\r'); 
+                            match('\r');
 
                             }
                             break;
 
                     }
 
-                    match('\n'); 
+                    match('\n');
 
                     }
                     break;
@@ -3277,7 +3277,7 @@
             // InternalOCLinEcore.g:9938:16: ( . )
             // InternalOCLinEcore.g:9938:18: .
             {
-            matchAny(); 
+            matchAny();
 
             }
 
@@ -3297,924 +3297,924 @@
             case 1 :
                 // InternalOCLinEcore.g:1:10: T__17
                 {
-                mT__17(); 
+                mT__17();
 
                 }
                 break;
             case 2 :
                 // InternalOCLinEcore.g:1:16: T__18
                 {
-                mT__18(); 
+                mT__18();
 
                 }
                 break;
             case 3 :
                 // InternalOCLinEcore.g:1:22: T__19
                 {
-                mT__19(); 
+                mT__19();
 
                 }
                 break;
             case 4 :
                 // InternalOCLinEcore.g:1:28: T__20
                 {
-                mT__20(); 
+                mT__20();
 
                 }
                 break;
             case 5 :
                 // InternalOCLinEcore.g:1:34: T__21
                 {
-                mT__21(); 
+                mT__21();
 
                 }
                 break;
             case 6 :
                 // InternalOCLinEcore.g:1:40: T__22
                 {
-                mT__22(); 
+                mT__22();
 
                 }
                 break;
             case 7 :
                 // InternalOCLinEcore.g:1:46: T__23
                 {
-                mT__23(); 
+                mT__23();
 
                 }
                 break;
             case 8 :
                 // InternalOCLinEcore.g:1:52: T__24
                 {
-                mT__24(); 
+                mT__24();
 
                 }
                 break;
             case 9 :
                 // InternalOCLinEcore.g:1:58: T__25
                 {
-                mT__25(); 
+                mT__25();
 
                 }
                 break;
             case 10 :
                 // InternalOCLinEcore.g:1:64: T__26
                 {
-                mT__26(); 
+                mT__26();
 
                 }
                 break;
             case 11 :
                 // InternalOCLinEcore.g:1:70: T__27
                 {
-                mT__27(); 
+                mT__27();
 
                 }
                 break;
             case 12 :
                 // InternalOCLinEcore.g:1:76: T__28
                 {
-                mT__28(); 
+                mT__28();
 
                 }
                 break;
             case 13 :
                 // InternalOCLinEcore.g:1:82: T__29
                 {
-                mT__29(); 
+                mT__29();
 
                 }
                 break;
             case 14 :
                 // InternalOCLinEcore.g:1:88: T__30
                 {
-                mT__30(); 
+                mT__30();
 
                 }
                 break;
             case 15 :
                 // InternalOCLinEcore.g:1:94: T__31
                 {
-                mT__31(); 
+                mT__31();
 
                 }
                 break;
             case 16 :
                 // InternalOCLinEcore.g:1:100: T__32
                 {
-                mT__32(); 
+                mT__32();
 
                 }
                 break;
             case 17 :
                 // InternalOCLinEcore.g:1:106: T__33
                 {
-                mT__33(); 
+                mT__33();
 
                 }
                 break;
             case 18 :
                 // InternalOCLinEcore.g:1:112: T__34
                 {
-                mT__34(); 
+                mT__34();
 
                 }
                 break;
             case 19 :
                 // InternalOCLinEcore.g:1:118: T__35
                 {
-                mT__35(); 
+                mT__35();
 
                 }
                 break;
             case 20 :
                 // InternalOCLinEcore.g:1:124: T__36
                 {
-                mT__36(); 
+                mT__36();
 
                 }
                 break;
             case 21 :
                 // InternalOCLinEcore.g:1:130: T__37
                 {
-                mT__37(); 
+                mT__37();
 
                 }
                 break;
             case 22 :
                 // InternalOCLinEcore.g:1:136: T__38
                 {
-                mT__38(); 
+                mT__38();
 
                 }
                 break;
             case 23 :
                 // InternalOCLinEcore.g:1:142: T__39
                 {
-                mT__39(); 
+                mT__39();
 
                 }
                 break;
             case 24 :
                 // InternalOCLinEcore.g:1:148: T__40
                 {
-                mT__40(); 
+                mT__40();
 
                 }
                 break;
             case 25 :
                 // InternalOCLinEcore.g:1:154: T__41
                 {
-                mT__41(); 
+                mT__41();
 
                 }
                 break;
             case 26 :
                 // InternalOCLinEcore.g:1:160: T__42
                 {
-                mT__42(); 
+                mT__42();
 
                 }
                 break;
             case 27 :
                 // InternalOCLinEcore.g:1:166: T__43
                 {
-                mT__43(); 
+                mT__43();
 
                 }
                 break;
             case 28 :
                 // InternalOCLinEcore.g:1:172: T__44
                 {
-                mT__44(); 
+                mT__44();
 
                 }
                 break;
             case 29 :
                 // InternalOCLinEcore.g:1:178: T__45
                 {
-                mT__45(); 
+                mT__45();
 
                 }
                 break;
             case 30 :
                 // InternalOCLinEcore.g:1:184: T__46
                 {
-                mT__46(); 
+                mT__46();
 
                 }
                 break;
             case 31 :
                 // InternalOCLinEcore.g:1:190: T__47
                 {
-                mT__47(); 
+                mT__47();
 
                 }
                 break;
             case 32 :
                 // InternalOCLinEcore.g:1:196: T__48
                 {
-                mT__48(); 
+                mT__48();
 
                 }
                 break;
             case 33 :
                 // InternalOCLinEcore.g:1:202: T__49
                 {
-                mT__49(); 
+                mT__49();
 
                 }
                 break;
             case 34 :
                 // InternalOCLinEcore.g:1:208: T__50
                 {
-                mT__50(); 
+                mT__50();
 
                 }
                 break;
             case 35 :
                 // InternalOCLinEcore.g:1:214: T__51
                 {
-                mT__51(); 
+                mT__51();
 
                 }
                 break;
             case 36 :
                 // InternalOCLinEcore.g:1:220: T__52
                 {
-                mT__52(); 
+                mT__52();
 
                 }
                 break;
             case 37 :
                 // InternalOCLinEcore.g:1:226: T__53
                 {
-                mT__53(); 
+                mT__53();
 
                 }
                 break;
             case 38 :
                 // InternalOCLinEcore.g:1:232: T__54
                 {
-                mT__54(); 
+                mT__54();
 
                 }
                 break;
             case 39 :
                 // InternalOCLinEcore.g:1:238: T__55
                 {
-                mT__55(); 
+                mT__55();
 
                 }
                 break;
             case 40 :
                 // InternalOCLinEcore.g:1:244: T__56
                 {
-                mT__56(); 
+                mT__56();
 
                 }
                 break;
             case 41 :
                 // InternalOCLinEcore.g:1:250: T__57
                 {
-                mT__57(); 
+                mT__57();
 
                 }
                 break;
             case 42 :
                 // InternalOCLinEcore.g:1:256: T__58
                 {
-                mT__58(); 
+                mT__58();
 
                 }
                 break;
             case 43 :
                 // InternalOCLinEcore.g:1:262: T__59
                 {
-                mT__59(); 
+                mT__59();
 
                 }
                 break;
             case 44 :
                 // InternalOCLinEcore.g:1:268: T__60
                 {
-                mT__60(); 
+                mT__60();
 
                 }
                 break;
             case 45 :
                 // InternalOCLinEcore.g:1:274: T__61
                 {
-                mT__61(); 
+                mT__61();
 
                 }
                 break;
             case 46 :
                 // InternalOCLinEcore.g:1:280: T__62
                 {
-                mT__62(); 
+                mT__62();
 
                 }
                 break;
             case 47 :
                 // InternalOCLinEcore.g:1:286: T__63
                 {
-                mT__63(); 
+                mT__63();
 
                 }
                 break;
             case 48 :
                 // InternalOCLinEcore.g:1:292: T__64
                 {
-                mT__64(); 
+                mT__64();
 
                 }
                 break;
             case 49 :
                 // InternalOCLinEcore.g:1:298: T__65
                 {
-                mT__65(); 
+                mT__65();
 
                 }
                 break;
             case 50 :
                 // InternalOCLinEcore.g:1:304: T__66
                 {
-                mT__66(); 
+                mT__66();
 
                 }
                 break;
             case 51 :
                 // InternalOCLinEcore.g:1:310: T__67
                 {
-                mT__67(); 
+                mT__67();
 
                 }
                 break;
             case 52 :
                 // InternalOCLinEcore.g:1:316: T__68
                 {
-                mT__68(); 
+                mT__68();
 
                 }
                 break;
             case 53 :
                 // InternalOCLinEcore.g:1:322: T__69
                 {
-                mT__69(); 
+                mT__69();
 
                 }
                 break;
             case 54 :
                 // InternalOCLinEcore.g:1:328: T__70
                 {
-                mT__70(); 
+                mT__70();
 
                 }
                 break;
             case 55 :
                 // InternalOCLinEcore.g:1:334: T__71
                 {
-                mT__71(); 
+                mT__71();
 
                 }
                 break;
             case 56 :
                 // InternalOCLinEcore.g:1:340: T__72
                 {
-                mT__72(); 
+                mT__72();
 
                 }
                 break;
             case 57 :
                 // InternalOCLinEcore.g:1:346: T__73
                 {
-                mT__73(); 
+                mT__73();
 
                 }
                 break;
             case 58 :
                 // InternalOCLinEcore.g:1:352: T__74
                 {
-                mT__74(); 
+                mT__74();
 
                 }
                 break;
             case 59 :
                 // InternalOCLinEcore.g:1:358: T__75
                 {
-                mT__75(); 
+                mT__75();
 
                 }
                 break;
             case 60 :
                 // InternalOCLinEcore.g:1:364: T__76
                 {
-                mT__76(); 
+                mT__76();
 
                 }
                 break;
             case 61 :
                 // InternalOCLinEcore.g:1:370: T__77
                 {
-                mT__77(); 
+                mT__77();
 
                 }
                 break;
             case 62 :
                 // InternalOCLinEcore.g:1:376: T__78
                 {
-                mT__78(); 
+                mT__78();
 
                 }
                 break;
             case 63 :
                 // InternalOCLinEcore.g:1:382: T__79
                 {
-                mT__79(); 
+                mT__79();
 
                 }
                 break;
             case 64 :
                 // InternalOCLinEcore.g:1:388: T__80
                 {
-                mT__80(); 
+                mT__80();
 
                 }
                 break;
             case 65 :
                 // InternalOCLinEcore.g:1:394: T__81
                 {
-                mT__81(); 
+                mT__81();
 
                 }
                 break;
             case 66 :
                 // InternalOCLinEcore.g:1:400: T__82
                 {
-                mT__82(); 
+                mT__82();
 
                 }
                 break;
             case 67 :
                 // InternalOCLinEcore.g:1:406: T__83
                 {
-                mT__83(); 
+                mT__83();
 
                 }
                 break;
             case 68 :
                 // InternalOCLinEcore.g:1:412: T__84
                 {
-                mT__84(); 
+                mT__84();
 
                 }
                 break;
             case 69 :
                 // InternalOCLinEcore.g:1:418: T__85
                 {
-                mT__85(); 
+                mT__85();
 
                 }
                 break;
             case 70 :
                 // InternalOCLinEcore.g:1:424: T__86
                 {
-                mT__86(); 
+                mT__86();
 
                 }
                 break;
             case 71 :
                 // InternalOCLinEcore.g:1:430: T__87
                 {
-                mT__87(); 
+                mT__87();
 
                 }
                 break;
             case 72 :
                 // InternalOCLinEcore.g:1:436: T__88
                 {
-                mT__88(); 
+                mT__88();
 
                 }
                 break;
             case 73 :
                 // InternalOCLinEcore.g:1:442: T__89
                 {
-                mT__89(); 
+                mT__89();
 
                 }
                 break;
             case 74 :
                 // InternalOCLinEcore.g:1:448: T__90
                 {
-                mT__90(); 
+                mT__90();
 
                 }
                 break;
             case 75 :
                 // InternalOCLinEcore.g:1:454: T__91
                 {
-                mT__91(); 
+                mT__91();
 
                 }
                 break;
             case 76 :
                 // InternalOCLinEcore.g:1:460: T__92
                 {
-                mT__92(); 
+                mT__92();
 
                 }
                 break;
             case 77 :
                 // InternalOCLinEcore.g:1:466: T__93
                 {
-                mT__93(); 
+                mT__93();
 
                 }
                 break;
             case 78 :
                 // InternalOCLinEcore.g:1:472: T__94
                 {
-                mT__94(); 
+                mT__94();
 
                 }
                 break;
             case 79 :
                 // InternalOCLinEcore.g:1:478: T__95
                 {
-                mT__95(); 
+                mT__95();
 
                 }
                 break;
             case 80 :
                 // InternalOCLinEcore.g:1:484: T__96
                 {
-                mT__96(); 
+                mT__96();
 
                 }
                 break;
             case 81 :
                 // InternalOCLinEcore.g:1:490: T__97
                 {
-                mT__97(); 
+                mT__97();
 
                 }
                 break;
             case 82 :
                 // InternalOCLinEcore.g:1:496: T__98
                 {
-                mT__98(); 
+                mT__98();
 
                 }
                 break;
             case 83 :
                 // InternalOCLinEcore.g:1:502: T__99
                 {
-                mT__99(); 
+                mT__99();
 
                 }
                 break;
             case 84 :
                 // InternalOCLinEcore.g:1:508: T__100
                 {
-                mT__100(); 
+                mT__100();
 
                 }
                 break;
             case 85 :
                 // InternalOCLinEcore.g:1:515: T__101
                 {
-                mT__101(); 
+                mT__101();
 
                 }
                 break;
             case 86 :
                 // InternalOCLinEcore.g:1:522: T__102
                 {
-                mT__102(); 
+                mT__102();
 
                 }
                 break;
             case 87 :
                 // InternalOCLinEcore.g:1:529: T__103
                 {
-                mT__103(); 
+                mT__103();
 
                 }
                 break;
             case 88 :
                 // InternalOCLinEcore.g:1:536: T__104
                 {
-                mT__104(); 
+                mT__104();
 
                 }
                 break;
             case 89 :
                 // InternalOCLinEcore.g:1:543: T__105
                 {
-                mT__105(); 
+                mT__105();
 
                 }
                 break;
             case 90 :
                 // InternalOCLinEcore.g:1:550: T__106
                 {
-                mT__106(); 
+                mT__106();
 
                 }
                 break;
             case 91 :
                 // InternalOCLinEcore.g:1:557: T__107
                 {
-                mT__107(); 
+                mT__107();
 
                 }
                 break;
             case 92 :
                 // InternalOCLinEcore.g:1:564: T__108
                 {
-                mT__108(); 
+                mT__108();
 
                 }
                 break;
             case 93 :
                 // InternalOCLinEcore.g:1:571: T__109
                 {
-                mT__109(); 
+                mT__109();
 
                 }
                 break;
             case 94 :
                 // InternalOCLinEcore.g:1:578: T__110
                 {
-                mT__110(); 
+                mT__110();
 
                 }
                 break;
             case 95 :
                 // InternalOCLinEcore.g:1:585: T__111
                 {
-                mT__111(); 
+                mT__111();
 
                 }
                 break;
             case 96 :
                 // InternalOCLinEcore.g:1:592: T__112
                 {
-                mT__112(); 
+                mT__112();
 
                 }
                 break;
             case 97 :
                 // InternalOCLinEcore.g:1:599: T__113
                 {
-                mT__113(); 
+                mT__113();
 
                 }
                 break;
             case 98 :
                 // InternalOCLinEcore.g:1:606: T__114
                 {
-                mT__114(); 
+                mT__114();
 
                 }
                 break;
             case 99 :
                 // InternalOCLinEcore.g:1:613: T__115
                 {
-                mT__115(); 
+                mT__115();
 
                 }
                 break;
             case 100 :
                 // InternalOCLinEcore.g:1:620: T__116
                 {
-                mT__116(); 
+                mT__116();
 
                 }
                 break;
             case 101 :
                 // InternalOCLinEcore.g:1:627: T__117
                 {
-                mT__117(); 
+                mT__117();
 
                 }
                 break;
             case 102 :
                 // InternalOCLinEcore.g:1:634: T__118
                 {
-                mT__118(); 
+                mT__118();
 
                 }
                 break;
             case 103 :
                 // InternalOCLinEcore.g:1:641: T__119
                 {
-                mT__119(); 
+                mT__119();
 
                 }
                 break;
             case 104 :
                 // InternalOCLinEcore.g:1:648: T__120
                 {
-                mT__120(); 
+                mT__120();
 
                 }
                 break;
             case 105 :
                 // InternalOCLinEcore.g:1:655: T__121
                 {
-                mT__121(); 
+                mT__121();
 
                 }
                 break;
             case 106 :
                 // InternalOCLinEcore.g:1:662: T__122
                 {
-                mT__122(); 
+                mT__122();
 
                 }
                 break;
             case 107 :
                 // InternalOCLinEcore.g:1:669: T__123
                 {
-                mT__123(); 
+                mT__123();
 
                 }
                 break;
             case 108 :
                 // InternalOCLinEcore.g:1:676: T__124
                 {
-                mT__124(); 
+                mT__124();
 
                 }
                 break;
             case 109 :
                 // InternalOCLinEcore.g:1:683: T__125
                 {
-                mT__125(); 
+                mT__125();
 
                 }
                 break;
             case 110 :
                 // InternalOCLinEcore.g:1:690: T__126
                 {
-                mT__126(); 
+                mT__126();
 
                 }
                 break;
             case 111 :
                 // InternalOCLinEcore.g:1:697: T__127
                 {
-                mT__127(); 
+                mT__127();
 
                 }
                 break;
             case 112 :
                 // InternalOCLinEcore.g:1:704: T__128
                 {
-                mT__128(); 
+                mT__128();
 
                 }
                 break;
             case 113 :
                 // InternalOCLinEcore.g:1:711: T__129
                 {
-                mT__129(); 
+                mT__129();
 
                 }
                 break;
             case 114 :
                 // InternalOCLinEcore.g:1:718: T__130
                 {
-                mT__130(); 
+                mT__130();
 
                 }
                 break;
             case 115 :
                 // InternalOCLinEcore.g:1:725: T__131
                 {
-                mT__131(); 
+                mT__131();
 
                 }
                 break;
             case 116 :
                 // InternalOCLinEcore.g:1:732: T__132
                 {
-                mT__132(); 
+                mT__132();
 
                 }
                 break;
             case 117 :
                 // InternalOCLinEcore.g:1:739: T__133
                 {
-                mT__133(); 
+                mT__133();
 
                 }
                 break;
             case 118 :
                 // InternalOCLinEcore.g:1:746: T__134
                 {
-                mT__134(); 
+                mT__134();
 
                 }
                 break;
             case 119 :
                 // InternalOCLinEcore.g:1:753: T__135
                 {
-                mT__135(); 
+                mT__135();
 
                 }
                 break;
             case 120 :
                 // InternalOCLinEcore.g:1:760: T__136
                 {
-                mT__136(); 
+                mT__136();
 
                 }
                 break;
             case 121 :
                 // InternalOCLinEcore.g:1:767: T__137
                 {
-                mT__137(); 
+                mT__137();
 
                 }
                 break;
             case 122 :
                 // InternalOCLinEcore.g:1:774: RULE_UNQUOTED_STRING
                 {
-                mRULE_UNQUOTED_STRING(); 
+                mRULE_UNQUOTED_STRING();
 
                 }
                 break;
             case 123 :
                 // InternalOCLinEcore.g:1:795: RULE_DOUBLE_QUOTED_STRING
                 {
-                mRULE_DOUBLE_QUOTED_STRING(); 
+                mRULE_DOUBLE_QUOTED_STRING();
 
                 }
                 break;
             case 124 :
                 // InternalOCLinEcore.g:1:821: RULE_SINGLE_QUOTED_STRING
                 {
-                mRULE_SINGLE_QUOTED_STRING(); 
+                mRULE_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 125 :
                 // InternalOCLinEcore.g:1:847: RULE_ML_SINGLE_QUOTED_STRING
                 {
-                mRULE_ML_SINGLE_QUOTED_STRING(); 
+                mRULE_ML_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 126 :
                 // InternalOCLinEcore.g:1:876: RULE_SIMPLE_ID
                 {
-                mRULE_SIMPLE_ID(); 
+                mRULE_SIMPLE_ID();
 
                 }
                 break;
             case 127 :
                 // InternalOCLinEcore.g:1:891: RULE_ESCAPED_ID
                 {
-                mRULE_ESCAPED_ID(); 
+                mRULE_ESCAPED_ID();
 
                 }
                 break;
             case 128 :
                 // InternalOCLinEcore.g:1:907: RULE_INT
                 {
-                mRULE_INT(); 
+                mRULE_INT();
 
                 }
                 break;
             case 129 :
                 // InternalOCLinEcore.g:1:916: RULE_ML_COMMENT
                 {
-                mRULE_ML_COMMENT(); 
+                mRULE_ML_COMMENT();
 
                 }
                 break;
             case 130 :
                 // InternalOCLinEcore.g:1:932: RULE_SL_COMMENT
                 {
-                mRULE_SL_COMMENT(); 
+                mRULE_SL_COMMENT();
 
                 }
                 break;
             case 131 :
                 // InternalOCLinEcore.g:1:948: RULE_WS
                 {
-                mRULE_WS(); 
+                mRULE_WS();
 
                 }
                 break;
             case 132 :
                 // InternalOCLinEcore.g:1:956: RULE_ANY_OTHER
                 {
-                mRULE_ANY_OTHER(); 
+                mRULE_ANY_OTHER();
 
                 }
                 break;
@@ -4863,7 +4863,7 @@
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA11_54 = input.LA(1);
 
                         s = -1;
@@ -4873,7 +4873,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA11_55 = input.LA(1);
 
                         s = -1;
@@ -4883,7 +4883,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA11_0 = input.LA(1);
 
                         s = -1;
@@ -5016,6 +5016,6 @@
             throw nvae;
         }
     }
- 
+
 
 }
\ No newline at end of file
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 22004cf..c3ed9a8 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
@@ -1,4 +1,4 @@
-package org.eclipse.ocl.xtext.oclinecore.parser.antlr.internal; 
+package org.eclipse.ocl.xtext.oclinecore.parser.antlr.internal;
 
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
@@ -179,9 +179,9 @@
         }
         public InternalOCLinEcoreParser(TokenStream input, RecognizerSharedState state) {
             super(input, state);
-             
+
         }
-        
+
 
     public String[] getTokenNames() { return InternalOCLinEcoreParser.tokenNames; }
     public String getGrammarFileName() { return "InternalOCLinEcore.g"; }
@@ -192,20 +192,20 @@
       This grammar contains a lot of empty actions to work around a bug in ANTLR.
       Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases.
     */
-     
+
      	private OCLinEcoreGrammarAccess grammarAccess;
-     	
+
         public InternalOCLinEcoreParser(TokenStream input, OCLinEcoreGrammarAccess grammarAccess) {
             this(input);
             this.grammarAccess = grammarAccess;
             registerRules(grammarAccess.getGrammar());
         }
-        
+
         @Override
         protected String getFirstRuleName() {
-        	return "TopLevelCS";	
+        	return "TopLevelCS";
        	}
-       	
+
        	@Override
        	protected OCLinEcoreGrammarAccess getGrammarAccess() {
        		return grammarAccess;
@@ -226,7 +226,7 @@
             // InternalOCLinEcore.g:82:2: iv_ruleTopLevelCS= ruleTopLevelCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTopLevelCSRule()); 
+               newCompositeNode(grammarAccess.getTopLevelCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTopLevelCS=ruleTopLevelCS();
@@ -234,18 +234,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTopLevelCS; 
+               current =iv_ruleTopLevelCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -264,8 +264,8 @@
         EObject lv_ownedPackages_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:92:28: ( ( () (otherlv_1= 'module' ruleUnrestrictedName )? ( (lv_ownedImports_3_0= ruleImportCS ) )* ( (lv_ownedPackages_4_0= rulePackageCS ) )* ) )
             // InternalOCLinEcore.g:93:1: ( () (otherlv_1= 'module' ruleUnrestrictedName )? ( (lv_ownedImports_3_0= ruleImportCS ) )* ( (lv_ownedPackages_4_0= rulePackageCS ) )* )
@@ -274,19 +274,19 @@
             // InternalOCLinEcore.g:93:2: () (otherlv_1= 'module' ruleUnrestrictedName )? ( (lv_ownedImports_3_0= ruleImportCS ) )* ( (lv_ownedPackages_4_0= rulePackageCS ) )*
             {
             // InternalOCLinEcore.g:93:2: ()
-            // InternalOCLinEcore.g:94:2: 
+            // InternalOCLinEcore.g:94:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getTopLevelCSAccess().getTopLevelCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -306,17 +306,17 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTopLevelCSAccess().getModuleKeyword_1_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTopLevelCSAccess().getUnrestrictedNameParserRuleCall_1_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTopLevelCSAccess().getUnrestrictedNameParserRuleCall_1_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_4);
                     ruleUnrestrictedName();
@@ -324,9 +324,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -353,9 +353,9 @@
             	    // InternalOCLinEcore.g:119:3: lv_ownedImports_3_0= ruleImportCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getTopLevelCSAccess().getOwnedImportsImportCSParserRuleCall_2_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getTopLevelCSAccess().getOwnedImportsImportCSParserRuleCall_2_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_4);
             	    lv_ownedImports_3_0=ruleImportCS();
@@ -368,12 +368,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getTopLevelCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedImports",
-            	              		lv_ownedImports_3_0, 
+            	              		lv_ownedImports_3_0,
             	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ImportCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -406,9 +406,9 @@
             	    // InternalOCLinEcore.g:137:3: lv_ownedPackages_4_0= rulePackageCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getTopLevelCSAccess().getOwnedPackagesPackageCSParserRuleCall_3_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getTopLevelCSAccess().getOwnedPackagesPackageCSParserRuleCall_3_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_5);
             	    lv_ownedPackages_4_0=rulePackageCS();
@@ -421,12 +421,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getTopLevelCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPackages",
-            	              		lv_ownedPackages_4_0, 
+            	              		lv_ownedPackages_4_0,
             	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.PackageCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -447,14 +447,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -475,7 +475,7 @@
             // InternalOCLinEcore.g:165:2: iv_ruleSIGNED= ruleSIGNED EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getSIGNEDRule()); 
+               newCompositeNode(grammarAccess.getSIGNEDRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleSIGNED=ruleSIGNED();
@@ -483,18 +483,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleSIGNED.getText(); 
+               current =iv_ruleSIGNED.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -510,8 +510,8 @@
         Token kw=null;
         Token this_INT_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:175:28: ( ( (kw= '-' )? this_INT_1= RULE_INT ) )
             // InternalOCLinEcore.g:176:1: ( (kw= '-' )? this_INT_1= RULE_INT )
@@ -534,8 +534,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getSIGNEDAccess().getHyphenMinusKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getSIGNEDAccess().getHyphenMinusKeyword_0());
+
                     }
 
                     }
@@ -547,12 +547,12 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_INT_1);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_INT_1, grammarAccess.getSIGNEDAccess().getINTTerminalRuleCall_1()); 
-                  
+
+                  newLeafNode(this_INT_1, grammarAccess.getSIGNEDAccess().getINTTerminalRuleCall_1());
+
             }
 
             }
@@ -561,14 +561,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -589,7 +589,7 @@
             // InternalOCLinEcore.g:199:2: iv_ruleEnumerationLiteralName= ruleEnumerationLiteralName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEnumerationLiteralNameRule()); 
+               newCompositeNode(grammarAccess.getEnumerationLiteralNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEnumerationLiteralName=ruleEnumerationLiteralName();
@@ -597,18 +597,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEnumerationLiteralName.getText(); 
+               current =iv_ruleEnumerationLiteralName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -625,8 +625,8 @@
         AntlrDatatypeRuleToken this_EssentialOCLUnrestrictedName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:209:28: ( (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName | kw= 'abstract' | kw= 'attribute' | kw= 'body' | kw= 'callable' | kw= 'class' | kw= 'composes' | kw= 'datatype' | kw= 'definition' | kw= 'derivation' | kw= 'derived' | kw= 'enum' | kw= 'extends' | kw= 'id' | kw= 'import' | kw= 'initial' | kw= 'interface' | kw= 'key' | kw= 'library' | kw= 'module' | kw= 'operation' | kw= 'ordered' | kw= 'package' | kw= 'postcondition' | kw= 'precondition' | kw= 'primitive' | kw= 'property' | kw= 'readonly' | kw= 'reference' | kw= 'resolve' | kw= 'static' | kw= 'throws' | kw= 'transient' | kw= 'unique' | kw= 'unsettable' | kw= 'volatile' ) )
             // InternalOCLinEcore.g:210:1: (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName | kw= 'abstract' | kw= 'attribute' | kw= 'body' | kw= 'callable' | kw= 'class' | kw= 'composes' | kw= 'datatype' | kw= 'definition' | kw= 'derivation' | kw= 'derived' | kw= 'enum' | kw= 'extends' | kw= 'id' | kw= 'import' | kw= 'initial' | kw= 'interface' | kw= 'key' | kw= 'library' | kw= 'module' | kw= 'operation' | kw= 'ordered' | kw= 'package' | kw= 'postcondition' | kw= 'precondition' | kw= 'primitive' | kw= 'property' | kw= 'readonly' | kw= 'reference' | kw= 'resolve' | kw= 'static' | kw= 'throws' | kw= 'transient' | kw= 'unique' | kw= 'unsettable' | kw= 'volatile' )
@@ -828,9 +828,9 @@
                     // InternalOCLinEcore.g:211:5: this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getEnumerationLiteralNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getEnumerationLiteralNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_EssentialOCLUnrestrictedName_0=ruleEssentialOCLUnrestrictedName();
@@ -840,12 +840,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_EssentialOCLUnrestrictedName_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -857,8 +857,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getAbstractKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getAbstractKeyword_1());
+
                     }
 
                     }
@@ -870,8 +870,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getAttributeKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getAttributeKeyword_2());
+
                     }
 
                     }
@@ -883,8 +883,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getBodyKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getBodyKeyword_3());
+
                     }
 
                     }
@@ -896,8 +896,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getCallableKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getCallableKeyword_4());
+
                     }
 
                     }
@@ -909,8 +909,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getClassKeyword_5()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getClassKeyword_5());
+
                     }
 
                     }
@@ -922,8 +922,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getComposesKeyword_6()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getComposesKeyword_6());
+
                     }
 
                     }
@@ -935,8 +935,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDatatypeKeyword_7()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDatatypeKeyword_7());
+
                     }
 
                     }
@@ -948,8 +948,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDefinitionKeyword_8()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDefinitionKeyword_8());
+
                     }
 
                     }
@@ -961,8 +961,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDerivationKeyword_9()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDerivationKeyword_9());
+
                     }
 
                     }
@@ -974,8 +974,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDerivedKeyword_10()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getDerivedKeyword_10());
+
                     }
 
                     }
@@ -987,8 +987,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getEnumKeyword_11()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getEnumKeyword_11());
+
                     }
 
                     }
@@ -1000,8 +1000,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getExtendsKeyword_12()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getExtendsKeyword_12());
+
                     }
 
                     }
@@ -1013,8 +1013,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getIdKeyword_13()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getIdKeyword_13());
+
                     }
 
                     }
@@ -1026,8 +1026,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getImportKeyword_14()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getImportKeyword_14());
+
                     }
 
                     }
@@ -1039,8 +1039,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getInitialKeyword_15()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getInitialKeyword_15());
+
                     }
 
                     }
@@ -1052,8 +1052,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getInterfaceKeyword_16()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getInterfaceKeyword_16());
+
                     }
 
                     }
@@ -1065,8 +1065,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getKeyKeyword_17()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getKeyKeyword_17());
+
                     }
 
                     }
@@ -1078,8 +1078,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getLibraryKeyword_18()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getLibraryKeyword_18());
+
                     }
 
                     }
@@ -1091,8 +1091,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getModuleKeyword_19()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getModuleKeyword_19());
+
                     }
 
                     }
@@ -1104,8 +1104,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getOperationKeyword_20()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getOperationKeyword_20());
+
                     }
 
                     }
@@ -1117,8 +1117,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getOrderedKeyword_21()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getOrderedKeyword_21());
+
                     }
 
                     }
@@ -1130,8 +1130,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPackageKeyword_22()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPackageKeyword_22());
+
                     }
 
                     }
@@ -1143,8 +1143,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPostconditionKeyword_23()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPostconditionKeyword_23());
+
                     }
 
                     }
@@ -1156,8 +1156,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPreconditionKeyword_24()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPreconditionKeyword_24());
+
                     }
 
                     }
@@ -1169,8 +1169,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPrimitiveKeyword_25()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPrimitiveKeyword_25());
+
                     }
 
                     }
@@ -1182,8 +1182,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPropertyKeyword_26()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getPropertyKeyword_26());
+
                     }
 
                     }
@@ -1195,8 +1195,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getReadonlyKeyword_27()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getReadonlyKeyword_27());
+
                     }
 
                     }
@@ -1208,8 +1208,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getReferenceKeyword_28()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getReferenceKeyword_28());
+
                     }
 
                     }
@@ -1221,8 +1221,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getResolveKeyword_29()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getResolveKeyword_29());
+
                     }
 
                     }
@@ -1234,8 +1234,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getStaticKeyword_30()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getStaticKeyword_30());
+
                     }
 
                     }
@@ -1247,8 +1247,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getThrowsKeyword_31()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getThrowsKeyword_31());
+
                     }
 
                     }
@@ -1260,8 +1260,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getTransientKeyword_32()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getTransientKeyword_32());
+
                     }
 
                     }
@@ -1273,8 +1273,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getUniqueKeyword_33()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getUniqueKeyword_33());
+
                     }
 
                     }
@@ -1286,8 +1286,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getUnsettableKeyword_34()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getUnsettableKeyword_34());
+
                     }
 
                     }
@@ -1299,8 +1299,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getVolatileKeyword_35()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEnumerationLiteralNameAccess().getVolatileKeyword_35());
+
                     }
 
                     }
@@ -1312,14 +1312,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1340,7 +1340,7 @@
             // InternalOCLinEcore.g:476:2: iv_ruleInvariantConstraintCS= ruleInvariantConstraintCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getInvariantConstraintCSRule()); 
+               newCompositeNode(grammarAccess.getInvariantConstraintCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleInvariantConstraintCS=ruleInvariantConstraintCS();
@@ -1348,18 +1348,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleInvariantConstraintCS; 
+               current =iv_ruleInvariantConstraintCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1386,8 +1386,8 @@
         EObject lv_ownedSpecification_7_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:486:28: ( ( ( (lv_isCallable_0_0= 'callable' ) )? ( (lv_stereotype_1_0= 'invariant' ) ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) (otherlv_3= '(' ( (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) ) otherlv_5= ')' )? )? ( (otherlv_6= ':' ( (lv_ownedSpecification_7_0= ruleSpecificationCS ) )? otherlv_8= ';' ) | otherlv_9= ';' ) ) )
             // InternalOCLinEcore.g:487:1: ( ( (lv_isCallable_0_0= 'callable' ) )? ( (lv_stereotype_1_0= 'invariant' ) ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) (otherlv_3= '(' ( (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) ) otherlv_5= ')' )? )? ( (otherlv_6= ':' ( (lv_ownedSpecification_7_0= ruleSpecificationCS ) )? otherlv_8= ';' ) | otherlv_9= ';' ) )
@@ -1413,7 +1413,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isCallable_0_0, grammarAccess.getInvariantConstraintCSAccess().getIsCallableCallableKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -1421,7 +1421,7 @@
                       	            current = createModelElement(grammarAccess.getInvariantConstraintCSRule());
                       	        }
                              		setWithLastConsumed(current, "isCallable", true, "callable");
-                      	    
+
                     }
 
                     }
@@ -1442,7 +1442,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_stereotype_1_0, grammarAccess.getInvariantConstraintCSAccess().getStereotypeInvariantKeyword_1_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -1450,7 +1450,7 @@
               	            current = createModelElement(grammarAccess.getInvariantConstraintCSRule());
               	        }
                      		setWithLastConsumed(current, "stereotype", lv_stereotype_1_0, "invariant");
-              	    
+
             }
 
             }
@@ -1476,9 +1476,9 @@
                     // InternalOCLinEcore.g:519:3: lv_name_2_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_9);
                     lv_name_2_0=ruleUnrestrictedName();
@@ -1491,12 +1491,12 @@
                       	            current = createModelElementForParent(grammarAccess.getInvariantConstraintCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_2_0, 
+                              		lv_name_2_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -1519,7 +1519,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_3, grammarAccess.getInvariantConstraintCSAccess().getLeftParenthesisKeyword_2_1_0());
-                                  
+
                             }
                             // InternalOCLinEcore.g:539:1: ( (lv_ownedMessageSpecification_4_0= ruleSpecificationCS ) )
                             // InternalOCLinEcore.g:540:1: (lv_ownedMessageSpecification_4_0= ruleSpecificationCS )
@@ -1528,9 +1528,9 @@
                             // InternalOCLinEcore.g:541:3: lv_ownedMessageSpecification_4_0= ruleSpecificationCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_2_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_2_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_11);
                             lv_ownedMessageSpecification_4_0=ruleSpecificationCS();
@@ -1543,12 +1543,12 @@
                               	            current = createModelElementForParent(grammarAccess.getInvariantConstraintCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedMessageSpecification",
-                                      		lv_ownedMessageSpecification_4_0, 
+                                      		lv_ownedMessageSpecification_4_0,
                                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -1560,7 +1560,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_5, grammarAccess.getInvariantConstraintCSAccess().getRightParenthesisKeyword_2_1_2());
-                                  
+
                             }
 
                             }
@@ -1602,7 +1602,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getInvariantConstraintCSAccess().getColonKeyword_3_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:565:1: ( (lv_ownedSpecification_7_0= ruleSpecificationCS ) )?
                     int alt9=2;
@@ -1619,9 +1619,9 @@
                             // InternalOCLinEcore.g:567:3: lv_ownedSpecification_7_0= ruleSpecificationCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getInvariantConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_14);
                             lv_ownedSpecification_7_0=ruleSpecificationCS();
@@ -1634,12 +1634,12 @@
                               	            current = createModelElementForParent(grammarAccess.getInvariantConstraintCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedSpecification",
-                                      		lv_ownedSpecification_7_0, 
+                                      		lv_ownedSpecification_7_0,
                                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -1654,7 +1654,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_8, grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_0_2());
-                          
+
                     }
 
                     }
@@ -1669,7 +1669,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_9, grammarAccess.getInvariantConstraintCSAccess().getSemicolonKeyword_3_1());
-                          
+
                     }
 
                     }
@@ -1684,14 +1684,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1712,7 +1712,7 @@
             // InternalOCLinEcore.g:602:2: iv_rulePostconditionConstraintCS= rulePostconditionConstraintCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPostconditionConstraintCSRule()); 
+               newCompositeNode(grammarAccess.getPostconditionConstraintCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePostconditionConstraintCS=rulePostconditionConstraintCS();
@@ -1720,18 +1720,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePostconditionConstraintCS; 
+               current =iv_rulePostconditionConstraintCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1756,8 +1756,8 @@
         EObject lv_ownedSpecification_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:612:28: ( ( ( (lv_stereotype_0_0= 'postcondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' ) )
             // InternalOCLinEcore.g:613:1: ( ( (lv_stereotype_0_0= 'postcondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' )
@@ -1775,7 +1775,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_stereotype_0_0, grammarAccess.getPostconditionConstraintCSAccess().getStereotypePostconditionKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -1783,7 +1783,7 @@
               	            current = createModelElement(grammarAccess.getPostconditionConstraintCSRule());
               	        }
                      		setWithLastConsumed(current, "stereotype", lv_stereotype_0_0, "postcondition");
-              	    
+
             }
 
             }
@@ -1809,9 +1809,9 @@
                     // InternalOCLinEcore.g:630:3: lv_name_1_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_16);
                     lv_name_1_0=ruleUnrestrictedName();
@@ -1824,12 +1824,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPostconditionConstraintCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -1852,7 +1852,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_2, grammarAccess.getPostconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0());
-                                  
+
                             }
                             // InternalOCLinEcore.g:650:1: ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) )
                             // InternalOCLinEcore.g:651:1: (lv_ownedMessageSpecification_3_0= ruleSpecificationCS )
@@ -1861,9 +1861,9 @@
                             // InternalOCLinEcore.g:652:3: lv_ownedMessageSpecification_3_0= ruleSpecificationCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_11);
                             lv_ownedMessageSpecification_3_0=ruleSpecificationCS();
@@ -1876,12 +1876,12 @@
                               	            current = createModelElementForParent(grammarAccess.getPostconditionConstraintCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedMessageSpecification",
-                                      		lv_ownedMessageSpecification_3_0, 
+                                      		lv_ownedMessageSpecification_3_0,
                                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -1893,7 +1893,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getPostconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2());
-                                  
+
                             }
 
                             }
@@ -1911,7 +1911,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getPostconditionConstraintCSAccess().getColonKeyword_2());
-                  
+
             }
             // InternalOCLinEcore.g:676:1: ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )?
             int alt13=2;
@@ -1928,9 +1928,9 @@
                     // InternalOCLinEcore.g:678:3: lv_ownedSpecification_6_0= ruleSpecificationCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPostconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_14);
                     lv_ownedSpecification_6_0=ruleSpecificationCS();
@@ -1943,12 +1943,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPostconditionConstraintCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedSpecification",
-                              		lv_ownedSpecification_6_0, 
+                              		lv_ownedSpecification_6_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -1963,7 +1963,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getPostconditionConstraintCSAccess().getSemicolonKeyword_4());
-                  
+
             }
 
             }
@@ -1972,14 +1972,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2000,7 +2000,7 @@
             // InternalOCLinEcore.g:708:2: iv_rulePreconditionConstraintCS= rulePreconditionConstraintCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPreconditionConstraintCSRule()); 
+               newCompositeNode(grammarAccess.getPreconditionConstraintCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePreconditionConstraintCS=rulePreconditionConstraintCS();
@@ -2008,18 +2008,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePreconditionConstraintCS; 
+               current =iv_rulePreconditionConstraintCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2044,8 +2044,8 @@
         EObject lv_ownedSpecification_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:718:28: ( ( ( (lv_stereotype_0_0= 'precondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' ) )
             // InternalOCLinEcore.g:719:1: ( ( (lv_stereotype_0_0= 'precondition' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )? otherlv_7= ';' )
@@ -2063,7 +2063,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_stereotype_0_0, grammarAccess.getPreconditionConstraintCSAccess().getStereotypePreconditionKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -2071,7 +2071,7 @@
               	            current = createModelElement(grammarAccess.getPreconditionConstraintCSRule());
               	        }
                      		setWithLastConsumed(current, "stereotype", lv_stereotype_0_0, "precondition");
-              	    
+
             }
 
             }
@@ -2097,9 +2097,9 @@
                     // InternalOCLinEcore.g:736:3: lv_name_1_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_16);
                     lv_name_1_0=ruleUnrestrictedName();
@@ -2112,12 +2112,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPreconditionConstraintCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2140,7 +2140,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_2, grammarAccess.getPreconditionConstraintCSAccess().getLeftParenthesisKeyword_1_1_0());
-                                  
+
                             }
                             // InternalOCLinEcore.g:756:1: ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) )
                             // InternalOCLinEcore.g:757:1: (lv_ownedMessageSpecification_3_0= ruleSpecificationCS )
@@ -2149,9 +2149,9 @@
                             // InternalOCLinEcore.g:758:3: lv_ownedMessageSpecification_3_0= ruleSpecificationCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_11);
                             lv_ownedMessageSpecification_3_0=ruleSpecificationCS();
@@ -2164,12 +2164,12 @@
                               	            current = createModelElementForParent(grammarAccess.getPreconditionConstraintCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedMessageSpecification",
-                                      		lv_ownedMessageSpecification_3_0, 
+                                      		lv_ownedMessageSpecification_3_0,
                                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -2181,7 +2181,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getPreconditionConstraintCSAccess().getRightParenthesisKeyword_1_1_2());
-                                  
+
                             }
 
                             }
@@ -2199,7 +2199,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getPreconditionConstraintCSAccess().getColonKeyword_2());
-                  
+
             }
             // InternalOCLinEcore.g:782:1: ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )?
             int alt16=2;
@@ -2216,9 +2216,9 @@
                     // InternalOCLinEcore.g:784:3: lv_ownedSpecification_6_0= ruleSpecificationCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPreconditionConstraintCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_14);
                     lv_ownedSpecification_6_0=ruleSpecificationCS();
@@ -2231,12 +2231,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPreconditionConstraintCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedSpecification",
-                              		lv_ownedSpecification_6_0, 
+                              		lv_ownedSpecification_6_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2251,7 +2251,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getPreconditionConstraintCSAccess().getSemicolonKeyword_4());
-                  
+
             }
 
             }
@@ -2260,14 +2260,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2288,7 +2288,7 @@
             // InternalOCLinEcore.g:814:2: iv_ruleAnnotationCS= ruleAnnotationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getAnnotationCSRule()); 
+               newCompositeNode(grammarAccess.getAnnotationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleAnnotationCS=ruleAnnotationCS();
@@ -2296,18 +2296,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleAnnotationCS; 
+               current =iv_ruleAnnotationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2341,8 +2341,8 @@
         EObject lv_ownedReferences_11_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:824:28: ( ( () otherlv_1= 'annotation' ( ( (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? ( (otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+ otherlv_12= '}' ) | otherlv_13= ';' ) ) )
             // InternalOCLinEcore.g:825:1: ( () otherlv_1= 'annotation' ( ( (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? ( (otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+ otherlv_12= '}' ) | otherlv_13= ';' ) )
@@ -2351,19 +2351,19 @@
             // InternalOCLinEcore.g:825:2: () otherlv_1= 'annotation' ( ( (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? ( (otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+ otherlv_12= '}' ) | otherlv_13= ';' )
             {
             // InternalOCLinEcore.g:825:2: ()
-            // InternalOCLinEcore.g:826:2: 
+            // InternalOCLinEcore.g:826:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getAnnotationCSAccess().getAnnotationCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -2372,7 +2372,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:838:1: ( ( (lv_name_2_1= ruleUnrestrictedName | lv_name_2_2= RULE_SINGLE_QUOTED_STRING ) ) )?
             int alt18=2;
@@ -2410,9 +2410,9 @@
                             // InternalOCLinEcore.g:841:3: lv_name_2_1= ruleUnrestrictedName
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getNameUnrestrictedNameParserRuleCall_2_0_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_19);
                             lv_name_2_1=ruleUnrestrictedName();
@@ -2425,12 +2425,12 @@
                               	            current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"name",
-                                      		lv_name_2_1, 
+                                      		lv_name_2_1,
                                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -2441,8 +2441,8 @@
                             lv_name_2_2=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_19); if (state.failed) return current;
                             if ( state.backtracking==0 ) {
 
-                              			newLeafNode(lv_name_2_2, grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); 
-                              		
+                              			newLeafNode(lv_name_2_2, grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
+
                             }
                             if ( state.backtracking==0 ) {
 
@@ -2450,11 +2450,11 @@
                               	            current = createModelElement(grammarAccess.getAnnotationCSRule());
                               	        }
                                      		setWithLastConsumed(
-                                     			current, 
+                                     			current,
                                      			"name",
-                                      		lv_name_2_2, 
+                                      		lv_name_2_2,
                                       		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
-                              	    
+
                             }
 
                             }
@@ -2486,7 +2486,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_3_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:878:1: ( (lv_ownedDetails_4_0= ruleDetailCS ) )
                     // InternalOCLinEcore.g:879:1: (lv_ownedDetails_4_0= ruleDetailCS )
@@ -2495,9 +2495,9 @@
                     // InternalOCLinEcore.g:880:3: lv_ownedDetails_4_0= ruleDetailCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_21);
                     lv_ownedDetails_4_0=ruleDetailCS();
@@ -2510,12 +2510,12 @@
                       	            current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedDetails",
-                              		lv_ownedDetails_4_0, 
+                              		lv_ownedDetails_4_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2542,7 +2542,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_5, grammarAccess.getAnnotationCSAccess().getCommaKeyword_3_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:900:1: ( (lv_ownedDetails_6_0= ruleDetailCS ) )
                     	    // InternalOCLinEcore.g:901:1: (lv_ownedDetails_6_0= ruleDetailCS )
@@ -2551,9 +2551,9 @@
                     	    // InternalOCLinEcore.g:902:3: lv_ownedDetails_6_0= ruleDetailCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_21);
                     	    lv_ownedDetails_6_0=ruleDetailCS();
@@ -2566,12 +2566,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedDetails",
-                    	              		lv_ownedDetails_6_0, 
+                    	              		lv_ownedDetails_6_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -2592,7 +2592,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_7, grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_3_3());
-                          
+
                     }
 
                     }
@@ -2628,7 +2628,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_8, grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_4_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:926:1: ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedContents_10_0= ruleModelElementCS ) ) | ( (lv_ownedReferences_11_0= ruleModelElementRefCS ) ) )+
                     int cnt21=0;
@@ -2712,9 +2712,9 @@
                     	    // InternalOCLinEcore.g:928:3: lv_ownedAnnotations_9_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_24);
                     	    lv_ownedAnnotations_9_0=ruleAnnotationElementCS();
@@ -2727,12 +2727,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_9_0, 
+                    	              		lv_ownedAnnotations_9_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -2753,9 +2753,9 @@
                     	    // InternalOCLinEcore.g:947:3: lv_ownedContents_10_0= ruleModelElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedContentsModelElementCSParserRuleCall_4_0_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedContentsModelElementCSParserRuleCall_4_0_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_24);
                     	    lv_ownedContents_10_0=ruleModelElementCS();
@@ -2768,12 +2768,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedContents",
-                    	              		lv_ownedContents_10_0, 
+                    	              		lv_ownedContents_10_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ModelElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -2794,9 +2794,9 @@
                     	    // InternalOCLinEcore.g:966:3: lv_ownedReferences_11_0= ruleModelElementRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedReferencesModelElementRefCSParserRuleCall_4_0_1_2_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedReferencesModelElementRefCSParserRuleCall_4_0_1_2_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_24);
                     	    lv_ownedReferences_11_0=ruleModelElementRefCS();
@@ -2809,12 +2809,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedReferences",
-                    	              		lv_ownedReferences_11_0, 
+                    	              		lv_ownedReferences_11_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ModelElementRefCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -2840,7 +2840,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_12, grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_4_0_2());
-                          
+
                     }
 
                     }
@@ -2855,7 +2855,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_13, grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_4_1());
-                          
+
                     }
 
                     }
@@ -2870,14 +2870,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2898,7 +2898,7 @@
             // InternalOCLinEcore.g:1001:2: iv_ruleAnnotationElementCS= ruleAnnotationElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getAnnotationElementCSRule()); 
+               newCompositeNode(grammarAccess.getAnnotationElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleAnnotationElementCS=ruleAnnotationElementCS();
@@ -2906,18 +2906,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleAnnotationElementCS; 
+               current =iv_ruleAnnotationElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2937,8 +2937,8 @@
         EObject this_SysMLCS_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:1011:28: ( (this_AnnotationCS_0= ruleAnnotationCS | this_DocumentationCS_1= ruleDocumentationCS | this_SysMLCS_2= ruleSysMLCS ) )
             // InternalOCLinEcore.g:1012:1: (this_AnnotationCS_0= ruleAnnotationCS | this_DocumentationCS_1= ruleDocumentationCS | this_SysMLCS_2= ruleSysMLCS )
@@ -2974,14 +2974,14 @@
                     // InternalOCLinEcore.g:1013:2: this_AnnotationCS_0= ruleAnnotationCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_AnnotationCS_0=ruleAnnotationCS();
@@ -2989,10 +2989,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_AnnotationCS_0; 
+
+                              current = this_AnnotationCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -3001,14 +3001,14 @@
                     // InternalOCLinEcore.g:1026:2: this_DocumentationCS_1= ruleDocumentationCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_DocumentationCS_1=ruleDocumentationCS();
@@ -3016,10 +3016,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_DocumentationCS_1; 
+
+                              current = this_DocumentationCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -3028,14 +3028,14 @@
                     // InternalOCLinEcore.g:1039:2: this_SysMLCS_2= ruleSysMLCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getSysMLCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getSysMLCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_SysMLCS_2=ruleSysMLCS();
@@ -3043,10 +3043,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_SysMLCS_2; 
+
+                              current = this_SysMLCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -3058,14 +3058,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3086,7 +3086,7 @@
             // InternalOCLinEcore.g:1060:2: iv_ruleAttributeCS= ruleAttributeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getAttributeCSRule()); 
+               newCompositeNode(grammarAccess.getAttributeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleAttributeCS=ruleAttributeCS();
@@ -3094,18 +3094,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleAttributeCS; 
+               current =iv_ruleAttributeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3165,8 +3165,8 @@
         EObject lv_ownedDefaultExpressions_39_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:1070:28: ( ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'attribute' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_8= '=' ( (lv_default_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( ( ( (lv_qualifiers_11_0= 'derived' ) ) | ( (lv_qualifiers_12_0= '!derived' ) ) | ( (lv_qualifiers_13_0= 'id' ) ) | ( (lv_qualifiers_14_0= '!id' ) ) | ( (lv_qualifiers_15_0= 'ordered' ) ) | ( (lv_qualifiers_16_0= '!ordered' ) ) | ( (lv_qualifiers_17_0= 'readonly' ) ) | ( (lv_qualifiers_18_0= '!readonly' ) ) | ( (lv_qualifiers_19_0= 'transient' ) ) | ( (lv_qualifiers_20_0= '!transient' ) ) | ( (lv_qualifiers_21_0= 'unique' ) ) | ( (lv_qualifiers_22_0= '!unique' ) ) | ( (lv_qualifiers_23_0= 'unsettable' ) ) | ( (lv_qualifiers_24_0= '!unsettable' ) ) | ( (lv_qualifiers_25_0= 'volatile' ) ) | ( (lv_qualifiers_26_0= '!volatile' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) | (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) )* otherlv_41= '}' ) | otherlv_42= ';' ) ) )
             // InternalOCLinEcore.g:1071:1: ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'attribute' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= ':' ( (lv_ownedType_7_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_8= '=' ( (lv_default_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( ( ( (lv_qualifiers_11_0= 'derived' ) ) | ( (lv_qualifiers_12_0= '!derived' ) ) | ( (lv_qualifiers_13_0= 'id' ) ) | ( (lv_qualifiers_14_0= '!id' ) ) | ( (lv_qualifiers_15_0= 'ordered' ) ) | ( (lv_qualifiers_16_0= '!ordered' ) ) | ( (lv_qualifiers_17_0= 'readonly' ) ) | ( (lv_qualifiers_18_0= '!readonly' ) ) | ( (lv_qualifiers_19_0= 'transient' ) ) | ( (lv_qualifiers_20_0= '!transient' ) ) | ( (lv_qualifiers_21_0= 'unique' ) ) | ( (lv_qualifiers_22_0= '!unique' ) ) | ( (lv_qualifiers_23_0= 'unsettable' ) ) | ( (lv_qualifiers_24_0= '!unsettable' ) ) | ( (lv_qualifiers_25_0= 'volatile' ) ) | ( (lv_qualifiers_26_0= '!volatile' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) | (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) )* otherlv_41= '}' ) | otherlv_42= ';' ) )
@@ -3201,7 +3201,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_qualifiers_0_0, grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_0_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -3209,7 +3209,7 @@
                       	            current = createModelElement(grammarAccess.getAttributeCSRule());
                       	        }
                              		addWithLastConsumed(current, "qualifiers", lv_qualifiers_0_0, "static");
-                      	    
+
                     }
 
                     }
@@ -3235,7 +3235,7 @@
                             if ( state.backtracking==0 ) {
 
                                       newLeafNode(lv_qualifiers_1_0, grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
-                                  
+
                             }
                             if ( state.backtracking==0 ) {
 
@@ -3243,7 +3243,7 @@
                               	            current = createModelElement(grammarAccess.getAttributeCSRule());
                               	        }
                                      		addWithLastConsumed(current, "qualifiers", lv_qualifiers_1_0, "definition");
-                              	    
+
                             }
 
                             }
@@ -3276,7 +3276,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_qualifiers_2_0, grammarAccess.getAttributeCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -3284,7 +3284,7 @@
                       	            current = createModelElement(grammarAccess.getAttributeCSRule());
                       	        }
                              		addWithLastConsumed(current, "qualifiers", lv_qualifiers_2_0, "definition");
-                      	    
+
                     }
 
                     }
@@ -3310,7 +3310,7 @@
                             if ( state.backtracking==0 ) {
 
                                       newLeafNode(lv_qualifiers_3_0, grammarAccess.getAttributeCSAccess().getQualifiersStaticKeyword_0_1_1_0());
-                                  
+
                             }
                             if ( state.backtracking==0 ) {
 
@@ -3318,7 +3318,7 @@
                               	            current = createModelElement(grammarAccess.getAttributeCSRule());
                               	        }
                                      		addWithLastConsumed(current, "qualifiers", lv_qualifiers_3_0, "static");
-                              	    
+
                             }
 
                             }
@@ -3342,7 +3342,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getAttributeCSAccess().getAttributeKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:1136:1: ( (lv_name_5_0= ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:1137:1: (lv_name_5_0= ruleUnrestrictedName )
@@ -3351,9 +3351,9 @@
             // InternalOCLinEcore.g:1138:3: lv_name_5_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getAttributeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getAttributeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_28);
             lv_name_5_0=ruleUnrestrictedName();
@@ -3366,12 +3366,12 @@
               	            current = createModelElementForParent(grammarAccess.getAttributeCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_5_0, 
+                      		lv_name_5_0,
                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -3394,7 +3394,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getAttributeCSAccess().getColonKeyword_3_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:1158:1: ( (lv_ownedType_7_0= ruleTypedMultiplicityRefCS ) )
                     // InternalOCLinEcore.g:1159:1: (lv_ownedType_7_0= ruleTypedMultiplicityRefCS )
@@ -3403,9 +3403,9 @@
                     // InternalOCLinEcore.g:1160:3: lv_ownedType_7_0= ruleTypedMultiplicityRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_3_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_3_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_30);
                     lv_ownedType_7_0=ruleTypedMultiplicityRefCS();
@@ -3418,12 +3418,12 @@
                       	            current = createModelElementForParent(grammarAccess.getAttributeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_7_0, 
+                              		lv_ownedType_7_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedMultiplicityRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -3452,7 +3452,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_8, grammarAccess.getAttributeCSAccess().getEqualsSignKeyword_4_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:1180:1: ( (lv_default_9_0= RULE_SINGLE_QUOTED_STRING ) )
                     // InternalOCLinEcore.g:1181:1: (lv_default_9_0= RULE_SINGLE_QUOTED_STRING )
@@ -3463,8 +3463,8 @@
                     lv_default_9_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_22); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_default_9_0, grammarAccess.getAttributeCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0()); 
-                      		
+                      			newLeafNode(lv_default_9_0, grammarAccess.getAttributeCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -3472,11 +3472,11 @@
                       	            current = createModelElement(grammarAccess.getAttributeCSRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"default",
-                              		lv_default_9_0, 
+                              		lv_default_9_0,
                               		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
-                      	    
+
                     }
 
                     }
@@ -3509,7 +3509,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_10, grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_5_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:1202:1: ( ( ( (lv_qualifiers_11_0= 'derived' ) ) | ( (lv_qualifiers_12_0= '!derived' ) ) | ( (lv_qualifiers_13_0= 'id' ) ) | ( (lv_qualifiers_14_0= '!id' ) ) | ( (lv_qualifiers_15_0= 'ordered' ) ) | ( (lv_qualifiers_16_0= '!ordered' ) ) | ( (lv_qualifiers_17_0= 'readonly' ) ) | ( (lv_qualifiers_18_0= '!readonly' ) ) | ( (lv_qualifiers_19_0= 'transient' ) ) | ( (lv_qualifiers_20_0= '!transient' ) ) | ( (lv_qualifiers_21_0= 'unique' ) ) | ( (lv_qualifiers_22_0= '!unique' ) ) | ( (lv_qualifiers_23_0= 'unsettable' ) ) | ( (lv_qualifiers_24_0= '!unsettable' ) ) | ( (lv_qualifiers_25_0= 'volatile' ) ) | ( (lv_qualifiers_26_0= '!volatile' ) ) ) (otherlv_27= ',' )? )+
                     int cnt31=0;
@@ -3632,7 +3632,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_11_0, grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_0_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3640,7 +3640,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_11_0, "derived");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3664,7 +3664,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_12_0, grammarAccess.getAttributeCSAccess().getQualifiersDerivedKeyword_5_1_0_1_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3672,7 +3672,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_12_0, "!derived");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3696,7 +3696,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_13_0, grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_2_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3704,7 +3704,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_13_0, "id");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3728,7 +3728,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_14_0, grammarAccess.getAttributeCSAccess().getQualifiersIdKeyword_5_1_0_3_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3736,7 +3736,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_14_0, "!id");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3760,7 +3760,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_15_0, grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_4_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3768,7 +3768,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_15_0, "ordered");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3792,7 +3792,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_16_0, grammarAccess.getAttributeCSAccess().getQualifiersOrderedKeyword_5_1_0_5_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3800,7 +3800,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_16_0, "!ordered");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3824,7 +3824,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_17_0, grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_6_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3832,7 +3832,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_17_0, "readonly");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3856,7 +3856,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_18_0, grammarAccess.getAttributeCSAccess().getQualifiersReadonlyKeyword_5_1_0_7_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3864,7 +3864,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_18_0, "!readonly");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3888,7 +3888,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_19_0, grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_8_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3896,7 +3896,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_19_0, "transient");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3920,7 +3920,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_20_0, grammarAccess.getAttributeCSAccess().getQualifiersTransientKeyword_5_1_0_9_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3928,7 +3928,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_20_0, "!transient");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3952,7 +3952,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_21_0, grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_10_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3960,7 +3960,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_21_0, "unique");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -3984,7 +3984,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_22_0, grammarAccess.getAttributeCSAccess().getQualifiersUniqueKeyword_5_1_0_11_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -3992,7 +3992,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_22_0, "!unique");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -4016,7 +4016,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_23_0, grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_12_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -4024,7 +4024,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_23_0, "unsettable");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -4048,7 +4048,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_24_0, grammarAccess.getAttributeCSAccess().getQualifiersUnsettableKeyword_5_1_0_13_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -4056,7 +4056,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_24_0, "!unsettable");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -4080,7 +4080,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_25_0, grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_14_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -4088,7 +4088,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_25_0, "volatile");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -4112,7 +4112,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_26_0, grammarAccess.getAttributeCSAccess().getQualifiersVolatileKeyword_5_1_0_15_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -4120,7 +4120,7 @@
                     	              	            current = createModelElement(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_26_0, "!volatile");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -4149,7 +4149,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                  	newLeafNode(otherlv_27, grammarAccess.getAttributeCSAccess().getCommaKeyword_5_1_1());
-                    	                  
+
                     	            }
 
                     	            }
@@ -4175,7 +4175,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_28, grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_5_2());
-                          
+
                     }
 
                     }
@@ -4211,7 +4211,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_29, grammarAccess.getAttributeCSAccess().getLeftCurlyBracketKeyword_6_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:1469:1: ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | (otherlv_31= 'initial' ( ruleUnrestrictedName )? otherlv_33= ':' ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )? otherlv_35= ';' ) | (otherlv_36= 'derivation' ( ruleUnrestrictedName )? otherlv_38= ':' ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )? otherlv_40= ';' ) )*
                     loop37:
@@ -4249,9 +4249,9 @@
                     	    // InternalOCLinEcore.g:1471:3: lv_ownedAnnotations_30_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_35);
                     	    lv_ownedAnnotations_30_0=ruleAnnotationElementCS();
@@ -4264,12 +4264,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getAttributeCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_30_0, 
+                    	              		lv_ownedAnnotations_30_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -4290,7 +4290,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_31, grammarAccess.getAttributeCSAccess().getInitialKeyword_6_0_1_1_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:1492:1: ( ruleUnrestrictedName )?
                     	    int alt33=2;
@@ -4304,14 +4304,14 @@
                     	            // InternalOCLinEcore.g:1493:2: ruleUnrestrictedName
                     	            {
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	              	  /* */ 
-                    	              	
+
+                    	              	  /* */
+
                     	            }
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	                      newCompositeNode(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_1_1()); 
-                    	                  
+
+                    	                      newCompositeNode(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_1_1());
+
                     	            }
                     	            pushFollow(FollowSets000.FOLLOW_17);
                     	            ruleUnrestrictedName();
@@ -4319,9 +4319,9 @@
                     	            state._fsp--;
                     	            if (state.failed) return current;
                     	            if ( state.backtracking==0 ) {
-                    	               
+
                     	                      afterParserOrEnumRuleCall();
-                    	                  
+
                     	            }
 
                     	            }
@@ -4333,7 +4333,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_33, grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_1_2());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:1507:1: ( (lv_ownedDefaultExpressions_34_0= ruleSpecificationCS ) )?
                     	    int alt34=2;
@@ -4350,9 +4350,9 @@
                     	            // InternalOCLinEcore.g:1509:3: lv_ownedDefaultExpressions_34_0= ruleSpecificationCS
                     	            {
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	              	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_1_3_0()); 
-                    	              	    
+
+                    	              	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_1_3_0());
+
                     	            }
                     	            pushFollow(FollowSets000.FOLLOW_14);
                     	            lv_ownedDefaultExpressions_34_0=ruleSpecificationCS();
@@ -4365,12 +4365,12 @@
                     	              	            current = createModelElementForParent(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		add(
-                    	                     			current, 
+                    	                     			current,
                     	                     			"ownedDefaultExpressions",
-                    	                      		lv_ownedDefaultExpressions_34_0, 
+                    	                      		lv_ownedDefaultExpressions_34_0,
                     	                      		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
                     	              	        afterParserOrEnumRuleCall();
-                    	              	    
+
                     	            }
 
                     	            }
@@ -4385,7 +4385,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_35, grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_1_4());
-                    	          
+
                     	    }
 
                     	    }
@@ -4403,7 +4403,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_36, grammarAccess.getAttributeCSAccess().getDerivationKeyword_6_0_1_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:1534:1: ( ruleUnrestrictedName )?
                     	    int alt35=2;
@@ -4417,14 +4417,14 @@
                     	            // InternalOCLinEcore.g:1535:2: ruleUnrestrictedName
                     	            {
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	              	  /* */ 
-                    	              	
+
+                    	              	  /* */
+
                     	            }
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	                      newCompositeNode(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_2_1()); 
-                    	                  
+
+                    	                      newCompositeNode(grammarAccess.getAttributeCSAccess().getUnrestrictedNameParserRuleCall_6_0_1_2_1());
+
                     	            }
                     	            pushFollow(FollowSets000.FOLLOW_17);
                     	            ruleUnrestrictedName();
@@ -4432,9 +4432,9 @@
                     	            state._fsp--;
                     	            if (state.failed) return current;
                     	            if ( state.backtracking==0 ) {
-                    	               
+
                     	                      afterParserOrEnumRuleCall();
-                    	                  
+
                     	            }
 
                     	            }
@@ -4446,7 +4446,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_38, grammarAccess.getAttributeCSAccess().getColonKeyword_6_0_1_2_2());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:1549:1: ( (lv_ownedDefaultExpressions_39_0= ruleSpecificationCS ) )?
                     	    int alt36=2;
@@ -4463,9 +4463,9 @@
                     	            // InternalOCLinEcore.g:1551:3: lv_ownedDefaultExpressions_39_0= ruleSpecificationCS
                     	            {
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	              	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_2_3_0()); 
-                    	              	    
+
+                    	              	        newCompositeNode(grammarAccess.getAttributeCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_6_0_1_2_3_0());
+
                     	            }
                     	            pushFollow(FollowSets000.FOLLOW_14);
                     	            lv_ownedDefaultExpressions_39_0=ruleSpecificationCS();
@@ -4478,12 +4478,12 @@
                     	              	            current = createModelElementForParent(grammarAccess.getAttributeCSRule());
                     	              	        }
                     	                     		add(
-                    	                     			current, 
+                    	                     			current,
                     	                     			"ownedDefaultExpressions",
-                    	                      		lv_ownedDefaultExpressions_39_0, 
+                    	                      		lv_ownedDefaultExpressions_39_0,
                     	                      		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
                     	              	        afterParserOrEnumRuleCall();
-                    	              	    
+
                     	            }
 
                     	            }
@@ -4498,7 +4498,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_40, grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_0_1_2_4());
-                    	          
+
                     	    }
 
                     	    }
@@ -4516,7 +4516,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_41, grammarAccess.getAttributeCSAccess().getRightCurlyBracketKeyword_6_0_2());
-                          
+
                     }
 
                     }
@@ -4531,7 +4531,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_42, grammarAccess.getAttributeCSAccess().getSemicolonKeyword_6_1());
-                          
+
                     }
 
                     }
@@ -4546,14 +4546,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4574,7 +4574,7 @@
             // InternalOCLinEcore.g:1590:2: iv_ruleClassCS= ruleClassCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getClassCSRule()); 
+               newCompositeNode(grammarAccess.getClassCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleClassCS=ruleClassCS();
@@ -4582,18 +4582,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleClassCS; 
+               current =iv_ruleClassCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4613,8 +4613,8 @@
         EObject this_EnumerationCS_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:1600:28: ( (this_StructuredClassCS_0= ruleStructuredClassCS | this_DataTypeCS_1= ruleDataTypeCS | this_EnumerationCS_2= ruleEnumerationCS ) )
             // InternalOCLinEcore.g:1601:1: (this_StructuredClassCS_0= ruleStructuredClassCS | this_DataTypeCS_1= ruleDataTypeCS | this_EnumerationCS_2= ruleEnumerationCS )
@@ -4652,14 +4652,14 @@
                     // InternalOCLinEcore.g:1602:2: this_StructuredClassCS_0= ruleStructuredClassCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getClassCSAccess().getStructuredClassCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getClassCSAccess().getStructuredClassCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_StructuredClassCS_0=ruleStructuredClassCS();
@@ -4667,10 +4667,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_StructuredClassCS_0; 
+
+                              current = this_StructuredClassCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -4679,14 +4679,14 @@
                     // InternalOCLinEcore.g:1615:2: this_DataTypeCS_1= ruleDataTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getClassCSAccess().getDataTypeCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getClassCSAccess().getDataTypeCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_DataTypeCS_1=ruleDataTypeCS();
@@ -4694,10 +4694,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_DataTypeCS_1; 
+
+                              current = this_DataTypeCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -4706,14 +4706,14 @@
                     // InternalOCLinEcore.g:1628:2: this_EnumerationCS_2= ruleEnumerationCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getClassCSAccess().getEnumerationCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getClassCSAccess().getEnumerationCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_EnumerationCS_2=ruleEnumerationCS();
@@ -4721,10 +4721,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_EnumerationCS_2; 
+
+                              current = this_EnumerationCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -4736,14 +4736,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4764,7 +4764,7 @@
             // InternalOCLinEcore.g:1649:2: iv_ruleDataTypeCS= ruleDataTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getDataTypeCSRule()); 
+               newCompositeNode(grammarAccess.getDataTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleDataTypeCS=ruleDataTypeCS();
@@ -4772,18 +4772,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleDataTypeCS; 
+               current =iv_ruleDataTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4816,8 +4816,8 @@
         EObject lv_ownedConstraints_12_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:1659:28: ( ( ( (lv_isPrimitive_0_0= 'primitive' ) )? otherlv_1= 'datatype' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= ':' ( (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_6= '{' ( ( (lv_isSerializable_7_0= 'serializable' ) ) | otherlv_8= '!serializable' )? otherlv_9= '}' )? ( (otherlv_10= '{' ( ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) ) )
             // InternalOCLinEcore.g:1660:1: ( ( (lv_isPrimitive_0_0= 'primitive' ) )? otherlv_1= 'datatype' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= ':' ( (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_6= '{' ( ( (lv_isSerializable_7_0= 'serializable' ) ) | otherlv_8= '!serializable' )? otherlv_9= '}' )? ( (otherlv_10= '{' ( ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) )
@@ -4843,7 +4843,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isPrimitive_0_0, grammarAccess.getDataTypeCSAccess().getIsPrimitivePrimitiveKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -4851,7 +4851,7 @@
                       	            current = createModelElement(grammarAccess.getDataTypeCSRule());
                       	        }
                              		setWithLastConsumed(current, "isPrimitive", true, "primitive");
-                      	    
+
                     }
 
                     }
@@ -4866,7 +4866,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getDataTypeCSAccess().getDatatypeKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:1679:1: ( (lv_name_2_0= ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:1680:1: (lv_name_2_0= ruleUnrestrictedName )
@@ -4875,9 +4875,9 @@
             // InternalOCLinEcore.g:1681:3: lv_name_2_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_37);
             lv_name_2_0=ruleUnrestrictedName();
@@ -4890,12 +4890,12 @@
               	            current = createModelElementForParent(grammarAccess.getDataTypeCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_2_0, 
+                      		lv_name_2_0,
                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -4918,9 +4918,9 @@
                     // InternalOCLinEcore.g:1699:3: lv_ownedSignature_3_0= ruleTemplateSignatureCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_38);
                     lv_ownedSignature_3_0=ruleTemplateSignatureCS();
@@ -4933,12 +4933,12 @@
                       	            current = createModelElementForParent(grammarAccess.getDataTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedSignature",
-                              		lv_ownedSignature_3_0, 
+                              		lv_ownedSignature_3_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TemplateSignatureCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -4964,7 +4964,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_4, grammarAccess.getDataTypeCSAccess().getColonKeyword_4_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:1719:1: ( (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING ) )
                     // InternalOCLinEcore.g:1720:1: (lv_instanceClassName_5_0= RULE_SINGLE_QUOTED_STRING )
@@ -4975,8 +4975,8 @@
                     lv_instanceClassName_5_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_22); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_instanceClassName_5_0, grammarAccess.getDataTypeCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0()); 
-                      		
+                      			newLeafNode(lv_instanceClassName_5_0, grammarAccess.getDataTypeCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_4_1_0());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -4984,11 +4984,11 @@
                       	            current = createModelElement(grammarAccess.getDataTypeCSRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"instanceClassName",
-                              		lv_instanceClassName_5_0, 
+                              		lv_instanceClassName_5_0,
                               		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
-                      	    
+
                     }
 
                     }
@@ -5028,7 +5028,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_5_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:1741:1: ( ( (lv_isSerializable_7_0= 'serializable' ) ) | otherlv_8= '!serializable' )?
                     int alt43=3;
@@ -5054,7 +5054,7 @@
                             if ( state.backtracking==0 ) {
 
                                       newLeafNode(lv_isSerializable_7_0, grammarAccess.getDataTypeCSAccess().getIsSerializableSerializableKeyword_5_1_0_0());
-                                  
+
                             }
                             if ( state.backtracking==0 ) {
 
@@ -5062,7 +5062,7 @@
                               	            current = createModelElement(grammarAccess.getDataTypeCSRule());
                               	        }
                                      		setWithLastConsumed(current, "isSerializable", true, "serializable");
-                              	    
+
                             }
 
                             }
@@ -5080,7 +5080,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_8, grammarAccess.getDataTypeCSAccess().getSerializableKeyword_5_1_1());
-                                  
+
                             }
 
                             }
@@ -5092,7 +5092,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_9, grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_5_2());
-                          
+
                     }
 
                     }
@@ -5128,7 +5128,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_10, grammarAccess.getDataTypeCSAccess().getLeftCurlyBracketKeyword_6_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:1769:1: ( ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )*
                     loop45:
@@ -5155,9 +5155,9 @@
                     	    // InternalOCLinEcore.g:1771:3: lv_ownedAnnotations_11_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_41);
                     	    lv_ownedAnnotations_11_0=ruleAnnotationElementCS();
@@ -5170,12 +5170,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getDataTypeCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_11_0, 
+                    	              		lv_ownedAnnotations_11_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -5196,9 +5196,9 @@
                     	    // InternalOCLinEcore.g:1790:3: lv_ownedConstraints_12_0= ruleInvariantConstraintCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_6_0_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getDataTypeCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_6_0_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_41);
                     	    lv_ownedConstraints_12_0=ruleInvariantConstraintCS();
@@ -5211,12 +5211,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getDataTypeCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedConstraints",
-                    	              		lv_ownedConstraints_12_0, 
+                    	              		lv_ownedConstraints_12_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.InvariantConstraintCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -5237,7 +5237,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_13, grammarAccess.getDataTypeCSAccess().getRightCurlyBracketKeyword_6_0_2());
-                          
+
                     }
 
                     }
@@ -5252,7 +5252,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_14, grammarAccess.getDataTypeCSAccess().getSemicolonKeyword_6_1());
-                          
+
                     }
 
                     }
@@ -5267,14 +5267,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5295,7 +5295,7 @@
             // InternalOCLinEcore.g:1825:2: iv_ruleDetailCS= ruleDetailCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getDetailCSRule()); 
+               newCompositeNode(grammarAccess.getDetailCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleDetailCS=ruleDetailCS();
@@ -5303,18 +5303,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleDetailCS; 
+               current =iv_ruleDetailCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5334,8 +5334,8 @@
         AntlrDatatypeRuleToken lv_name_0_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:1835:28: ( ( ( ( (lv_name_0_1= ruleUnrestrictedName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) ) ) otherlv_1= '=' ( ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) )* ) )
             // InternalOCLinEcore.g:1836:1: ( ( ( (lv_name_0_1= ruleUnrestrictedName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) ) ) otherlv_1= '=' ( ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) )* )
@@ -5371,9 +5371,9 @@
                     // InternalOCLinEcore.g:1839:3: lv_name_0_1= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getDetailCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getDetailCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_42);
                     lv_name_0_1=ruleUnrestrictedName();
@@ -5386,12 +5386,12 @@
                       	            current = createModelElementForParent(grammarAccess.getDetailCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_0_1, 
+                              		lv_name_0_1,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -5402,8 +5402,8 @@
                     lv_name_0_2=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_42); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_name_0_2, grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1()); 
-                      		
+                      			newLeafNode(lv_name_0_2, grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -5411,11 +5411,11 @@
                       	            current = createModelElement(grammarAccess.getDetailCSRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_0_2, 
+                              		lv_name_0_2,
                               		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
-                      	    
+
                     }
 
                     }
@@ -5433,7 +5433,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:1876:1: ( ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) )*
             loop49:
@@ -5477,8 +5477,8 @@
             	            lv_values_2_1=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_43); if (state.failed) return current;
             	            if ( state.backtracking==0 ) {
 
-            	              			newLeafNode(lv_values_2_1, grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0()); 
-            	              		
+            	              			newLeafNode(lv_values_2_1, grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0());
+
             	            }
             	            if ( state.backtracking==0 ) {
 
@@ -5486,11 +5486,11 @@
             	              	            current = createModelElement(grammarAccess.getDetailCSRule());
             	              	        }
             	                     		addWithLastConsumed(
-            	                     			current, 
+            	                     			current,
             	                     			"values",
-            	                      		lv_values_2_1, 
+            	                      		lv_values_2_1,
             	                      		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
-            	              	    
+
             	            }
 
             	            }
@@ -5501,8 +5501,8 @@
             	            lv_values_2_2=(Token)match(input,RULE_ML_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_43); if (state.failed) return current;
             	            if ( state.backtracking==0 ) {
 
-            	              			newLeafNode(lv_values_2_2, grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); 
-            	              		
+            	              			newLeafNode(lv_values_2_2, grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
+
             	            }
             	            if ( state.backtracking==0 ) {
 
@@ -5510,11 +5510,11 @@
             	              	            current = createModelElement(grammarAccess.getDetailCSRule());
             	              	        }
             	                     		addWithLastConsumed(
-            	                     			current, 
+            	                     			current,
             	                     			"values",
-            	                      		lv_values_2_2, 
+            	                      		lv_values_2_2,
             	                      		"org.eclipse.ocl.xtext.base.Base.ML_SINGLE_QUOTED_STRING");
-            	              	    
+
             	            }
 
             	            }
@@ -5541,14 +5541,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5569,7 +5569,7 @@
             // InternalOCLinEcore.g:1922:2: iv_ruleDocumentationCS= ruleDocumentationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getDocumentationCSRule()); 
+               newCompositeNode(grammarAccess.getDocumentationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleDocumentationCS=ruleDocumentationCS();
@@ -5577,18 +5577,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleDocumentationCS; 
+               current =iv_ruleDocumentationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5612,8 +5612,8 @@
         EObject lv_ownedDetails_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:1932:28: ( ( () otherlv_1= 'documentation' ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? otherlv_8= ';' ) )
             // InternalOCLinEcore.g:1933:1: ( () otherlv_1= 'documentation' ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? otherlv_8= ';' )
@@ -5622,19 +5622,19 @@
             // InternalOCLinEcore.g:1933:2: () otherlv_1= 'documentation' ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? otherlv_8= ';'
             {
             // InternalOCLinEcore.g:1933:2: ()
-            // InternalOCLinEcore.g:1934:2: 
+            // InternalOCLinEcore.g:1934:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -5643,7 +5643,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:1946:1: ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )?
             int alt50=2;
@@ -5662,8 +5662,8 @@
                     lv_value_2_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_45); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_value_2_0, grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0()); 
-                      		
+                      			newLeafNode(lv_value_2_0, grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -5671,11 +5671,11 @@
                       	            current = createModelElement(grammarAccess.getDocumentationCSRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"value",
-                              		lv_value_2_0, 
+                              		lv_value_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
-                      	    
+
                     }
 
                     }
@@ -5701,7 +5701,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:1968:1: ( (lv_ownedDetails_4_0= ruleDetailCS ) )
                     // InternalOCLinEcore.g:1969:1: (lv_ownedDetails_4_0= ruleDetailCS )
@@ -5710,9 +5710,9 @@
                     // InternalOCLinEcore.g:1970:3: lv_ownedDetails_4_0= ruleDetailCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_21);
                     lv_ownedDetails_4_0=ruleDetailCS();
@@ -5725,12 +5725,12 @@
                       	            current = createModelElementForParent(grammarAccess.getDocumentationCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedDetails",
-                              		lv_ownedDetails_4_0, 
+                              		lv_ownedDetails_4_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -5757,7 +5757,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_5, grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:1990:1: ( (lv_ownedDetails_6_0= ruleDetailCS ) )
                     	    // InternalOCLinEcore.g:1991:1: (lv_ownedDetails_6_0= ruleDetailCS )
@@ -5766,9 +5766,9 @@
                     	    // InternalOCLinEcore.g:1992:3: lv_ownedDetails_6_0= ruleDetailCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_21);
                     	    lv_ownedDetails_6_0=ruleDetailCS();
@@ -5781,12 +5781,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getDocumentationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedDetails",
-                    	              		lv_ownedDetails_6_0, 
+                    	              		lv_ownedDetails_6_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -5807,7 +5807,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_7, grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3());
-                          
+
                     }
 
                     }
@@ -5819,7 +5819,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_8, grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4());
-                  
+
             }
 
             }
@@ -5828,14 +5828,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5856,7 +5856,7 @@
             // InternalOCLinEcore.g:2026:2: iv_ruleEnumerationCS= ruleEnumerationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEnumerationCSRule()); 
+               newCompositeNode(grammarAccess.getEnumerationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEnumerationCS=ruleEnumerationCS();
@@ -5864,18 +5864,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEnumerationCS; 
+               current =iv_ruleEnumerationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5909,8 +5909,8 @@
         EObject lv_ownedConstraints_12_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:2036:28: ( (otherlv_0= 'enum' ( (lv_name_1_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_2_0= ruleTemplateSignatureCS ) )? (otherlv_3= ':' ( (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_5= '{' ( ( (lv_isSerializable_6_0= 'serializable' ) ) | otherlv_7= '!serializable' )? otherlv_8= '}' )? ( (otherlv_9= '{' ( ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) | ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) ) )
             // InternalOCLinEcore.g:2037:1: (otherlv_0= 'enum' ( (lv_name_1_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_2_0= ruleTemplateSignatureCS ) )? (otherlv_3= ':' ( (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_5= '{' ( ( (lv_isSerializable_6_0= 'serializable' ) ) | otherlv_7= '!serializable' )? otherlv_8= '}' )? ( (otherlv_9= '{' ( ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) | ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )* otherlv_13= '}' ) | otherlv_14= ';' ) )
@@ -5922,7 +5922,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getEnumerationCSAccess().getEnumKeyword_0());
-                  
+
             }
             // InternalOCLinEcore.g:2041:1: ( (lv_name_1_0= ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:2042:1: (lv_name_1_0= ruleUnrestrictedName )
@@ -5931,9 +5931,9 @@
             // InternalOCLinEcore.g:2043:3: lv_name_1_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getNameUnrestrictedNameParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getNameUnrestrictedNameParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_37);
             lv_name_1_0=ruleUnrestrictedName();
@@ -5946,12 +5946,12 @@
               	            current = createModelElementForParent(grammarAccess.getEnumerationCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_1_0, 
+                      		lv_name_1_0,
                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -5974,9 +5974,9 @@
                     // InternalOCLinEcore.g:2061:3: lv_ownedSignature_2_0= ruleTemplateSignatureCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_38);
                     lv_ownedSignature_2_0=ruleTemplateSignatureCS();
@@ -5989,12 +5989,12 @@
                       	            current = createModelElementForParent(grammarAccess.getEnumerationCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedSignature",
-                              		lv_ownedSignature_2_0, 
+                              		lv_ownedSignature_2_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TemplateSignatureCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -6020,7 +6020,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getEnumerationCSAccess().getColonKeyword_3_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:2081:1: ( (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING ) )
                     // InternalOCLinEcore.g:2082:1: (lv_instanceClassName_4_0= RULE_SINGLE_QUOTED_STRING )
@@ -6031,8 +6031,8 @@
                     lv_instanceClassName_4_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_22); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_instanceClassName_4_0, grammarAccess.getEnumerationCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_3_1_0()); 
-                      		
+                      			newLeafNode(lv_instanceClassName_4_0, grammarAccess.getEnumerationCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_3_1_0());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -6040,11 +6040,11 @@
                       	            current = createModelElement(grammarAccess.getEnumerationCSRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"instanceClassName",
-                              		lv_instanceClassName_4_0, 
+                              		lv_instanceClassName_4_0,
                               		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
-                      	    
+
                     }
 
                     }
@@ -6084,7 +6084,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_4_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:2103:1: ( ( (lv_isSerializable_6_0= 'serializable' ) ) | otherlv_7= '!serializable' )?
                     int alt55=3;
@@ -6110,7 +6110,7 @@
                             if ( state.backtracking==0 ) {
 
                                       newLeafNode(lv_isSerializable_6_0, grammarAccess.getEnumerationCSAccess().getIsSerializableSerializableKeyword_4_1_0_0());
-                                  
+
                             }
                             if ( state.backtracking==0 ) {
 
@@ -6118,7 +6118,7 @@
                               	            current = createModelElement(grammarAccess.getEnumerationCSRule());
                               	        }
                                      		setWithLastConsumed(current, "isSerializable", true, "serializable");
-                              	    
+
                             }
 
                             }
@@ -6136,7 +6136,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_7, grammarAccess.getEnumerationCSAccess().getSerializableKeyword_4_1_1());
-                                  
+
                             }
 
                             }
@@ -6148,7 +6148,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_8, grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_4_2());
-                          
+
                     }
 
                     }
@@ -6184,7 +6184,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_9, grammarAccess.getEnumerationCSAccess().getLeftCurlyBracketKeyword_5_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:2131:1: ( ( (lv_ownedAnnotations_10_0= ruleAnnotationElementCS ) ) | ( (lv_ownedLiterals_11_0= ruleEnumerationLiteralCS ) ) | ( (lv_ownedConstraints_12_0= ruleInvariantConstraintCS ) ) )*
                     loop57:
@@ -6272,9 +6272,9 @@
                     	    // InternalOCLinEcore.g:2133:3: lv_ownedAnnotations_10_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_5_0_1_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_5_0_1_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_46);
                     	    lv_ownedAnnotations_10_0=ruleAnnotationElementCS();
@@ -6287,12 +6287,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getEnumerationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_10_0, 
+                    	              		lv_ownedAnnotations_10_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -6313,9 +6313,9 @@
                     	    // InternalOCLinEcore.g:2152:3: lv_ownedLiterals_11_0= ruleEnumerationLiteralCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsEnumerationLiteralCSParserRuleCall_5_0_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedLiteralsEnumerationLiteralCSParserRuleCall_5_0_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_46);
                     	    lv_ownedLiterals_11_0=ruleEnumerationLiteralCS();
@@ -6328,12 +6328,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getEnumerationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedLiterals",
-                    	              		lv_ownedLiterals_11_0, 
+                    	              		lv_ownedLiterals_11_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.EnumerationLiteralCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -6354,9 +6354,9 @@
                     	    // InternalOCLinEcore.g:2171:3: lv_ownedConstraints_12_0= ruleInvariantConstraintCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_5_0_1_2_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getEnumerationCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_5_0_1_2_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_46);
                     	    lv_ownedConstraints_12_0=ruleInvariantConstraintCS();
@@ -6369,12 +6369,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getEnumerationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedConstraints",
-                    	              		lv_ownedConstraints_12_0, 
+                    	              		lv_ownedConstraints_12_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.InvariantConstraintCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -6395,7 +6395,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_13, grammarAccess.getEnumerationCSAccess().getRightCurlyBracketKeyword_5_0_2());
-                          
+
                     }
 
                     }
@@ -6410,7 +6410,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_14, grammarAccess.getEnumerationCSAccess().getSemicolonKeyword_5_1());
-                          
+
                     }
 
                     }
@@ -6425,14 +6425,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6453,7 +6453,7 @@
             // InternalOCLinEcore.g:2206:2: iv_ruleEnumerationLiteralCS= ruleEnumerationLiteralCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEnumerationLiteralCSRule()); 
+               newCompositeNode(grammarAccess.getEnumerationLiteralCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEnumerationLiteralCS=ruleEnumerationLiteralCS();
@@ -6461,18 +6461,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEnumerationLiteralCS; 
+               current =iv_ruleEnumerationLiteralCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6499,8 +6499,8 @@
         EObject lv_ownedAnnotations_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:2216:28: ( ( ( (otherlv_0= 'literal' ( (lv_name_1_0= ruleUnrestrictedName ) ) ) | ( (lv_name_2_0= ruleEnumerationLiteralName ) ) ) (otherlv_3= '=' ( (lv_value_4_0= ruleSIGNED ) ) )? ( (otherlv_5= '{' ( (lv_ownedAnnotations_6_0= ruleAnnotationElementCS ) )* otherlv_7= '}' ) | otherlv_8= ';' ) ) )
             // InternalOCLinEcore.g:2217:1: ( ( (otherlv_0= 'literal' ( (lv_name_1_0= ruleUnrestrictedName ) ) ) | ( (lv_name_2_0= ruleEnumerationLiteralName ) ) ) (otherlv_3= '=' ( (lv_value_4_0= ruleSIGNED ) ) )? ( (otherlv_5= '{' ( (lv_ownedAnnotations_6_0= ruleAnnotationElementCS ) )* otherlv_7= '}' ) | otherlv_8= ';' ) )
@@ -6536,7 +6536,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_0, grammarAccess.getEnumerationLiteralCSAccess().getLiteralKeyword_0_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:2221:1: ( (lv_name_1_0= ruleUnrestrictedName ) )
                     // InternalOCLinEcore.g:2222:1: (lv_name_1_0= ruleUnrestrictedName )
@@ -6545,9 +6545,9 @@
                     // InternalOCLinEcore.g:2223:3: lv_name_1_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getNameUnrestrictedNameParserRuleCall_0_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_30);
                     lv_name_1_0=ruleUnrestrictedName();
@@ -6560,12 +6560,12 @@
                       	            current = createModelElementForParent(grammarAccess.getEnumerationLiteralCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -6589,9 +6589,9 @@
                     // InternalOCLinEcore.g:2242:3: lv_name_2_0= ruleEnumerationLiteralName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getNameEnumerationLiteralNameParserRuleCall_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getNameEnumerationLiteralNameParserRuleCall_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_30);
                     lv_name_2_0=ruleEnumerationLiteralName();
@@ -6604,12 +6604,12 @@
                       	            current = createModelElementForParent(grammarAccess.getEnumerationLiteralCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_2_0, 
+                              		lv_name_2_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.EnumerationLiteralName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -6638,7 +6638,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getEnumerationLiteralCSAccess().getEqualsSignKeyword_1_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:2262:1: ( (lv_value_4_0= ruleSIGNED ) )
                     // InternalOCLinEcore.g:2263:1: (lv_value_4_0= ruleSIGNED )
@@ -6647,9 +6647,9 @@
                     // InternalOCLinEcore.g:2264:3: lv_value_4_0= ruleSIGNED
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getValueSIGNEDParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getValueSIGNEDParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_22);
                     lv_value_4_0=ruleSIGNED();
@@ -6662,12 +6662,12 @@
                       	            current = createModelElementForParent(grammarAccess.getEnumerationLiteralCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"value",
-                              		lv_value_4_0, 
+                              		lv_value_4_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SIGNED");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -6709,7 +6709,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getEnumerationLiteralCSAccess().getLeftCurlyBracketKeyword_2_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:2284:1: ( (lv_ownedAnnotations_6_0= ruleAnnotationElementCS ) )*
                     loop61:
@@ -6730,9 +6730,9 @@
                     	    // InternalOCLinEcore.g:2286:3: lv_ownedAnnotations_6_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_2_0_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getEnumerationLiteralCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_2_0_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_48);
                     	    lv_ownedAnnotations_6_0=ruleAnnotationElementCS();
@@ -6745,12 +6745,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getEnumerationLiteralCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_6_0, 
+                    	              		lv_ownedAnnotations_6_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -6768,7 +6768,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_7, grammarAccess.getEnumerationLiteralCSAccess().getRightCurlyBracketKeyword_2_0_2());
-                          
+
                     }
 
                     }
@@ -6783,7 +6783,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_8, grammarAccess.getEnumerationLiteralCSAccess().getSemicolonKeyword_2_1());
-                          
+
                     }
 
                     }
@@ -6798,14 +6798,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6826,7 +6826,7 @@
             // InternalOCLinEcore.g:2321:2: iv_ruleImportCS= ruleImportCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getImportCSRule()); 
+               newCompositeNode(grammarAccess.getImportCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleImportCS=ruleImportCS();
@@ -6834,18 +6834,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleImportCS; 
+               current =iv_ruleImportCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6868,8 +6868,8 @@
         EObject lv_ownedPathName_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:2331:28: ( ( (otherlv_0= 'import' | otherlv_1= 'library' ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) otherlv_3= ':' )? ( (lv_ownedPathName_4_0= ruleURIPathNameCS ) ) ( (lv_isAll_5_0= '::*' ) )? otherlv_6= ';' ) )
             // InternalOCLinEcore.g:2332:1: ( (otherlv_0= 'import' | otherlv_1= 'library' ) ( ( (lv_name_2_0= ruleUnrestrictedName ) ) otherlv_3= ':' )? ( (lv_ownedPathName_4_0= ruleURIPathNameCS ) ) ( (lv_isAll_5_0= '::*' ) )? otherlv_6= ';' )
@@ -6902,7 +6902,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_0, grammarAccess.getImportCSAccess().getImportKeyword_0_0());
-                          
+
                     }
 
                     }
@@ -6914,7 +6914,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getImportCSAccess().getLibraryKeyword_0_1());
-                          
+
                     }
 
                     }
@@ -6936,9 +6936,9 @@
                     // InternalOCLinEcore.g:2343:3: lv_name_2_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getImportCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getImportCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_17);
                     lv_name_2_0=ruleUnrestrictedName();
@@ -6951,12 +6951,12 @@
                       	            current = createModelElementForParent(grammarAccess.getImportCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_2_0, 
+                              		lv_name_2_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -6968,7 +6968,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getImportCSAccess().getColonKeyword_1_1());
-                          
+
                     }
 
                     }
@@ -6983,9 +6983,9 @@
             // InternalOCLinEcore.g:2365:3: lv_ownedPathName_4_0= ruleURIPathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_49);
             lv_ownedPathName_4_0=ruleURIPathNameCS();
@@ -6998,12 +6998,12 @@
               	            current = createModelElementForParent(grammarAccess.getImportCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_4_0, 
+                      		lv_ownedPathName_4_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIPathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -7029,7 +7029,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isAll_5_0, grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -7037,7 +7037,7 @@
                       	            current = createModelElement(grammarAccess.getImportCSRule());
                       	        }
                              		setWithLastConsumed(current, "isAll", true, "::*");
-                      	    
+
                     }
 
                     }
@@ -7052,7 +7052,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_6, grammarAccess.getImportCSAccess().getSemicolonKeyword_4());
-                  
+
             }
 
             }
@@ -7061,14 +7061,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7089,7 +7089,7 @@
             // InternalOCLinEcore.g:2410:2: iv_ruleModelElementCS= ruleModelElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getModelElementCSRule()); 
+               newCompositeNode(grammarAccess.getModelElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleModelElementCS=ruleModelElementCS();
@@ -7097,18 +7097,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleModelElementCS; 
+               current =iv_ruleModelElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7132,8 +7132,8 @@
         EObject this_StructuralFeatureCS_4 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:2420:28: ( (this_ClassCS_0= ruleClassCS | this_EnumerationLiteralCS_1= ruleEnumerationLiteralCS | this_OperationCS_2= ruleOperationCS | this_PackageCS_3= rulePackageCS | this_StructuralFeatureCS_4= ruleStructuralFeatureCS ) )
             // InternalOCLinEcore.g:2421:1: (this_ClassCS_0= ruleClassCS | this_EnumerationLiteralCS_1= ruleEnumerationLiteralCS | this_OperationCS_2= ruleOperationCS | this_PackageCS_3= rulePackageCS | this_StructuralFeatureCS_4= ruleStructuralFeatureCS )
@@ -7146,14 +7146,14 @@
                     // InternalOCLinEcore.g:2422:2: this_ClassCS_0= ruleClassCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getModelElementCSAccess().getClassCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getModelElementCSAccess().getClassCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_ClassCS_0=ruleClassCS();
@@ -7161,10 +7161,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_ClassCS_0; 
+
+                              current = this_ClassCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -7173,14 +7173,14 @@
                     // InternalOCLinEcore.g:2435:2: this_EnumerationLiteralCS_1= ruleEnumerationLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getModelElementCSAccess().getEnumerationLiteralCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getModelElementCSAccess().getEnumerationLiteralCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_EnumerationLiteralCS_1=ruleEnumerationLiteralCS();
@@ -7188,10 +7188,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_EnumerationLiteralCS_1; 
+
+                              current = this_EnumerationLiteralCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -7200,14 +7200,14 @@
                     // InternalOCLinEcore.g:2448:2: this_OperationCS_2= ruleOperationCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getModelElementCSAccess().getOperationCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getModelElementCSAccess().getOperationCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_OperationCS_2=ruleOperationCS();
@@ -7215,10 +7215,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_OperationCS_2; 
+
+                              current = this_OperationCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -7227,14 +7227,14 @@
                     // InternalOCLinEcore.g:2461:2: this_PackageCS_3= rulePackageCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getModelElementCSAccess().getPackageCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getModelElementCSAccess().getPackageCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PackageCS_3=rulePackageCS();
@@ -7242,10 +7242,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PackageCS_3; 
+
+                              current = this_PackageCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -7254,14 +7254,14 @@
                     // InternalOCLinEcore.g:2474:2: this_StructuralFeatureCS_4= ruleStructuralFeatureCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getModelElementCSAccess().getStructuralFeatureCSParserRuleCall_4()); 
-                          
+
+                              newCompositeNode(grammarAccess.getModelElementCSAccess().getStructuralFeatureCSParserRuleCall_4());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_StructuralFeatureCS_4=ruleStructuralFeatureCS();
@@ -7269,10 +7269,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_StructuralFeatureCS_4; 
+
+                              current = this_StructuralFeatureCS_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -7284,14 +7284,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7312,7 +7312,7 @@
             // InternalOCLinEcore.g:2495:2: iv_ruleModelElementRefCS= ruleModelElementRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getModelElementRefCSRule()); 
+               newCompositeNode(grammarAccess.getModelElementRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleModelElementRefCS=ruleModelElementRefCS();
@@ -7320,18 +7320,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleModelElementRefCS; 
+               current =iv_ruleModelElementRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7349,8 +7349,8 @@
         EObject lv_ownedPathName_1_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:2505:28: ( (otherlv_0= 'reference' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ';' ) )
             // InternalOCLinEcore.g:2506:1: (otherlv_0= 'reference' ( (lv_ownedPathName_1_0= rulePathNameCS ) ) otherlv_2= ';' )
@@ -7362,7 +7362,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getModelElementRefCSAccess().getReferenceKeyword_0());
-                  
+
             }
             // InternalOCLinEcore.g:2510:1: ( (lv_ownedPathName_1_0= rulePathNameCS ) )
             // InternalOCLinEcore.g:2511:1: (lv_ownedPathName_1_0= rulePathNameCS )
@@ -7371,9 +7371,9 @@
             // InternalOCLinEcore.g:2512:3: lv_ownedPathName_1_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getModelElementRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getModelElementRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_14);
             lv_ownedPathName_1_0=rulePathNameCS();
@@ -7386,12 +7386,12 @@
               	            current = createModelElementForParent(grammarAccess.getModelElementRefCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_1_0, 
+                      		lv_ownedPathName_1_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -7403,7 +7403,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getModelElementRefCSAccess().getSemicolonKeyword_2());
-                  
+
             }
 
             }
@@ -7412,14 +7412,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7440,7 +7440,7 @@
             // InternalOCLinEcore.g:2542:2: iv_ruleOperationCS= ruleOperationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getOperationCSRule()); 
+               newCompositeNode(grammarAccess.getOperationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleOperationCS=ruleOperationCS();
@@ -7448,18 +7448,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleOperationCS; 
+               current =iv_ruleOperationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7523,8 +7523,8 @@
         EObject lv_ownedPostconditions_37_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:2552:28: ( ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'operation' ( (lv_ownedSignature_5_0= ruleTemplateSignatureCS ) )? ( (lv_name_6_0= ruleUnrestrictedName ) ) otherlv_7= '(' ( ( (lv_ownedParameters_8_0= ruleParameterCS ) ) (otherlv_9= ',' ( (lv_ownedParameters_10_0= ruleParameterCS ) ) )* )? otherlv_11= ')' (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_14= 'throws' ( (lv_ownedExceptions_15_0= ruleTypedRefCS ) ) (otherlv_16= ',' ( (lv_ownedExceptions_17_0= ruleTypedRefCS ) ) )* )? (otherlv_18= '{' ( ( ( (lv_qualifiers_19_0= 'derived' ) ) | ( (lv_qualifiers_20_0= '!derived' ) ) | ( (lv_qualifiers_21_0= 'ordered' ) ) | ( (lv_qualifiers_22_0= '!ordered' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) | (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) | ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) )* otherlv_38= '}' ) | otherlv_39= ';' ) ) )
             // InternalOCLinEcore.g:2553:1: ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'operation' ( (lv_ownedSignature_5_0= ruleTemplateSignatureCS ) )? ( (lv_name_6_0= ruleUnrestrictedName ) ) otherlv_7= '(' ( ( (lv_ownedParameters_8_0= ruleParameterCS ) ) (otherlv_9= ',' ( (lv_ownedParameters_10_0= ruleParameterCS ) ) )* )? otherlv_11= ')' (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_14= 'throws' ( (lv_ownedExceptions_15_0= ruleTypedRefCS ) ) (otherlv_16= ',' ( (lv_ownedExceptions_17_0= ruleTypedRefCS ) ) )* )? (otherlv_18= '{' ( ( ( (lv_qualifiers_19_0= 'derived' ) ) | ( (lv_qualifiers_20_0= '!derived' ) ) | ( (lv_qualifiers_21_0= 'ordered' ) ) | ( (lv_qualifiers_22_0= '!ordered' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) ) (otherlv_27= ',' )? )+ otherlv_28= '}' )? ( (otherlv_29= '{' ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) | (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) | ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) )* otherlv_38= '}' ) | otherlv_39= ';' ) )
@@ -7559,7 +7559,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_qualifiers_0_0, grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_0_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -7567,7 +7567,7 @@
                       	            current = createModelElement(grammarAccess.getOperationCSRule());
                       	        }
                              		addWithLastConsumed(current, "qualifiers", lv_qualifiers_0_0, "static");
-                      	    
+
                     }
 
                     }
@@ -7593,7 +7593,7 @@
                             if ( state.backtracking==0 ) {
 
                                       newLeafNode(lv_qualifiers_1_0, grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
-                                  
+
                             }
                             if ( state.backtracking==0 ) {
 
@@ -7601,7 +7601,7 @@
                               	            current = createModelElement(grammarAccess.getOperationCSRule());
                               	        }
                                      		addWithLastConsumed(current, "qualifiers", lv_qualifiers_1_0, "definition");
-                              	    
+
                             }
 
                             }
@@ -7634,7 +7634,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_qualifiers_2_0, grammarAccess.getOperationCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -7642,7 +7642,7 @@
                       	            current = createModelElement(grammarAccess.getOperationCSRule());
                       	        }
                              		addWithLastConsumed(current, "qualifiers", lv_qualifiers_2_0, "definition");
-                      	    
+
                     }
 
                     }
@@ -7668,7 +7668,7 @@
                             if ( state.backtracking==0 ) {
 
                                       newLeafNode(lv_qualifiers_3_0, grammarAccess.getOperationCSAccess().getQualifiersStaticKeyword_0_1_1_0());
-                                  
+
                             }
                             if ( state.backtracking==0 ) {
 
@@ -7676,7 +7676,7 @@
                               	            current = createModelElement(grammarAccess.getOperationCSRule());
                               	        }
                                      		addWithLastConsumed(current, "qualifiers", lv_qualifiers_3_0, "static");
-                              	    
+
                             }
 
                             }
@@ -7700,7 +7700,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getOperationCSAccess().getOperationKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:2618:1: ( (lv_ownedSignature_5_0= ruleTemplateSignatureCS ) )?
             int alt70=2;
@@ -7717,9 +7717,9 @@
                     // InternalOCLinEcore.g:2620:3: lv_ownedSignature_5_0= ruleTemplateSignatureCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_3);
                     lv_ownedSignature_5_0=ruleTemplateSignatureCS();
@@ -7732,12 +7732,12 @@
                       	            current = createModelElementForParent(grammarAccess.getOperationCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedSignature",
-                              		lv_ownedSignature_5_0, 
+                              		lv_ownedSignature_5_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TemplateSignatureCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7755,9 +7755,9 @@
             // InternalOCLinEcore.g:2638:3: lv_name_6_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getOperationCSAccess().getNameUnrestrictedNameParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getOperationCSAccess().getNameUnrestrictedNameParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_54);
             lv_name_6_0=ruleUnrestrictedName();
@@ -7770,12 +7770,12 @@
               	            current = createModelElementForParent(grammarAccess.getOperationCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_6_0, 
+                      		lv_name_6_0,
                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -7787,7 +7787,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getOperationCSAccess().getLeftParenthesisKeyword_4());
-                  
+
             }
             // InternalOCLinEcore.g:2658:1: ( ( (lv_ownedParameters_8_0= ruleParameterCS ) ) (otherlv_9= ',' ( (lv_ownedParameters_10_0= ruleParameterCS ) ) )* )?
             int alt72=2;
@@ -7807,9 +7807,9 @@
                     // InternalOCLinEcore.g:2660:3: lv_ownedParameters_8_0= ruleParameterCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_21);
                     lv_ownedParameters_8_0=ruleParameterCS();
@@ -7822,12 +7822,12 @@
                       	            current = createModelElementForParent(grammarAccess.getOperationCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParameters",
-                              		lv_ownedParameters_8_0, 
+                              		lv_ownedParameters_8_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ParameterCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7854,7 +7854,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_9, grammarAccess.getOperationCSAccess().getCommaKeyword_5_1_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:2680:1: ( (lv_ownedParameters_10_0= ruleParameterCS ) )
                     	    // InternalOCLinEcore.g:2681:1: (lv_ownedParameters_10_0= ruleParameterCS )
@@ -7863,9 +7863,9 @@
                     	    // InternalOCLinEcore.g:2682:3: lv_ownedParameters_10_0= ruleParameterCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_21);
                     	    lv_ownedParameters_10_0=ruleParameterCS();
@@ -7878,12 +7878,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getOperationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParameters",
-                    	              		lv_ownedParameters_10_0, 
+                    	              		lv_ownedParameters_10_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ParameterCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -7910,7 +7910,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_11, grammarAccess.getOperationCSAccess().getRightParenthesisKeyword_6());
-                  
+
             }
             // InternalOCLinEcore.g:2702:1: (otherlv_12= ':' ( (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) ) )?
             int alt73=2;
@@ -7927,7 +7927,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_12, grammarAccess.getOperationCSAccess().getColonKeyword_7_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:2706:1: ( (lv_ownedType_13_0= ruleTypedMultiplicityRefCS ) )
                     // InternalOCLinEcore.g:2707:1: (lv_ownedType_13_0= ruleTypedMultiplicityRefCS )
@@ -7936,9 +7936,9 @@
                     // InternalOCLinEcore.g:2708:3: lv_ownedType_13_0= ruleTypedMultiplicityRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_7_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_7_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_57);
                     lv_ownedType_13_0=ruleTypedMultiplicityRefCS();
@@ -7951,12 +7951,12 @@
                       	            current = createModelElementForParent(grammarAccess.getOperationCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_13_0, 
+                              		lv_ownedType_13_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedMultiplicityRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7985,7 +7985,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_14, grammarAccess.getOperationCSAccess().getThrowsKeyword_8_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:2728:1: ( (lv_ownedExceptions_15_0= ruleTypedRefCS ) )
                     // InternalOCLinEcore.g:2729:1: (lv_ownedExceptions_15_0= ruleTypedRefCS )
@@ -7994,9 +7994,9 @@
                     // InternalOCLinEcore.g:2730:3: lv_ownedExceptions_15_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_58);
                     lv_ownedExceptions_15_0=ruleTypedRefCS();
@@ -8009,12 +8009,12 @@
                       	            current = createModelElementForParent(grammarAccess.getOperationCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedExceptions",
-                              		lv_ownedExceptions_15_0, 
+                              		lv_ownedExceptions_15_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -8041,7 +8041,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_16, grammarAccess.getOperationCSAccess().getCommaKeyword_8_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:2750:1: ( (lv_ownedExceptions_17_0= ruleTypedRefCS ) )
                     	    // InternalOCLinEcore.g:2751:1: (lv_ownedExceptions_17_0= ruleTypedRefCS )
@@ -8050,9 +8050,9 @@
                     	    // InternalOCLinEcore.g:2752:3: lv_ownedExceptions_17_0= ruleTypedRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedExceptionsTypedRefCSParserRuleCall_8_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_58);
                     	    lv_ownedExceptions_17_0=ruleTypedRefCS();
@@ -8065,12 +8065,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getOperationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedExceptions",
-                    	              		lv_ownedExceptions_17_0, 
+                    	              		lv_ownedExceptions_17_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -8112,7 +8112,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_18, grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_9_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:2772:1: ( ( ( (lv_qualifiers_19_0= 'derived' ) ) | ( (lv_qualifiers_20_0= '!derived' ) ) | ( (lv_qualifiers_21_0= 'ordered' ) ) | ( (lv_qualifiers_22_0= '!ordered' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) ) (otherlv_27= ',' )? )+
                     int cnt78=0;
@@ -8195,7 +8195,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_19_0, grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_0_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -8203,7 +8203,7 @@
                     	              	            current = createModelElement(grammarAccess.getOperationCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_19_0, "derived");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -8227,7 +8227,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_20_0, grammarAccess.getOperationCSAccess().getQualifiersDerivedKeyword_9_1_0_1_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -8235,7 +8235,7 @@
                     	              	            current = createModelElement(grammarAccess.getOperationCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_20_0, "!derived");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -8259,7 +8259,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_21_0, grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_2_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -8267,7 +8267,7 @@
                     	              	            current = createModelElement(grammarAccess.getOperationCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_21_0, "ordered");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -8291,7 +8291,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_22_0, grammarAccess.getOperationCSAccess().getQualifiersOrderedKeyword_9_1_0_3_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -8299,7 +8299,7 @@
                     	              	            current = createModelElement(grammarAccess.getOperationCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_22_0, "!ordered");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -8323,7 +8323,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_23_0, grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_4_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -8331,7 +8331,7 @@
                     	              	            current = createModelElement(grammarAccess.getOperationCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_23_0, "transient");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -8355,7 +8355,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_24_0, grammarAccess.getOperationCSAccess().getQualifiersTransientKeyword_9_1_0_5_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -8363,7 +8363,7 @@
                     	              	            current = createModelElement(grammarAccess.getOperationCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_24_0, "!transient");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -8387,7 +8387,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_25_0, grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_6_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -8395,7 +8395,7 @@
                     	              	            current = createModelElement(grammarAccess.getOperationCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_25_0, "unique");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -8419,7 +8419,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_26_0, grammarAccess.getOperationCSAccess().getQualifiersUniqueKeyword_9_1_0_7_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -8427,7 +8427,7 @@
                     	              	            current = createModelElement(grammarAccess.getOperationCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_26_0, "!unique");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -8456,7 +8456,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                  	newLeafNode(otherlv_27, grammarAccess.getOperationCSAccess().getCommaKeyword_9_1_1());
-                    	                  
+
                     	            }
 
                     	            }
@@ -8482,7 +8482,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_28, grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_9_2());
-                          
+
                     }
 
                     }
@@ -8518,7 +8518,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_29, grammarAccess.getOperationCSAccess().getLeftCurlyBracketKeyword_10_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:2911:1: ( ( (lv_ownedAnnotations_30_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_31_0= rulePreconditionConstraintCS ) ) | (otherlv_32= 'body' ( ruleUnrestrictedName )? otherlv_34= ':' ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )? otherlv_36= ';' ) | ( (lv_ownedPostconditions_37_0= rulePostconditionConstraintCS ) ) )*
                     loop82:
@@ -8561,9 +8561,9 @@
                     	    // InternalOCLinEcore.g:2913:3: lv_ownedAnnotations_30_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_10_0_1_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_10_0_1_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_62);
                     	    lv_ownedAnnotations_30_0=ruleAnnotationElementCS();
@@ -8576,12 +8576,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getOperationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_30_0, 
+                    	              		lv_ownedAnnotations_30_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -8602,9 +8602,9 @@
                     	    // InternalOCLinEcore.g:2932:3: lv_ownedPreconditions_31_0= rulePreconditionConstraintCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedPreconditionsPreconditionConstraintCSParserRuleCall_10_0_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedPreconditionsPreconditionConstraintCSParserRuleCall_10_0_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_62);
                     	    lv_ownedPreconditions_31_0=rulePreconditionConstraintCS();
@@ -8617,12 +8617,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getOperationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedPreconditions",
-                    	              		lv_ownedPreconditions_31_0, 
+                    	              		lv_ownedPreconditions_31_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.PreconditionConstraintCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -8643,7 +8643,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_32, grammarAccess.getOperationCSAccess().getBodyKeyword_10_0_1_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:2953:1: ( ruleUnrestrictedName )?
                     	    int alt80=2;
@@ -8657,14 +8657,14 @@
                     	            // InternalOCLinEcore.g:2954:2: ruleUnrestrictedName
                     	            {
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	              	  /* */ 
-                    	              	
+
+                    	              	  /* */
+
                     	            }
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	                      newCompositeNode(grammarAccess.getOperationCSAccess().getUnrestrictedNameParserRuleCall_10_0_1_2_1()); 
-                    	                  
+
+                    	                      newCompositeNode(grammarAccess.getOperationCSAccess().getUnrestrictedNameParserRuleCall_10_0_1_2_1());
+
                     	            }
                     	            pushFollow(FollowSets000.FOLLOW_17);
                     	            ruleUnrestrictedName();
@@ -8672,9 +8672,9 @@
                     	            state._fsp--;
                     	            if (state.failed) return current;
                     	            if ( state.backtracking==0 ) {
-                    	               
+
                     	                      afterParserOrEnumRuleCall();
-                    	                  
+
                     	            }
 
                     	            }
@@ -8686,7 +8686,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_34, grammarAccess.getOperationCSAccess().getColonKeyword_10_0_1_2_2());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:2968:1: ( (lv_ownedBodyExpressions_35_0= ruleSpecificationCS ) )?
                     	    int alt81=2;
@@ -8703,9 +8703,9 @@
                     	            // InternalOCLinEcore.g:2970:3: lv_ownedBodyExpressions_35_0= ruleSpecificationCS
                     	            {
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	              	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_10_0_1_2_3_0()); 
-                    	              	    
+
+                    	              	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_10_0_1_2_3_0());
+
                     	            }
                     	            pushFollow(FollowSets000.FOLLOW_14);
                     	            lv_ownedBodyExpressions_35_0=ruleSpecificationCS();
@@ -8718,12 +8718,12 @@
                     	              	            current = createModelElementForParent(grammarAccess.getOperationCSRule());
                     	              	        }
                     	                     		add(
-                    	                     			current, 
+                    	                     			current,
                     	                     			"ownedBodyExpressions",
-                    	                      		lv_ownedBodyExpressions_35_0, 
+                    	                      		lv_ownedBodyExpressions_35_0,
                     	                      		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
                     	              	        afterParserOrEnumRuleCall();
-                    	              	    
+
                     	            }
 
                     	            }
@@ -8738,7 +8738,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_36, grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_0_1_2_4());
-                    	          
+
                     	    }
 
                     	    }
@@ -8756,9 +8756,9 @@
                     	    // InternalOCLinEcore.g:2993:3: lv_ownedPostconditions_37_0= rulePostconditionConstraintCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedPostconditionsPostconditionConstraintCSParserRuleCall_10_0_1_3_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getOperationCSAccess().getOwnedPostconditionsPostconditionConstraintCSParserRuleCall_10_0_1_3_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_62);
                     	    lv_ownedPostconditions_37_0=rulePostconditionConstraintCS();
@@ -8771,12 +8771,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getOperationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedPostconditions",
-                    	              		lv_ownedPostconditions_37_0, 
+                    	              		lv_ownedPostconditions_37_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.PostconditionConstraintCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -8797,7 +8797,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_38, grammarAccess.getOperationCSAccess().getRightCurlyBracketKeyword_10_0_2());
-                          
+
                     }
 
                     }
@@ -8812,7 +8812,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_39, grammarAccess.getOperationCSAccess().getSemicolonKeyword_10_1());
-                          
+
                     }
 
                     }
@@ -8827,14 +8827,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8855,7 +8855,7 @@
             // InternalOCLinEcore.g:3028:2: iv_rulePackageCS= rulePackageCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPackageCSRule()); 
+               newCompositeNode(grammarAccess.getPackageCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePackageCS=rulePackageCS();
@@ -8863,18 +8863,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePackageCS; 
+               current =iv_rulePackageCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8906,8 +8906,8 @@
         EObject lv_ownedClasses_9_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:3038:28: ( (otherlv_0= 'package' ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= ':' ( (lv_nsPrefix_3_0= ruleUnrestrictedName ) ) )? (otherlv_4= '=' ( (lv_nsURI_5_0= ruleURI ) ) )? ( (otherlv_6= '{' ( ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPackages_8_0= rulePackageCS ) ) | ( (lv_ownedClasses_9_0= ruleClassCS ) ) )* otherlv_10= '}' ) | otherlv_11= ';' ) ) )
             // InternalOCLinEcore.g:3039:1: (otherlv_0= 'package' ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= ':' ( (lv_nsPrefix_3_0= ruleUnrestrictedName ) ) )? (otherlv_4= '=' ( (lv_nsURI_5_0= ruleURI ) ) )? ( (otherlv_6= '{' ( ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPackages_8_0= rulePackageCS ) ) | ( (lv_ownedClasses_9_0= ruleClassCS ) ) )* otherlv_10= '}' ) | otherlv_11= ';' ) )
@@ -8919,7 +8919,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getPackageCSAccess().getPackageKeyword_0());
-                  
+
             }
             // InternalOCLinEcore.g:3043:1: ( (lv_name_1_0= ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:3044:1: (lv_name_1_0= ruleUnrestrictedName )
@@ -8928,9 +8928,9 @@
             // InternalOCLinEcore.g:3045:3: lv_name_1_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPackageCSAccess().getNameUnrestrictedNameParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPackageCSAccess().getNameUnrestrictedNameParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_28);
             lv_name_1_0=ruleUnrestrictedName();
@@ -8943,12 +8943,12 @@
               	            current = createModelElementForParent(grammarAccess.getPackageCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_1_0, 
+                      		lv_name_1_0,
                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -8971,7 +8971,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getPackageCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:3065:1: ( (lv_nsPrefix_3_0= ruleUnrestrictedName ) )
                     // InternalOCLinEcore.g:3066:1: (lv_nsPrefix_3_0= ruleUnrestrictedName )
@@ -8980,9 +8980,9 @@
                     // InternalOCLinEcore.g:3067:3: lv_nsPrefix_3_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsPrefixUnrestrictedNameParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsPrefixUnrestrictedNameParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_30);
                     lv_nsPrefix_3_0=ruleUnrestrictedName();
@@ -8995,12 +8995,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPackageCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"nsPrefix",
-                              		lv_nsPrefix_3_0, 
+                              		lv_nsPrefix_3_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -9029,7 +9029,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_4, grammarAccess.getPackageCSAccess().getEqualsSignKeyword_3_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:3087:1: ( (lv_nsURI_5_0= ruleURI ) )
                     // InternalOCLinEcore.g:3088:1: (lv_nsURI_5_0= ruleURI )
@@ -9038,9 +9038,9 @@
                     // InternalOCLinEcore.g:3089:3: lv_nsURI_5_0= ruleURI
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_3_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_3_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_22);
                     lv_nsURI_5_0=ruleURI();
@@ -9053,12 +9053,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPackageCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"nsURI",
-                              		lv_nsURI_5_0, 
+                              		lv_nsURI_5_0,
                               		"org.eclipse.ocl.xtext.base.Base.URI");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -9100,7 +9100,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_4_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:3109:1: ( ( (lv_ownedAnnotations_7_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPackages_8_0= rulePackageCS ) ) | ( (lv_ownedClasses_9_0= ruleClassCS ) ) )*
                     loop86:
@@ -9142,9 +9142,9 @@
                     	    // InternalOCLinEcore.g:3111:3: lv_ownedAnnotations_7_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_0_1_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_63);
                     	    lv_ownedAnnotations_7_0=ruleAnnotationElementCS();
@@ -9157,12 +9157,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getPackageCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_7_0, 
+                    	              		lv_ownedAnnotations_7_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -9183,9 +9183,9 @@
                     	    // InternalOCLinEcore.g:3130:3: lv_ownedPackages_8_0= rulePackageCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_63);
                     	    lv_ownedPackages_8_0=rulePackageCS();
@@ -9198,12 +9198,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getPackageCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedPackages",
-                    	              		lv_ownedPackages_8_0, 
+                    	              		lv_ownedPackages_8_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.PackageCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -9224,9 +9224,9 @@
                     	    // InternalOCLinEcore.g:3149:3: lv_ownedClasses_9_0= ruleClassCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_0_1_2_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_0_1_2_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_63);
                     	    lv_ownedClasses_9_0=ruleClassCS();
@@ -9239,12 +9239,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getPackageCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedClasses",
-                    	              		lv_ownedClasses_9_0, 
+                    	              		lv_ownedClasses_9_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.ClassCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -9265,7 +9265,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_10, grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_4_0_2());
-                          
+
                     }
 
                     }
@@ -9280,7 +9280,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_11, grammarAccess.getPackageCSAccess().getSemicolonKeyword_4_1());
-                          
+
                     }
 
                     }
@@ -9295,14 +9295,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9323,7 +9323,7 @@
             // InternalOCLinEcore.g:3184:2: iv_ruleParameterCS= ruleParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getParameterCSRule()); 
+               newCompositeNode(grammarAccess.getParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleParameterCS=ruleParameterCS();
@@ -9331,18 +9331,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleParameterCS; 
+               current =iv_ruleParameterCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9372,8 +9372,8 @@
         EObject lv_ownedAnnotations_11_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:3194:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_3= '{' ( ( ( (lv_qualifiers_4_0= 'ordered' ) ) | ( (lv_qualifiers_5_0= '!ordered' ) ) | ( (lv_qualifiers_6_0= 'unique' ) ) | ( (lv_qualifiers_7_0= '!unique' ) ) ) (otherlv_8= ',' )? )+ otherlv_9= '}' )? (otherlv_10= '{' ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) )* otherlv_12= '}' )? ) )
             // InternalOCLinEcore.g:3195:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_3= '{' ( ( ( (lv_qualifiers_4_0= 'ordered' ) ) | ( (lv_qualifiers_5_0= '!ordered' ) ) | ( (lv_qualifiers_6_0= 'unique' ) ) | ( (lv_qualifiers_7_0= '!unique' ) ) ) (otherlv_8= ',' )? )+ otherlv_9= '}' )? (otherlv_10= '{' ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) )* otherlv_12= '}' )? )
@@ -9388,9 +9388,9 @@
             // InternalOCLinEcore.g:3197:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_64);
             lv_name_0_0=ruleUnrestrictedName();
@@ -9403,12 +9403,12 @@
               	            current = createModelElementForParent(grammarAccess.getParameterCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -9431,7 +9431,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getParameterCSAccess().getColonKeyword_1_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:3217:1: ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) )
                     // InternalOCLinEcore.g:3218:1: (lv_ownedType_2_0= ruleTypedMultiplicityRefCS )
@@ -9440,9 +9440,9 @@
                     // InternalOCLinEcore.g:3219:3: lv_ownedType_2_0= ruleTypedMultiplicityRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_65);
                     lv_ownedType_2_0=ruleTypedMultiplicityRefCS();
@@ -9455,12 +9455,12 @@
                       	            current = createModelElementForParent(grammarAccess.getParameterCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_2_0, 
+                              		lv_ownedType_2_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedMultiplicityRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -9493,7 +9493,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_2_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:3239:1: ( ( ( (lv_qualifiers_4_0= 'ordered' ) ) | ( (lv_qualifiers_5_0= '!ordered' ) ) | ( (lv_qualifiers_6_0= 'unique' ) ) | ( (lv_qualifiers_7_0= '!unique' ) ) ) (otherlv_8= ',' )? )+
                     int cnt91=0;
@@ -9556,7 +9556,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_4_0, grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_0_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -9564,7 +9564,7 @@
                     	              	            current = createModelElement(grammarAccess.getParameterCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_4_0, "ordered");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -9588,7 +9588,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_5_0, grammarAccess.getParameterCSAccess().getQualifiersOrderedKeyword_2_1_0_1_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -9596,7 +9596,7 @@
                     	              	            current = createModelElement(grammarAccess.getParameterCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_5_0, "!ordered");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -9620,7 +9620,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_6_0, grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_2_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -9628,7 +9628,7 @@
                     	              	            current = createModelElement(grammarAccess.getParameterCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_6_0, "unique");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -9652,7 +9652,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_7_0, grammarAccess.getParameterCSAccess().getQualifiersUniqueKeyword_2_1_0_3_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -9660,7 +9660,7 @@
                     	              	            current = createModelElement(grammarAccess.getParameterCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_7_0, "!unique");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -9689,7 +9689,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                  	newLeafNode(otherlv_8, grammarAccess.getParameterCSAccess().getCommaKeyword_2_1_1());
-                    	                  
+
                     	            }
 
                     	            }
@@ -9715,7 +9715,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_9, grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_2_2());
-                          
+
                     }
 
                     }
@@ -9738,7 +9738,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_10, grammarAccess.getParameterCSAccess().getLeftCurlyBracketKeyword_3_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:3314:1: ( (lv_ownedAnnotations_11_0= ruleAnnotationElementCS ) )*
                     loop93:
@@ -9759,9 +9759,9 @@
                     	    // InternalOCLinEcore.g:3316:3: lv_ownedAnnotations_11_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_48);
                     	    lv_ownedAnnotations_11_0=ruleAnnotationElementCS();
@@ -9774,12 +9774,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getParameterCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_11_0, 
+                    	              		lv_ownedAnnotations_11_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -9797,7 +9797,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_12, grammarAccess.getParameterCSAccess().getRightCurlyBracketKeyword_3_2());
-                          
+
                     }
 
                     }
@@ -9812,14 +9812,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9840,7 +9840,7 @@
             // InternalOCLinEcore.g:3346:2: iv_ruleReferenceCS= ruleReferenceCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getReferenceCSRule()); 
+               newCompositeNode(grammarAccess.getReferenceCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleReferenceCS=ruleReferenceCS();
@@ -9848,18 +9848,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleReferenceCS; 
+               current =iv_ruleReferenceCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9925,8 +9925,8 @@
         EObject lv_ownedDefaultExpressions_48_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:3356:28: ( ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'property' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= '#' ( ( ruleUnrestrictedName ) ) )? (otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_10= '=' ( (lv_default_11_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_12= '{' ( ( ( (lv_qualifiers_13_0= 'composes' ) ) | ( (lv_qualifiers_14_0= '!composes' ) ) | ( (lv_qualifiers_15_0= 'derived' ) ) | ( (lv_qualifiers_16_0= '!derived' ) ) | ( (lv_qualifiers_17_0= 'ordered' ) ) | ( (lv_qualifiers_18_0= '!ordered' ) ) | ( (lv_qualifiers_19_0= 'readonly' ) ) | ( (lv_qualifiers_20_0= '!readonly' ) ) | ( (lv_qualifiers_21_0= 'resolve' ) ) | ( (lv_qualifiers_22_0= '!resolve' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) | ( (lv_qualifiers_27_0= 'unsettable' ) ) | ( (lv_qualifiers_28_0= '!unsettable' ) ) | ( (lv_qualifiers_29_0= 'volatile' ) ) | ( (lv_qualifiers_30_0= '!volatile' ) ) ) (otherlv_31= ',' )? )+ otherlv_32= '}' )? ( (otherlv_33= '{' ( ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) | (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) | (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) | (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) )* otherlv_50= '}' ) | otherlv_51= ';' ) ) )
             // InternalOCLinEcore.g:3357:1: ( ( ( ( (lv_qualifiers_0_0= 'static' ) ) ( (lv_qualifiers_1_0= 'definition' ) )? ) | ( ( (lv_qualifiers_2_0= 'definition' ) ) ( (lv_qualifiers_3_0= 'static' ) )? ) )? otherlv_4= 'property' ( (lv_name_5_0= ruleUnrestrictedName ) ) (otherlv_6= '#' ( ( ruleUnrestrictedName ) ) )? (otherlv_8= ':' ( (lv_ownedType_9_0= ruleTypedMultiplicityRefCS ) ) )? (otherlv_10= '=' ( (lv_default_11_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_12= '{' ( ( ( (lv_qualifiers_13_0= 'composes' ) ) | ( (lv_qualifiers_14_0= '!composes' ) ) | ( (lv_qualifiers_15_0= 'derived' ) ) | ( (lv_qualifiers_16_0= '!derived' ) ) | ( (lv_qualifiers_17_0= 'ordered' ) ) | ( (lv_qualifiers_18_0= '!ordered' ) ) | ( (lv_qualifiers_19_0= 'readonly' ) ) | ( (lv_qualifiers_20_0= '!readonly' ) ) | ( (lv_qualifiers_21_0= 'resolve' ) ) | ( (lv_qualifiers_22_0= '!resolve' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) | ( (lv_qualifiers_27_0= 'unsettable' ) ) | ( (lv_qualifiers_28_0= '!unsettable' ) ) | ( (lv_qualifiers_29_0= 'volatile' ) ) | ( (lv_qualifiers_30_0= '!volatile' ) ) ) (otherlv_31= ',' )? )+ otherlv_32= '}' )? ( (otherlv_33= '{' ( ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) | (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) | (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) | (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) )* otherlv_50= '}' ) | otherlv_51= ';' ) )
@@ -9961,7 +9961,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_qualifiers_0_0, grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_0_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -9969,7 +9969,7 @@
                       	            current = createModelElement(grammarAccess.getReferenceCSRule());
                       	        }
                              		addWithLastConsumed(current, "qualifiers", lv_qualifiers_0_0, "static");
-                      	    
+
                     }
 
                     }
@@ -9995,7 +9995,7 @@
                             if ( state.backtracking==0 ) {
 
                                       newLeafNode(lv_qualifiers_1_0, grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_0_1_0());
-                                  
+
                             }
                             if ( state.backtracking==0 ) {
 
@@ -10003,7 +10003,7 @@
                               	            current = createModelElement(grammarAccess.getReferenceCSRule());
                               	        }
                                      		addWithLastConsumed(current, "qualifiers", lv_qualifiers_1_0, "definition");
-                              	    
+
                             }
 
                             }
@@ -10036,7 +10036,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_qualifiers_2_0, grammarAccess.getReferenceCSAccess().getQualifiersDefinitionKeyword_0_1_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -10044,7 +10044,7 @@
                       	            current = createModelElement(grammarAccess.getReferenceCSRule());
                       	        }
                              		addWithLastConsumed(current, "qualifiers", lv_qualifiers_2_0, "definition");
-                      	    
+
                     }
 
                     }
@@ -10070,7 +10070,7 @@
                             if ( state.backtracking==0 ) {
 
                                       newLeafNode(lv_qualifiers_3_0, grammarAccess.getReferenceCSAccess().getQualifiersStaticKeyword_0_1_1_0());
-                                  
+
                             }
                             if ( state.backtracking==0 ) {
 
@@ -10078,7 +10078,7 @@
                               	            current = createModelElement(grammarAccess.getReferenceCSRule());
                               	        }
                                      		addWithLastConsumed(current, "qualifiers", lv_qualifiers_3_0, "static");
-                              	    
+
                             }
 
                             }
@@ -10102,7 +10102,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getReferenceCSAccess().getPropertyKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:3422:1: ( (lv_name_5_0= ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:3423:1: (lv_name_5_0= ruleUnrestrictedName )
@@ -10111,9 +10111,9 @@
             // InternalOCLinEcore.g:3424:3: lv_name_5_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getReferenceCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getReferenceCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_72);
             lv_name_5_0=ruleUnrestrictedName();
@@ -10126,12 +10126,12 @@
               	            current = createModelElementForParent(grammarAccess.getReferenceCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_5_0, 
+                      		lv_name_5_0,
                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -10154,7 +10154,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getReferenceCSAccess().getNumberSignKeyword_3_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:3444:1: ( ( ruleUnrestrictedName ) )
                     // InternalOCLinEcore.g:3445:1: ( ruleUnrestrictedName )
@@ -10163,21 +10163,21 @@
                     // InternalOCLinEcore.g:3446:3: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getReferenceCSRule());
                       	        }
-                              
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyCrossReference_3_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredOppositePropertyCrossReference_3_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_28);
                     ruleUnrestrictedName();
@@ -10185,9 +10185,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -10216,7 +10216,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_8, grammarAccess.getReferenceCSAccess().getColonKeyword_4_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:3466:1: ( (lv_ownedType_9_0= ruleTypedMultiplicityRefCS ) )
                     // InternalOCLinEcore.g:3467:1: (lv_ownedType_9_0= ruleTypedMultiplicityRefCS )
@@ -10225,9 +10225,9 @@
                     // InternalOCLinEcore.g:3468:3: lv_ownedType_9_0= ruleTypedMultiplicityRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_30);
                     lv_ownedType_9_0=ruleTypedMultiplicityRefCS();
@@ -10240,12 +10240,12 @@
                       	            current = createModelElementForParent(grammarAccess.getReferenceCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_9_0, 
+                              		lv_ownedType_9_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedMultiplicityRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -10274,7 +10274,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_10, grammarAccess.getReferenceCSAccess().getEqualsSignKeyword_5_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:3488:1: ( (lv_default_11_0= RULE_SINGLE_QUOTED_STRING ) )
                     // InternalOCLinEcore.g:3489:1: (lv_default_11_0= RULE_SINGLE_QUOTED_STRING )
@@ -10285,8 +10285,8 @@
                     lv_default_11_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_22); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_default_11_0, grammarAccess.getReferenceCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0()); 
-                      		
+                      			newLeafNode(lv_default_11_0, grammarAccess.getReferenceCSAccess().getDefaultSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -10294,11 +10294,11 @@
                       	            current = createModelElement(grammarAccess.getReferenceCSRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"default",
-                              		lv_default_11_0, 
+                              		lv_default_11_0,
                               		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
-                      	    
+
                     }
 
                     }
@@ -10331,7 +10331,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_12, grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_6_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:3510:1: ( ( ( (lv_qualifiers_13_0= 'composes' ) ) | ( (lv_qualifiers_14_0= '!composes' ) ) | ( (lv_qualifiers_15_0= 'derived' ) ) | ( (lv_qualifiers_16_0= '!derived' ) ) | ( (lv_qualifiers_17_0= 'ordered' ) ) | ( (lv_qualifiers_18_0= '!ordered' ) ) | ( (lv_qualifiers_19_0= 'readonly' ) ) | ( (lv_qualifiers_20_0= '!readonly' ) ) | ( (lv_qualifiers_21_0= 'resolve' ) ) | ( (lv_qualifiers_22_0= '!resolve' ) ) | ( (lv_qualifiers_23_0= 'transient' ) ) | ( (lv_qualifiers_24_0= '!transient' ) ) | ( (lv_qualifiers_25_0= 'unique' ) ) | ( (lv_qualifiers_26_0= '!unique' ) ) | ( (lv_qualifiers_27_0= 'unsettable' ) ) | ( (lv_qualifiers_28_0= '!unsettable' ) ) | ( (lv_qualifiers_29_0= 'volatile' ) ) | ( (lv_qualifiers_30_0= '!volatile' ) ) ) (otherlv_31= ',' )? )+
                     int cnt103=0;
@@ -10464,7 +10464,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_13_0, grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_0_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10472,7 +10472,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_13_0, "composes");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10496,7 +10496,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_14_0, grammarAccess.getReferenceCSAccess().getQualifiersComposesKeyword_6_1_0_1_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10504,7 +10504,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_14_0, "!composes");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10528,7 +10528,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_15_0, grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_2_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10536,7 +10536,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_15_0, "derived");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10560,7 +10560,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_16_0, grammarAccess.getReferenceCSAccess().getQualifiersDerivedKeyword_6_1_0_3_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10568,7 +10568,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_16_0, "!derived");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10592,7 +10592,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_17_0, grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_4_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10600,7 +10600,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_17_0, "ordered");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10624,7 +10624,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_18_0, grammarAccess.getReferenceCSAccess().getQualifiersOrderedKeyword_6_1_0_5_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10632,7 +10632,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_18_0, "!ordered");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10656,7 +10656,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_19_0, grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_6_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10664,7 +10664,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_19_0, "readonly");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10688,7 +10688,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_20_0, grammarAccess.getReferenceCSAccess().getQualifiersReadonlyKeyword_6_1_0_7_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10696,7 +10696,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_20_0, "!readonly");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10720,7 +10720,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_21_0, grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_8_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10728,7 +10728,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_21_0, "resolve");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10752,7 +10752,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_22_0, grammarAccess.getReferenceCSAccess().getQualifiersResolveKeyword_6_1_0_9_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10760,7 +10760,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_22_0, "!resolve");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10784,7 +10784,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_23_0, grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_10_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10792,7 +10792,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_23_0, "transient");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10816,7 +10816,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_24_0, grammarAccess.getReferenceCSAccess().getQualifiersTransientKeyword_6_1_0_11_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10824,7 +10824,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_24_0, "!transient");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10848,7 +10848,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_25_0, grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_12_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10856,7 +10856,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_25_0, "unique");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10880,7 +10880,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_26_0, grammarAccess.getReferenceCSAccess().getQualifiersUniqueKeyword_6_1_0_13_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10888,7 +10888,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_26_0, "!unique");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10912,7 +10912,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_27_0, grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_14_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10920,7 +10920,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_27_0, "unsettable");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10944,7 +10944,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_28_0, grammarAccess.getReferenceCSAccess().getQualifiersUnsettableKeyword_6_1_0_15_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10952,7 +10952,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_28_0, "!unsettable");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -10976,7 +10976,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_29_0, grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_16_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -10984,7 +10984,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_29_0, "volatile");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -11008,7 +11008,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                      newLeafNode(lv_qualifiers_30_0, grammarAccess.getReferenceCSAccess().getQualifiersVolatileKeyword_6_1_0_17_0());
-                    	                  
+
                     	            }
                     	            if ( state.backtracking==0 ) {
 
@@ -11016,7 +11016,7 @@
                     	              	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		addWithLastConsumed(current, "qualifiers", lv_qualifiers_30_0, "!volatile");
-                    	              	    
+
                     	            }
 
                     	            }
@@ -11045,7 +11045,7 @@
                     	            if ( state.backtracking==0 ) {
 
                     	                  	newLeafNode(otherlv_31, grammarAccess.getReferenceCSAccess().getCommaKeyword_6_1_1());
-                    	                  
+
                     	            }
 
                     	            }
@@ -11071,7 +11071,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_32, grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_6_2());
-                          
+
                     }
 
                     }
@@ -11107,7 +11107,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_33, grammarAccess.getReferenceCSAccess().getLeftCurlyBracketKeyword_7_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:3809:1: ( ( (lv_ownedAnnotations_34_0= ruleAnnotationElementCS ) ) | (otherlv_35= 'key' ( ( ruleUnrestrictedName ) ) (otherlv_37= ',' ( ( ruleUnrestrictedName ) ) )* otherlv_39= ';' ) | (otherlv_40= 'initial' ( ruleUnrestrictedName )? otherlv_42= ':' ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )? otherlv_44= ';' ) | (otherlv_45= 'derivation' ( ruleUnrestrictedName )? otherlv_47= ':' ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )? otherlv_49= ';' ) )*
                     loop110:
@@ -11150,9 +11150,9 @@
                     	    // InternalOCLinEcore.g:3811:3: lv_ownedAnnotations_34_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_76);
                     	    lv_ownedAnnotations_34_0=ruleAnnotationElementCS();
@@ -11165,12 +11165,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getReferenceCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_34_0, 
+                    	              		lv_ownedAnnotations_34_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -11191,7 +11191,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_35, grammarAccess.getReferenceCSAccess().getKeyKeyword_7_0_1_1_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:3832:1: ( ( ruleUnrestrictedName ) )
                     	    // InternalOCLinEcore.g:3833:1: ( ruleUnrestrictedName )
@@ -11200,21 +11200,21 @@
                     	    // InternalOCLinEcore.g:3834:3: ruleUnrestrictedName
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      		  /* */ 
-                    	      		
+
+                    	      		  /* */
+
                     	    }
                     	    if ( state.backtracking==0 ) {
 
                     	      			if (current==null) {
                     	      	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	      	        }
-                    	              
+
                     	    }
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_77);
                     	    ruleUnrestrictedName();
@@ -11222,9 +11222,9 @@
                     	    state._fsp--;
                     	    if (state.failed) return current;
                     	    if ( state.backtracking==0 ) {
-                    	       
+
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -11251,7 +11251,7 @@
                     	    	    if ( state.backtracking==0 ) {
 
                     	    	          	newLeafNode(otherlv_37, grammarAccess.getReferenceCSAccess().getCommaKeyword_7_0_1_1_2_0());
-                    	    	          
+
                     	    	    }
                     	    	    // InternalOCLinEcore.g:3854:1: ( ( ruleUnrestrictedName ) )
                     	    	    // InternalOCLinEcore.g:3855:1: ( ruleUnrestrictedName )
@@ -11260,21 +11260,21 @@
                     	    	    // InternalOCLinEcore.g:3856:3: ruleUnrestrictedName
                     	    	    {
                     	    	    if ( state.backtracking==0 ) {
-                    	    	       
-                    	    	      		  /* */ 
-                    	    	      		
+
+                    	    	      		  /* */
+
                     	    	    }
                     	    	    if ( state.backtracking==0 ) {
 
                     	    	      			if (current==null) {
                     	    	      	            current = createModelElement(grammarAccess.getReferenceCSRule());
                     	    	      	        }
-                    	    	              
+
                     	    	    }
                     	    	    if ( state.backtracking==0 ) {
-                    	    	       
-                    	    	      	        newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_2_1_0()); 
-                    	    	      	    
+
+                    	    	      	        newCompositeNode(grammarAccess.getReferenceCSAccess().getReferredKeysPropertyCrossReference_7_0_1_1_2_1_0());
+
                     	    	    }
                     	    	    pushFollow(FollowSets000.FOLLOW_77);
                     	    	    ruleUnrestrictedName();
@@ -11282,9 +11282,9 @@
                     	    	    state._fsp--;
                     	    	    if (state.failed) return current;
                     	    	    if ( state.backtracking==0 ) {
-                    	    	       
+
                     	    	      	        afterParserOrEnumRuleCall();
-                    	    	      	    
+
                     	    	    }
 
                     	    	    }
@@ -11305,7 +11305,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_39, grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_1_3());
-                    	          
+
                     	    }
 
                     	    }
@@ -11323,7 +11323,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_40, grammarAccess.getReferenceCSAccess().getInitialKeyword_7_0_1_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:3881:1: ( ruleUnrestrictedName )?
                     	    int alt106=2;
@@ -11337,14 +11337,14 @@
                     	            // InternalOCLinEcore.g:3882:2: ruleUnrestrictedName
                     	            {
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	              	  /* */ 
-                    	              	
+
+                    	              	  /* */
+
                     	            }
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	                      newCompositeNode(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_2_1()); 
-                    	                  
+
+                    	                      newCompositeNode(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_2_1());
+
                     	            }
                     	            pushFollow(FollowSets000.FOLLOW_17);
                     	            ruleUnrestrictedName();
@@ -11352,9 +11352,9 @@
                     	            state._fsp--;
                     	            if (state.failed) return current;
                     	            if ( state.backtracking==0 ) {
-                    	               
+
                     	                      afterParserOrEnumRuleCall();
-                    	                  
+
                     	            }
 
                     	            }
@@ -11366,7 +11366,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_42, grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_2_2());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:3896:1: ( (lv_ownedDefaultExpressions_43_0= ruleSpecificationCS ) )?
                     	    int alt107=2;
@@ -11383,9 +11383,9 @@
                     	            // InternalOCLinEcore.g:3898:3: lv_ownedDefaultExpressions_43_0= ruleSpecificationCS
                     	            {
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	              	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_2_3_0()); 
-                    	              	    
+
+                    	              	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_2_3_0());
+
                     	            }
                     	            pushFollow(FollowSets000.FOLLOW_14);
                     	            lv_ownedDefaultExpressions_43_0=ruleSpecificationCS();
@@ -11398,12 +11398,12 @@
                     	              	            current = createModelElementForParent(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		add(
-                    	                     			current, 
+                    	                     			current,
                     	                     			"ownedDefaultExpressions",
-                    	                      		lv_ownedDefaultExpressions_43_0, 
+                    	                      		lv_ownedDefaultExpressions_43_0,
                     	                      		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
                     	              	        afterParserOrEnumRuleCall();
-                    	              	    
+
                     	            }
 
                     	            }
@@ -11418,7 +11418,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_44, grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_2_4());
-                    	          
+
                     	    }
 
                     	    }
@@ -11436,7 +11436,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_45, grammarAccess.getReferenceCSAccess().getDerivationKeyword_7_0_1_3_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:3923:1: ( ruleUnrestrictedName )?
                     	    int alt108=2;
@@ -11450,14 +11450,14 @@
                     	            // InternalOCLinEcore.g:3924:2: ruleUnrestrictedName
                     	            {
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	              	  /* */ 
-                    	              	
+
+                    	              	  /* */
+
                     	            }
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	                      newCompositeNode(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_3_1()); 
-                    	                  
+
+                    	                      newCompositeNode(grammarAccess.getReferenceCSAccess().getUnrestrictedNameParserRuleCall_7_0_1_3_1());
+
                     	            }
                     	            pushFollow(FollowSets000.FOLLOW_17);
                     	            ruleUnrestrictedName();
@@ -11465,9 +11465,9 @@
                     	            state._fsp--;
                     	            if (state.failed) return current;
                     	            if ( state.backtracking==0 ) {
-                    	               
+
                     	                      afterParserOrEnumRuleCall();
-                    	                  
+
                     	            }
 
                     	            }
@@ -11479,7 +11479,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_47, grammarAccess.getReferenceCSAccess().getColonKeyword_7_0_1_3_2());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:3938:1: ( (lv_ownedDefaultExpressions_48_0= ruleSpecificationCS ) )?
                     	    int alt109=2;
@@ -11496,9 +11496,9 @@
                     	            // InternalOCLinEcore.g:3940:3: lv_ownedDefaultExpressions_48_0= ruleSpecificationCS
                     	            {
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	              	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_3_3_0()); 
-                    	              	    
+
+                    	              	        newCompositeNode(grammarAccess.getReferenceCSAccess().getOwnedDefaultExpressionsSpecificationCSParserRuleCall_7_0_1_3_3_0());
+
                     	            }
                     	            pushFollow(FollowSets000.FOLLOW_14);
                     	            lv_ownedDefaultExpressions_48_0=ruleSpecificationCS();
@@ -11511,12 +11511,12 @@
                     	              	            current = createModelElementForParent(grammarAccess.getReferenceCSRule());
                     	              	        }
                     	                     		add(
-                    	                     			current, 
+                    	                     			current,
                     	                     			"ownedDefaultExpressions",
-                    	                      		lv_ownedDefaultExpressions_48_0, 
+                    	                      		lv_ownedDefaultExpressions_48_0,
                     	                      		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.SpecificationCS");
                     	              	        afterParserOrEnumRuleCall();
-                    	              	    
+
                     	            }
 
                     	            }
@@ -11531,7 +11531,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_49, grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_0_1_3_4());
-                    	          
+
                     	    }
 
                     	    }
@@ -11549,7 +11549,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_50, grammarAccess.getReferenceCSAccess().getRightCurlyBracketKeyword_7_0_2());
-                          
+
                     }
 
                     }
@@ -11564,7 +11564,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_51, grammarAccess.getReferenceCSAccess().getSemicolonKeyword_7_1());
-                          
+
                     }
 
                     }
@@ -11579,14 +11579,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11607,7 +11607,7 @@
             // InternalOCLinEcore.g:3979:2: iv_ruleSpecificationCS= ruleSpecificationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getSpecificationCSRule()); 
+               newCompositeNode(grammarAccess.getSpecificationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleSpecificationCS=ruleSpecificationCS();
@@ -11615,18 +11615,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleSpecificationCS; 
+               current =iv_ruleSpecificationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11643,8 +11643,8 @@
         EObject lv_ownedExpression_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:3989:28: ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) | ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) ) ) )
             // InternalOCLinEcore.g:3990:1: ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) | ( (lv_exprString_1_0= RULE_UNQUOTED_STRING ) ) )
@@ -11677,9 +11677,9 @@
                     // InternalOCLinEcore.g:3992:3: lv_ownedExpression_0_0= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedExpression_0_0=ruleExpCS();
@@ -11692,12 +11692,12 @@
                       	            current = createModelElementForParent(grammarAccess.getSpecificationCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExpression",
-                              		lv_ownedExpression_0_0, 
+                              		lv_ownedExpression_0_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -11720,8 +11720,8 @@
                     lv_exprString_1_0=(Token)match(input,RULE_UNQUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_exprString_1_0, grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0()); 
-                      		
+                      			newLeafNode(lv_exprString_1_0, grammarAccess.getSpecificationCSAccess().getExprStringUNQUOTED_STRINGTerminalRuleCall_1_0());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -11729,11 +11729,11 @@
                       	            current = createModelElement(grammarAccess.getSpecificationCSRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"exprString",
-                              		lv_exprString_1_0, 
+                              		lv_exprString_1_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UNQUOTED_STRING");
-                      	    
+
                     }
 
                     }
@@ -11751,14 +11751,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11779,7 +11779,7 @@
             // InternalOCLinEcore.g:4037:2: iv_ruleStructuredClassCS= ruleStructuredClassCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getStructuredClassCSRule()); 
+               newCompositeNode(grammarAccess.getStructuredClassCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleStructuredClassCS=ruleStructuredClassCS();
@@ -11787,18 +11787,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleStructuredClassCS; 
+               current =iv_ruleStructuredClassCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11840,8 +11840,8 @@
         EObject lv_ownedConstraints_17_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:4047:28: ( ( ( (lv_isAbstract_0_0= 'abstract' ) )? otherlv_1= 'class' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= 'extends' ( (lv_ownedSuperTypes_5_0= ruleTypedRefCS ) ) (otherlv_6= ',' ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) )* )? (otherlv_8= ':' ( (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( (lv_isInterface_11_0= 'interface' ) )? otherlv_12= '}' )? ( (otherlv_13= '{' ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )* otherlv_18= '}' ) | otherlv_19= ';' ) ) )
             // InternalOCLinEcore.g:4048:1: ( ( (lv_isAbstract_0_0= 'abstract' ) )? otherlv_1= 'class' ( (lv_name_2_0= ruleUnrestrictedName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= 'extends' ( (lv_ownedSuperTypes_5_0= ruleTypedRefCS ) ) (otherlv_6= ',' ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) )* )? (otherlv_8= ':' ( (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING ) ) )? (otherlv_10= '{' ( (lv_isInterface_11_0= 'interface' ) )? otherlv_12= '}' )? ( (otherlv_13= '{' ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )* otherlv_18= '}' ) | otherlv_19= ';' ) )
@@ -11867,7 +11867,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isAbstract_0_0, grammarAccess.getStructuredClassCSAccess().getIsAbstractAbstractKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -11875,7 +11875,7 @@
                       	            current = createModelElement(grammarAccess.getStructuredClassCSRule());
                       	        }
                              		setWithLastConsumed(current, "isAbstract", true, "abstract");
-                      	    
+
                     }
 
                     }
@@ -11890,7 +11890,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getStructuredClassCSAccess().getClassKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:4067:1: ( (lv_name_2_0= ruleUnrestrictedName ) )
             // InternalOCLinEcore.g:4068:1: (lv_name_2_0= ruleUnrestrictedName )
@@ -11899,9 +11899,9 @@
             // InternalOCLinEcore.g:4069:3: lv_name_2_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getNameUnrestrictedNameParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getNameUnrestrictedNameParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_79);
             lv_name_2_0=ruleUnrestrictedName();
@@ -11914,12 +11914,12 @@
               	            current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_2_0, 
+                      		lv_name_2_0,
                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -11942,9 +11942,9 @@
                     // InternalOCLinEcore.g:4087:3: lv_ownedSignature_3_0= ruleTemplateSignatureCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_80);
                     lv_ownedSignature_3_0=ruleTemplateSignatureCS();
@@ -11957,12 +11957,12 @@
                       	            current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedSignature",
-                              		lv_ownedSignature_3_0, 
+                              		lv_ownedSignature_3_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TemplateSignatureCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -11988,7 +11988,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_4, grammarAccess.getStructuredClassCSAccess().getExtendsKeyword_4_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:4107:1: ( (lv_ownedSuperTypes_5_0= ruleTypedRefCS ) )
                     // InternalOCLinEcore.g:4108:1: (lv_ownedSuperTypes_5_0= ruleTypedRefCS )
@@ -11997,9 +11997,9 @@
                     // InternalOCLinEcore.g:4109:3: lv_ownedSuperTypes_5_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_81);
                     lv_ownedSuperTypes_5_0=ruleTypedRefCS();
@@ -12012,12 +12012,12 @@
                       	            current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedSuperTypes",
-                              		lv_ownedSuperTypes_5_0, 
+                              		lv_ownedSuperTypes_5_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -12044,7 +12044,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_6, grammarAccess.getStructuredClassCSAccess().getCommaKeyword_4_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:4129:1: ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) )
                     	    // InternalOCLinEcore.g:4130:1: (lv_ownedSuperTypes_7_0= ruleTypedRefCS )
@@ -12053,9 +12053,9 @@
                     	    // InternalOCLinEcore.g:4131:3: lv_ownedSuperTypes_7_0= ruleTypedRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_4_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_81);
                     	    lv_ownedSuperTypes_7_0=ruleTypedRefCS();
@@ -12068,12 +12068,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedSuperTypes",
-                    	              		lv_ownedSuperTypes_7_0, 
+                    	              		lv_ownedSuperTypes_7_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -12111,7 +12111,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_8, grammarAccess.getStructuredClassCSAccess().getColonKeyword_5_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:4151:1: ( (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING ) )
                     // InternalOCLinEcore.g:4152:1: (lv_instanceClassName_9_0= RULE_SINGLE_QUOTED_STRING )
@@ -12122,8 +12122,8 @@
                     lv_instanceClassName_9_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_22); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_instanceClassName_9_0, grammarAccess.getStructuredClassCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0()); 
-                      		
+                      			newLeafNode(lv_instanceClassName_9_0, grammarAccess.getStructuredClassCSAccess().getInstanceClassNameSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -12131,11 +12131,11 @@
                       	            current = createModelElement(grammarAccess.getStructuredClassCSRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"instanceClassName",
-                              		lv_instanceClassName_9_0, 
+                              		lv_instanceClassName_9_0,
                               		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
-                      	    
+
                     }
 
                     }
@@ -12175,7 +12175,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_10, grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_6_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:4173:1: ( (lv_isInterface_11_0= 'interface' ) )?
                     int alt118=2;
@@ -12195,7 +12195,7 @@
                             if ( state.backtracking==0 ) {
 
                                       newLeafNode(lv_isInterface_11_0, grammarAccess.getStructuredClassCSAccess().getIsInterfaceInterfaceKeyword_6_1_0());
-                                  
+
                             }
                             if ( state.backtracking==0 ) {
 
@@ -12203,7 +12203,7 @@
                               	            current = createModelElement(grammarAccess.getStructuredClassCSRule());
                               	        }
                                      		setWithLastConsumed(current, "isInterface", true, "interface");
-                              	    
+
                             }
 
                             }
@@ -12218,7 +12218,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_12, grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_6_2());
-                          
+
                     }
 
                     }
@@ -12254,7 +12254,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_13, grammarAccess.getStructuredClassCSAccess().getLeftCurlyBracketKeyword_7_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:4196:1: ( ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) | ( (lv_ownedOperations_15_0= ruleOperationCS ) ) | ( (lv_ownedProperties_16_0= ruleStructuralFeatureCS ) ) | ( (lv_ownedConstraints_17_0= ruleInvariantConstraintCS ) ) )*
                     loop120:
@@ -12272,9 +12272,9 @@
                     	    // InternalOCLinEcore.g:4198:3: lv_ownedAnnotations_14_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_46);
                     	    lv_ownedAnnotations_14_0=ruleAnnotationElementCS();
@@ -12287,12 +12287,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_14_0, 
+                    	              		lv_ownedAnnotations_14_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -12313,9 +12313,9 @@
                     	    // InternalOCLinEcore.g:4217:3: lv_ownedOperations_15_0= ruleOperationCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_46);
                     	    lv_ownedOperations_15_0=ruleOperationCS();
@@ -12328,12 +12328,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedOperations",
-                    	              		lv_ownedOperations_15_0, 
+                    	              		lv_ownedOperations_15_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.OperationCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -12354,9 +12354,9 @@
                     	    // InternalOCLinEcore.g:4236:3: lv_ownedProperties_16_0= ruleStructuralFeatureCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesStructuralFeatureCSParserRuleCall_7_0_1_2_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedPropertiesStructuralFeatureCSParserRuleCall_7_0_1_2_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_46);
                     	    lv_ownedProperties_16_0=ruleStructuralFeatureCS();
@@ -12369,12 +12369,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedProperties",
-                    	              		lv_ownedProperties_16_0, 
+                    	              		lv_ownedProperties_16_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.StructuralFeatureCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -12395,9 +12395,9 @@
                     	    // InternalOCLinEcore.g:4255:3: lv_ownedConstraints_17_0= ruleInvariantConstraintCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_7_0_1_3_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getStructuredClassCSAccess().getOwnedConstraintsInvariantConstraintCSParserRuleCall_7_0_1_3_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_46);
                     	    lv_ownedConstraints_17_0=ruleInvariantConstraintCS();
@@ -12410,12 +12410,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getStructuredClassCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedConstraints",
-                    	              		lv_ownedConstraints_17_0, 
+                    	              		lv_ownedConstraints_17_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.InvariantConstraintCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -12436,7 +12436,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_18, grammarAccess.getStructuredClassCSAccess().getRightCurlyBracketKeyword_7_0_2());
-                          
+
                     }
 
                     }
@@ -12451,7 +12451,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_19, grammarAccess.getStructuredClassCSAccess().getSemicolonKeyword_7_1());
-                          
+
                     }
 
                     }
@@ -12466,14 +12466,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12494,7 +12494,7 @@
             // InternalOCLinEcore.g:4290:2: iv_ruleStructuralFeatureCS= ruleStructuralFeatureCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getStructuralFeatureCSRule()); 
+               newCompositeNode(grammarAccess.getStructuralFeatureCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleStructuralFeatureCS=ruleStructuralFeatureCS();
@@ -12502,18 +12502,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleStructuralFeatureCS; 
+               current =iv_ruleStructuralFeatureCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12531,8 +12531,8 @@
         EObject this_ReferenceCS_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:4300:28: ( (this_AttributeCS_0= ruleAttributeCS | this_ReferenceCS_1= ruleReferenceCS ) )
             // InternalOCLinEcore.g:4301:1: (this_AttributeCS_0= ruleAttributeCS | this_ReferenceCS_1= ruleReferenceCS )
@@ -12647,14 +12647,14 @@
                     // InternalOCLinEcore.g:4302:2: this_AttributeCS_0= ruleAttributeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getStructuralFeatureCSAccess().getAttributeCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getStructuralFeatureCSAccess().getAttributeCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_AttributeCS_0=ruleAttributeCS();
@@ -12662,10 +12662,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_AttributeCS_0; 
+
+                              current = this_AttributeCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -12674,14 +12674,14 @@
                     // InternalOCLinEcore.g:4315:2: this_ReferenceCS_1= ruleReferenceCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getStructuralFeatureCSAccess().getReferenceCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getStructuralFeatureCSAccess().getReferenceCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_ReferenceCS_1=ruleReferenceCS();
@@ -12689,10 +12689,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_ReferenceCS_1; 
+
+                              current = this_ReferenceCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -12704,14 +12704,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12732,7 +12732,7 @@
             // InternalOCLinEcore.g:4336:2: iv_ruleSysMLCS= ruleSysMLCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getSysMLCSRule()); 
+               newCompositeNode(grammarAccess.getSysMLCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleSysMLCS=ruleSysMLCS();
@@ -12740,18 +12740,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleSysMLCS; 
+               current =iv_ruleSysMLCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12774,8 +12774,8 @@
         EObject lv_ownedDetails_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:4346:28: ( ( () otherlv_1= 'sysml' ( ( ( (lv_ownedDetails_2_0= ruleDetailCS ) ) otherlv_3= ';' ) | (otherlv_4= '{' ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* otherlv_7= '}' ) ) ) )
             // InternalOCLinEcore.g:4347:1: ( () otherlv_1= 'sysml' ( ( ( (lv_ownedDetails_2_0= ruleDetailCS ) ) otherlv_3= ';' ) | (otherlv_4= '{' ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* otherlv_7= '}' ) ) )
@@ -12784,19 +12784,19 @@
             // InternalOCLinEcore.g:4347:2: () otherlv_1= 'sysml' ( ( ( (lv_ownedDetails_2_0= ruleDetailCS ) ) otherlv_3= ';' ) | (otherlv_4= '{' ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* otherlv_7= '}' ) )
             {
             // InternalOCLinEcore.g:4347:2: ()
-            // InternalOCLinEcore.g:4348:2: 
+            // InternalOCLinEcore.g:4348:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getSysMLCSAccess().getSysMLCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -12805,7 +12805,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getSysMLCSAccess().getSysmlKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:4360:1: ( ( ( (lv_ownedDetails_2_0= ruleDetailCS ) ) otherlv_3= ';' ) | (otherlv_4= '{' ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )* otherlv_7= '}' ) )
             int alt124=2;
@@ -12838,9 +12838,9 @@
                     // InternalOCLinEcore.g:4362:3: lv_ownedDetails_2_0= ruleDetailCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_0_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_0_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_14);
                     lv_ownedDetails_2_0=ruleDetailCS();
@@ -12853,12 +12853,12 @@
                       	            current = createModelElementForParent(grammarAccess.getSysMLCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedDetails",
-                              		lv_ownedDetails_2_0, 
+                              		lv_ownedDetails_2_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -12870,7 +12870,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_0_1());
-                          
+
                     }
 
                     }
@@ -12888,7 +12888,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_4, grammarAccess.getSysMLCSAccess().getLeftCurlyBracketKeyword_2_1_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:4387:1: ( ( (lv_ownedDetails_5_0= ruleDetailCS ) ) otherlv_6= ';' )*
                     loop123:
@@ -12912,9 +12912,9 @@
                     	    // InternalOCLinEcore.g:4389:3: lv_ownedDetails_5_0= ruleDetailCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_1_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getSysMLCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_1_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_14);
                     	    lv_ownedDetails_5_0=ruleDetailCS();
@@ -12927,12 +12927,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getSysMLCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedDetails",
-                    	              		lv_ownedDetails_5_0, 
+                    	              		lv_ownedDetails_5_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.DetailCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -12944,7 +12944,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_6, grammarAccess.getSysMLCSAccess().getSemicolonKeyword_2_1_1_1());
-                    	          
+
                     	    }
 
                     	    }
@@ -12959,7 +12959,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_7, grammarAccess.getSysMLCSAccess().getRightCurlyBracketKeyword_2_1_2());
-                          
+
                     }
 
                     }
@@ -12977,14 +12977,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13005,7 +13005,7 @@
             // InternalOCLinEcore.g:4425:2: iv_ruleTypedMultiplicityRefCS= ruleTypedMultiplicityRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypedMultiplicityRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypedMultiplicityRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypedMultiplicityRefCS=ruleTypedMultiplicityRefCS();
@@ -13013,18 +13013,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypedMultiplicityRefCS; 
+               current =iv_ruleTypedMultiplicityRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13042,8 +13042,8 @@
         EObject lv_ownedMultiplicity_1_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:4435:28: ( (this_TypedRefCS_0= ruleTypedRefCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) )
             // InternalOCLinEcore.g:4436:1: (this_TypedRefCS_0= ruleTypedRefCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? )
@@ -13052,14 +13052,14 @@
             // InternalOCLinEcore.g:4437:2: this_TypedRefCS_0= ruleTypedRefCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )?
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedRefCSParserRuleCall_0()); 
-                  
+
+                      newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedRefCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_85);
             this_TypedRefCS_0=ruleTypedRefCS();
@@ -13067,10 +13067,10 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
-                      current = this_TypedRefCS_0; 
+
+                      current = this_TypedRefCS_0;
                       afterParserOrEnumRuleCall();
-                  
+
             }
             // InternalOCLinEcore.g:4448:1: ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )?
             int alt125=2;
@@ -13087,9 +13087,9 @@
                     // InternalOCLinEcore.g:4450:3: lv_ownedMultiplicity_1_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_1_0=ruleMultiplicityCS();
@@ -13102,12 +13102,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypedMultiplicityRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_1_0, 
+                              		lv_ownedMultiplicity_1_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -13125,14 +13125,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13153,7 +13153,7 @@
             // InternalOCLinEcore.g:4476:2: iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTemplateSignatureCSRule()); 
+               newCompositeNode(grammarAccess.getTemplateSignatureCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTemplateSignatureCS=ruleTemplateSignatureCS();
@@ -13161,18 +13161,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTemplateSignatureCS; 
+               current =iv_ruleTemplateSignatureCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13200,8 +13200,8 @@
         EObject lv_ownedParameters_8_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:4486:28: ( ( (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) | (otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' ) ) )
             // InternalOCLinEcore.g:4487:1: ( (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) | (otherlv_5= '<' ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) ) (otherlv_7= ',' ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) ) )* otherlv_9= '>' ) )
@@ -13234,7 +13234,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_0, grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:4491:1: ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) )
                     // InternalOCLinEcore.g:4492:1: (lv_ownedParameters_1_0= ruleTypeParameterCS )
@@ -13243,9 +13243,9 @@
                     // InternalOCLinEcore.g:4493:3: lv_ownedParameters_1_0= ruleTypeParameterCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_21);
                     lv_ownedParameters_1_0=ruleTypeParameterCS();
@@ -13258,12 +13258,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParameters",
-                              		lv_ownedParameters_1_0, 
+                              		lv_ownedParameters_1_0,
                               		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -13290,7 +13290,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_2, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_0_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:4513:1: ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) )
                     	    // InternalOCLinEcore.g:4514:1: (lv_ownedParameters_3_0= ruleTypeParameterCS )
@@ -13299,9 +13299,9 @@
                     	    // InternalOCLinEcore.g:4515:3: lv_ownedParameters_3_0= ruleTypeParameterCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_0_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_21);
                     	    lv_ownedParameters_3_0=ruleTypeParameterCS();
@@ -13314,12 +13314,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParameters",
-                    	              		lv_ownedParameters_3_0, 
+                    	              		lv_ownedParameters_3_0,
                     	              		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -13340,7 +13340,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_4, grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_0_3());
-                          
+
                     }
 
                     }
@@ -13358,7 +13358,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getTemplateSignatureCSAccess().getLessThanSignKeyword_1_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:4540:1: ( (lv_ownedParameters_6_0= ruleTypeParameterCS ) )
                     // InternalOCLinEcore.g:4541:1: (lv_ownedParameters_6_0= ruleTypeParameterCS )
@@ -13367,9 +13367,9 @@
                     // InternalOCLinEcore.g:4542:3: lv_ownedParameters_6_0= ruleTypeParameterCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_86);
                     lv_ownedParameters_6_0=ruleTypeParameterCS();
@@ -13382,12 +13382,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParameters",
-                              		lv_ownedParameters_6_0, 
+                              		lv_ownedParameters_6_0,
                               		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -13414,7 +13414,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_7, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_1_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:4562:1: ( (lv_ownedParameters_8_0= ruleTypeParameterCS ) )
                     	    // InternalOCLinEcore.g:4563:1: (lv_ownedParameters_8_0= ruleTypeParameterCS )
@@ -13423,9 +13423,9 @@
                     	    // InternalOCLinEcore.g:4564:3: lv_ownedParameters_8_0= ruleTypeParameterCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_86);
                     	    lv_ownedParameters_8_0=ruleTypeParameterCS();
@@ -13438,12 +13438,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParameters",
-                    	              		lv_ownedParameters_8_0, 
+                    	              		lv_ownedParameters_8_0,
                     	              		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -13464,7 +13464,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_9, grammarAccess.getTemplateSignatureCSAccess().getGreaterThanSignKeyword_1_3());
-                          
+
                     }
 
                     }
@@ -13479,14 +13479,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13507,7 +13507,7 @@
             // InternalOCLinEcore.g:4594:2: iv_ruleTypedRefCS= ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypedRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypedRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypedRefCS=ruleTypedRefCS();
@@ -13515,18 +13515,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypedRefCS; 
+               current =iv_ruleTypedRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13544,8 +13544,8 @@
         EObject this_TypedTypeRefCS_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:4604:28: ( (this_TypeLiteralCS_0= ruleTypeLiteralCS | this_TypedTypeRefCS_1= ruleTypedTypeRefCS ) )
             // InternalOCLinEcore.g:4605:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS | this_TypedTypeRefCS_1= ruleTypedTypeRefCS )
@@ -13572,14 +13572,14 @@
                     // InternalOCLinEcore.g:4606:2: this_TypeLiteralCS_0= ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypeLiteralCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypeLiteralCS_0=ruleTypeLiteralCS();
@@ -13587,10 +13587,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeLiteralCS_0; 
+
+                              current = this_TypeLiteralCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13599,14 +13599,14 @@
                     // InternalOCLinEcore.g:4619:2: this_TypedTypeRefCS_1= ruleTypedTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypedTypeRefCS_1=ruleTypedTypeRefCS();
@@ -13614,10 +13614,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypedTypeRefCS_1; 
+
+                              current = this_TypedTypeRefCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -13629,14 +13629,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13657,7 +13657,7 @@
             // InternalOCLinEcore.g:4640:2: iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypedTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypedTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS();
@@ -13665,18 +13665,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypedTypeRefCS; 
+               current =iv_ruleTypedTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13700,8 +13700,8 @@
         EObject lv_ownedBinding_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:4650:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' ) | (otherlv_4= '<' ( (lv_ownedBinding_5_0= ruleTemplateBindingCS ) ) otherlv_6= '>' ) )? ) )
             // InternalOCLinEcore.g:4651:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (otherlv_1= '(' ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) ) otherlv_3= ')' ) | (otherlv_4= '<' ( (lv_ownedBinding_5_0= ruleTemplateBindingCS ) ) otherlv_6= '>' ) )? )
@@ -13716,9 +13716,9 @@
             // InternalOCLinEcore.g:4653:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_87);
             lv_ownedPathName_0_0=rulePathNameCS();
@@ -13731,12 +13731,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_0_0, 
+                      		lv_ownedPathName_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -13765,7 +13765,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:4673:1: ( (lv_ownedBinding_2_0= ruleTemplateBindingCS ) )
                     // InternalOCLinEcore.g:4674:1: (lv_ownedBinding_2_0= ruleTemplateBindingCS )
@@ -13774,9 +13774,9 @@
                     // InternalOCLinEcore.g:4675:3: lv_ownedBinding_2_0= ruleTemplateBindingCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_11);
                     lv_ownedBinding_2_0=ruleTemplateBindingCS();
@@ -13789,12 +13789,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedBinding",
-                              		lv_ownedBinding_2_0, 
+                              		lv_ownedBinding_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.TemplateBindingCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -13806,7 +13806,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_0_2());
-                          
+
                     }
 
                     }
@@ -13824,7 +13824,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_4, grammarAccess.getTypedTypeRefCSAccess().getLessThanSignKeyword_1_1_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:4700:1: ( (lv_ownedBinding_5_0= ruleTemplateBindingCS ) )
                     // InternalOCLinEcore.g:4701:1: (lv_ownedBinding_5_0= ruleTemplateBindingCS )
@@ -13833,9 +13833,9 @@
                     // InternalOCLinEcore.g:4702:3: lv_ownedBinding_5_0= ruleTemplateBindingCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_89);
                     lv_ownedBinding_5_0=ruleTemplateBindingCS();
@@ -13848,12 +13848,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedBinding",
-                              		lv_ownedBinding_5_0, 
+                              		lv_ownedBinding_5_0,
                               		"org.eclipse.ocl.xtext.base.Base.TemplateBindingCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -13865,7 +13865,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getTypedTypeRefCSAccess().getGreaterThanSignKeyword_1_1_2());
-                          
+
                     }
 
                     }
@@ -13883,14 +13883,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13911,7 +13911,7 @@
             // InternalOCLinEcore.g:4732:2: iv_ruleUnrestrictedName= ruleUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnrestrictedNameRule()); 
+               newCompositeNode(grammarAccess.getUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnrestrictedName=ruleUnrestrictedName();
@@ -13919,18 +13919,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnrestrictedName.getText(); 
+               current =iv_ruleUnrestrictedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13947,8 +13947,8 @@
         AntlrDatatypeRuleToken this_EnumerationLiteralName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:4742:28: ( (this_EnumerationLiteralName_0= ruleEnumerationLiteralName | kw= 'annotation' | kw= 'documentation' | kw= 'invariant' | kw= 'literal' | kw= 'serializable' | kw= 'sysml' ) )
             // InternalOCLinEcore.g:4743:1: (this_EnumerationLiteralName_0= ruleEnumerationLiteralName | kw= 'annotation' | kw= 'documentation' | kw= 'invariant' | kw= 'literal' | kw= 'serializable' | kw= 'sysml' )
@@ -14040,9 +14040,9 @@
                     // InternalOCLinEcore.g:4744:5: this_EnumerationLiteralName_0= ruleEnumerationLiteralName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEnumerationLiteralNameParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEnumerationLiteralNameParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_EnumerationLiteralName_0=ruleEnumerationLiteralName();
@@ -14052,12 +14052,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_EnumerationLiteralName_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -14069,8 +14069,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getAnnotationKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getAnnotationKeyword_1());
+
                     }
 
                     }
@@ -14082,8 +14082,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getDocumentationKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getDocumentationKeyword_2());
+
                     }
 
                     }
@@ -14095,8 +14095,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getInvariantKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getInvariantKeyword_3());
+
                     }
 
                     }
@@ -14108,8 +14108,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getLiteralKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getLiteralKeyword_4());
+
                     }
 
                     }
@@ -14121,8 +14121,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getSerializableKeyword_5()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getSerializableKeyword_5());
+
                     }
 
                     }
@@ -14134,8 +14134,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getSysmlKeyword_6()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUnrestrictedNameAccess().getSysmlKeyword_6());
+
                     }
 
                     }
@@ -14147,14 +14147,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14175,7 +14175,7 @@
             // InternalOCLinEcore.g:4810:2: iv_ruleEssentialOCLUnaryOperatorName= ruleEssentialOCLUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLUnaryOperatorName=ruleEssentialOCLUnaryOperatorName();
@@ -14183,18 +14183,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLUnaryOperatorName.getText(); 
+               current =iv_ruleEssentialOCLUnaryOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14209,8 +14209,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:4820:28: ( (kw= '-' | kw= 'not' ) )
             // InternalOCLinEcore.g:4821:1: (kw= '-' | kw= 'not' )
@@ -14240,8 +14240,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
+
                     }
 
                     }
@@ -14253,8 +14253,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
+
                     }
 
                     }
@@ -14266,14 +14266,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14294,7 +14294,7 @@
             // InternalOCLinEcore.g:4844:2: iv_ruleEssentialOCLInfixOperatorName= ruleEssentialOCLInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLInfixOperatorName=ruleEssentialOCLInfixOperatorName();
@@ -14302,18 +14302,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLInfixOperatorName.getText(); 
+               current =iv_ruleEssentialOCLInfixOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14328,8 +14328,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:4854:28: ( (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'or' | kw= 'xor' | kw= 'implies' ) )
             // InternalOCLinEcore.g:4855:1: (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'or' | kw= 'xor' | kw= 'implies' )
@@ -14423,8 +14423,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
+
                     }
 
                     }
@@ -14436,8 +14436,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
+
                     }
 
                     }
@@ -14449,8 +14449,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
+
                     }
 
                     }
@@ -14462,8 +14462,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
+
                     }
 
                     }
@@ -14475,8 +14475,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
+
                     }
 
                     }
@@ -14488,8 +14488,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
+
                     }
 
                     }
@@ -14501,8 +14501,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
+
                     }
 
                     }
@@ -14514,8 +14514,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
+
                     }
 
                     }
@@ -14527,8 +14527,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
+
                     }
 
                     }
@@ -14540,8 +14540,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
+
                     }
 
                     }
@@ -14553,8 +14553,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
+
                     }
 
                     }
@@ -14566,8 +14566,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
+
                     }
 
                     }
@@ -14579,8 +14579,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
+
                     }
 
                     }
@@ -14592,8 +14592,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
+
                     }
 
                     }
@@ -14605,14 +14605,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14633,7 +14633,7 @@
             // InternalOCLinEcore.g:4962:2: iv_ruleEssentialOCLNavigationOperatorName= ruleEssentialOCLNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLNavigationOperatorName=ruleEssentialOCLNavigationOperatorName();
@@ -14641,18 +14641,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLNavigationOperatorName.getText(); 
+               current =iv_ruleEssentialOCLNavigationOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14667,8 +14667,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:4972:28: ( (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' ) )
             // InternalOCLinEcore.g:4973:1: (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' )
@@ -14712,8 +14712,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
+
                     }
 
                     }
@@ -14725,8 +14725,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
+
                     }
 
                     }
@@ -14738,8 +14738,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
+
                     }
 
                     }
@@ -14751,8 +14751,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
+
                     }
 
                     }
@@ -14764,14 +14764,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14792,7 +14792,7 @@
             // InternalOCLinEcore.g:5010:2: iv_ruleBinaryOperatorName= ruleBinaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getBinaryOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getBinaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleBinaryOperatorName=ruleBinaryOperatorName();
@@ -14800,18 +14800,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleBinaryOperatorName.getText(); 
+               current =iv_ruleBinaryOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14829,8 +14829,8 @@
         AntlrDatatypeRuleToken this_NavigationOperatorName_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5020:28: ( (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName ) )
             // InternalOCLinEcore.g:5021:1: (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName )
@@ -14857,9 +14857,9 @@
                     // InternalOCLinEcore.g:5022:5: this_InfixOperatorName_0= ruleInfixOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_InfixOperatorName_0=ruleInfixOperatorName();
@@ -14869,12 +14869,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_InfixOperatorName_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -14883,9 +14883,9 @@
                     // InternalOCLinEcore.g:5034:5: this_NavigationOperatorName_1= ruleNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NavigationOperatorName_1=ruleNavigationOperatorName();
@@ -14895,12 +14895,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_NavigationOperatorName_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -14912,14 +14912,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14940,7 +14940,7 @@
             // InternalOCLinEcore.g:5054:2: iv_ruleInfixOperatorName= ruleInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getInfixOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleInfixOperatorName=ruleInfixOperatorName();
@@ -14948,18 +14948,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleInfixOperatorName.getText(); 
+               current =iv_ruleInfixOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14975,16 +14975,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLInfixOperatorName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5064:28: (this_EssentialOCLInfixOperatorName_0= ruleEssentialOCLInfixOperatorName )
             // InternalOCLinEcore.g:5066:5: this_EssentialOCLInfixOperatorName_0= ruleEssentialOCLInfixOperatorName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLInfixOperatorName_0=ruleEssentialOCLInfixOperatorName();
@@ -14994,25 +14994,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLInfixOperatorName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15033,7 +15033,7 @@
             // InternalOCLinEcore.g:5086:2: iv_ruleNavigationOperatorName= ruleNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigationOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigationOperatorName=ruleNavigationOperatorName();
@@ -15041,18 +15041,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigationOperatorName.getText(); 
+               current =iv_ruleNavigationOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15068,16 +15068,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLNavigationOperatorName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5096:28: (this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName )
             // InternalOCLinEcore.g:5098:5: this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLNavigationOperatorName_0=ruleEssentialOCLNavigationOperatorName();
@@ -15087,25 +15087,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLNavigationOperatorName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15126,7 +15126,7 @@
             // InternalOCLinEcore.g:5118:2: iv_ruleUnaryOperatorName= ruleUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnaryOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnaryOperatorName=ruleUnaryOperatorName();
@@ -15134,18 +15134,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnaryOperatorName.getText(); 
+               current =iv_ruleUnaryOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15161,16 +15161,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLUnaryOperatorName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5128:28: (this_EssentialOCLUnaryOperatorName_0= ruleEssentialOCLUnaryOperatorName )
             // InternalOCLinEcore.g:5130:5: this_EssentialOCLUnaryOperatorName_0= ruleEssentialOCLUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLUnaryOperatorName_0=ruleEssentialOCLUnaryOperatorName();
@@ -15180,25 +15180,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLUnaryOperatorName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15219,7 +15219,7 @@
             // InternalOCLinEcore.g:5150:2: iv_ruleEssentialOCLUnrestrictedName= ruleEssentialOCLUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLUnrestrictedName=ruleEssentialOCLUnrestrictedName();
@@ -15227,18 +15227,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLUnrestrictedName.getText(); 
+               current =iv_ruleEssentialOCLUnrestrictedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15254,16 +15254,16 @@
         AntlrDatatypeRuleToken this_Identifier_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5160:28: (this_Identifier_0= ruleIdentifier )
             // InternalOCLinEcore.g:5162:5: this_Identifier_0= ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_Identifier_0=ruleIdentifier();
@@ -15273,25 +15273,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_Identifier_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15312,7 +15312,7 @@
             // InternalOCLinEcore.g:5182:2: iv_ruleEssentialOCLUnreservedName= ruleEssentialOCLUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLUnreservedName=ruleEssentialOCLUnreservedName();
@@ -15320,18 +15320,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLUnreservedName.getText(); 
+               current =iv_ruleEssentialOCLUnreservedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15352,8 +15352,8 @@
         AntlrDatatypeRuleToken this_PrimitiveTypeIdentifier_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5192:28: ( (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' ) )
             // InternalOCLinEcore.g:5193:1: (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' )
@@ -15452,9 +15452,9 @@
                     // InternalOCLinEcore.g:5194:5: this_UnrestrictedName_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_UnrestrictedName_0=ruleUnrestrictedName();
@@ -15464,12 +15464,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_UnrestrictedName_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -15478,9 +15478,9 @@
                     // InternalOCLinEcore.g:5206:5: this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CollectionTypeIdentifier_1=ruleCollectionTypeIdentifier();
@@ -15490,12 +15490,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_CollectionTypeIdentifier_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -15504,9 +15504,9 @@
                     // InternalOCLinEcore.g:5218:5: this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimitiveTypeIdentifier_2=rulePrimitiveTypeIdentifier();
@@ -15516,12 +15516,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_PrimitiveTypeIdentifier_2);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -15533,8 +15533,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
+
                     }
 
                     }
@@ -15546,8 +15546,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
+
                     }
 
                     }
@@ -15559,14 +15559,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15587,7 +15587,7 @@
             // InternalOCLinEcore.g:5252:2: iv_ruleUnreservedName= ruleUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnreservedNameRule()); 
+               newCompositeNode(grammarAccess.getUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnreservedName=ruleUnreservedName();
@@ -15595,18 +15595,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnreservedName.getText(); 
+               current =iv_ruleUnreservedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15622,16 +15622,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLUnreservedName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5262:28: (this_EssentialOCLUnreservedName_0= ruleEssentialOCLUnreservedName )
             // InternalOCLinEcore.g:5264:5: this_EssentialOCLUnreservedName_0= ruleEssentialOCLUnreservedName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLUnreservedName_0=ruleEssentialOCLUnreservedName();
@@ -15641,25 +15641,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLUnreservedName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15680,7 +15680,7 @@
             // InternalOCLinEcore.g:5284:2: iv_ruleURIPathNameCS= ruleURIPathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getURIPathNameCSRule()); 
+               newCompositeNode(grammarAccess.getURIPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleURIPathNameCS=ruleURIPathNameCS();
@@ -15688,18 +15688,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleURIPathNameCS; 
+               current =iv_ruleURIPathNameCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15718,8 +15718,8 @@
         EObject lv_ownedPathElements_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5294:28: ( ( ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) )
             // InternalOCLinEcore.g:5295:1: ( ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
@@ -15734,9 +15734,9 @@
             // InternalOCLinEcore.g:5297:3: lv_ownedPathElements_0_0= ruleURIFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_90);
             lv_ownedPathElements_0_0=ruleURIFirstPathElementCS();
@@ -15749,12 +15749,12 @@
               	            current = createModelElementForParent(grammarAccess.getURIPathNameCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedPathElements",
-                      		lv_ownedPathElements_0_0, 
+                      		lv_ownedPathElements_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIFirstPathElementCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -15781,7 +15781,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
-            	          
+
             	    }
             	    // InternalOCLinEcore.g:5317:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
             	    // InternalOCLinEcore.g:5318:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
@@ -15790,9 +15790,9 @@
             	    // InternalOCLinEcore.g:5319:3: lv_ownedPathElements_2_0= ruleNextPathElementCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_90);
             	    lv_ownedPathElements_2_0=ruleNextPathElementCS();
@@ -15805,12 +15805,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getURIPathNameCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPathElements",
-            	              		lv_ownedPathElements_2_0, 
+            	              		lv_ownedPathElements_2_0,
             	              		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -15834,14 +15834,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15862,7 +15862,7 @@
             // InternalOCLinEcore.g:5345:2: iv_ruleURIFirstPathElementCS= ruleURIFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getURIFirstPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getURIFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleURIFirstPathElementCS=ruleURIFirstPathElementCS();
@@ -15870,18 +15870,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleURIFirstPathElementCS; 
+               current =iv_ruleURIFirstPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15894,8 +15894,8 @@
     public final EObject ruleURIFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5355:28: ( ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) ) )
             // InternalOCLinEcore.g:5356:1: ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) )
@@ -15928,21 +15928,21 @@
                     // InternalOCLinEcore.g:5358:3: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
                       	        }
-                              
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -15950,9 +15950,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -15970,19 +15970,19 @@
                     // InternalOCLinEcore.g:5375:7: () ( ( ruleURI ) )
                     {
                     // InternalOCLinEcore.g:5375:7: ()
-                    // InternalOCLinEcore.g:5376:2: 
+                    // InternalOCLinEcore.g:5376:2:
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                               current = forceCreateModelElement(
                                   grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0(),
                                   current);
-                          
+
                     }
 
                     }
@@ -15994,21 +15994,21 @@
                     // InternalOCLinEcore.g:5386:3: ruleURI
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
                       	        }
-                              
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleURI();
@@ -16016,9 +16016,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -16039,14 +16039,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16067,7 +16067,7 @@
             // InternalOCLinEcore.g:5412:2: iv_rulePrimitiveTypeIdentifier= rulePrimitiveTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule()); 
+               newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimitiveTypeIdentifier=rulePrimitiveTypeIdentifier();
@@ -16075,18 +16075,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimitiveTypeIdentifier.getText(); 
+               current =iv_rulePrimitiveTypeIdentifier.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16101,8 +16101,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5422:28: ( (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclVoid' ) )
             // InternalOCLinEcore.g:5423:1: (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclVoid' )
@@ -16166,8 +16166,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
+
                     }
 
                     }
@@ -16179,8 +16179,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
+
                     }
 
                     }
@@ -16192,8 +16192,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
+
                     }
 
                     }
@@ -16205,8 +16205,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
+
                     }
 
                     }
@@ -16218,8 +16218,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
+
                     }
 
                     }
@@ -16231,8 +16231,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
+
                     }
 
                     }
@@ -16244,8 +16244,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
+
                     }
 
                     }
@@ -16257,8 +16257,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
+
                     }
 
                     }
@@ -16270,14 +16270,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16298,7 +16298,7 @@
             // InternalOCLinEcore.g:5488:2: iv_rulePrimitiveTypeCS= rulePrimitiveTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimitiveTypeCSRule()); 
+               newCompositeNode(grammarAccess.getPrimitiveTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimitiveTypeCS=rulePrimitiveTypeCS();
@@ -16306,18 +16306,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimitiveTypeCS; 
+               current =iv_rulePrimitiveTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16333,8 +16333,8 @@
         AntlrDatatypeRuleToken lv_name_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5498:28: ( ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) ) )
             // InternalOCLinEcore.g:5499:1: ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) )
@@ -16346,9 +16346,9 @@
             // InternalOCLinEcore.g:5501:3: lv_name_0_0= rulePrimitiveTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_name_0_0=rulePrimitiveTypeIdentifier();
@@ -16361,12 +16361,12 @@
               	            current = createModelElementForParent(grammarAccess.getPrimitiveTypeCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrimitiveTypeIdentifier");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -16378,14 +16378,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16406,7 +16406,7 @@
             // InternalOCLinEcore.g:5527:2: iv_ruleCollectionTypeIdentifier= ruleCollectionTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule()); 
+               newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionTypeIdentifier=ruleCollectionTypeIdentifier();
@@ -16414,18 +16414,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionTypeIdentifier.getText(); 
+               current =iv_ruleCollectionTypeIdentifier.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16440,8 +16440,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5537:28: ( (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' ) )
             // InternalOCLinEcore.g:5538:1: (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' )
@@ -16490,8 +16490,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
+
                     }
 
                     }
@@ -16503,8 +16503,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
+
                     }
 
                     }
@@ -16516,8 +16516,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
+
                     }
 
                     }
@@ -16529,8 +16529,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
+
                     }
 
                     }
@@ -16542,8 +16542,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
+
                     }
 
                     }
@@ -16555,14 +16555,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16583,7 +16583,7 @@
             // InternalOCLinEcore.g:5582:2: iv_ruleCollectionTypeCS= ruleCollectionTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionTypeCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionTypeCS=ruleCollectionTypeCS();
@@ -16591,18 +16591,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionTypeCS; 
+               current =iv_ruleCollectionTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16622,8 +16622,8 @@
         EObject lv_ownedType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5592:28: ( ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) otherlv_3= ')' )? ) )
             // InternalOCLinEcore.g:5593:1: ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) otherlv_3= ')' )? )
@@ -16638,9 +16638,9 @@
             // InternalOCLinEcore.g:5595:3: lv_name_0_0= ruleCollectionTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_92);
             lv_name_0_0=ruleCollectionTypeIdentifier();
@@ -16653,12 +16653,12 @@
               	            current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeIdentifier");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -16681,7 +16681,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:5615:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                     // InternalOCLinEcore.g:5616:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -16690,9 +16690,9 @@
                     // InternalOCLinEcore.g:5617:3: lv_ownedType_2_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_11);
                     lv_ownedType_2_0=ruleTypeExpCS();
@@ -16705,12 +16705,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_2_0, 
+                              		lv_ownedType_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -16722,7 +16722,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
-                          
+
                     }
 
                     }
@@ -16737,14 +16737,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16765,7 +16765,7 @@
             // InternalOCLinEcore.g:5647:2: iv_ruleMapTypeCS= ruleMapTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMapTypeCSRule()); 
+               newCompositeNode(grammarAccess.getMapTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMapTypeCS=ruleMapTypeCS();
@@ -16773,18 +16773,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMapTypeCS; 
+               current =iv_ruleMapTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16806,8 +16806,8 @@
         EObject lv_ownedValueType_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5657:28: ( ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? ) )
             // InternalOCLinEcore.g:5658:1: ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? )
@@ -16825,7 +16825,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_name_0_0, grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -16833,7 +16833,7 @@
               	            current = createModelElement(grammarAccess.getMapTypeCSRule());
               	        }
                      		setWithLastConsumed(current, "name", lv_name_0_0, "Map");
-              	    
+
             }
 
             }
@@ -16856,7 +16856,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:5677:1: ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) )
                     // InternalOCLinEcore.g:5678:1: (lv_ownedKeyType_2_0= ruleTypeExpCS )
@@ -16865,9 +16865,9 @@
                     // InternalOCLinEcore.g:5679:3: lv_ownedKeyType_2_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_93);
                     lv_ownedKeyType_2_0=ruleTypeExpCS();
@@ -16880,12 +16880,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedKeyType",
-                              		lv_ownedKeyType_2_0, 
+                              		lv_ownedKeyType_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -16897,7 +16897,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
-                          
+
                     }
                     // InternalOCLinEcore.g:5699:1: ( (lv_ownedValueType_4_0= ruleTypeExpCS ) )
                     // InternalOCLinEcore.g:5700:1: (lv_ownedValueType_4_0= ruleTypeExpCS )
@@ -16906,9 +16906,9 @@
                     // InternalOCLinEcore.g:5701:3: lv_ownedValueType_4_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_11);
                     lv_ownedValueType_4_0=ruleTypeExpCS();
@@ -16921,12 +16921,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedValueType",
-                              		lv_ownedValueType_4_0, 
+                              		lv_ownedValueType_4_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -16938,7 +16938,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
-                          
+
                     }
 
                     }
@@ -16953,14 +16953,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16981,7 +16981,7 @@
             // InternalOCLinEcore.g:5731:2: iv_ruleTupleTypeCS= ruleTupleTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTupleTypeCSRule()); 
+               newCompositeNode(grammarAccess.getTupleTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTupleTypeCS=ruleTupleTypeCS();
@@ -16989,18 +16989,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTupleTypeCS; 
+               current =iv_ruleTupleTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17022,8 +17022,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5741:28: ( ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? ) )
             // InternalOCLinEcore.g:5742:1: ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? )
@@ -17041,7 +17041,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_name_0_0, grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -17049,7 +17049,7 @@
               	            current = createModelElement(grammarAccess.getTupleTypeCSRule());
               	        }
                      		setWithLastConsumed(current, "name", lv_name_0_0, "Tuple");
-              	    
+
             }
 
             }
@@ -17072,7 +17072,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:5761:1: ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )?
                     int alt144=2;
@@ -17092,9 +17092,9 @@
                             // InternalOCLinEcore.g:5763:3: lv_ownedParts_2_0= ruleTuplePartCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_21);
                             lv_ownedParts_2_0=ruleTuplePartCS();
@@ -17107,12 +17107,12 @@
                               	            current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
                               	        }
                                      		add(
-                                     			current, 
+                                     			current,
                                      			"ownedParts",
-                                      		lv_ownedParts_2_0, 
+                                      		lv_ownedParts_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -17139,7 +17139,7 @@
                             	    if ( state.backtracking==0 ) {
 
                             	          	newLeafNode(otherlv_3, grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
-                            	          
+
                             	    }
                             	    // InternalOCLinEcore.g:5783:1: ( (lv_ownedParts_4_0= ruleTuplePartCS ) )
                             	    // InternalOCLinEcore.g:5784:1: (lv_ownedParts_4_0= ruleTuplePartCS )
@@ -17148,9 +17148,9 @@
                             	    // InternalOCLinEcore.g:5785:3: lv_ownedParts_4_0= ruleTuplePartCS
                             	    {
                             	    if ( state.backtracking==0 ) {
-                            	       
-                            	      	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
-                            	      	    
+
+                            	      	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
+
                             	    }
                             	    pushFollow(FollowSets000.FOLLOW_21);
                             	    lv_ownedParts_4_0=ruleTuplePartCS();
@@ -17163,12 +17163,12 @@
                             	      	            current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
                             	      	        }
                             	             		add(
-                            	             			current, 
+                            	             			current,
                             	             			"ownedParts",
-                            	              		lv_ownedParts_4_0, 
+                            	              		lv_ownedParts_4_0,
                             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TuplePartCS");
                             	      	        afterParserOrEnumRuleCall();
-                            	      	    
+
                             	    }
 
                             	    }
@@ -17195,7 +17195,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
-                          
+
                     }
 
                     }
@@ -17210,14 +17210,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17238,7 +17238,7 @@
             // InternalOCLinEcore.g:5815:2: iv_ruleTuplePartCS= ruleTuplePartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTuplePartCSRule()); 
+               newCompositeNode(grammarAccess.getTuplePartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTuplePartCS=ruleTuplePartCS();
@@ -17246,18 +17246,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTuplePartCS; 
+               current =iv_ruleTuplePartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17276,8 +17276,8 @@
         EObject lv_ownedType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5825:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) ) )
             // InternalOCLinEcore.g:5826:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )
@@ -17292,9 +17292,9 @@
             // InternalOCLinEcore.g:5828:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_17);
             lv_name_0_0=ruleUnrestrictedName();
@@ -17307,12 +17307,12 @@
               	            current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -17324,7 +17324,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:5848:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
             // InternalOCLinEcore.g:5849:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -17333,9 +17333,9 @@
             // InternalOCLinEcore.g:5850:3: lv_ownedType_2_0= ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedType_2_0=ruleTypeExpCS();
@@ -17348,12 +17348,12 @@
               	            current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_2_0, 
+                      		lv_ownedType_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -17368,14 +17368,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17396,7 +17396,7 @@
             // InternalOCLinEcore.g:5876:2: iv_ruleCollectionLiteralExpCS= ruleCollectionLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionLiteralExpCS=ruleCollectionLiteralExpCS();
@@ -17404,18 +17404,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionLiteralExpCS; 
+               current =iv_ruleCollectionLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17438,8 +17438,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5886:28: ( ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' ) )
             // InternalOCLinEcore.g:5887:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' )
@@ -17454,9 +17454,9 @@
             // InternalOCLinEcore.g:5889:3: lv_ownedType_0_0= ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_94);
             lv_ownedType_0_0=ruleCollectionTypeCS();
@@ -17469,12 +17469,12 @@
               	            current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -17486,7 +17486,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:5909:1: ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )?
             int alt147=2;
@@ -17506,9 +17506,9 @@
                     // InternalOCLinEcore.g:5911:3: lv_ownedParts_2_0= ruleCollectionLiteralPartCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_96);
                     lv_ownedParts_2_0=ruleCollectionLiteralPartCS();
@@ -17521,12 +17521,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParts",
-                              		lv_ownedParts_2_0, 
+                              		lv_ownedParts_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -17553,7 +17553,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:5931:1: ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) )
                     	    // InternalOCLinEcore.g:5932:1: (lv_ownedParts_4_0= ruleCollectionLiteralPartCS )
@@ -17562,9 +17562,9 @@
                     	    // InternalOCLinEcore.g:5933:3: lv_ownedParts_4_0= ruleCollectionLiteralPartCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_96);
                     	    lv_ownedParts_4_0=ruleCollectionLiteralPartCS();
@@ -17577,12 +17577,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParts",
-                    	              		lv_ownedParts_4_0, 
+                    	              		lv_ownedParts_4_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -17609,7 +17609,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -17618,14 +17618,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17646,7 +17646,7 @@
             // InternalOCLinEcore.g:5963:2: iv_ruleCollectionLiteralPartCS= ruleCollectionLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionLiteralPartCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionLiteralPartCS=ruleCollectionLiteralPartCS();
@@ -17654,18 +17654,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionLiteralPartCS; 
+               current =iv_ruleCollectionLiteralPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17686,8 +17686,8 @@
         EObject lv_ownedExpression_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:5973:28: ( ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) ) )
             // InternalOCLinEcore.g:5974:1: ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) )
@@ -17709,9 +17709,9 @@
                     // InternalOCLinEcore.g:5976:3: lv_ownedExpression_0_0= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_98);
                     lv_ownedExpression_0_0=ruleExpCS();
@@ -17724,12 +17724,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExpression",
-                              		lv_ownedExpression_0_0, 
+                              		lv_ownedExpression_0_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -17752,7 +17752,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
-                                  
+
                             }
                             // InternalOCLinEcore.g:5996:1: ( (lv_ownedLastExpression_2_0= ruleExpCS ) )
                             // InternalOCLinEcore.g:5997:1: (lv_ownedLastExpression_2_0= ruleExpCS )
@@ -17761,9 +17761,9 @@
                             // InternalOCLinEcore.g:5998:3: lv_ownedLastExpression_2_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedLastExpression_2_0=ruleExpCS();
@@ -17776,12 +17776,12 @@
                               	            current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedLastExpression",
-                                      		lv_ownedLastExpression_2_0, 
+                                      		lv_ownedLastExpression_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -17811,9 +17811,9 @@
                     // InternalOCLinEcore.g:6017:3: lv_ownedExpression_3_0= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedExpression_3_0=rulePatternExpCS();
@@ -17826,12 +17826,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExpression",
-                              		lv_ownedExpression_3_0, 
+                              		lv_ownedExpression_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -17849,14 +17849,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17877,7 +17877,7 @@
             // InternalOCLinEcore.g:6043:2: iv_ruleCollectionPatternCS= ruleCollectionPatternCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionPatternCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionPatternCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionPatternCS=ruleCollectionPatternCS();
@@ -17885,18 +17885,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionPatternCS; 
+               current =iv_ruleCollectionPatternCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17922,8 +17922,8 @@
         AntlrDatatypeRuleToken lv_restVariableName_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6053:28: ( ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? otherlv_7= '}' ) )
             // InternalOCLinEcore.g:6054:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? otherlv_7= '}' )
@@ -17938,9 +17938,9 @@
             // InternalOCLinEcore.g:6056:3: lv_ownedType_0_0= ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_94);
             lv_ownedType_0_0=ruleCollectionTypeCS();
@@ -17953,12 +17953,12 @@
               	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -17970,7 +17970,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:6076:1: ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )?
             int alt151=2;
@@ -17990,9 +17990,9 @@
                     // InternalOCLinEcore.g:6078:3: lv_ownedParts_2_0= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_100);
                     lv_ownedParts_2_0=rulePatternExpCS();
@@ -18005,12 +18005,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParts",
-                              		lv_ownedParts_2_0, 
+                              		lv_ownedParts_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -18037,7 +18037,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:6098:1: ( (lv_ownedParts_4_0= rulePatternExpCS ) )
                     	    // InternalOCLinEcore.g:6099:1: (lv_ownedParts_4_0= rulePatternExpCS )
@@ -18046,9 +18046,9 @@
                     	    // InternalOCLinEcore.g:6100:3: lv_ownedParts_4_0= rulePatternExpCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_100);
                     	    lv_ownedParts_4_0=rulePatternExpCS();
@@ -18061,12 +18061,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParts",
-                    	              		lv_ownedParts_4_0, 
+                    	              		lv_ownedParts_4_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -18090,7 +18090,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:6120:1: ( (lv_restVariableName_6_0= ruleIdentifier ) )
                     // InternalOCLinEcore.g:6121:1: (lv_restVariableName_6_0= ruleIdentifier )
@@ -18099,9 +18099,9 @@
                     // InternalOCLinEcore.g:6122:3: lv_restVariableName_6_0= ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_40);
                     lv_restVariableName_6_0=ruleIdentifier();
@@ -18114,12 +18114,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"restVariableName",
-                              		lv_restVariableName_6_0, 
+                              		lv_restVariableName_6_0,
                               		"org.eclipse.ocl.xtext.base.Base.Identifier");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -18140,7 +18140,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -18149,14 +18149,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18177,7 +18177,7 @@
             // InternalOCLinEcore.g:6152:2: iv_ruleShadowPartCS= ruleShadowPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getShadowPartCSRule()); 
+               newCompositeNode(grammarAccess.getShadowPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleShadowPartCS=ruleShadowPartCS();
@@ -18185,18 +18185,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleShadowPartCS; 
+               current =iv_ruleShadowPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18215,8 +18215,8 @@
         EObject lv_ownedInitExpression_2_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6162:28: ( ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) ) )
             // InternalOCLinEcore.g:6163:1: ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) )
@@ -18231,21 +18231,21 @@
             // InternalOCLinEcore.g:6165:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getShadowPartCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_42);
             ruleUnrestrictedName();
@@ -18253,9 +18253,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -18267,7 +18267,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:6185:1: ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) )
             // InternalOCLinEcore.g:6186:1: ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) )
@@ -18283,9 +18283,9 @@
                     // InternalOCLinEcore.g:6188:3: lv_ownedInitExpression_2_1= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedInitExpression_2_1=ruleExpCS();
@@ -18298,12 +18298,12 @@
                       	            current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedInitExpression",
-                              		lv_ownedInitExpression_2_1, 
+                              		lv_ownedInitExpression_2_1,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -18312,9 +18312,9 @@
                     // InternalOCLinEcore.g:6203:8: lv_ownedInitExpression_2_2= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedInitExpression_2_2=rulePatternExpCS();
@@ -18327,12 +18327,12 @@
                       	            current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedInitExpression",
-                              		lv_ownedInitExpression_2_2, 
+                              		lv_ownedInitExpression_2_2,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -18353,14 +18353,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18381,7 +18381,7 @@
             // InternalOCLinEcore.g:6231:2: iv_rulePatternExpCS= rulePatternExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPatternExpCSRule()); 
+               newCompositeNode(grammarAccess.getPatternExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePatternExpCS=rulePatternExpCS();
@@ -18389,18 +18389,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePatternExpCS; 
+               current =iv_rulePatternExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18419,8 +18419,8 @@
         EObject lv_ownedPatternType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6241:28: ( ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) ) )
             // InternalOCLinEcore.g:6242:1: ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) )
@@ -18443,9 +18443,9 @@
                     // InternalOCLinEcore.g:6244:3: lv_patternVariableName_0_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_17);
                     lv_patternVariableName_0_0=ruleUnrestrictedName();
@@ -18458,12 +18458,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"patternVariableName",
-                              		lv_patternVariableName_0_0, 
+                              		lv_patternVariableName_0_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -18478,7 +18478,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:6264:1: ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) )
             // InternalOCLinEcore.g:6265:1: (lv_ownedPatternType_2_0= ruleTypeExpCS )
@@ -18487,9 +18487,9 @@
             // InternalOCLinEcore.g:6266:3: lv_ownedPatternType_2_0= ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedPatternType_2_0=ruleTypeExpCS();
@@ -18502,12 +18502,12 @@
               	            current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPatternType",
-                      		lv_ownedPatternType_2_0, 
+                      		lv_ownedPatternType_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -18522,14 +18522,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18550,7 +18550,7 @@
             // InternalOCLinEcore.g:6292:2: iv_ruleLambdaLiteralExpCS= ruleLambdaLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLambdaLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getLambdaLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLambdaLiteralExpCS=ruleLambdaLiteralExpCS();
@@ -18558,18 +18558,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLambdaLiteralExpCS; 
+               current =iv_ruleLambdaLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18588,8 +18588,8 @@
         EObject lv_ownedExpressionCS_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6302:28: ( (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' ) )
             // InternalOCLinEcore.g:6303:1: (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' )
@@ -18601,13 +18601,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
-                  
+
             }
             otherlv_1=(Token)match(input,60,FollowSets000.FOLLOW_99); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:6311:1: ( (lv_ownedExpressionCS_2_0= ruleExpCS ) )
             // InternalOCLinEcore.g:6312:1: (lv_ownedExpressionCS_2_0= ruleExpCS )
@@ -18616,9 +18616,9 @@
             // InternalOCLinEcore.g:6313:3: lv_ownedExpressionCS_2_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_40);
             lv_ownedExpressionCS_2_0=ruleExpCS();
@@ -18631,12 +18631,12 @@
               	            current = createModelElementForParent(grammarAccess.getLambdaLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedExpressionCS",
-                      		lv_ownedExpressionCS_2_0, 
+                      		lv_ownedExpressionCS_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -18648,7 +18648,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -18657,14 +18657,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18685,7 +18685,7 @@
             // InternalOCLinEcore.g:6343:2: iv_ruleMapLiteralExpCS= ruleMapLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMapLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getMapLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMapLiteralExpCS=ruleMapLiteralExpCS();
@@ -18693,18 +18693,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMapLiteralExpCS; 
+               current =iv_ruleMapLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18727,8 +18727,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6353:28: ( ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' ) )
             // InternalOCLinEcore.g:6354:1: ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' )
@@ -18743,9 +18743,9 @@
             // InternalOCLinEcore.g:6356:3: lv_ownedType_0_0= ruleMapTypeCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_94);
             lv_ownedType_0_0=ruleMapTypeCS();
@@ -18758,12 +18758,12 @@
               	            current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapTypeCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -18775,7 +18775,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:6376:1: ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )?
             int alt155=2;
@@ -18795,9 +18795,9 @@
                     // InternalOCLinEcore.g:6378:3: lv_ownedParts_2_0= ruleMapLiteralPartCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_96);
                     lv_ownedParts_2_0=ruleMapLiteralPartCS();
@@ -18810,12 +18810,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParts",
-                              		lv_ownedParts_2_0, 
+                              		lv_ownedParts_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -18842,7 +18842,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:6398:1: ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) )
                     	    // InternalOCLinEcore.g:6399:1: (lv_ownedParts_4_0= ruleMapLiteralPartCS )
@@ -18851,9 +18851,9 @@
                     	    // InternalOCLinEcore.g:6400:3: lv_ownedParts_4_0= ruleMapLiteralPartCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_96);
                     	    lv_ownedParts_4_0=ruleMapLiteralPartCS();
@@ -18866,12 +18866,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParts",
-                    	              		lv_ownedParts_4_0, 
+                    	              		lv_ownedParts_4_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -18898,7 +18898,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -18907,14 +18907,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18935,7 +18935,7 @@
             // InternalOCLinEcore.g:6430:2: iv_ruleMapLiteralPartCS= ruleMapLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMapLiteralPartCSRule()); 
+               newCompositeNode(grammarAccess.getMapLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMapLiteralPartCS=ruleMapLiteralPartCS();
@@ -18943,18 +18943,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMapLiteralPartCS; 
+               current =iv_ruleMapLiteralPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18973,8 +18973,8 @@
         EObject lv_ownedValue_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6440:28: ( ( ( (lv_ownedKey_0_0= ruleExpCS ) ) otherlv_1= '<-' ( (lv_ownedValue_2_0= ruleExpCS ) ) ) )
             // InternalOCLinEcore.g:6441:1: ( ( (lv_ownedKey_0_0= ruleExpCS ) ) otherlv_1= '<-' ( (lv_ownedValue_2_0= ruleExpCS ) ) )
@@ -18989,9 +18989,9 @@
             // InternalOCLinEcore.g:6443:3: lv_ownedKey_0_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_103);
             lv_ownedKey_0_0=ruleExpCS();
@@ -19004,12 +19004,12 @@
               	            current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedKey",
-                      		lv_ownedKey_0_0, 
+                      		lv_ownedKey_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -19021,7 +19021,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:6463:1: ( (lv_ownedValue_2_0= ruleExpCS ) )
             // InternalOCLinEcore.g:6464:1: (lv_ownedValue_2_0= ruleExpCS )
@@ -19030,9 +19030,9 @@
             // InternalOCLinEcore.g:6465:3: lv_ownedValue_2_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedValue_2_0=ruleExpCS();
@@ -19045,12 +19045,12 @@
               	            current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedValue",
-                      		lv_ownedValue_2_0, 
+                      		lv_ownedValue_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -19065,14 +19065,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19093,7 +19093,7 @@
             // InternalOCLinEcore.g:6491:2: iv_rulePrimitiveLiteralExpCS= rulePrimitiveLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimitiveLiteralExpCS=rulePrimitiveLiteralExpCS();
@@ -19101,18 +19101,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimitiveLiteralExpCS; 
+               current =iv_rulePrimitiveLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19138,8 +19138,8 @@
         EObject this_NullLiteralExpCS_5 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6501:28: ( (this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS | this_StringLiteralExpCS_1= ruleStringLiteralExpCS | this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS | this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS | this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS | this_NullLiteralExpCS_5= ruleNullLiteralExpCS ) )
             // InternalOCLinEcore.g:6502:1: (this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS | this_StringLiteralExpCS_1= ruleStringLiteralExpCS | this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS | this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS | this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS | this_NullLiteralExpCS_5= ruleNullLiteralExpCS )
@@ -19191,14 +19191,14 @@
                     // InternalOCLinEcore.g:6503:2: this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NumberLiteralExpCS_0=ruleNumberLiteralExpCS();
@@ -19206,10 +19206,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NumberLiteralExpCS_0; 
+
+                              current = this_NumberLiteralExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19218,14 +19218,14 @@
                     // InternalOCLinEcore.g:6516:2: this_StringLiteralExpCS_1= ruleStringLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_StringLiteralExpCS_1=ruleStringLiteralExpCS();
@@ -19233,10 +19233,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_StringLiteralExpCS_1; 
+
+                              current = this_StringLiteralExpCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19245,14 +19245,14 @@
                     // InternalOCLinEcore.g:6529:2: this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_BooleanLiteralExpCS_2=ruleBooleanLiteralExpCS();
@@ -19260,10 +19260,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_BooleanLiteralExpCS_2; 
+
+                              current = this_BooleanLiteralExpCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19272,14 +19272,14 @@
                     // InternalOCLinEcore.g:6542:2: this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_UnlimitedNaturalLiteralExpCS_3=ruleUnlimitedNaturalLiteralExpCS();
@@ -19287,10 +19287,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_UnlimitedNaturalLiteralExpCS_3; 
+
+                              current = this_UnlimitedNaturalLiteralExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19299,14 +19299,14 @@
                     // InternalOCLinEcore.g:6555:2: this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_InvalidLiteralExpCS_4=ruleInvalidLiteralExpCS();
@@ -19314,10 +19314,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_InvalidLiteralExpCS_4; 
+
+                              current = this_InvalidLiteralExpCS_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19326,14 +19326,14 @@
                     // InternalOCLinEcore.g:6568:2: this_NullLiteralExpCS_5= ruleNullLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NullLiteralExpCS_5=ruleNullLiteralExpCS();
@@ -19341,10 +19341,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NullLiteralExpCS_5; 
+
+                              current = this_NullLiteralExpCS_5;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19356,14 +19356,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19384,7 +19384,7 @@
             // InternalOCLinEcore.g:6589:2: iv_ruleTupleLiteralExpCS= ruleTupleLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTupleLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getTupleLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTupleLiteralExpCS=ruleTupleLiteralExpCS();
@@ -19392,18 +19392,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTupleLiteralExpCS; 
+               current =iv_ruleTupleLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19425,8 +19425,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6599:28: ( (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' ) )
             // InternalOCLinEcore.g:6600:1: (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' )
@@ -19438,13 +19438,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
-                  
+
             }
             otherlv_1=(Token)match(input,60,FollowSets000.FOLLOW_3); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:6608:1: ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) )
             // InternalOCLinEcore.g:6609:1: (lv_ownedParts_2_0= ruleTupleLiteralPartCS )
@@ -19453,9 +19453,9 @@
             // InternalOCLinEcore.g:6610:3: lv_ownedParts_2_0= ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_96);
             lv_ownedParts_2_0=ruleTupleLiteralPartCS();
@@ -19468,12 +19468,12 @@
               	            current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedParts",
-                      		lv_ownedParts_2_0, 
+                      		lv_ownedParts_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -19500,7 +19500,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
-            	          
+
             	    }
             	    // InternalOCLinEcore.g:6630:1: ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) )
             	    // InternalOCLinEcore.g:6631:1: (lv_ownedParts_4_0= ruleTupleLiteralPartCS )
@@ -19509,9 +19509,9 @@
             	    // InternalOCLinEcore.g:6632:3: lv_ownedParts_4_0= ruleTupleLiteralPartCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_96);
             	    lv_ownedParts_4_0=ruleTupleLiteralPartCS();
@@ -19524,12 +19524,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedParts",
-            	              		lv_ownedParts_4_0, 
+            	              		lv_ownedParts_4_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -19550,7 +19550,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
-                  
+
             }
 
             }
@@ -19559,14 +19559,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19587,7 +19587,7 @@
             // InternalOCLinEcore.g:6662:2: iv_ruleTupleLiteralPartCS= ruleTupleLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTupleLiteralPartCSRule()); 
+               newCompositeNode(grammarAccess.getTupleLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTupleLiteralPartCS=ruleTupleLiteralPartCS();
@@ -19595,18 +19595,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTupleLiteralPartCS; 
+               current =iv_ruleTupleLiteralPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19628,8 +19628,8 @@
         EObject lv_ownedInitExpression_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6672:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) ) )
             // InternalOCLinEcore.g:6673:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )
@@ -19644,9 +19644,9 @@
             // InternalOCLinEcore.g:6675:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_104);
             lv_name_0_0=ruleUnrestrictedName();
@@ -19659,12 +19659,12 @@
               	            current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -19687,7 +19687,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:6695:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                     // InternalOCLinEcore.g:6696:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -19696,9 +19696,9 @@
                     // InternalOCLinEcore.g:6697:3: lv_ownedType_2_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_42);
                     lv_ownedType_2_0=ruleTypeExpCS();
@@ -19711,12 +19711,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_2_0, 
+                              		lv_ownedType_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -19734,7 +19734,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
-                  
+
             }
             // InternalOCLinEcore.g:6717:1: ( (lv_ownedInitExpression_4_0= ruleExpCS ) )
             // InternalOCLinEcore.g:6718:1: (lv_ownedInitExpression_4_0= ruleExpCS )
@@ -19743,9 +19743,9 @@
             // InternalOCLinEcore.g:6719:3: lv_ownedInitExpression_4_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedInitExpression_4_0=ruleExpCS();
@@ -19758,12 +19758,12 @@
               	            current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedInitExpression",
-                      		lv_ownedInitExpression_4_0, 
+                      		lv_ownedInitExpression_4_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -19778,14 +19778,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19806,7 +19806,7 @@
             // InternalOCLinEcore.g:6745:2: iv_ruleNumberLiteralExpCS= ruleNumberLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNumberLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getNumberLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNumberLiteralExpCS=ruleNumberLiteralExpCS();
@@ -19814,18 +19814,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNumberLiteralExpCS; 
+               current =iv_ruleNumberLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19841,8 +19841,8 @@
         AntlrDatatypeRuleToken lv_symbol_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6755:28: ( ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) ) )
             // InternalOCLinEcore.g:6756:1: ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) )
@@ -19854,9 +19854,9 @@
             // InternalOCLinEcore.g:6758:3: lv_symbol_0_0= ruleNUMBER_LITERAL
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_symbol_0_0=ruleNUMBER_LITERAL();
@@ -19869,12 +19869,12 @@
               	            current = createModelElementForParent(grammarAccess.getNumberLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"symbol",
-                      		lv_symbol_0_0, 
+                      		lv_symbol_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.NUMBER_LITERAL");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -19886,14 +19886,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19914,7 +19914,7 @@
             // InternalOCLinEcore.g:6784:2: iv_ruleStringLiteralExpCS= ruleStringLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getStringLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getStringLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleStringLiteralExpCS=ruleStringLiteralExpCS();
@@ -19922,18 +19922,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleStringLiteralExpCS; 
+               current =iv_ruleStringLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19949,8 +19949,8 @@
         AntlrDatatypeRuleToken lv_segments_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6794:28: ( ( (lv_segments_0_0= ruleStringLiteral ) )+ )
             // InternalOCLinEcore.g:6795:1: ( (lv_segments_0_0= ruleStringLiteral ) )+
@@ -19975,9 +19975,9 @@
             	    // InternalOCLinEcore.g:6797:3: lv_segments_0_0= ruleStringLiteral
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_105);
             	    lv_segments_0_0=ruleStringLiteral();
@@ -19990,12 +19990,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getStringLiteralExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"segments",
-            	              		lv_segments_0_0, 
+            	              		lv_segments_0_0,
             	              		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -20018,14 +20018,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20046,7 +20046,7 @@
             // InternalOCLinEcore.g:6823:2: iv_ruleBooleanLiteralExpCS= ruleBooleanLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getBooleanLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getBooleanLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleBooleanLiteralExpCS=ruleBooleanLiteralExpCS();
@@ -20054,18 +20054,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleBooleanLiteralExpCS; 
+               current =iv_ruleBooleanLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20081,8 +20081,8 @@
         Token lv_symbol_0_0=null;
         Token lv_symbol_1_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6833:28: ( ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) ) )
             // InternalOCLinEcore.g:6834:1: ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) )
@@ -20118,7 +20118,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_symbol_0_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -20126,7 +20126,7 @@
                       	            current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
                       	        }
                              		setWithLastConsumed(current, "symbol", lv_symbol_0_0, "true");
-                      	    
+
                     }
 
                     }
@@ -20150,7 +20150,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_symbol_1_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -20158,7 +20158,7 @@
                       	            current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
                       	        }
                              		setWithLastConsumed(current, "symbol", lv_symbol_1_0, "false");
-                      	    
+
                     }
 
                     }
@@ -20176,14 +20176,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20204,7 +20204,7 @@
             // InternalOCLinEcore.g:6875:2: iv_ruleUnlimitedNaturalLiteralExpCS= ruleUnlimitedNaturalLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getUnlimitedNaturalLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnlimitedNaturalLiteralExpCS=ruleUnlimitedNaturalLiteralExpCS();
@@ -20212,18 +20212,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnlimitedNaturalLiteralExpCS; 
+               current =iv_ruleUnlimitedNaturalLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20238,8 +20238,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6885:28: ( ( () otherlv_1= '*' ) )
             // InternalOCLinEcore.g:6886:1: ( () otherlv_1= '*' )
@@ -20248,19 +20248,19 @@
             // InternalOCLinEcore.g:6886:2: () otherlv_1= '*'
             {
             // InternalOCLinEcore.g:6886:2: ()
-            // InternalOCLinEcore.g:6887:2: 
+            // InternalOCLinEcore.g:6887:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -20269,7 +20269,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
-                  
+
             }
 
             }
@@ -20278,14 +20278,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20306,7 +20306,7 @@
             // InternalOCLinEcore.g:6909:2: iv_ruleInvalidLiteralExpCS= ruleInvalidLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getInvalidLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getInvalidLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleInvalidLiteralExpCS=ruleInvalidLiteralExpCS();
@@ -20314,18 +20314,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleInvalidLiteralExpCS; 
+               current =iv_ruleInvalidLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20340,8 +20340,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6919:28: ( ( () otherlv_1= 'invalid' ) )
             // InternalOCLinEcore.g:6920:1: ( () otherlv_1= 'invalid' )
@@ -20350,19 +20350,19 @@
             // InternalOCLinEcore.g:6920:2: () otherlv_1= 'invalid'
             {
             // InternalOCLinEcore.g:6920:2: ()
-            // InternalOCLinEcore.g:6921:2: 
+            // InternalOCLinEcore.g:6921:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -20371,7 +20371,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
-                  
+
             }
 
             }
@@ -20380,14 +20380,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20408,7 +20408,7 @@
             // InternalOCLinEcore.g:6943:2: iv_ruleNullLiteralExpCS= ruleNullLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNullLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getNullLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNullLiteralExpCS=ruleNullLiteralExpCS();
@@ -20416,18 +20416,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNullLiteralExpCS; 
+               current =iv_ruleNullLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20442,8 +20442,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6953:28: ( ( () otherlv_1= 'null' ) )
             // InternalOCLinEcore.g:6954:1: ( () otherlv_1= 'null' )
@@ -20452,19 +20452,19 @@
             // InternalOCLinEcore.g:6954:2: () otherlv_1= 'null'
             {
             // InternalOCLinEcore.g:6954:2: ()
-            // InternalOCLinEcore.g:6955:2: 
+            // InternalOCLinEcore.g:6955:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -20473,7 +20473,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
-                  
+
             }
 
             }
@@ -20482,14 +20482,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20510,7 +20510,7 @@
             // InternalOCLinEcore.g:6977:2: iv_ruleTypeLiteralCS= ruleTypeLiteralCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeLiteralCSRule()); 
+               newCompositeNode(grammarAccess.getTypeLiteralCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeLiteralCS=ruleTypeLiteralCS();
@@ -20518,18 +20518,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeLiteralCS; 
+               current =iv_ruleTypeLiteralCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20551,8 +20551,8 @@
         EObject this_TupleTypeCS_3 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:6987:28: ( (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS ) )
             // InternalOCLinEcore.g:6988:1: (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS )
@@ -20604,14 +20604,14 @@
                     // InternalOCLinEcore.g:6989:2: this_PrimitiveTypeCS_0= rulePrimitiveTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimitiveTypeCS_0=rulePrimitiveTypeCS();
@@ -20619,10 +20619,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrimitiveTypeCS_0; 
+
+                              current = this_PrimitiveTypeCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -20631,14 +20631,14 @@
                     // InternalOCLinEcore.g:7002:2: this_CollectionTypeCS_1= ruleCollectionTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CollectionTypeCS_1=ruleCollectionTypeCS();
@@ -20646,10 +20646,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_CollectionTypeCS_1; 
+
+                              current = this_CollectionTypeCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -20658,14 +20658,14 @@
                     // InternalOCLinEcore.g:7015:2: this_MapTypeCS_2= ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_MapTypeCS_2=ruleMapTypeCS();
@@ -20673,10 +20673,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MapTypeCS_2; 
+
+                              current = this_MapTypeCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -20685,14 +20685,14 @@
                     // InternalOCLinEcore.g:7028:2: this_TupleTypeCS_3= ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TupleTypeCS_3=ruleTupleTypeCS();
@@ -20700,10 +20700,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TupleTypeCS_3; 
+
+                              current = this_TupleTypeCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -20715,14 +20715,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20743,7 +20743,7 @@
             // InternalOCLinEcore.g:7049:2: iv_ruleTypeLiteralWithMultiplicityCS= ruleTypeLiteralWithMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); 
+               newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeLiteralWithMultiplicityCS=ruleTypeLiteralWithMultiplicityCS();
@@ -20751,18 +20751,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeLiteralWithMultiplicityCS; 
+               current =iv_ruleTypeLiteralWithMultiplicityCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20780,8 +20780,8 @@
         EObject lv_ownedMultiplicity_1_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:7059:28: ( (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) )
             // InternalOCLinEcore.g:7060:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? )
@@ -20790,14 +20790,14 @@
             // InternalOCLinEcore.g:7061:2: this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )?
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
-                  
+
+                      newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_85);
             this_TypeLiteralCS_0=ruleTypeLiteralCS();
@@ -20805,10 +20805,10 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
-                      current = this_TypeLiteralCS_0; 
+
+                      current = this_TypeLiteralCS_0;
                       afterParserOrEnumRuleCall();
-                  
+
             }
             // InternalOCLinEcore.g:7072:1: ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )?
             int alt162=2;
@@ -20825,9 +20825,9 @@
                     // InternalOCLinEcore.g:7074:3: lv_ownedMultiplicity_1_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_1_0=ruleMultiplicityCS();
@@ -20840,12 +20840,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_1_0, 
+                              		lv_ownedMultiplicity_1_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -20863,14 +20863,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20891,7 +20891,7 @@
             // InternalOCLinEcore.g:7100:2: iv_ruleTypeLiteralExpCS= ruleTypeLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getTypeLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeLiteralExpCS=ruleTypeLiteralExpCS();
@@ -20899,18 +20899,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeLiteralExpCS; 
+               current =iv_ruleTypeLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20926,8 +20926,8 @@
         EObject lv_ownedType_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:7110:28: ( ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) ) )
             // InternalOCLinEcore.g:7111:1: ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) )
@@ -20939,9 +20939,9 @@
             // InternalOCLinEcore.g:7113:3: lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedType_0_0=ruleTypeLiteralWithMultiplicityCS();
@@ -20954,12 +20954,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypeLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeLiteralWithMultiplicityCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -20971,14 +20971,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20999,7 +20999,7 @@
             // InternalOCLinEcore.g:7139:2: iv_ruleTypeNameExpCS= ruleTypeNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeNameExpCSRule()); 
+               newCompositeNode(grammarAccess.getTypeNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeNameExpCS=ruleTypeNameExpCS();
@@ -21007,18 +21007,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeNameExpCS; 
+               current =iv_ruleTypeNameExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21040,8 +21040,8 @@
         EObject lv_ownedPatternGuard_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:7149:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? ) )
             // InternalOCLinEcore.g:7150:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? )
@@ -21056,9 +21056,9 @@
             // InternalOCLinEcore.g:7152:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_65);
             lv_ownedPathName_0_0=rulePathNameCS();
@@ -21071,12 +21071,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_0_0, 
+                      		lv_ownedPathName_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -21102,9 +21102,9 @@
                     // InternalOCLinEcore.g:7170:3: lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_65);
                     lv_ownedCurlyBracketedClause_1_0=ruleCurlyBracketedClauseCS();
@@ -21117,12 +21117,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCurlyBracketedClause",
-                              		lv_ownedCurlyBracketedClause_1_0, 
+                              		lv_ownedCurlyBracketedClause_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -21145,7 +21145,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_2, grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
-                                  
+
                             }
                             // InternalOCLinEcore.g:7190:1: ( (lv_ownedPatternGuard_3_0= ruleExpCS ) )
                             // InternalOCLinEcore.g:7191:1: (lv_ownedPatternGuard_3_0= ruleExpCS )
@@ -21154,9 +21154,9 @@
                             // InternalOCLinEcore.g:7192:3: lv_ownedPatternGuard_3_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_40);
                             lv_ownedPatternGuard_3_0=ruleExpCS();
@@ -21169,12 +21169,12 @@
                               	            current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedPatternGuard",
-                                      		lv_ownedPatternGuard_3_0, 
+                                      		lv_ownedPatternGuard_3_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -21186,7 +21186,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
-                                  
+
                             }
 
                             }
@@ -21207,14 +21207,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21235,7 +21235,7 @@
             // InternalOCLinEcore.g:7222:2: iv_ruleTypeExpCS= ruleTypeExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeExpCSRule()); 
+               newCompositeNode(grammarAccess.getTypeExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeExpCS=ruleTypeExpCS();
@@ -21243,18 +21243,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeExpCS; 
+               current =iv_ruleTypeExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21276,8 +21276,8 @@
         EObject lv_ownedMultiplicity_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:7232:28: ( ( (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS ) ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
             // InternalOCLinEcore.g:7233:1: ( (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS ) ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
@@ -21293,14 +21293,14 @@
                     // InternalOCLinEcore.g:7234:2: this_TypeNameExpCS_0= ruleTypeNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_85);
                     this_TypeNameExpCS_0=ruleTypeNameExpCS();
@@ -21308,10 +21308,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeNameExpCS_0; 
+
+                              current = this_TypeNameExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -21320,14 +21320,14 @@
                     // InternalOCLinEcore.g:7247:2: this_TypeLiteralCS_1= ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_85);
                     this_TypeLiteralCS_1=ruleTypeLiteralCS();
@@ -21335,10 +21335,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeLiteralCS_1; 
+
+                              current = this_TypeLiteralCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -21347,14 +21347,14 @@
                     // InternalOCLinEcore.g:7260:2: this_CollectionPatternCS_2= ruleCollectionPatternCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_85);
                     this_CollectionPatternCS_2=ruleCollectionPatternCS();
@@ -21362,10 +21362,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_CollectionPatternCS_2; 
+
+                              current = this_CollectionPatternCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -21388,9 +21388,9 @@
                     // InternalOCLinEcore.g:7273:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_3_0=ruleMultiplicityCS();
@@ -21403,12 +21403,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_3_0, 
+                              		lv_ownedMultiplicity_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -21426,14 +21426,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21454,7 +21454,7 @@
             // InternalOCLinEcore.g:7299:2: iv_ruleExpCS= ruleExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getExpCSRule()); 
+               newCompositeNode(grammarAccess.getExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleExpCS=ruleExpCS();
@@ -21462,18 +21462,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleExpCS; 
+               current =iv_ruleExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21495,8 +21495,8 @@
         EObject this_PrefixedLetExpCS_4 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:7309:28: ( ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS ) )
             // InternalOCLinEcore.g:7310:1: ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS )
@@ -21512,14 +21512,14 @@
                     // InternalOCLinEcore.g:7311:2: this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_106);
                     this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS();
@@ -21527,10 +21527,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrefixedPrimaryExpCS_0; 
+
+                              current = this_PrefixedPrimaryExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
                     // InternalOCLinEcore.g:7322:1: ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
                     int alt167=2;
@@ -21544,19 +21544,19 @@
                             // InternalOCLinEcore.g:7322:2: () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) )
                             {
                             // InternalOCLinEcore.g:7322:2: ()
-                            // InternalOCLinEcore.g:7323:2: 
+                            // InternalOCLinEcore.g:7323:2:
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	  /* */ 
-                              	
+
+                              	  /* */
+
                             }
                             if ( state.backtracking==0 ) {
 
                                       current = forceCreateModelElementAndSet(
                                           grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0(),
                                           current);
-                                  
+
                             }
 
                             }
@@ -21568,9 +21568,9 @@
                             // InternalOCLinEcore.g:7333:3: lv_name_2_0= ruleBinaryOperatorName
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_99);
                             lv_name_2_0=ruleBinaryOperatorName();
@@ -21583,12 +21583,12 @@
                               	            current = createModelElementForParent(grammarAccess.getExpCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"name",
-                                      		lv_name_2_0, 
+                                      		lv_name_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.BinaryOperatorName");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -21603,9 +21603,9 @@
                             // InternalOCLinEcore.g:7351:3: lv_ownedRight_3_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedRight_3_0=ruleExpCS();
@@ -21618,12 +21618,12 @@
                               	            current = createModelElementForParent(grammarAccess.getExpCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedRight",
-                                      		lv_ownedRight_3_0, 
+                                      		lv_ownedRight_3_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -21647,14 +21647,14 @@
                     // InternalOCLinEcore.g:7369:2: this_PrefixedLetExpCS_4= rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrefixedLetExpCS_4=rulePrefixedLetExpCS();
@@ -21662,10 +21662,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrefixedLetExpCS_4; 
+
+                              current = this_PrefixedLetExpCS_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -21677,14 +21677,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21705,7 +21705,7 @@
             // InternalOCLinEcore.g:7390:2: iv_rulePrefixedLetExpCS= rulePrefixedLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrefixedLetExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrefixedLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrefixedLetExpCS=rulePrefixedLetExpCS();
@@ -21713,18 +21713,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrefixedLetExpCS; 
+               current =iv_rulePrefixedLetExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21744,8 +21744,8 @@
         EObject this_LetExpCS_3 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:7400:28: ( ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS ) )
             // InternalOCLinEcore.g:7401:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS )
@@ -21775,19 +21775,19 @@
                     // InternalOCLinEcore.g:7401:3: () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) )
                     {
                     // InternalOCLinEcore.g:7401:3: ()
-                    // InternalOCLinEcore.g:7402:2: 
+                    // InternalOCLinEcore.g:7402:2:
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                               current = forceCreateModelElement(
                                   grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0(),
                                   current);
-                          
+
                     }
 
                     }
@@ -21799,9 +21799,9 @@
                     // InternalOCLinEcore.g:7412:3: lv_name_1_0= ruleUnaryOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_99);
                     lv_name_1_0=ruleUnaryOperatorName();
@@ -21814,12 +21814,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -21834,9 +21834,9 @@
                     // InternalOCLinEcore.g:7430:3: lv_ownedRight_2_0= rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedRight_2_0=rulePrefixedLetExpCS();
@@ -21849,12 +21849,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRight",
-                              		lv_ownedRight_2_0, 
+                              		lv_ownedRight_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedLetExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -21872,14 +21872,14 @@
                     // InternalOCLinEcore.g:7448:2: this_LetExpCS_3= ruleLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_LetExpCS_3=ruleLetExpCS();
@@ -21887,10 +21887,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_LetExpCS_3; 
+
+                              current = this_LetExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -21902,14 +21902,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21930,7 +21930,7 @@
             // InternalOCLinEcore.g:7469:2: iv_rulePrefixedPrimaryExpCS= rulePrefixedPrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrefixedPrimaryExpCS=rulePrefixedPrimaryExpCS();
@@ -21938,18 +21938,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrefixedPrimaryExpCS; 
+               current =iv_rulePrefixedPrimaryExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21969,8 +21969,8 @@
         EObject this_PrimaryExpCS_3 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:7479:28: ( ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS ) )
             // InternalOCLinEcore.g:7480:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS )
@@ -22000,19 +22000,19 @@
                     // InternalOCLinEcore.g:7480:3: () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) )
                     {
                     // InternalOCLinEcore.g:7480:3: ()
-                    // InternalOCLinEcore.g:7481:2: 
+                    // InternalOCLinEcore.g:7481:2:
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                               current = forceCreateModelElement(
                                   grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0(),
                                   current);
-                          
+
                     }
 
                     }
@@ -22024,9 +22024,9 @@
                     // InternalOCLinEcore.g:7491:3: lv_name_1_0= ruleUnaryOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_29);
                     lv_name_1_0=ruleUnaryOperatorName();
@@ -22039,12 +22039,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -22059,9 +22059,9 @@
                     // InternalOCLinEcore.g:7509:3: lv_ownedRight_2_0= rulePrefixedPrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedRight_2_0=rulePrefixedPrimaryExpCS();
@@ -22074,12 +22074,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRight",
-                              		lv_ownedRight_2_0, 
+                              		lv_ownedRight_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedPrimaryExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -22097,14 +22097,14 @@
                     // InternalOCLinEcore.g:7527:2: this_PrimaryExpCS_3= rulePrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimaryExpCS_3=rulePrimaryExpCS();
@@ -22112,10 +22112,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrimaryExpCS_3; 
+
+                              current = this_PrimaryExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -22127,14 +22127,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22155,7 +22155,7 @@
             // InternalOCLinEcore.g:7548:2: iv_rulePrimaryExpCS= rulePrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimaryExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimaryExpCS=rulePrimaryExpCS();
@@ -22163,18 +22163,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimaryExpCS; 
+               current =iv_rulePrimaryExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22208,8 +22208,8 @@
         EObject this_NameExpCS_9 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:7558:28: ( (this_NestedExpCS_0= ruleNestedExpCS | this_IfExpCS_1= ruleIfExpCS | this_SelfExpCS_2= ruleSelfExpCS | this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS | this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS | this_MapLiteralExpCS_5= ruleMapLiteralExpCS | this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS | this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS | this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS | this_NameExpCS_9= ruleNameExpCS ) )
             // InternalOCLinEcore.g:7559:1: (this_NestedExpCS_0= ruleNestedExpCS | this_IfExpCS_1= ruleIfExpCS | this_SelfExpCS_2= ruleSelfExpCS | this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS | this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS | this_MapLiteralExpCS_5= ruleMapLiteralExpCS | this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS | this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS | this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS | this_NameExpCS_9= ruleNameExpCS )
@@ -22222,14 +22222,14 @@
                     // InternalOCLinEcore.g:7560:2: this_NestedExpCS_0= ruleNestedExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NestedExpCS_0=ruleNestedExpCS();
@@ -22237,10 +22237,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NestedExpCS_0; 
+
+                              current = this_NestedExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -22249,14 +22249,14 @@
                     // InternalOCLinEcore.g:7573:2: this_IfExpCS_1= ruleIfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_IfExpCS_1=ruleIfExpCS();
@@ -22264,10 +22264,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_IfExpCS_1; 
+
+                              current = this_IfExpCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -22276,14 +22276,14 @@
                     // InternalOCLinEcore.g:7586:2: this_SelfExpCS_2= ruleSelfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_SelfExpCS_2=ruleSelfExpCS();
@@ -22291,10 +22291,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_SelfExpCS_2; 
+
+                              current = this_SelfExpCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -22303,14 +22303,14 @@
                     // InternalOCLinEcore.g:7599:2: this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimitiveLiteralExpCS_3=rulePrimitiveLiteralExpCS();
@@ -22318,10 +22318,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrimitiveLiteralExpCS_3; 
+
+                              current = this_PrimitiveLiteralExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -22330,14 +22330,14 @@
                     // InternalOCLinEcore.g:7612:2: this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS();
@@ -22345,10 +22345,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TupleLiteralExpCS_4; 
+
+                              current = this_TupleLiteralExpCS_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -22357,14 +22357,14 @@
                     // InternalOCLinEcore.g:7625:2: this_MapLiteralExpCS_5= ruleMapLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_MapLiteralExpCS_5=ruleMapLiteralExpCS();
@@ -22372,10 +22372,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MapLiteralExpCS_5; 
+
+                              current = this_MapLiteralExpCS_5;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -22384,14 +22384,14 @@
                     // InternalOCLinEcore.g:7638:2: this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS();
@@ -22399,10 +22399,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_CollectionLiteralExpCS_6; 
+
+                              current = this_CollectionLiteralExpCS_6;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -22411,14 +22411,14 @@
                     // InternalOCLinEcore.g:7651:2: this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_LambdaLiteralExpCS_7=ruleLambdaLiteralExpCS();
@@ -22426,10 +22426,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_LambdaLiteralExpCS_7; 
+
+                              current = this_LambdaLiteralExpCS_7;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -22438,14 +22438,14 @@
                     // InternalOCLinEcore.g:7664:2: this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS();
@@ -22453,10 +22453,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeLiteralExpCS_8; 
+
+                              current = this_TypeLiteralExpCS_8;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -22465,14 +22465,14 @@
                     // InternalOCLinEcore.g:7677:2: this_NameExpCS_9= ruleNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NameExpCS_9=ruleNameExpCS();
@@ -22480,10 +22480,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NameExpCS_9; 
+
+                              current = this_NameExpCS_9;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -22495,14 +22495,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22523,7 +22523,7 @@
             // InternalOCLinEcore.g:7698:2: iv_ruleNameExpCS= ruleNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNameExpCSRule()); 
+               newCompositeNode(grammarAccess.getNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNameExpCS=ruleNameExpCS();
@@ -22531,18 +22531,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNameExpCS; 
+               current =iv_ruleNameExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22566,8 +22566,8 @@
         EObject lv_ownedCurlyBracketedClause_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:7708:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? ) )
             // InternalOCLinEcore.g:7709:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? )
@@ -22582,9 +22582,9 @@
             // InternalOCLinEcore.g:7711:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_107);
             lv_ownedPathName_0_0=rulePathNameCS();
@@ -22597,12 +22597,12 @@
               	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_0_0, 
+                      		lv_ownedPathName_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -22629,9 +22629,9 @@
             	    // InternalOCLinEcore.g:7729:3: lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_107);
             	    lv_ownedSquareBracketedClauses_1_0=ruleSquareBracketedClauseCS();
@@ -22644,12 +22644,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedSquareBracketedClauses",
-            	              		lv_ownedSquareBracketedClauses_1_0, 
+            	              		lv_ownedSquareBracketedClauses_1_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.SquareBracketedClauseCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -22678,9 +22678,9 @@
                     // InternalOCLinEcore.g:7747:3: lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_108);
                     lv_ownedRoundBracketedClause_2_0=ruleRoundBracketedClauseCS();
@@ -22693,12 +22693,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRoundBracketedClause",
-                              		lv_ownedRoundBracketedClause_2_0, 
+                              		lv_ownedRoundBracketedClause_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -22724,9 +22724,9 @@
                     // InternalOCLinEcore.g:7765:3: lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_109);
                     lv_ownedCurlyBracketedClause_3_0=ruleCurlyBracketedClauseCS();
@@ -22739,12 +22739,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCurlyBracketedClause",
-                              		lv_ownedCurlyBracketedClause_3_0, 
+                              		lv_ownedCurlyBracketedClause_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -22776,7 +22776,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isPre_4_0, grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -22784,7 +22784,7 @@
                       	            current = createModelElement(grammarAccess.getNameExpCSRule());
                       	        }
                              		setWithLastConsumed(current, "isPre", true, "@");
-                      	    
+
                     }
 
                     }
@@ -22796,7 +22796,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
-                          
+
                     }
 
                     }
@@ -22811,14 +22811,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22839,7 +22839,7 @@
             // InternalOCLinEcore.g:7810:2: iv_ruleCurlyBracketedClauseCS= ruleCurlyBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCurlyBracketedClauseCSRule()); 
+               newCompositeNode(grammarAccess.getCurlyBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCurlyBracketedClauseCS=ruleCurlyBracketedClauseCS();
@@ -22847,18 +22847,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCurlyBracketedClauseCS; 
+               current =iv_ruleCurlyBracketedClauseCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22881,8 +22881,8 @@
         AntlrDatatypeRuleToken lv_value_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:7820:28: ( ( () otherlv_1= '{' ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) ) otherlv_6= '}' ) )
             // InternalOCLinEcore.g:7821:1: ( () otherlv_1= '{' ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) ) otherlv_6= '}' )
@@ -22891,19 +22891,19 @@
             // InternalOCLinEcore.g:7821:2: () otherlv_1= '{' ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) ) otherlv_6= '}'
             {
             // InternalOCLinEcore.g:7821:2: ()
-            // InternalOCLinEcore.g:7822:2: 
+            // InternalOCLinEcore.g:7822:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -22912,7 +22912,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:7834:1: ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) )
             int alt178=2;
@@ -22953,9 +22953,9 @@
                             // InternalOCLinEcore.g:7836:3: lv_ownedParts_2_0= ruleShadowPartCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_96);
                             lv_ownedParts_2_0=ruleShadowPartCS();
@@ -22968,12 +22968,12 @@
                               	            current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
                               	        }
                                      		add(
-                                     			current, 
+                                     			current,
                                      			"ownedParts",
-                                      		lv_ownedParts_2_0, 
+                                      		lv_ownedParts_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -23000,7 +23000,7 @@
                             	    if ( state.backtracking==0 ) {
 
                             	          	newLeafNode(otherlv_3, grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
-                            	          
+
                             	    }
                             	    // InternalOCLinEcore.g:7856:1: ( (lv_ownedParts_4_0= ruleShadowPartCS ) )
                             	    // InternalOCLinEcore.g:7857:1: (lv_ownedParts_4_0= ruleShadowPartCS )
@@ -23009,9 +23009,9 @@
                             	    // InternalOCLinEcore.g:7858:3: lv_ownedParts_4_0= ruleShadowPartCS
                             	    {
                             	    if ( state.backtracking==0 ) {
-                            	       
-                            	      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
-                            	      	    
+
+                            	      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
+
                             	    }
                             	    pushFollow(FollowSets000.FOLLOW_96);
                             	    lv_ownedParts_4_0=ruleShadowPartCS();
@@ -23024,12 +23024,12 @@
                             	      	            current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
                             	      	        }
                             	             		add(
-                            	             			current, 
+                            	             			current,
                             	             			"ownedParts",
-                            	              		lv_ownedParts_4_0, 
+                            	              		lv_ownedParts_4_0,
                             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
                             	      	        afterParserOrEnumRuleCall();
-                            	      	    
+
                             	    }
 
                             	    }
@@ -23065,9 +23065,9 @@
                     // InternalOCLinEcore.g:7877:3: lv_value_5_0= ruleStringLiteral
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_40);
                     lv_value_5_0=ruleStringLiteral();
@@ -23080,12 +23080,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"value",
-                              		lv_value_5_0, 
+                              		lv_value_5_0,
                               		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -23103,7 +23103,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_6, grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -23112,14 +23112,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23140,7 +23140,7 @@
             // InternalOCLinEcore.g:7907:2: iv_ruleRoundBracketedClauseCS= ruleRoundBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getRoundBracketedClauseCSRule()); 
+               newCompositeNode(grammarAccess.getRoundBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleRoundBracketedClauseCS=ruleRoundBracketedClauseCS();
@@ -23148,18 +23148,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleRoundBracketedClauseCS; 
+               current =iv_ruleRoundBracketedClauseCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23187,8 +23187,8 @@
         EObject lv_ownedArguments_7_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:7917:28: ( ( () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )? otherlv_8= ')' ) )
             // InternalOCLinEcore.g:7918:1: ( () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )? otherlv_8= ')' )
@@ -23197,19 +23197,19 @@
             // InternalOCLinEcore.g:7918:2: () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )? otherlv_8= ')'
             {
             // InternalOCLinEcore.g:7918:2: ()
-            // InternalOCLinEcore.g:7919:2: 
+            // InternalOCLinEcore.g:7919:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -23218,7 +23218,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:7931:1: ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )?
             int alt184=2;
@@ -23238,9 +23238,9 @@
                     // InternalOCLinEcore.g:7933:3: lv_ownedArguments_2_0= ruleNavigatingArgCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_112);
                     lv_ownedArguments_2_0=ruleNavigatingArgCS();
@@ -23253,12 +23253,12 @@
                       	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedArguments",
-                              		lv_ownedArguments_2_0, 
+                              		lv_ownedArguments_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -23285,9 +23285,9 @@
                     	    // InternalOCLinEcore.g:7951:3: lv_ownedArguments_3_0= ruleNavigatingCommaArgCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_112);
                     	    lv_ownedArguments_3_0=ruleNavigatingCommaArgCS();
@@ -23300,12 +23300,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedArguments",
-                    	              		lv_ownedArguments_3_0, 
+                    	              		lv_ownedArguments_3_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -23337,9 +23337,9 @@
                             // InternalOCLinEcore.g:7969:3: lv_ownedArguments_4_0= ruleNavigatingSemiArgCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_113);
                             lv_ownedArguments_4_0=ruleNavigatingSemiArgCS();
@@ -23352,12 +23352,12 @@
                               	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                               	        }
                                      		add(
-                                     			current, 
+                                     			current,
                                      			"ownedArguments",
-                                      		lv_ownedArguments_4_0, 
+                                      		lv_ownedArguments_4_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingSemiArgCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -23384,9 +23384,9 @@
                             	    // InternalOCLinEcore.g:7987:3: lv_ownedArguments_5_0= ruleNavigatingCommaArgCS
                             	    {
                             	    if ( state.backtracking==0 ) {
-                            	       
-                            	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
-                            	      	    
+
+                            	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
+
                             	    }
                             	    pushFollow(FollowSets000.FOLLOW_113);
                             	    lv_ownedArguments_5_0=ruleNavigatingCommaArgCS();
@@ -23399,12 +23399,12 @@
                             	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                             	      	        }
                             	             		add(
-                            	             			current, 
+                            	             			current,
                             	             			"ownedArguments",
-                            	              		lv_ownedArguments_5_0, 
+                            	              		lv_ownedArguments_5_0,
                             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
                             	      	        afterParserOrEnumRuleCall();
-                            	      	    
+
                             	    }
 
                             	    }
@@ -23446,9 +23446,9 @@
                     	    // InternalOCLinEcore.g:8005:3: lv_ownedArguments_6_0= ruleNavigatingBarArgCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_113);
                     	    lv_ownedArguments_6_0=ruleNavigatingBarArgCS();
@@ -23461,12 +23461,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedArguments",
-                    	              		lv_ownedArguments_6_0, 
+                    	              		lv_ownedArguments_6_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingBarArgCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -23493,9 +23493,9 @@
                     	    	    // InternalOCLinEcore.g:8023:3: lv_ownedArguments_7_0= ruleNavigatingCommaArgCS
                     	    	    {
                     	    	    if ( state.backtracking==0 ) {
-                    	    	       
-                    	    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
-                    	    	      	    
+
+                    	    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
+
                     	    	    }
                     	    	    pushFollow(FollowSets000.FOLLOW_113);
                     	    	    lv_ownedArguments_7_0=ruleNavigatingCommaArgCS();
@@ -23508,12 +23508,12 @@
                     	    	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                     	    	      	        }
                     	    	             		add(
-                    	    	             			current, 
+                    	    	             			current,
                     	    	             			"ownedArguments",
-                    	    	              		lv_ownedArguments_7_0, 
+                    	    	              		lv_ownedArguments_7_0,
                     	    	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
                     	    	      	        afterParserOrEnumRuleCall();
-                    	    	      	    
+
                     	    	    }
 
                     	    	    }
@@ -23546,7 +23546,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_8, grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
-                  
+
             }
 
             }
@@ -23555,14 +23555,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23583,7 +23583,7 @@
             // InternalOCLinEcore.g:8053:2: iv_ruleSquareBracketedClauseCS= ruleSquareBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getSquareBracketedClauseCSRule()); 
+               newCompositeNode(grammarAccess.getSquareBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleSquareBracketedClauseCS=ruleSquareBracketedClauseCS();
@@ -23591,18 +23591,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleSquareBracketedClauseCS; 
+               current =iv_ruleSquareBracketedClauseCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23623,8 +23623,8 @@
         EObject lv_ownedTerms_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:8063:28: ( (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' ) )
             // InternalOCLinEcore.g:8064:1: (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' )
@@ -23636,7 +23636,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
-                  
+
             }
             // InternalOCLinEcore.g:8068:1: ( (lv_ownedTerms_1_0= ruleExpCS ) )
             // InternalOCLinEcore.g:8069:1: (lv_ownedTerms_1_0= ruleExpCS )
@@ -23645,9 +23645,9 @@
             // InternalOCLinEcore.g:8070:3: lv_ownedTerms_1_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_114);
             lv_ownedTerms_1_0=ruleExpCS();
@@ -23660,12 +23660,12 @@
               	            current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedTerms",
-                      		lv_ownedTerms_1_0, 
+                      		lv_ownedTerms_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -23692,7 +23692,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_2, grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
-            	          
+
             	    }
             	    // InternalOCLinEcore.g:8090:1: ( (lv_ownedTerms_3_0= ruleExpCS ) )
             	    // InternalOCLinEcore.g:8091:1: (lv_ownedTerms_3_0= ruleExpCS )
@@ -23701,9 +23701,9 @@
             	    // InternalOCLinEcore.g:8092:3: lv_ownedTerms_3_0= ruleExpCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_114);
             	    lv_ownedTerms_3_0=ruleExpCS();
@@ -23716,12 +23716,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedTerms",
-            	              		lv_ownedTerms_3_0, 
+            	              		lv_ownedTerms_3_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -23742,7 +23742,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
-                  
+
             }
 
             }
@@ -23751,14 +23751,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23779,7 +23779,7 @@
             // InternalOCLinEcore.g:8122:2: iv_ruleNavigatingArgCS= ruleNavigatingArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingArgCS=ruleNavigatingArgCS();
@@ -23787,18 +23787,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingArgCS; 
+               current =iv_ruleNavigatingArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23826,8 +23826,8 @@
         EObject lv_ownedType_8_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:8132:28: ( ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= 'in' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ) ) )
             // InternalOCLinEcore.g:8133:1: ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= 'in' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ) )
@@ -23863,9 +23863,9 @@
                     // InternalOCLinEcore.g:8135:3: lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_115);
                     lv_ownedNameExpression_0_0=ruleNavigatingArgExpCS();
@@ -23878,12 +23878,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedNameExpression",
-                              		lv_ownedNameExpression_0_0, 
+                              		lv_ownedNameExpression_0_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -23912,7 +23912,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_1, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
-                                  
+
                             }
                             // InternalOCLinEcore.g:8155:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                             // InternalOCLinEcore.g:8156:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -23921,9 +23921,9 @@
                             // InternalOCLinEcore.g:8157:3: lv_ownedType_2_0= ruleTypeExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_116);
                             lv_ownedType_2_0=ruleTypeExpCS();
@@ -23936,12 +23936,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedType",
-                                      		lv_ownedType_2_0, 
+                                      		lv_ownedType_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -23964,7 +23964,7 @@
                                     if ( state.backtracking==0 ) {
 
                                           	newLeafNode(otherlv_3, grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
-                                          
+
                                     }
                                     // InternalOCLinEcore.g:8177:1: ( (lv_ownedInitExpression_4_0= ruleExpCS ) )
                                     // InternalOCLinEcore.g:8178:1: (lv_ownedInitExpression_4_0= ruleExpCS )
@@ -23973,9 +23973,9 @@
                                     // InternalOCLinEcore.g:8179:3: lv_ownedInitExpression_4_0= ruleExpCS
                                     {
                                     if ( state.backtracking==0 ) {
-                                       
-                                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
-                                      	    
+
+                                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
+
                                     }
                                     pushFollow(FollowSets000.FOLLOW_2);
                                     lv_ownedInitExpression_4_0=ruleExpCS();
@@ -23988,12 +23988,12 @@
                                       	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                                       	        }
                                              		set(
-                                             			current, 
+                                             			current,
                                              			"ownedInitExpression",
-                                              		lv_ownedInitExpression_4_0, 
+                                              		lv_ownedInitExpression_4_0,
                                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                                       	        afterParserOrEnumRuleCall();
-                                      	    
+
                                     }
 
                                     }
@@ -24023,7 +24023,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_5, grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
-                                  
+
                             }
                             // InternalOCLinEcore.g:8200:1: ( (lv_ownedInitExpression_6_0= ruleExpCS ) )
                             // InternalOCLinEcore.g:8201:1: (lv_ownedInitExpression_6_0= ruleExpCS )
@@ -24032,9 +24032,9 @@
                             // InternalOCLinEcore.g:8202:3: lv_ownedInitExpression_6_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_6_0=ruleExpCS();
@@ -24047,12 +24047,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_6_0, 
+                                      		lv_ownedInitExpression_6_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -24085,7 +24085,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_7, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:8223:1: ( (lv_ownedType_8_0= ruleTypeExpCS ) )
                     // InternalOCLinEcore.g:8224:1: (lv_ownedType_8_0= ruleTypeExpCS )
@@ -24094,9 +24094,9 @@
                     // InternalOCLinEcore.g:8225:3: lv_ownedType_8_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedType_8_0=ruleTypeExpCS();
@@ -24109,12 +24109,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_8_0, 
+                              		lv_ownedType_8_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -24135,14 +24135,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24163,7 +24163,7 @@
             // InternalOCLinEcore.g:8251:2: iv_ruleNavigatingBarArgCS= ruleNavigatingBarArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingBarArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingBarArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingBarArgCS=ruleNavigatingBarArgCS();
@@ -24171,18 +24171,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingBarArgCS; 
+               current =iv_ruleNavigatingBarArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24205,8 +24205,8 @@
         EObject lv_ownedInitExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:8261:28: ( ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) )
             // InternalOCLinEcore.g:8262:1: ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? )
@@ -24224,7 +24224,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -24232,7 +24232,7 @@
               	            current = createModelElement(grammarAccess.getNavigatingBarArgCSRule());
               	        }
                      		setWithLastConsumed(current, "prefix", lv_prefix_0_0, "|");
-              	    
+
             }
 
             }
@@ -24247,9 +24247,9 @@
             // InternalOCLinEcore.g:8279:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_117);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
@@ -24262,12 +24262,12 @@
               	            current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedNameExpression",
-                      		lv_ownedNameExpression_1_0, 
+                      		lv_ownedNameExpression_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -24290,7 +24290,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:8299:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalOCLinEcore.g:8300:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -24299,9 +24299,9 @@
                     // InternalOCLinEcore.g:8301:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_116);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -24314,12 +24314,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -24342,7 +24342,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
-                                  
+
                             }
                             // InternalOCLinEcore.g:8321:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
                             // InternalOCLinEcore.g:8322:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -24351,9 +24351,9 @@
                             // InternalOCLinEcore.g:8323:3: lv_ownedInitExpression_5_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -24366,12 +24366,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_5_0, 
+                                      		lv_ownedInitExpression_5_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -24398,14 +24398,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24426,7 +24426,7 @@
             // InternalOCLinEcore.g:8349:2: iv_ruleNavigatingCommaArgCS= ruleNavigatingCommaArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingCommaArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingCommaArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingCommaArgCS=ruleNavigatingCommaArgCS();
@@ -24434,18 +24434,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingCommaArgCS; 
+               current =iv_ruleNavigatingCommaArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24471,8 +24471,8 @@
         EObject lv_ownedInitExpression_7_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:8359:28: ( ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= 'in' ( (lv_ownedInitExpression_7_0= ruleExpCS ) ) ) )? ) )
             // InternalOCLinEcore.g:8360:1: ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= 'in' ( (lv_ownedInitExpression_7_0= ruleExpCS ) ) ) )? )
@@ -24490,7 +24490,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -24498,7 +24498,7 @@
               	            current = createModelElement(grammarAccess.getNavigatingCommaArgCSRule());
               	        }
                      		setWithLastConsumed(current, "prefix", lv_prefix_0_0, ",");
-              	    
+
             }
 
             }
@@ -24513,9 +24513,9 @@
             // InternalOCLinEcore.g:8377:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_115);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
@@ -24528,12 +24528,12 @@
               	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedNameExpression",
-                      		lv_ownedNameExpression_1_0, 
+                      		lv_ownedNameExpression_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -24562,7 +24562,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:8397:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalOCLinEcore.g:8398:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -24571,9 +24571,9 @@
                     // InternalOCLinEcore.g:8399:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_116);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -24586,12 +24586,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -24614,7 +24614,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
-                                  
+
                             }
                             // InternalOCLinEcore.g:8419:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
                             // InternalOCLinEcore.g:8420:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -24623,9 +24623,9 @@
                             // InternalOCLinEcore.g:8421:3: lv_ownedInitExpression_5_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -24638,12 +24638,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_5_0, 
+                                      		lv_ownedInitExpression_5_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -24673,7 +24673,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:8442:1: ( (lv_ownedInitExpression_7_0= ruleExpCS ) )
                     // InternalOCLinEcore.g:8443:1: (lv_ownedInitExpression_7_0= ruleExpCS )
@@ -24682,9 +24682,9 @@
                     // InternalOCLinEcore.g:8444:3: lv_ownedInitExpression_7_0= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedInitExpression_7_0=ruleExpCS();
@@ -24697,12 +24697,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedInitExpression",
-                              		lv_ownedInitExpression_7_0, 
+                              		lv_ownedInitExpression_7_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -24726,14 +24726,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24754,7 +24754,7 @@
             // InternalOCLinEcore.g:8470:2: iv_ruleNavigatingSemiArgCS= ruleNavigatingSemiArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingSemiArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingSemiArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingSemiArgCS=ruleNavigatingSemiArgCS();
@@ -24762,18 +24762,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingSemiArgCS; 
+               current =iv_ruleNavigatingSemiArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24796,8 +24796,8 @@
         EObject lv_ownedInitExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:8480:28: ( ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) )
             // InternalOCLinEcore.g:8481:1: ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? )
@@ -24815,7 +24815,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -24823,7 +24823,7 @@
               	            current = createModelElement(grammarAccess.getNavigatingSemiArgCSRule());
               	        }
                      		setWithLastConsumed(current, "prefix", lv_prefix_0_0, ";");
-              	    
+
             }
 
             }
@@ -24838,9 +24838,9 @@
             // InternalOCLinEcore.g:8498:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_117);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
@@ -24853,12 +24853,12 @@
               	            current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedNameExpression",
-                      		lv_ownedNameExpression_1_0, 
+                      		lv_ownedNameExpression_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -24881,7 +24881,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:8518:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalOCLinEcore.g:8519:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -24890,9 +24890,9 @@
                     // InternalOCLinEcore.g:8520:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_116);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -24905,12 +24905,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -24933,7 +24933,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
-                                  
+
                             }
                             // InternalOCLinEcore.g:8540:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
                             // InternalOCLinEcore.g:8541:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -24942,9 +24942,9 @@
                             // InternalOCLinEcore.g:8542:3: lv_ownedInitExpression_5_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -24957,12 +24957,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_5_0, 
+                                      		lv_ownedInitExpression_5_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -24989,14 +24989,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25017,7 +25017,7 @@
             // InternalOCLinEcore.g:8568:2: iv_ruleNavigatingArgExpCS= ruleNavigatingArgExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingArgExpCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingArgExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingArgExpCS=ruleNavigatingArgExpCS();
@@ -25025,18 +25025,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingArgExpCS; 
+               current =iv_ruleNavigatingArgExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25052,21 +25052,21 @@
         EObject this_ExpCS_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:8578:28: (this_ExpCS_0= ruleExpCS )
             // InternalOCLinEcore.g:8580:2: this_ExpCS_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_ExpCS_0=ruleExpCS();
@@ -25074,23 +25074,23 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
-                      current = this_ExpCS_0; 
+
+                      current = this_ExpCS_0;
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25111,7 +25111,7 @@
             // InternalOCLinEcore.g:8601:2: iv_ruleIfExpCS= ruleIfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIfExpCSRule()); 
+               newCompositeNode(grammarAccess.getIfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleIfExpCS=ruleIfExpCS();
@@ -25119,18 +25119,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleIfExpCS; 
+               current =iv_ruleIfExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25158,8 +25158,8 @@
         EObject lv_ownedElseExpression_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:8611:28: ( (otherlv_0= 'if' ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* otherlv_5= 'else' ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) otherlv_7= 'endif' ) )
             // InternalOCLinEcore.g:8612:1: (otherlv_0= 'if' ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* otherlv_5= 'else' ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) otherlv_7= 'endif' )
@@ -25171,7 +25171,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getIfExpCSAccess().getIfKeyword_0());
-                  
+
             }
             // InternalOCLinEcore.g:8616:1: ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) )
             // InternalOCLinEcore.g:8617:1: ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) )
@@ -25187,9 +25187,9 @@
                     // InternalOCLinEcore.g:8619:3: lv_ownedCondition_1_1= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_118);
                     lv_ownedCondition_1_1=ruleExpCS();
@@ -25202,12 +25202,12 @@
                       	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCondition",
-                              		lv_ownedCondition_1_1, 
+                              		lv_ownedCondition_1_1,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -25216,9 +25216,9 @@
                     // InternalOCLinEcore.g:8634:8: lv_ownedCondition_1_2= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_118);
                     lv_ownedCondition_1_2=rulePatternExpCS();
@@ -25231,12 +25231,12 @@
                       	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCondition",
-                              		lv_ownedCondition_1_2, 
+                              		lv_ownedCondition_1_2,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -25254,7 +25254,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getIfExpCSAccess().getThenKeyword_2());
-                  
+
             }
             // InternalOCLinEcore.g:8656:1: ( (lv_ownedThenExpression_3_0= ruleExpCS ) )
             // InternalOCLinEcore.g:8657:1: (lv_ownedThenExpression_3_0= ruleExpCS )
@@ -25263,9 +25263,9 @@
             // InternalOCLinEcore.g:8658:3: lv_ownedThenExpression_3_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_119);
             lv_ownedThenExpression_3_0=ruleExpCS();
@@ -25278,12 +25278,12 @@
               	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedThenExpression",
-                      		lv_ownedThenExpression_3_0, 
+                      		lv_ownedThenExpression_3_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -25310,9 +25310,9 @@
             	    // InternalOCLinEcore.g:8676:3: lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_119);
             	    lv_ownedIfThenExpressions_4_0=ruleElseIfThenExpCS();
@@ -25325,12 +25325,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedIfThenExpressions",
-            	              		lv_ownedIfThenExpressions_4_0, 
+            	              		lv_ownedIfThenExpressions_4_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ElseIfThenExpCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -25348,7 +25348,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getIfExpCSAccess().getElseKeyword_5());
-                  
+
             }
             // InternalOCLinEcore.g:8696:1: ( (lv_ownedElseExpression_6_0= ruleExpCS ) )
             // InternalOCLinEcore.g:8697:1: (lv_ownedElseExpression_6_0= ruleExpCS )
@@ -25357,9 +25357,9 @@
             // InternalOCLinEcore.g:8698:3: lv_ownedElseExpression_6_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_120);
             lv_ownedElseExpression_6_0=ruleExpCS();
@@ -25372,12 +25372,12 @@
               	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedElseExpression",
-                      		lv_ownedElseExpression_6_0, 
+                      		lv_ownedElseExpression_6_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -25389,7 +25389,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
-                  
+
             }
 
             }
@@ -25398,14 +25398,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25426,7 +25426,7 @@
             // InternalOCLinEcore.g:8728:2: iv_ruleElseIfThenExpCS= ruleElseIfThenExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getElseIfThenExpCSRule()); 
+               newCompositeNode(grammarAccess.getElseIfThenExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleElseIfThenExpCS=ruleElseIfThenExpCS();
@@ -25434,18 +25434,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleElseIfThenExpCS; 
+               current =iv_ruleElseIfThenExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25465,8 +25465,8 @@
         EObject lv_ownedThenExpression_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:8738:28: ( (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ) )
             // InternalOCLinEcore.g:8739:1: (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) )
@@ -25478,7 +25478,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
-                  
+
             }
             // InternalOCLinEcore.g:8743:1: ( (lv_ownedCondition_1_0= ruleExpCS ) )
             // InternalOCLinEcore.g:8744:1: (lv_ownedCondition_1_0= ruleExpCS )
@@ -25487,9 +25487,9 @@
             // InternalOCLinEcore.g:8745:3: lv_ownedCondition_1_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_118);
             lv_ownedCondition_1_0=ruleExpCS();
@@ -25502,12 +25502,12 @@
               	            current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedCondition",
-                      		lv_ownedCondition_1_0, 
+                      		lv_ownedCondition_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -25519,7 +25519,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
-                  
+
             }
             // InternalOCLinEcore.g:8765:1: ( (lv_ownedThenExpression_3_0= ruleExpCS ) )
             // InternalOCLinEcore.g:8766:1: (lv_ownedThenExpression_3_0= ruleExpCS )
@@ -25528,9 +25528,9 @@
             // InternalOCLinEcore.g:8767:3: lv_ownedThenExpression_3_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedThenExpression_3_0=ruleExpCS();
@@ -25543,12 +25543,12 @@
               	            current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedThenExpression",
-                      		lv_ownedThenExpression_3_0, 
+                      		lv_ownedThenExpression_3_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -25563,14 +25563,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25591,7 +25591,7 @@
             // InternalOCLinEcore.g:8793:2: iv_ruleLetExpCS= ruleLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLetExpCSRule()); 
+               newCompositeNode(grammarAccess.getLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLetExpCS=ruleLetExpCS();
@@ -25599,18 +25599,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLetExpCS; 
+               current =iv_ruleLetExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25633,8 +25633,8 @@
         EObject lv_ownedInExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:8803:28: ( (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) ) )
             // InternalOCLinEcore.g:8804:1: (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) )
@@ -25646,7 +25646,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getLetExpCSAccess().getLetKeyword_0());
-                  
+
             }
             // InternalOCLinEcore.g:8808:1: ( (lv_ownedVariables_1_0= ruleLetVariableCS ) )
             // InternalOCLinEcore.g:8809:1: (lv_ownedVariables_1_0= ruleLetVariableCS )
@@ -25655,9 +25655,9 @@
             // InternalOCLinEcore.g:8810:3: lv_ownedVariables_1_0= ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_121);
             lv_ownedVariables_1_0=ruleLetVariableCS();
@@ -25670,12 +25670,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetExpCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedVariables",
-                      		lv_ownedVariables_1_0, 
+                      		lv_ownedVariables_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -25702,7 +25702,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_2, grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
-            	          
+
             	    }
             	    // InternalOCLinEcore.g:8830:1: ( (lv_ownedVariables_3_0= ruleLetVariableCS ) )
             	    // InternalOCLinEcore.g:8831:1: (lv_ownedVariables_3_0= ruleLetVariableCS )
@@ -25711,9 +25711,9 @@
             	    // InternalOCLinEcore.g:8832:3: lv_ownedVariables_3_0= ruleLetVariableCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_121);
             	    lv_ownedVariables_3_0=ruleLetVariableCS();
@@ -25726,12 +25726,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLetExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedVariables",
-            	              		lv_ownedVariables_3_0, 
+            	              		lv_ownedVariables_3_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -25752,7 +25752,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getLetExpCSAccess().getInKeyword_3());
-                  
+
             }
             // InternalOCLinEcore.g:8852:1: ( (lv_ownedInExpression_5_0= ruleExpCS ) )
             // InternalOCLinEcore.g:8853:1: (lv_ownedInExpression_5_0= ruleExpCS )
@@ -25761,9 +25761,9 @@
             // InternalOCLinEcore.g:8854:3: lv_ownedInExpression_5_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedInExpression_5_0=ruleExpCS();
@@ -25776,12 +25776,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedInExpression",
-                      		lv_ownedInExpression_5_0, 
+                      		lv_ownedInExpression_5_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -25796,14 +25796,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25824,7 +25824,7 @@
             // InternalOCLinEcore.g:8880:2: iv_ruleLetVariableCS= ruleLetVariableCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLetVariableCSRule()); 
+               newCompositeNode(grammarAccess.getLetVariableCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLetVariableCS=ruleLetVariableCS();
@@ -25832,18 +25832,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLetVariableCS; 
+               current =iv_ruleLetVariableCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25867,8 +25867,8 @@
         EObject lv_ownedInitExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:8890:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) ) )
             // InternalOCLinEcore.g:8891:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )
@@ -25883,9 +25883,9 @@
             // InternalOCLinEcore.g:8893:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_122);
             lv_name_0_0=ruleUnrestrictedName();
@@ -25898,12 +25898,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -25926,9 +25926,9 @@
                     // InternalOCLinEcore.g:8911:3: lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_104);
                     lv_ownedRoundBracketedClause_1_0=ruleRoundBracketedClauseCS();
@@ -25941,12 +25941,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRoundBracketedClause",
-                              		lv_ownedRoundBracketedClause_1_0, 
+                              		lv_ownedRoundBracketedClause_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -25972,7 +25972,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:8931:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalOCLinEcore.g:8932:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -25981,9 +25981,9 @@
                     // InternalOCLinEcore.g:8933:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_42);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -25996,12 +25996,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -26019,7 +26019,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
-                  
+
             }
             // InternalOCLinEcore.g:8953:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
             // InternalOCLinEcore.g:8954:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -26028,9 +26028,9 @@
             // InternalOCLinEcore.g:8955:3: lv_ownedInitExpression_5_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -26043,12 +26043,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedInitExpression",
-                      		lv_ownedInitExpression_5_0, 
+                      		lv_ownedInitExpression_5_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -26063,14 +26063,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -26091,7 +26091,7 @@
             // InternalOCLinEcore.g:8981:2: iv_ruleNestedExpCS= ruleNestedExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNestedExpCSRule()); 
+               newCompositeNode(grammarAccess.getNestedExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNestedExpCS=ruleNestedExpCS();
@@ -26099,18 +26099,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNestedExpCS; 
+               current =iv_ruleNestedExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -26128,8 +26128,8 @@
         EObject lv_ownedExpression_1_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:8991:28: ( (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' ) )
             // InternalOCLinEcore.g:8992:1: (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' )
@@ -26141,7 +26141,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
-                  
+
             }
             // InternalOCLinEcore.g:8996:1: ( (lv_ownedExpression_1_0= ruleExpCS ) )
             // InternalOCLinEcore.g:8997:1: (lv_ownedExpression_1_0= ruleExpCS )
@@ -26150,9 +26150,9 @@
             // InternalOCLinEcore.g:8998:3: lv_ownedExpression_1_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_11);
             lv_ownedExpression_1_0=ruleExpCS();
@@ -26165,12 +26165,12 @@
               	            current = createModelElementForParent(grammarAccess.getNestedExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedExpression",
-                      		lv_ownedExpression_1_0, 
+                      		lv_ownedExpression_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -26182,7 +26182,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
-                  
+
             }
 
             }
@@ -26191,14 +26191,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -26219,7 +26219,7 @@
             // InternalOCLinEcore.g:9028:2: iv_ruleSelfExpCS= ruleSelfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getSelfExpCSRule()); 
+               newCompositeNode(grammarAccess.getSelfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleSelfExpCS=ruleSelfExpCS();
@@ -26227,18 +26227,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleSelfExpCS; 
+               current =iv_ruleSelfExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -26253,8 +26253,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9038:28: ( ( () otherlv_1= 'self' ) )
             // InternalOCLinEcore.g:9039:1: ( () otherlv_1= 'self' )
@@ -26263,19 +26263,19 @@
             // InternalOCLinEcore.g:9039:2: () otherlv_1= 'self'
             {
             // InternalOCLinEcore.g:9039:2: ()
-            // InternalOCLinEcore.g:9040:2: 
+            // InternalOCLinEcore.g:9040:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -26284,7 +26284,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
-                  
+
             }
 
             }
@@ -26293,14 +26293,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -26321,7 +26321,7 @@
             // InternalOCLinEcore.g:9062:2: iv_ruleMultiplicityBoundsCS= ruleMultiplicityBoundsCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS();
@@ -26329,18 +26329,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityBoundsCS; 
+               current =iv_ruleMultiplicityBoundsCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -26359,8 +26359,8 @@
         AntlrDatatypeRuleToken lv_upperBound_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9072:28: ( ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? ) )
             // InternalOCLinEcore.g:9073:1: ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? )
@@ -26375,9 +26375,9 @@
             // InternalOCLinEcore.g:9075:3: lv_lowerBound_0_0= ruleLOWER
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_98);
             lv_lowerBound_0_0=ruleLOWER();
@@ -26390,12 +26390,12 @@
               	            current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"lowerBound",
-                      		lv_lowerBound_0_0, 
+                      		lv_lowerBound_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.LOWER");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -26418,7 +26418,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:9095:1: ( (lv_upperBound_2_0= ruleUPPER ) )
                     // InternalOCLinEcore.g:9096:1: (lv_upperBound_2_0= ruleUPPER )
@@ -26427,9 +26427,9 @@
                     // InternalOCLinEcore.g:9097:3: lv_upperBound_2_0= ruleUPPER
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_upperBound_2_0=ruleUPPER();
@@ -26442,12 +26442,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"upperBound",
-                              		lv_upperBound_2_0, 
+                              		lv_upperBound_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.UPPER");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -26468,14 +26468,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -26496,7 +26496,7 @@
             // InternalOCLinEcore.g:9123:2: iv_ruleMultiplicityCS= ruleMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityCS=ruleMultiplicityCS();
@@ -26504,18 +26504,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityCS; 
+               current =iv_ruleMultiplicityCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -26537,8 +26537,8 @@
         EObject this_MultiplicityStringCS_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9133:28: ( (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' ) )
             // InternalOCLinEcore.g:9134:1: (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' )
@@ -26550,7 +26550,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
-                  
+
             }
             // InternalOCLinEcore.g:9138:1: (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS )
             int alt201=2;
@@ -26574,14 +26574,14 @@
                     // InternalOCLinEcore.g:9139:2: this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_125);
                     this_MultiplicityBoundsCS_1=ruleMultiplicityBoundsCS();
@@ -26589,10 +26589,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MultiplicityBoundsCS_1; 
+
+                              current = this_MultiplicityBoundsCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -26601,14 +26601,14 @@
                     // InternalOCLinEcore.g:9152:2: this_MultiplicityStringCS_2= ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_125);
                     this_MultiplicityStringCS_2=ruleMultiplicityStringCS();
@@ -26616,10 +26616,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MultiplicityStringCS_2; 
+
+                              current = this_MultiplicityStringCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -26645,7 +26645,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
-                          
+
                     }
 
                     }
@@ -26663,7 +26663,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isNullFree_4_0, grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -26671,7 +26671,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityCSRule());
                       	        }
                              		setWithLastConsumed(current, "isNullFree", true, "|1");
-                      	    
+
                     }
 
                     }
@@ -26689,7 +26689,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
-                  
+
             }
 
             }
@@ -26698,14 +26698,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -26726,7 +26726,7 @@
             // InternalOCLinEcore.g:9197:2: iv_ruleMultiplicityStringCS= ruleMultiplicityStringCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityStringCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityStringCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS();
@@ -26734,18 +26734,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityStringCS; 
+               current =iv_ruleMultiplicityStringCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -26762,8 +26762,8 @@
         Token lv_stringBounds_0_2=null;
         Token lv_stringBounds_0_3=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9207:28: ( ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) ) )
             // InternalOCLinEcore.g:9208:1: ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) )
@@ -26808,7 +26808,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_1, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -26816,7 +26816,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_1, null);
-                      	    
+
                     }
 
                     }
@@ -26828,7 +26828,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_2, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -26836,7 +26836,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_2, null);
-                      	    
+
                     }
 
                     }
@@ -26848,7 +26848,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_3, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -26856,7 +26856,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_3, null);
-                      	    
+
                     }
 
                     }
@@ -26874,14 +26874,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -26902,7 +26902,7 @@
             // InternalOCLinEcore.g:9260:2: iv_rulePathNameCS= rulePathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPathNameCSRule()); 
+               newCompositeNode(grammarAccess.getPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePathNameCS=rulePathNameCS();
@@ -26910,18 +26910,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePathNameCS; 
+               current =iv_rulePathNameCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -26940,8 +26940,8 @@
         EObject lv_ownedPathElements_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9270:28: ( ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) )
             // InternalOCLinEcore.g:9271:1: ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
@@ -26956,9 +26956,9 @@
             // InternalOCLinEcore.g:9273:3: lv_ownedPathElements_0_0= ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_90);
             lv_ownedPathElements_0_0=ruleFirstPathElementCS();
@@ -26971,12 +26971,12 @@
               	            current = createModelElementForParent(grammarAccess.getPathNameCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedPathElements",
-                      		lv_ownedPathElements_0_0, 
+                      		lv_ownedPathElements_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.FirstPathElementCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -27003,7 +27003,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
-            	          
+
             	    }
             	    // InternalOCLinEcore.g:9293:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
             	    // InternalOCLinEcore.g:9294:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
@@ -27012,9 +27012,9 @@
             	    // InternalOCLinEcore.g:9295:3: lv_ownedPathElements_2_0= ruleNextPathElementCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_90);
             	    lv_ownedPathElements_2_0=ruleNextPathElementCS();
@@ -27027,12 +27027,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getPathNameCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPathElements",
-            	              		lv_ownedPathElements_2_0, 
+            	              		lv_ownedPathElements_2_0,
             	              		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -27056,14 +27056,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -27084,7 +27084,7 @@
             // InternalOCLinEcore.g:9321:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getFirstPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleFirstPathElementCS=ruleFirstPathElementCS();
@@ -27092,18 +27092,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleFirstPathElementCS; 
+               current =iv_ruleFirstPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -27116,8 +27116,8 @@
     public final EObject ruleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9331:28: ( ( ( ruleUnrestrictedName ) ) )
             // InternalOCLinEcore.g:9332:1: ( ( ruleUnrestrictedName ) )
@@ -27129,21 +27129,21 @@
             // InternalOCLinEcore.g:9334:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getFirstPathElementCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -27151,9 +27151,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -27165,14 +27165,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -27193,7 +27193,7 @@
             // InternalOCLinEcore.g:9360:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNextPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getNextPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNextPathElementCS=ruleNextPathElementCS();
@@ -27201,18 +27201,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNextPathElementCS; 
+               current =iv_ruleNextPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -27225,8 +27225,8 @@
     public final EObject ruleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9370:28: ( ( ( ruleUnreservedName ) ) )
             // InternalOCLinEcore.g:9371:1: ( ( ruleUnreservedName ) )
@@ -27238,21 +27238,21 @@
             // InternalOCLinEcore.g:9373:3: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getNextPathElementCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnreservedName();
@@ -27260,9 +27260,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -27274,14 +27274,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -27302,7 +27302,7 @@
             // InternalOCLinEcore.g:9399:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTemplateBindingCSRule()); 
+               newCompositeNode(grammarAccess.getTemplateBindingCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTemplateBindingCS=ruleTemplateBindingCS();
@@ -27310,18 +27310,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTemplateBindingCS; 
+               current =iv_ruleTemplateBindingCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -27342,8 +27342,8 @@
         EObject lv_ownedMultiplicity_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9409:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
             // InternalOCLinEcore.g:9410:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
@@ -27358,9 +27358,9 @@
             // InternalOCLinEcore.g:9412:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_127);
             lv_ownedSubstitutions_0_0=ruleTemplateParameterSubstitutionCS();
@@ -27373,12 +27373,12 @@
               	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedSubstitutions",
-                      		lv_ownedSubstitutions_0_0, 
+                      		lv_ownedSubstitutions_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -27405,7 +27405,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
-            	          
+
             	    }
             	    // InternalOCLinEcore.g:9432:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
             	    // InternalOCLinEcore.g:9433:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
@@ -27414,9 +27414,9 @@
             	    // InternalOCLinEcore.g:9434:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_127);
             	    lv_ownedSubstitutions_2_0=ruleTemplateParameterSubstitutionCS();
@@ -27429,12 +27429,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedSubstitutions",
-            	              		lv_ownedSubstitutions_2_0, 
+            	              		lv_ownedSubstitutions_2_0,
             	              		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -27466,9 +27466,9 @@
                     // InternalOCLinEcore.g:9452:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_3_0=ruleMultiplicityCS();
@@ -27481,12 +27481,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_3_0, 
+                              		lv_ownedMultiplicity_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -27504,14 +27504,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -27532,7 +27532,7 @@
             // InternalOCLinEcore.g:9478:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS();
@@ -27540,18 +27540,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTemplateParameterSubstitutionCS; 
+               current =iv_ruleTemplateParameterSubstitutionCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -27567,8 +27567,8 @@
         EObject lv_ownedActualParameter_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9488:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
             // InternalOCLinEcore.g:9489:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
@@ -27580,9 +27580,9 @@
             // InternalOCLinEcore.g:9491:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedActualParameter_0_0=ruleTypeRefCS();
@@ -27595,12 +27595,12 @@
               	            current = createModelElementForParent(grammarAccess.getTemplateParameterSubstitutionCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedActualParameter",
-                      		lv_ownedActualParameter_0_0, 
+                      		lv_ownedActualParameter_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.TypeRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -27612,14 +27612,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -27640,7 +27640,7 @@
             // InternalOCLinEcore.g:9517:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeParameterCSRule()); 
+               newCompositeNode(grammarAccess.getTypeParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeParameterCS=ruleTypeParameterCS();
@@ -27648,18 +27648,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeParameterCS; 
+               current =iv_ruleTypeParameterCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -27681,8 +27681,8 @@
         EObject lv_ownedExtends_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9527:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
             // InternalOCLinEcore.g:9528:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
@@ -27697,9 +27697,9 @@
             // InternalOCLinEcore.g:9530:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_128);
             lv_name_0_0=ruleUnrestrictedName();
@@ -27712,12 +27712,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -27740,7 +27740,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:9550:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
                     // InternalOCLinEcore.g:9551:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
@@ -27749,9 +27749,9 @@
                     // InternalOCLinEcore.g:9552:3: lv_ownedExtends_2_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_129);
                     lv_ownedExtends_2_0=ruleTypedRefCS();
@@ -27764,12 +27764,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedExtends",
-                              		lv_ownedExtends_2_0, 
+                              		lv_ownedExtends_2_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -27796,7 +27796,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLinEcore.g:9572:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
                     	    // InternalOCLinEcore.g:9573:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
@@ -27805,9 +27805,9 @@
                     	    // InternalOCLinEcore.g:9574:3: lv_ownedExtends_4_0= ruleTypedRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_129);
                     	    lv_ownedExtends_4_0=ruleTypedRefCS();
@@ -27820,12 +27820,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedExtends",
-                    	              		lv_ownedExtends_4_0, 
+                    	              		lv_ownedExtends_4_0,
                     	              		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -27855,14 +27855,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -27883,7 +27883,7 @@
             // InternalOCLinEcore.g:9600:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeRefCS=ruleTypeRefCS();
@@ -27891,18 +27891,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeRefCS; 
+               current =iv_ruleTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -27920,8 +27920,8 @@
         EObject this_WildcardTypeRefCS_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9610:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
             // InternalOCLinEcore.g:9611:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
@@ -27948,14 +27948,14 @@
                     // InternalOCLinEcore.g:9612:2: this_TypedRefCS_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypedRefCS_0=ruleTypedRefCS();
@@ -27963,10 +27963,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypedRefCS_0; 
+
+                              current = this_TypedRefCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -27975,14 +27975,14 @@
                     // InternalOCLinEcore.g:9625:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_WildcardTypeRefCS_1=ruleWildcardTypeRefCS();
@@ -27990,10 +27990,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_WildcardTypeRefCS_1; 
+
+                              current = this_WildcardTypeRefCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -28005,14 +28005,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28033,7 +28033,7 @@
             // InternalOCLinEcore.g:9646:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getWildcardTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getWildcardTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS();
@@ -28041,18 +28041,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleWildcardTypeRefCS; 
+               current =iv_ruleWildcardTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28070,8 +28070,8 @@
         EObject lv_ownedExtends_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9656:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
             // InternalOCLinEcore.g:9657:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
@@ -28080,19 +28080,19 @@
             // InternalOCLinEcore.g:9657:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             {
             // InternalOCLinEcore.g:9657:2: ()
-            // InternalOCLinEcore.g:9658:2: 
+            // InternalOCLinEcore.g:9658:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -28101,7 +28101,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
-                  
+
             }
             // InternalOCLinEcore.g:9670:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             int alt210=2;
@@ -28118,7 +28118,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
-                          
+
                     }
                     // InternalOCLinEcore.g:9674:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
                     // InternalOCLinEcore.g:9675:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
@@ -28127,9 +28127,9 @@
                     // InternalOCLinEcore.g:9676:3: lv_ownedExtends_3_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedExtends_3_0=ruleTypedRefCS();
@@ -28142,12 +28142,12 @@
                       	            current = createModelElementForParent(grammarAccess.getWildcardTypeRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExtends",
-                              		lv_ownedExtends_3_0, 
+                              		lv_ownedExtends_3_0,
                               		"org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TypedRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -28168,14 +28168,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28196,7 +28196,7 @@
             // InternalOCLinEcore.g:9702:2: iv_ruleID= ruleID EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIDRule()); 
+               newCompositeNode(grammarAccess.getIDRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleID=ruleID();
@@ -28204,18 +28204,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleID.getText(); 
+               current =iv_ruleID.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28231,8 +28231,8 @@
         Token this_SIMPLE_ID_0=null;
         Token this_ESCAPED_ID_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9712:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
             // InternalOCLinEcore.g:9713:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
@@ -28262,12 +28262,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_SIMPLE_ID_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
-                          
+
+                          newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
+
                     }
 
                     }
@@ -28279,12 +28279,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_ESCAPED_ID_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
-                          
+
+                          newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
+
                     }
 
                     }
@@ -28296,14 +28296,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28324,7 +28324,7 @@
             // InternalOCLinEcore.g:9738:2: iv_ruleIdentifier= ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIdentifierRule()); 
+               newCompositeNode(grammarAccess.getIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleIdentifier=ruleIdentifier();
@@ -28332,18 +28332,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleIdentifier.getText(); 
+               current =iv_ruleIdentifier.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28359,16 +28359,16 @@
         AntlrDatatypeRuleToken this_ID_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9748:28: (this_ID_0= ruleID )
             // InternalOCLinEcore.g:9750:5: this_ID_0= ruleID
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_ID_0=ruleID();
@@ -28378,25 +28378,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_ID_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28417,7 +28417,7 @@
             // InternalOCLinEcore.g:9770:2: iv_ruleLOWER= ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLOWERRule()); 
+               newCompositeNode(grammarAccess.getLOWERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLOWER=ruleLOWER();
@@ -28425,18 +28425,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLOWER.getText(); 
+               current =iv_ruleLOWER.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28451,8 +28451,8 @@
 
         Token this_INT_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9780:28: (this_INT_0= RULE_INT )
             // InternalOCLinEcore.g:9781:5: this_INT_0= RULE_INT
@@ -28461,25 +28461,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_INT_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28500,7 +28500,7 @@
             // InternalOCLinEcore.g:9798:2: iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNUMBER_LITERALRule()); 
+               newCompositeNode(grammarAccess.getNUMBER_LITERALRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNUMBER_LITERAL=ruleNUMBER_LITERAL();
@@ -28508,18 +28508,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNUMBER_LITERAL.getText(); 
+               current =iv_ruleNUMBER_LITERAL.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28534,8 +28534,8 @@
 
         Token this_INT_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9808:28: (this_INT_0= RULE_INT )
             // InternalOCLinEcore.g:9809:5: this_INT_0= RULE_INT
@@ -28544,25 +28544,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_INT_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28583,7 +28583,7 @@
             // InternalOCLinEcore.g:9826:2: iv_ruleStringLiteral= ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getStringLiteralRule()); 
+               newCompositeNode(grammarAccess.getStringLiteralRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleStringLiteral=ruleStringLiteral();
@@ -28591,18 +28591,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleStringLiteral.getText(); 
+               current =iv_ruleStringLiteral.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28617,8 +28617,8 @@
 
         Token this_SINGLE_QUOTED_STRING_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9836:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
             // InternalOCLinEcore.g:9837:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
@@ -28627,25 +28627,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_SINGLE_QUOTED_STRING_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28666,7 +28666,7 @@
             // InternalOCLinEcore.g:9854:2: iv_ruleUPPER= ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUPPERRule()); 
+               newCompositeNode(grammarAccess.getUPPERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUPPER=ruleUPPER();
@@ -28674,18 +28674,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUPPER.getText(); 
+               current =iv_ruleUPPER.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28701,8 +28701,8 @@
         Token this_INT_0=null;
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9864:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
             // InternalOCLinEcore.g:9865:1: (this_INT_0= RULE_INT | kw= '*' )
@@ -28732,12 +28732,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_INT_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
-                          
+
+                          newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
+
                     }
 
                     }
@@ -28749,8 +28749,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
+
                     }
 
                     }
@@ -28762,14 +28762,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28790,7 +28790,7 @@
             // InternalOCLinEcore.g:9889:2: iv_ruleURI= ruleURI EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getURIRule()); 
+               newCompositeNode(grammarAccess.getURIRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleURI=ruleURI();
@@ -28798,18 +28798,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleURI.getText(); 
+               current =iv_ruleURI.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28824,8 +28824,8 @@
 
         Token this_SINGLE_QUOTED_STRING_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLinEcore.g:9899:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
             // InternalOCLinEcore.g:9900:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
@@ -28834,25 +28834,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_SINGLE_QUOTED_STRING_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -28860,7 +28860,7 @@
     // $ANTLR end "ruleURI"
 
     // $ANTLR start synpred304_InternalOCLinEcore
-    public final void synpred304_InternalOCLinEcore_fragment() throws RecognitionException {   
+    public final void synpred304_InternalOCLinEcore_fragment() throws RecognitionException {
         EObject this_TypeLiteralCS_1 = null;
 
 
@@ -28868,9 +28868,9 @@
         // InternalOCLinEcore.g:7247:2: this_TypeLiteralCS_1= ruleTypeLiteralCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_TypeLiteralCS_1=ruleTypeLiteralCS();
@@ -28883,7 +28883,7 @@
     // $ANTLR end synpred304_InternalOCLinEcore
 
     // $ANTLR start synpred307_InternalOCLinEcore
-    public final void synpred307_InternalOCLinEcore_fragment() throws RecognitionException {   
+    public final void synpred307_InternalOCLinEcore_fragment() throws RecognitionException {
         EObject this_PrefixedPrimaryExpCS_0 = null;
 
         AntlrDatatypeRuleToken lv_name_2_0 = null;
@@ -28898,9 +28898,9 @@
         // InternalOCLinEcore.g:7311:2: this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_106);
         this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS();
@@ -28919,12 +28919,12 @@
                 // InternalOCLinEcore.g:7322:2: () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) )
                 {
                 // InternalOCLinEcore.g:7322:2: ()
-                // InternalOCLinEcore.g:7323:2: 
+                // InternalOCLinEcore.g:7323:2:
                 {
                 if ( state.backtracking==0 ) {
-                   
-                  	  /* */ 
-                  	
+
+                  	  /* */
+
                 }
 
                 }
@@ -28936,9 +28936,9 @@
                 // InternalOCLinEcore.g:7333:3: lv_name_2_0= ruleBinaryOperatorName
                 {
                 if ( state.backtracking==0 ) {
-                   
-                  	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
-                  	    
+
+                  	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
+
                 }
                 pushFollow(FollowSets000.FOLLOW_99);
                 lv_name_2_0=ruleBinaryOperatorName();
@@ -28958,9 +28958,9 @@
                 // InternalOCLinEcore.g:7351:3: lv_ownedRight_3_0= ruleExpCS
                 {
                 if ( state.backtracking==0 ) {
-                   
-                  	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
-                  	    
+
+                  	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
+
                 }
                 pushFollow(FollowSets000.FOLLOW_2);
                 lv_ownedRight_3_0=ruleExpCS();
@@ -28988,7 +28988,7 @@
     // $ANTLR end synpred307_InternalOCLinEcore
 
     // $ANTLR start synpred314_InternalOCLinEcore
-    public final void synpred314_InternalOCLinEcore_fragment() throws RecognitionException {   
+    public final void synpred314_InternalOCLinEcore_fragment() throws RecognitionException {
         EObject this_TupleLiteralExpCS_4 = null;
 
 
@@ -28996,9 +28996,9 @@
         // InternalOCLinEcore.g:7612:2: this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS();
@@ -29011,7 +29011,7 @@
     // $ANTLR end synpred314_InternalOCLinEcore
 
     // $ANTLR start synpred315_InternalOCLinEcore
-    public final void synpred315_InternalOCLinEcore_fragment() throws RecognitionException {   
+    public final void synpred315_InternalOCLinEcore_fragment() throws RecognitionException {
         EObject this_MapLiteralExpCS_5 = null;
 
 
@@ -29019,9 +29019,9 @@
         // InternalOCLinEcore.g:7625:2: this_MapLiteralExpCS_5= ruleMapLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_MapLiteralExpCS_5=ruleMapLiteralExpCS();
@@ -29034,7 +29034,7 @@
     // $ANTLR end synpred315_InternalOCLinEcore
 
     // $ANTLR start synpred316_InternalOCLinEcore
-    public final void synpred316_InternalOCLinEcore_fragment() throws RecognitionException {   
+    public final void synpred316_InternalOCLinEcore_fragment() throws RecognitionException {
         EObject this_CollectionLiteralExpCS_6 = null;
 
 
@@ -29042,9 +29042,9 @@
         // InternalOCLinEcore.g:7638:2: this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS();
@@ -29057,7 +29057,7 @@
     // $ANTLR end synpred316_InternalOCLinEcore
 
     // $ANTLR start synpred318_InternalOCLinEcore
-    public final void synpred318_InternalOCLinEcore_fragment() throws RecognitionException {   
+    public final void synpred318_InternalOCLinEcore_fragment() throws RecognitionException {
         EObject this_TypeLiteralExpCS_8 = null;
 
 
@@ -29065,9 +29065,9 @@
         // InternalOCLinEcore.g:7664:2: this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS();
@@ -29584,10 +29584,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA165_52 = input.LA(1);
 
-                         
+
                         int index165_52 = input.index();
                         input.rewind();
                         s = -1;
@@ -29595,14 +29595,14 @@
 
                         else if ( (true) ) {s = 59;}
 
-                         
+
                         input.seek(index165_52);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA165_53 = input.LA(1);
 
-                         
+
                         int index165_53 = input.index();
                         input.rewind();
                         s = -1;
@@ -29610,14 +29610,14 @@
 
                         else if ( (true) ) {s = 59;}
 
-                         
+
                         input.seek(index165_53);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA165_54 = input.LA(1);
 
-                         
+
                         int index165_54 = input.index();
                         input.rewind();
                         s = -1;
@@ -29625,14 +29625,14 @@
 
                         else if ( (true) ) {s = 59;}
 
-                         
+
                         input.seek(index165_54);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA165_55 = input.LA(1);
 
-                         
+
                         int index165_55 = input.index();
                         input.rewind();
                         s = -1;
@@ -29640,14 +29640,14 @@
 
                         else if ( (true) ) {s = 59;}
 
-                         
+
                         input.seek(index165_55);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA165_56 = input.LA(1);
 
-                         
+
                         int index165_56 = input.index();
                         input.rewind();
                         s = -1;
@@ -29655,7 +29655,7 @@
 
                         else if ( (true) ) {s = 59;}
 
-                         
+
                         input.seek(index165_56);
                         if ( s>=0 ) return s;
                         break;
@@ -29775,10 +29775,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA168_1 = input.LA(1);
 
-                         
+
                         int index168_1 = input.index();
                         input.rewind();
                         s = -1;
@@ -29786,14 +29786,14 @@
 
                         else if ( (true) ) {s = 72;}
 
-                         
+
                         input.seek(index168_1);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA168_2 = input.LA(1);
 
-                         
+
                         int index168_2 = input.index();
                         input.rewind();
                         s = -1;
@@ -29801,7 +29801,7 @@
 
                         else if ( (true) ) {s = 72;}
 
-                         
+
                         input.seek(index168_2);
                         if ( s>=0 ) return s;
                         break;
@@ -29918,10 +29918,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA171_11 = input.LA(1);
 
-                         
+
                         int index171_11 = input.index();
                         input.rewind();
                         s = -1;
@@ -29929,14 +29929,14 @@
 
                         else if ( (synpred318_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index171_11);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA171_12 = input.LA(1);
 
-                         
+
                         int index171_12 = input.index();
                         input.rewind();
                         s = -1;
@@ -29944,14 +29944,14 @@
 
                         else if ( (synpred318_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index171_12);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA171_13 = input.LA(1);
 
-                         
+
                         int index171_13 = input.index();
                         input.rewind();
                         s = -1;
@@ -29959,14 +29959,14 @@
 
                         else if ( (synpred318_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index171_13);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA171_14 = input.LA(1);
 
-                         
+
                         int index171_14 = input.index();
                         input.rewind();
                         s = -1;
@@ -29974,14 +29974,14 @@
 
                         else if ( (synpred318_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index171_14);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA171_15 = input.LA(1);
 
-                         
+
                         int index171_15 = input.index();
                         input.rewind();
                         s = -1;
@@ -29989,14 +29989,14 @@
 
                         else if ( (synpred318_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index171_15);
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA171_16 = input.LA(1);
 
-                         
+
                         int index171_16 = input.index();
                         input.rewind();
                         s = -1;
@@ -30004,14 +30004,14 @@
 
                         else if ( (synpred318_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index171_16);
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA171_17 = input.LA(1);
 
-                         
+
                         int index171_17 = input.index();
                         input.rewind();
                         s = -1;
@@ -30019,7 +30019,7 @@
 
                         else if ( (synpred318_InternalOCLinEcore()) ) {s = 19;}
 
-                         
+
                         input.seek(index171_17);
                         if ( s>=0 ) return s;
                         break;
@@ -30100,9 +30100,9 @@
             return "8618:1: (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS )";
         }
     }
- 
 
-    
+
+
     private static class FollowSets000 {
         public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
         public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
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 8f96b3b..82a84a6 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
@@ -97,7 +97,7 @@
 
 	@Inject
 	private OCLinEcoreGrammarAccess grammarAccess;
-	
+
 	@Override
 	public void sequence(ISerializationContext context, EObject semanticObject) {
 		EPackage epackage = semanticObject.eClass().getEPackage();
@@ -107,86 +107,86 @@
 		if (epackage == BaseCSPackage.eINSTANCE)
 			switch (semanticObject.eClass().getClassifierID()) {
 			case BaseCSPackage.ANNOTATION_CS:
-				sequence_AnnotationCS(context, (AnnotationCS) semanticObject); 
-				return; 
+				sequence_AnnotationCS(context, (AnnotationCS) semanticObject);
+				return;
 			case BaseCSPackage.ATTRIBUTE_CS:
-				sequence_AttributeCS(context, (AttributeCS) semanticObject); 
-				return; 
+				sequence_AttributeCS(context, (AttributeCS) semanticObject);
+				return;
 			case BaseCSPackage.DATA_TYPE_CS:
-				sequence_DataTypeCS(context, (DataTypeCS) semanticObject); 
-				return; 
+				sequence_DataTypeCS(context, (DataTypeCS) semanticObject);
+				return;
 			case BaseCSPackage.DETAIL_CS:
-				sequence_DetailCS(context, (DetailCS) semanticObject); 
-				return; 
+				sequence_DetailCS(context, (DetailCS) semanticObject);
+				return;
 			case BaseCSPackage.DOCUMENTATION_CS:
-				sequence_DocumentationCS(context, (DocumentationCS) semanticObject); 
-				return; 
+				sequence_DocumentationCS(context, (DocumentationCS) semanticObject);
+				return;
 			case BaseCSPackage.ENUMERATION_CS:
-				sequence_EnumerationCS(context, (EnumerationCS) semanticObject); 
-				return; 
+				sequence_EnumerationCS(context, (EnumerationCS) semanticObject);
+				return;
 			case BaseCSPackage.ENUMERATION_LITERAL_CS:
-				sequence_EnumerationLiteralCS(context, (EnumerationLiteralCS) semanticObject); 
-				return; 
+				sequence_EnumerationLiteralCS(context, (EnumerationLiteralCS) semanticObject);
+				return;
 			case BaseCSPackage.IMPORT_CS:
-				sequence_ImportCS(context, (ImportCS) semanticObject); 
-				return; 
+				sequence_ImportCS(context, (ImportCS) semanticObject);
+				return;
 			case BaseCSPackage.MODEL_ELEMENT_REF_CS:
-				sequence_ModelElementRefCS(context, (ModelElementRefCS) semanticObject); 
-				return; 
+				sequence_ModelElementRefCS(context, (ModelElementRefCS) semanticObject);
+				return;
 			case BaseCSPackage.MULTIPLICITY_BOUNDS_CS:
 				if (rule == grammarAccess.getMultiplicityBoundsCSRule()) {
-					sequence_MultiplicityBoundsCS(context, (MultiplicityBoundsCS) semanticObject); 
-					return; 
+					sequence_MultiplicityBoundsCS(context, (MultiplicityBoundsCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getMultiplicityCSRule()) {
-					sequence_MultiplicityBoundsCS_MultiplicityCS(context, (MultiplicityBoundsCS) semanticObject); 
-					return; 
+					sequence_MultiplicityBoundsCS_MultiplicityCS(context, (MultiplicityBoundsCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.MULTIPLICITY_STRING_CS:
 				if (rule == grammarAccess.getMultiplicityCSRule()) {
-					sequence_MultiplicityCS_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject); 
-					return; 
+					sequence_MultiplicityCS_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getMultiplicityStringCSRule()) {
-					sequence_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject); 
-					return; 
+					sequence_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.OPERATION_CS:
-				sequence_OperationCS(context, (OperationCS) semanticObject); 
-				return; 
+				sequence_OperationCS(context, (OperationCS) semanticObject);
+				return;
 			case BaseCSPackage.PACKAGE_CS:
-				sequence_PackageCS(context, (PackageCS) semanticObject); 
-				return; 
+				sequence_PackageCS(context, (PackageCS) semanticObject);
+				return;
 			case BaseCSPackage.PARAMETER_CS:
-				sequence_ParameterCS(context, (ParameterCS) semanticObject); 
-				return; 
+				sequence_ParameterCS(context, (ParameterCS) semanticObject);
+				return;
 			case BaseCSPackage.PATH_ELEMENT_CS:
 				if (rule == grammarAccess.getFirstPathElementCSRule()) {
-					sequence_FirstPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_FirstPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNextPathElementCSRule()) {
-					sequence_NextPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_NextPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getURIFirstPathElementCSRule()) {
-					sequence_URIFirstPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_URIFirstPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PATH_ELEMENT_WITH_URICS:
-				sequence_URIFirstPathElementCS(context, (PathElementWithURICS) semanticObject); 
-				return; 
+				sequence_URIFirstPathElementCS(context, (PathElementWithURICS) semanticObject);
+				return;
 			case BaseCSPackage.PATH_NAME_CS:
 				if (rule == grammarAccess.getPathNameCSRule()) {
-					sequence_PathNameCS(context, (PathNameCS) semanticObject); 
-					return; 
+					sequence_PathNameCS(context, (PathNameCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getURIPathNameCSRule()) {
-					sequence_URIPathNameCS(context, (PathNameCS) semanticObject); 
-					return; 
+					sequence_URIPathNameCS(context, (PathNameCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PRIMITIVE_TYPE_REF_CS:
@@ -194,99 +194,99 @@
 						|| rule == grammarAccess.getPrimitiveTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()
 						|| rule == grammarAccess.getTypeRefCSRule()) {
-					sequence_PrimitiveTypeCS(context, (PrimitiveTypeRefCS) semanticObject); 
-					return; 
+					sequence_PrimitiveTypeCS(context, (PrimitiveTypeRefCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_PrimitiveTypeCS_TypeExpCS(context, (PrimitiveTypeRefCS) semanticObject); 
-					return; 
+					sequence_PrimitiveTypeCS_TypeExpCS(context, (PrimitiveTypeRefCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_PrimitiveTypeCS_TypeLiteralWithMultiplicityCS(context, (PrimitiveTypeRefCS) semanticObject); 
-					return; 
+					sequence_PrimitiveTypeCS_TypeLiteralWithMultiplicityCS(context, (PrimitiveTypeRefCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypedMultiplicityRefCSRule()) {
-					sequence_PrimitiveTypeCS_TypedMultiplicityRefCS(context, (PrimitiveTypeRefCS) semanticObject); 
-					return; 
+					sequence_PrimitiveTypeCS_TypedMultiplicityRefCS(context, (PrimitiveTypeRefCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.REFERENCE_CS:
-				sequence_ReferenceCS(context, (ReferenceCS) semanticObject); 
-				return; 
+				sequence_ReferenceCS(context, (ReferenceCS) semanticObject);
+				return;
 			case BaseCSPackage.STRUCTURED_CLASS_CS:
-				sequence_StructuredClassCS(context, (StructuredClassCS) semanticObject); 
-				return; 
+				sequence_StructuredClassCS(context, (StructuredClassCS) semanticObject);
+				return;
 			case BaseCSPackage.TEMPLATE_BINDING_CS:
-				sequence_TemplateBindingCS(context, (TemplateBindingCS) semanticObject); 
-				return; 
+				sequence_TemplateBindingCS(context, (TemplateBindingCS) semanticObject);
+				return;
 			case BaseCSPackage.TEMPLATE_PARAMETER_SUBSTITUTION_CS:
-				sequence_TemplateParameterSubstitutionCS(context, (TemplateParameterSubstitutionCS) semanticObject); 
-				return; 
+				sequence_TemplateParameterSubstitutionCS(context, (TemplateParameterSubstitutionCS) semanticObject);
+				return;
 			case BaseCSPackage.TEMPLATE_SIGNATURE_CS:
-				sequence_TemplateSignatureCS(context, (TemplateSignatureCS) semanticObject); 
-				return; 
+				sequence_TemplateSignatureCS(context, (TemplateSignatureCS) semanticObject);
+				return;
 			case BaseCSPackage.TUPLE_PART_CS:
-				sequence_TuplePartCS(context, (TuplePartCS) semanticObject); 
-				return; 
+				sequence_TuplePartCS(context, (TuplePartCS) semanticObject);
+				return;
 			case BaseCSPackage.TUPLE_TYPE_CS:
 				if (rule == grammarAccess.getTypedRefCSRule()
 						|| rule == grammarAccess.getTupleTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()
 						|| rule == grammarAccess.getTypeRefCSRule()) {
-					sequence_TupleTypeCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_TupleTypeCS_TypeExpCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS_TypeExpCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_TupleTypeCS_TypeLiteralWithMultiplicityCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS_TypeLiteralWithMultiplicityCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypedMultiplicityRefCSRule()) {
-					sequence_TupleTypeCS_TypedMultiplicityRefCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS_TypedMultiplicityRefCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.TYPE_PARAMETER_CS:
-				sequence_TypeParameterCS(context, (TypeParameterCS) semanticObject); 
-				return; 
+				sequence_TypeParameterCS(context, (TypeParameterCS) semanticObject);
+				return;
 			case BaseCSPackage.TYPED_TYPE_REF_CS:
 				if (rule == grammarAccess.getTypedMultiplicityRefCSRule()) {
-					sequence_TypedMultiplicityRefCS_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject); 
-					return; 
+					sequence_TypedMultiplicityRefCS_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypedRefCSRule()
 						|| rule == grammarAccess.getTypedTypeRefCSRule()
 						|| rule == grammarAccess.getTypeRefCSRule()) {
-					sequence_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject); 
-					return; 
+					sequence_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.WILDCARD_TYPE_REF_CS:
-				sequence_WildcardTypeRefCS(context, (WildcardTypeRefCS) semanticObject); 
-				return; 
+				sequence_WildcardTypeRefCS(context, (WildcardTypeRefCS) semanticObject);
+				return;
 			}
 		else if (epackage == EssentialOCLCSPackage.eINSTANCE)
 			switch (semanticObject.eClass().getClassifierID()) {
 			case EssentialOCLCSPackage.BOOLEAN_LITERAL_EXP_CS:
-				sequence_BooleanLiteralExpCS(context, (BooleanLiteralExpCS) semanticObject); 
-				return; 
+				sequence_BooleanLiteralExpCS(context, (BooleanLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.COLLECTION_LITERAL_EXP_CS:
-				sequence_CollectionLiteralExpCS(context, (CollectionLiteralExpCS) semanticObject); 
-				return; 
+				sequence_CollectionLiteralExpCS(context, (CollectionLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.COLLECTION_LITERAL_PART_CS:
-				sequence_CollectionLiteralPartCS(context, (CollectionLiteralPartCS) semanticObject); 
-				return; 
+				sequence_CollectionLiteralPartCS(context, (CollectionLiteralPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.COLLECTION_PATTERN_CS:
 				if (rule == grammarAccess.getCollectionPatternCSRule()) {
-					sequence_CollectionPatternCS(context, (CollectionPatternCS) semanticObject); 
-					return; 
+					sequence_CollectionPatternCS(context, (CollectionPatternCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_CollectionPatternCS_TypeExpCS(context, (CollectionPatternCS) semanticObject); 
-					return; 
+					sequence_CollectionPatternCS_TypeExpCS(context, (CollectionPatternCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.COLLECTION_TYPE_CS:
@@ -294,193 +294,193 @@
 						|| rule == grammarAccess.getCollectionTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()
 						|| rule == grammarAccess.getTypeRefCSRule()) {
-					sequence_CollectionTypeCS(context, (CollectionTypeCS) semanticObject); 
-					return; 
+					sequence_CollectionTypeCS(context, (CollectionTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_CollectionTypeCS_TypeExpCS(context, (CollectionTypeCS) semanticObject); 
-					return; 
+					sequence_CollectionTypeCS_TypeExpCS(context, (CollectionTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_CollectionTypeCS_TypeLiteralWithMultiplicityCS(context, (CollectionTypeCS) semanticObject); 
-					return; 
+					sequence_CollectionTypeCS_TypeLiteralWithMultiplicityCS(context, (CollectionTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypedMultiplicityRefCSRule()) {
-					sequence_CollectionTypeCS_TypedMultiplicityRefCS(context, (CollectionTypeCS) semanticObject); 
-					return; 
+					sequence_CollectionTypeCS_TypedMultiplicityRefCS(context, (CollectionTypeCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.CONTEXT_CS:
-				sequence_Model(context, (ContextCS) semanticObject); 
-				return; 
+				sequence_Model(context, (ContextCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.CURLY_BRACKETED_CLAUSE_CS:
-				sequence_CurlyBracketedClauseCS(context, (CurlyBracketedClauseCS) semanticObject); 
-				return; 
+				sequence_CurlyBracketedClauseCS(context, (CurlyBracketedClauseCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.EXP_SPECIFICATION_CS:
-				sequence_SpecificationCS(context, (ExpSpecificationCS) semanticObject); 
-				return; 
+				sequence_SpecificationCS(context, (ExpSpecificationCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.IF_EXP_CS:
-				sequence_IfExpCS(context, (IfExpCS) semanticObject); 
-				return; 
+				sequence_IfExpCS(context, (IfExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.IF_THEN_EXP_CS:
-				sequence_ElseIfThenExpCS(context, (IfThenExpCS) semanticObject); 
-				return; 
+				sequence_ElseIfThenExpCS(context, (IfThenExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.INFIX_EXP_CS:
-				sequence_ExpCS(context, (InfixExpCS) semanticObject); 
-				return; 
+				sequence_ExpCS(context, (InfixExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.INVALID_LITERAL_EXP_CS:
-				sequence_InvalidLiteralExpCS(context, (InvalidLiteralExpCS) semanticObject); 
-				return; 
+				sequence_InvalidLiteralExpCS(context, (InvalidLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.LAMBDA_LITERAL_EXP_CS:
-				sequence_LambdaLiteralExpCS(context, (LambdaLiteralExpCS) semanticObject); 
-				return; 
+				sequence_LambdaLiteralExpCS(context, (LambdaLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.LET_EXP_CS:
-				sequence_LetExpCS(context, (LetExpCS) semanticObject); 
-				return; 
+				sequence_LetExpCS(context, (LetExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.LET_VARIABLE_CS:
-				sequence_LetVariableCS(context, (LetVariableCS) semanticObject); 
-				return; 
+				sequence_LetVariableCS(context, (LetVariableCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.MAP_LITERAL_EXP_CS:
-				sequence_MapLiteralExpCS(context, (MapLiteralExpCS) semanticObject); 
-				return; 
+				sequence_MapLiteralExpCS(context, (MapLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.MAP_LITERAL_PART_CS:
-				sequence_MapLiteralPartCS(context, (MapLiteralPartCS) semanticObject); 
-				return; 
+				sequence_MapLiteralPartCS(context, (MapLiteralPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.MAP_TYPE_CS:
 				if (rule == grammarAccess.getTypedRefCSRule()
 						|| rule == grammarAccess.getMapTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()
 						|| rule == grammarAccess.getTypeRefCSRule()) {
-					sequence_MapTypeCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_MapTypeCS_TypeExpCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS_TypeExpCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_MapTypeCS_TypeLiteralWithMultiplicityCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS_TypeLiteralWithMultiplicityCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypedMultiplicityRefCSRule()) {
-					sequence_MapTypeCS_TypedMultiplicityRefCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS_TypedMultiplicityRefCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.NAME_EXP_CS:
-				sequence_NameExpCS(context, (NameExpCS) semanticObject); 
-				return; 
+				sequence_NameExpCS(context, (NameExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.NAVIGATING_ARG_CS:
 				if (rule == grammarAccess.getNavigatingArgCSRule()) {
-					sequence_NavigatingArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNavigatingBarArgCSRule()) {
-					sequence_NavigatingBarArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingBarArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNavigatingCommaArgCSRule()) {
-					sequence_NavigatingCommaArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingCommaArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNavigatingSemiArgCSRule()) {
-					sequence_NavigatingSemiArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingSemiArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.NESTED_EXP_CS:
-				sequence_NestedExpCS(context, (NestedExpCS) semanticObject); 
-				return; 
+				sequence_NestedExpCS(context, (NestedExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.NULL_LITERAL_EXP_CS:
-				sequence_NullLiteralExpCS(context, (NullLiteralExpCS) semanticObject); 
-				return; 
+				sequence_NullLiteralExpCS(context, (NullLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.NUMBER_LITERAL_EXP_CS:
-				sequence_NumberLiteralExpCS(context, (NumberLiteralExpCS) semanticObject); 
-				return; 
+				sequence_NumberLiteralExpCS(context, (NumberLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.PATTERN_EXP_CS:
-				sequence_PatternExpCS(context, (PatternExpCS) semanticObject); 
-				return; 
+				sequence_PatternExpCS(context, (PatternExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.PREFIX_EXP_CS:
 				if (rule == grammarAccess.getPrefixedLetExpCSRule()) {
-					sequence_PrefixedLetExpCS(context, (PrefixExpCS) semanticObject); 
-					return; 
+					sequence_PrefixedLetExpCS(context, (PrefixExpCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getExpCSRule()
 						|| rule == grammarAccess.getNavigatingArgExpCSRule()) {
-					sequence_PrefixedLetExpCS_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject); 
-					return; 
+					sequence_PrefixedLetExpCS_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject);
+					return;
 				}
 				else if (action == grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0()
 						|| rule == grammarAccess.getPrefixedPrimaryExpCSRule()) {
-					sequence_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject); 
-					return; 
+					sequence_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.ROUND_BRACKETED_CLAUSE_CS:
-				sequence_RoundBracketedClauseCS(context, (RoundBracketedClauseCS) semanticObject); 
-				return; 
+				sequence_RoundBracketedClauseCS(context, (RoundBracketedClauseCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.SELF_EXP_CS:
-				sequence_SelfExpCS(context, (SelfExpCS) semanticObject); 
-				return; 
+				sequence_SelfExpCS(context, (SelfExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.SHADOW_PART_CS:
-				sequence_ShadowPartCS(context, (ShadowPartCS) semanticObject); 
-				return; 
+				sequence_ShadowPartCS(context, (ShadowPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.SQUARE_BRACKETED_CLAUSE_CS:
-				sequence_SquareBracketedClauseCS(context, (SquareBracketedClauseCS) semanticObject); 
-				return; 
+				sequence_SquareBracketedClauseCS(context, (SquareBracketedClauseCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.STRING_LITERAL_EXP_CS:
-				sequence_StringLiteralExpCS(context, (StringLiteralExpCS) semanticObject); 
-				return; 
+				sequence_StringLiteralExpCS(context, (StringLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TUPLE_LITERAL_EXP_CS:
-				sequence_TupleLiteralExpCS(context, (TupleLiteralExpCS) semanticObject); 
-				return; 
+				sequence_TupleLiteralExpCS(context, (TupleLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TUPLE_LITERAL_PART_CS:
-				sequence_TupleLiteralPartCS(context, (TupleLiteralPartCS) semanticObject); 
-				return; 
+				sequence_TupleLiteralPartCS(context, (TupleLiteralPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TYPE_LITERAL_EXP_CS:
-				sequence_TypeLiteralExpCS(context, (TypeLiteralExpCS) semanticObject); 
-				return; 
+				sequence_TypeLiteralExpCS(context, (TypeLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TYPE_NAME_EXP_CS:
 				if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_TypeExpCS_TypeNameExpCS(context, (TypeNameExpCS) semanticObject); 
-					return; 
+					sequence_TypeExpCS_TypeNameExpCS(context, (TypeNameExpCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeNameExpCSRule()) {
-					sequence_TypeNameExpCS(context, (TypeNameExpCS) semanticObject); 
-					return; 
+					sequence_TypeNameExpCS(context, (TypeNameExpCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.UNLIMITED_NATURAL_LITERAL_EXP_CS:
-				sequence_UnlimitedNaturalLiteralExpCS(context, (UnlimitedNaturalLiteralExpCS) semanticObject); 
-				return; 
+				sequence_UnlimitedNaturalLiteralExpCS(context, (UnlimitedNaturalLiteralExpCS) semanticObject);
+				return;
 			}
 		else if (epackage == OCLinEcoreCSPackage.eINSTANCE)
 			switch (semanticObject.eClass().getClassifierID()) {
 			case OCLinEcoreCSPackage.OC_LIN_ECORE_CONSTRAINT_CS:
 				if (rule == grammarAccess.getInvariantConstraintCSRule()) {
-					sequence_InvariantConstraintCS(context, (OCLinEcoreConstraintCS) semanticObject); 
-					return; 
+					sequence_InvariantConstraintCS(context, (OCLinEcoreConstraintCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getPostconditionConstraintCSRule()) {
-					sequence_PostconditionConstraintCS(context, (OCLinEcoreConstraintCS) semanticObject); 
-					return; 
+					sequence_PostconditionConstraintCS(context, (OCLinEcoreConstraintCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getPreconditionConstraintCSRule()) {
-					sequence_PreconditionConstraintCS(context, (OCLinEcoreConstraintCS) semanticObject); 
-					return; 
+					sequence_PreconditionConstraintCS(context, (OCLinEcoreConstraintCS) semanticObject);
+					return;
 				}
 				else break;
 			case OCLinEcoreCSPackage.SYS_MLCS:
-				sequence_SysMLCS(context, (SysMLCS) semanticObject); 
-				return; 
+				sequence_SysMLCS(context, (SysMLCS) semanticObject);
+				return;
 			case OCLinEcoreCSPackage.TOP_LEVEL_CS:
-				sequence_TopLevelCS(context, (TopLevelCS) semanticObject); 
-				return; 
+				sequence_TopLevelCS(context, (TopLevelCS) semanticObject);
+				return;
 			}
 		if (errorAcceptor != null)
 			errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
 	}
-	
+
 	/**
 	 * Contexts:
 	 *     AnnotationCS returns AnnotationCS
@@ -488,17 +488,17 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         (name=UnrestrictedName | name=SINGLE_QUOTED_STRING)? 
-	 *         (ownedDetails+=DetailCS ownedDetails+=DetailCS*)? 
-	 *         ownedAnnotations+=AnnotationElementCS? 
+	 *         (name=UnrestrictedName | name=SINGLE_QUOTED_STRING)?
+	 *         (ownedDetails+=DetailCS ownedDetails+=DetailCS*)?
+	 *         ownedAnnotations+=AnnotationElementCS?
 	 *         ((ownedContents+=ModelElementCS | ownedReferences+=ModelElementRefCS)? ownedAnnotations+=AnnotationElementCS?)*
 	 *     )
 	 */
 	protected void sequence_AnnotationCS(ISerializationContext context, AnnotationCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     AttributeCS returns AttributeCS
@@ -507,37 +507,37 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         ((qualifiers+='static' qualifiers+='definition'?) | (qualifiers+='definition' qualifiers+='static'?))? 
-	 *         name=UnrestrictedName 
-	 *         ownedType=TypedMultiplicityRefCS? 
-	 *         default=SINGLE_QUOTED_STRING? 
+	 *         ((qualifiers+='static' qualifiers+='definition'?) | (qualifiers+='definition' qualifiers+='static'?))?
+	 *         name=UnrestrictedName
+	 *         ownedType=TypedMultiplicityRefCS?
+	 *         default=SINGLE_QUOTED_STRING?
 	 *         (
-	 *             qualifiers+='derived' | 
-	 *             qualifiers+='!derived' | 
-	 *             qualifiers+='id' | 
-	 *             qualifiers+='!id' | 
-	 *             qualifiers+='ordered' | 
-	 *             qualifiers+='!ordered' | 
-	 *             qualifiers+='readonly' | 
-	 *             qualifiers+='!readonly' | 
-	 *             qualifiers+='transient' | 
-	 *             qualifiers+='!transient' | 
-	 *             qualifiers+='unique' | 
-	 *             qualifiers+='!unique' | 
-	 *             qualifiers+='unsettable' | 
-	 *             qualifiers+='!unsettable' | 
-	 *             qualifiers+='volatile' | 
+	 *             qualifiers+='derived' |
+	 *             qualifiers+='!derived' |
+	 *             qualifiers+='id' |
+	 *             qualifiers+='!id' |
+	 *             qualifiers+='ordered' |
+	 *             qualifiers+='!ordered' |
+	 *             qualifiers+='readonly' |
+	 *             qualifiers+='!readonly' |
+	 *             qualifiers+='transient' |
+	 *             qualifiers+='!transient' |
+	 *             qualifiers+='unique' |
+	 *             qualifiers+='!unique' |
+	 *             qualifiers+='unsettable' |
+	 *             qualifiers+='!unsettable' |
+	 *             qualifiers+='volatile' |
 	 *             qualifiers+='!volatile'
-	 *         )* 
-	 *         ownedAnnotations+=AnnotationElementCS? 
+	 *         )*
+	 *         ownedAnnotations+=AnnotationElementCS?
 	 *         ((ownedDefaultExpressions+=SpecificationCS | ownedDefaultExpressions+=SpecificationCS)? ownedAnnotations+=AnnotationElementCS?)*
 	 *     )
 	 */
 	protected void sequence_AttributeCS(ISerializationContext context, AttributeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypedMultiplicityRefCS returns CollectionTypeCS
@@ -548,8 +548,8 @@
 	protected void sequence_CollectionTypeCS_TypedMultiplicityRefCS(ISerializationContext context, CollectionTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ClassCS returns DataTypeCS
@@ -558,35 +558,35 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         isPrimitive?='primitive'? 
-	 *         name=UnrestrictedName 
-	 *         ownedSignature=TemplateSignatureCS? 
-	 *         instanceClassName=SINGLE_QUOTED_STRING? 
-	 *         isSerializable?='serializable'? 
+	 *         isPrimitive?='primitive'?
+	 *         name=UnrestrictedName
+	 *         ownedSignature=TemplateSignatureCS?
+	 *         instanceClassName=SINGLE_QUOTED_STRING?
+	 *         isSerializable?='serializable'?
 	 *         (ownedAnnotations+=AnnotationElementCS | ownedConstraints+=InvariantConstraintCS)*
 	 *     )
 	 */
 	protected void sequence_DataTypeCS(ISerializationContext context, DataTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     DetailCS returns DetailCS
 	 *
 	 * Constraint:
 	 *     (
-	 *         (name=UnrestrictedName | name=SINGLE_QUOTED_STRING) 
-	 *         values+=SINGLE_QUOTED_STRING? 
+	 *         (name=UnrestrictedName | name=SINGLE_QUOTED_STRING)
+	 *         values+=SINGLE_QUOTED_STRING?
 	 *         (values+=ML_SINGLE_QUOTED_STRING? values+=SINGLE_QUOTED_STRING?)*
 	 *     )
 	 */
 	protected void sequence_DetailCS(ISerializationContext context, DetailCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     AnnotationElementCS returns DocumentationCS
@@ -598,8 +598,8 @@
 	protected void sequence_DocumentationCS(ISerializationContext context, DocumentationCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ClassCS returns EnumerationCS
@@ -608,18 +608,18 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         name=UnrestrictedName 
-	 *         ownedSignature=TemplateSignatureCS? 
-	 *         instanceClassName=SINGLE_QUOTED_STRING? 
-	 *         isSerializable?='serializable'? 
+	 *         name=UnrestrictedName
+	 *         ownedSignature=TemplateSignatureCS?
+	 *         instanceClassName=SINGLE_QUOTED_STRING?
+	 *         isSerializable?='serializable'?
 	 *         (ownedAnnotations+=AnnotationElementCS | ownedLiterals+=EnumerationLiteralCS | ownedConstraints+=InvariantConstraintCS)*
 	 *     )
 	 */
 	protected void sequence_EnumerationCS(ISerializationContext context, EnumerationCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     EnumerationLiteralCS returns EnumerationLiteralCS
@@ -631,8 +631,8 @@
 	protected void sequence_EnumerationLiteralCS(ISerializationContext context, EnumerationLiteralCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ImportCS returns ImportCS
@@ -643,25 +643,25 @@
 	protected void sequence_ImportCS(ISerializationContext context, ImportCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     InvariantConstraintCS returns OCLinEcoreConstraintCS
 	 *
 	 * Constraint:
 	 *     (
-	 *         isCallable?='callable'? 
-	 *         stereotype='invariant' 
-	 *         (name=UnrestrictedName ownedMessageSpecification=SpecificationCS?)? 
+	 *         isCallable?='callable'?
+	 *         stereotype='invariant'
+	 *         (name=UnrestrictedName ownedMessageSpecification=SpecificationCS?)?
 	 *         ownedSpecification=SpecificationCS?
 	 *     )
 	 */
 	protected void sequence_InvariantConstraintCS(ISerializationContext context, OCLinEcoreConstraintCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypedMultiplicityRefCS returns MapTypeCS
@@ -672,8 +672,8 @@
 	protected void sequence_MapTypeCS_TypedMultiplicityRefCS(ISerializationContext context, MapTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ModelElementRefCS returns ModelElementRefCS
@@ -690,8 +690,8 @@
 		feeder.accept(grammarAccess.getModelElementRefCSAccess().getOwnedPathNamePathNameCSParserRuleCall_1_0(), semanticObject.getOwnedPathName());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ModelElementCS returns OperationCS
@@ -699,29 +699,29 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         ((qualifiers+='static' qualifiers+='definition'?) | (qualifiers+='definition' qualifiers+='static'?))? 
-	 *         ownedSignature=TemplateSignatureCS? 
-	 *         name=UnrestrictedName 
-	 *         (ownedParameters+=ParameterCS ownedParameters+=ParameterCS*)? 
-	 *         ownedType=TypedMultiplicityRefCS? 
-	 *         (ownedExceptions+=TypedRefCS ownedExceptions+=TypedRefCS*)? 
-	 *         qualifiers+='derived'? 
+	 *         ((qualifiers+='static' qualifiers+='definition'?) | (qualifiers+='definition' qualifiers+='static'?))?
+	 *         ownedSignature=TemplateSignatureCS?
+	 *         name=UnrestrictedName
+	 *         (ownedParameters+=ParameterCS ownedParameters+=ParameterCS*)?
+	 *         ownedType=TypedMultiplicityRefCS?
+	 *         (ownedExceptions+=TypedRefCS ownedExceptions+=TypedRefCS*)?
+	 *         qualifiers+='derived'?
 	 *         (
 	 *             (
-	 *                 qualifiers+='!derived' | 
-	 *                 qualifiers+='ordered' | 
-	 *                 qualifiers+='!ordered' | 
-	 *                 qualifiers+='transient' | 
-	 *                 qualifiers+='!transient' | 
-	 *                 qualifiers+='unique' | 
+	 *                 qualifiers+='!derived' |
+	 *                 qualifiers+='ordered' |
+	 *                 qualifiers+='!ordered' |
+	 *                 qualifiers+='transient' |
+	 *                 qualifiers+='!transient' |
+	 *                 qualifiers+='unique' |
 	 *                 qualifiers+='!unique'
-	 *             )? 
+	 *             )?
 	 *             qualifiers+='derived'?
-	 *         )* 
+	 *         )*
 	 *         (
-	 *             ownedAnnotations+=AnnotationElementCS | 
-	 *             ownedPreconditions+=PreconditionConstraintCS | 
-	 *             ownedBodyExpressions+=SpecificationCS | 
+	 *             ownedAnnotations+=AnnotationElementCS |
+	 *             ownedPreconditions+=PreconditionConstraintCS |
+	 *             ownedBodyExpressions+=SpecificationCS |
 	 *             ownedPostconditions+=PostconditionConstraintCS
 	 *         )*
 	 *     )
@@ -729,8 +729,8 @@
 	protected void sequence_OperationCS(ISerializationContext context, OperationCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ModelElementCS returns PackageCS
@@ -738,34 +738,34 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         name=UnrestrictedName 
-	 *         nsPrefix=UnrestrictedName? 
-	 *         nsURI=URI? 
+	 *         name=UnrestrictedName
+	 *         nsPrefix=UnrestrictedName?
+	 *         nsURI=URI?
 	 *         (ownedAnnotations+=AnnotationElementCS | ownedPackages+=PackageCS | ownedClasses+=ClassCS)*
 	 *     )
 	 */
 	protected void sequence_PackageCS(ISerializationContext context, PackageCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ParameterCS returns ParameterCS
 	 *
 	 * Constraint:
 	 *     (
-	 *         name=UnrestrictedName 
-	 *         ownedType=TypedMultiplicityRefCS? 
-	 *         (qualifiers+='ordered' | qualifiers+='!ordered' | qualifiers+='unique' | qualifiers+='!unique')* 
+	 *         name=UnrestrictedName
+	 *         ownedType=TypedMultiplicityRefCS?
+	 *         (qualifiers+='ordered' | qualifiers+='!ordered' | qualifiers+='unique' | qualifiers+='!unique')*
 	 *         ownedAnnotations+=AnnotationElementCS*
 	 *     )
 	 */
 	protected void sequence_ParameterCS(ISerializationContext context, ParameterCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PostconditionConstraintCS returns OCLinEcoreConstraintCS
@@ -776,8 +776,8 @@
 	protected void sequence_PostconditionConstraintCS(ISerializationContext context, OCLinEcoreConstraintCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PreconditionConstraintCS returns OCLinEcoreConstraintCS
@@ -788,8 +788,8 @@
 	protected void sequence_PreconditionConstraintCS(ISerializationContext context, OCLinEcoreConstraintCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypedMultiplicityRefCS returns PrimitiveTypeRefCS
@@ -800,8 +800,8 @@
 	protected void sequence_PrimitiveTypeCS_TypedMultiplicityRefCS(ISerializationContext context, PrimitiveTypeRefCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ModelElementCS returns ReferenceCS
@@ -810,36 +810,36 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         ((qualifiers+='static' qualifiers+='definition'?) | (qualifiers+='definition' qualifiers+='static'?))? 
-	 *         name=UnrestrictedName 
-	 *         referredOpposite=[Property|UnrestrictedName]? 
-	 *         ownedType=TypedMultiplicityRefCS? 
-	 *         default=SINGLE_QUOTED_STRING? 
-	 *         qualifiers+='composes'? 
+	 *         ((qualifiers+='static' qualifiers+='definition'?) | (qualifiers+='definition' qualifiers+='static'?))?
+	 *         name=UnrestrictedName
+	 *         referredOpposite=[Property|UnrestrictedName]?
+	 *         ownedType=TypedMultiplicityRefCS?
+	 *         default=SINGLE_QUOTED_STRING?
+	 *         qualifiers+='composes'?
 	 *         (
 	 *             (
-	 *                 qualifiers+='!composes' | 
-	 *                 qualifiers+='derived' | 
-	 *                 qualifiers+='!derived' | 
-	 *                 qualifiers+='ordered' | 
-	 *                 qualifiers+='!ordered' | 
-	 *                 qualifiers+='readonly' | 
-	 *                 qualifiers+='!readonly' | 
-	 *                 qualifiers+='resolve' | 
-	 *                 qualifiers+='!resolve' | 
-	 *                 qualifiers+='transient' | 
-	 *                 qualifiers+='!transient' | 
-	 *                 qualifiers+='unique' | 
-	 *                 qualifiers+='!unique' | 
-	 *                 qualifiers+='unsettable' | 
-	 *                 qualifiers+='!unsettable' | 
-	 *                 qualifiers+='volatile' | 
+	 *                 qualifiers+='!composes' |
+	 *                 qualifiers+='derived' |
+	 *                 qualifiers+='!derived' |
+	 *                 qualifiers+='ordered' |
+	 *                 qualifiers+='!ordered' |
+	 *                 qualifiers+='readonly' |
+	 *                 qualifiers+='!readonly' |
+	 *                 qualifiers+='resolve' |
+	 *                 qualifiers+='!resolve' |
+	 *                 qualifiers+='transient' |
+	 *                 qualifiers+='!transient' |
+	 *                 qualifiers+='unique' |
+	 *                 qualifiers+='!unique' |
+	 *                 qualifiers+='unsettable' |
+	 *                 qualifiers+='!unsettable' |
+	 *                 qualifiers+='volatile' |
 	 *                 qualifiers+='!volatile'
-	 *             )? 
+	 *             )?
 	 *             qualifiers+='composes'?
-	 *         )* 
+	 *         )*
 	 *         (
-	 *             (ownedAnnotations+=AnnotationElementCS | ownedDefaultExpressions+=SpecificationCS | ownedDefaultExpressions+=SpecificationCS)? 
+	 *             (ownedAnnotations+=AnnotationElementCS | ownedDefaultExpressions+=SpecificationCS | ownedDefaultExpressions+=SpecificationCS)?
 	 *             (referredKeys+=[Property|UnrestrictedName] referredKeys+=[Property|UnrestrictedName]*)?
 	 *         )+
 	 *     )
@@ -847,8 +847,8 @@
 	protected void sequence_ReferenceCS(ISerializationContext context, ReferenceCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     SpecificationCS returns ExpSpecificationCS
@@ -859,8 +859,8 @@
 	protected void sequence_SpecificationCS(ISerializationContext context, ExpSpecificationCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ClassCS returns StructuredClassCS
@@ -869,20 +869,20 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         isAbstract?='abstract'? 
-	 *         name=UnrestrictedName 
-	 *         ownedSignature=TemplateSignatureCS? 
-	 *         (ownedSuperTypes+=TypedRefCS ownedSuperTypes+=TypedRefCS*)? 
-	 *         instanceClassName=SINGLE_QUOTED_STRING? 
-	 *         isInterface?='interface'? 
+	 *         isAbstract?='abstract'?
+	 *         name=UnrestrictedName
+	 *         ownedSignature=TemplateSignatureCS?
+	 *         (ownedSuperTypes+=TypedRefCS ownedSuperTypes+=TypedRefCS*)?
+	 *         instanceClassName=SINGLE_QUOTED_STRING?
+	 *         isInterface?='interface'?
 	 *         (ownedAnnotations+=AnnotationElementCS | ownedOperations+=OperationCS | ownedProperties+=StructuralFeatureCS | ownedConstraints+=InvariantConstraintCS)*
 	 *     )
 	 */
 	protected void sequence_StructuredClassCS(ISerializationContext context, StructuredClassCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     AnnotationElementCS returns SysMLCS
@@ -894,8 +894,8 @@
 	protected void sequence_SysMLCS(ISerializationContext context, SysMLCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TemplateSignatureCS returns TemplateSignatureCS
@@ -906,8 +906,8 @@
 	protected void sequence_TemplateSignatureCS(ISerializationContext context, TemplateSignatureCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TopLevelCS returns TopLevelCS
@@ -918,8 +918,8 @@
 	protected void sequence_TopLevelCS(ISerializationContext context, TopLevelCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypedMultiplicityRefCS returns TupleTypeCS
@@ -930,8 +930,8 @@
 	protected void sequence_TupleTypeCS_TypedMultiplicityRefCS(ISerializationContext context, TupleTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypedMultiplicityRefCS returns TypedTypeRefCS
@@ -942,8 +942,8 @@
 	protected void sequence_TypedMultiplicityRefCS_TypedTypeRefCS(ISerializationContext context, TypedTypeRefCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypedRefCS returns TypedTypeRefCS
@@ -956,6 +956,6 @@
 	protected void sequence_TypedTypeRefCS(ISerializationContext context, TypedTypeRefCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/serializer/AbstractOCLinEcoreSyntacticSequencer.java b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/serializer/AbstractOCLinEcoreSyntacticSequencer.java
index 443bd98..89d8e57 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/serializer/AbstractOCLinEcoreSyntacticSequencer.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/serializer/AbstractOCLinEcoreSyntacticSequencer.java
@@ -80,7 +80,7 @@
 	protected AbstractElementAlias match_StructuredClassCS___LeftCurlyBracketKeyword_6_0_RightCurlyBracketKeyword_6_2__q;
 	protected AbstractElementAlias match_TopLevelCS___ModuleKeyword_1_0_UnrestrictedNameParserRuleCall_1_1__q;
 	protected AbstractElementAlias match_TupleTypeCS___LeftParenthesisKeyword_1_0_RightParenthesisKeyword_1_2__q;
-	
+
 	@Inject
 	protected void init(IGrammarAccess access) {
 		grammarAccess = (OCLinEcoreGrammarAccess) access;
@@ -136,14 +136,14 @@
 		match_TopLevelCS___ModuleKeyword_1_0_UnrestrictedNameParserRuleCall_1_1__q = new GroupAlias(false, true, new TokenAlias(false, false, grammarAccess.getTopLevelCSAccess().getModuleKeyword_1_0()), new TokenAlias(false, false, grammarAccess.getTopLevelCSAccess().getUnrestrictedNameParserRuleCall_1_1()));
 		match_TupleTypeCS___LeftParenthesisKeyword_1_0_RightParenthesisKeyword_1_2__q = new GroupAlias(false, true, new TokenAlias(false, false, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()), new TokenAlias(false, false, grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()));
 	}
-	
+
 	@Override
 	protected String getUnassignedRuleCallToken(EObject semanticObject, RuleCall ruleCall, INode node) {
 		if (ruleCall.getRule() == grammarAccess.getUnrestrictedNameRule())
 			return getUnrestrictedNameToken(semanticObject, ruleCall, node);
 		return "";
 	}
-	
+
 	/**
 	 * UnrestrictedName returns ecore::EString:
 	 * 	EnumerationLiteralName
@@ -160,7 +160,7 @@
 			return getTokenText(node);
 		return "";
 	}
-	
+
 	@Override
 	protected void emitUnassignedTokens(EObject semanticObject, ISynTransition transition, INode fromNode, INode toNode) {
 		if (transition.getAmbiguousSyntaxes().isEmpty()) return;
@@ -279,387 +279,387 @@
 	 *
 	 * This ambiguous syntax occurs at:
 	 *     (
-	 *         qualifiers+='!derived' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!derived'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!derived' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!derived'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!id' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!id'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!id' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!id'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!ordered' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!ordered'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!ordered' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!ordered'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!readonly' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!readonly'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!readonly' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!readonly'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!transient' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!transient'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!transient' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!transient'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unique' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!unique'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unique' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!unique'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unsettable' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!unsettable'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unsettable' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!unsettable'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!volatile' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!volatile'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!volatile' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!volatile'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='derived' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='derived'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='derived' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='derived'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='id' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='id'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='id' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='id'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='ordered' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='ordered'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='ordered' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='ordered'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='readonly' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='readonly'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='readonly' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='readonly'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='transient' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='transient'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='transient' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='transient'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unique' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='unique'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unique' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='unique'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unsettable' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='unsettable'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unsettable' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='unsettable'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='volatile' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='volatile'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='volatile' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='volatile'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     qualifiers+='!derived' (ambiguity) '}' '{' (('initial' UnrestrictedName? ':' ';') | ('derivation' UnrestrictedName? ':' ';'))* ownedAnnotations+=AnnotationElementCS
@@ -970,7 +970,7 @@
 	protected void emit_AttributeCS_CommaKeyword_5_1_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('{' (('initial' UnrestrictedName? ':' ';') | ('derivation' UnrestrictedName? ':' ';'))* '}') | ';'
@@ -999,489 +999,489 @@
 	protected void emit_AttributeCS_SemicolonKeyword_6_1_or___LeftCurlyBracketKeyword_6_0_0_____DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2_SemicolonKeyword_6_0_1_2_4___or___InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2_SemicolonKeyword_6_0_1_1_4____a_RightCurlyBracketKeyword_6_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     UnrestrictedName?
 	 *
 	 * This ambiguous syntax occurs at:
 	 *     (
-	 *         default=SINGLE_QUOTED_STRING 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         default=SINGLE_QUOTED_STRING
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         name=UnrestrictedName 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         name=UnrestrictedName
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         ownedAnnotations+=AnnotationElementCS 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         ownedAnnotations+=AnnotationElementCS
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         ownedType=TypedMultiplicityRefCS 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         ownedType=TypedMultiplicityRefCS
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!derived' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!derived'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!id' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!id'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!ordered' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!ordered'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!readonly' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!readonly'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!transient' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!transient'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unique' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!unique'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unsettable' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!unsettable'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!volatile' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!volatile'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='derived' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='derived'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='id' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='id'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='ordered' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='ordered'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='readonly' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='readonly'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='transient' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='transient'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unique' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='unique'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unsettable' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='unsettable'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='volatile' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='volatile'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 */
 	protected void emit_AttributeCS_UnrestrictedNameParserRuleCall_6_0_1_1_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     UnrestrictedName?
 	 *
 	 * This ambiguous syntax occurs at:
 	 *     (
-	 *         default=SINGLE_QUOTED_STRING 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         default=SINGLE_QUOTED_STRING
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         name=UnrestrictedName 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         name=UnrestrictedName
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         ownedAnnotations+=AnnotationElementCS 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         ownedAnnotations+=AnnotationElementCS
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         ownedType=TypedMultiplicityRefCS 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         ownedType=TypedMultiplicityRefCS
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!derived' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!derived'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!id' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!id'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!ordered' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!ordered'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!readonly' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!readonly'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!transient' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!transient'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unique' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!unique'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unsettable' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!unsettable'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!volatile' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!volatile'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='derived' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='derived'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='id' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='id'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='ordered' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='ordered'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='readonly' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='readonly'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='transient' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='transient'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unique' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='unique'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unsettable' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='unsettable'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='volatile' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='volatile'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 */
 	protected void emit_AttributeCS_UnrestrictedNameParserRuleCall_6_0_1_2_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('derivation' UnrestrictedName? ':' ';' ('initial' UnrestrictedName? ':' ';')*)*
@@ -1493,7 +1493,7 @@
 	protected void emit_AttributeCS___DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2_SemicolonKeyword_6_0_1_2_4___InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2_SemicolonKeyword_6_0_1_1_4__a__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('derivation' UnrestrictedName? ':' ';')*
@@ -1525,24 +1525,24 @@
 	protected void emit_AttributeCS___DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2_SemicolonKeyword_6_0_1_2_4__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (
-	  *         ('derivation' UnrestrictedName? ':' (';' 'derivation' UnrestrictedName? ':')*) | 
+	  *         ('derivation' UnrestrictedName? ':' (';' 'derivation' UnrestrictedName? ':')*) |
 	  *         (
-	  *             ('derivation' UnrestrictedName? ':' (';' 'derivation' UnrestrictedName? ':')* ';')? 
-	  *             ('initial' UnrestrictedName? ':' ';')+ 
-	  *             'derivation' 
-	  *             UnrestrictedName? 
-	  *             ':' 
-	  *             (';' 'derivation' UnrestrictedName? ':')* 
+	  *             ('derivation' UnrestrictedName? ':' (';' 'derivation' UnrestrictedName? ':')* ';')?
+	  *             ('initial' UnrestrictedName? ':' ';')+
+	  *             'derivation'
+	  *             UnrestrictedName?
+	  *             ':'
+	  *             (';' 'derivation' UnrestrictedName? ':')*
 	  *             (
-	  *                 ';' 
-	  *                 ('initial' UnrestrictedName? ':' ';')+ 
-	  *                 'derivation' 
-	  *                 UnrestrictedName? 
-	  *                 ':' 
+	  *                 ';'
+	  *                 ('initial' UnrestrictedName? ':' ';')+
+	  *                 'derivation'
+	  *                 UnrestrictedName?
+	  *                 ':'
 	  *                 (';' 'derivation' UnrestrictedName? ':')*
 	  *             )*
 	  *         )
@@ -1554,7 +1554,7 @@
 	protected void emit_AttributeCS___DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2___SemicolonKeyword_6_0_1_2_4_DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2__a___or_____DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2___SemicolonKeyword_6_0_1_2_4_DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2__a_SemicolonKeyword_6_0_1_2_4__q___InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2_SemicolonKeyword_6_0_1_1_4__p_DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2___SemicolonKeyword_6_0_1_2_4_DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2__a___SemicolonKeyword_6_0_1_2_4___InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2_SemicolonKeyword_6_0_1_1_4__p_DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2___SemicolonKeyword_6_0_1_2_4_DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2__a__a__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('initial' UnrestrictedName? ':' ';' ('derivation' UnrestrictedName? ':' ';')*)*
@@ -1566,7 +1566,7 @@
 	protected void emit_AttributeCS___InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2_SemicolonKeyword_6_0_1_1_4___DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2_SemicolonKeyword_6_0_1_2_4__a__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('initial' UnrestrictedName? ':' ';')*
@@ -1598,24 +1598,24 @@
 	protected void emit_AttributeCS___InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2_SemicolonKeyword_6_0_1_1_4__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (
-	  *         ('initial' UnrestrictedName? ':' (';' 'initial' UnrestrictedName? ':')*) | 
+	  *         ('initial' UnrestrictedName? ':' (';' 'initial' UnrestrictedName? ':')*) |
 	  *         (
-	  *             ('initial' UnrestrictedName? ':' (';' 'initial' UnrestrictedName? ':')* ';')? 
-	  *             ('derivation' UnrestrictedName? ':' ';')+ 
-	  *             'initial' 
-	  *             UnrestrictedName? 
-	  *             ':' 
-	  *             (';' 'initial' UnrestrictedName? ':')* 
+	  *             ('initial' UnrestrictedName? ':' (';' 'initial' UnrestrictedName? ':')* ';')?
+	  *             ('derivation' UnrestrictedName? ':' ';')+
+	  *             'initial'
+	  *             UnrestrictedName?
+	  *             ':'
+	  *             (';' 'initial' UnrestrictedName? ':')*
 	  *             (
-	  *                 ';' 
-	  *                 ('derivation' UnrestrictedName? ':' ';')+ 
-	  *                 'initial' 
-	  *                 UnrestrictedName? 
-	  *                 ':' 
+	  *                 ';'
+	  *                 ('derivation' UnrestrictedName? ':' ';')+
+	  *                 'initial'
+	  *                 UnrestrictedName?
+	  *                 ':'
 	  *                 (';' 'initial' UnrestrictedName? ':')*
 	  *             )*
 	  *         )
@@ -1627,7 +1627,7 @@
 	protected void emit_AttributeCS___InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2___SemicolonKeyword_6_0_1_1_4_InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2__a___or_____InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2___SemicolonKeyword_6_0_1_1_4_InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2__a_SemicolonKeyword_6_0_1_1_4__q___DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2_SemicolonKeyword_6_0_1_2_4__p_InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2___SemicolonKeyword_6_0_1_1_4_InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2__a___SemicolonKeyword_6_0_1_1_4___DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2_SemicolonKeyword_6_0_1_2_4__p_InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2___SemicolonKeyword_6_0_1_1_4_InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2__a__a__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
@@ -1657,7 +1657,7 @@
 	protected void emit_AttributeCS___SemicolonKeyword_6_0_1_1_4___DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2_SemicolonKeyword_6_0_1_2_4__a_InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')+
@@ -1668,7 +1668,7 @@
 	protected void emit_AttributeCS___SemicolonKeyword_6_0_1_1_4___DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2_SemicolonKeyword_6_0_1_2_4__a_InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2__p(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
@@ -1698,7 +1698,7 @@
 	protected void emit_AttributeCS___SemicolonKeyword_6_0_1_2_4___InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2_SemicolonKeyword_6_0_1_1_4__a_DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')+
@@ -1709,7 +1709,7 @@
 	protected void emit_AttributeCS___SemicolonKeyword_6_0_1_2_4___InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2_SemicolonKeyword_6_0_1_1_4__a_DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2__p(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (('initial' UnrestrictedName? ':' ';') | ('derivation' UnrestrictedName? ':' ';'))*
@@ -1740,7 +1740,7 @@
 	protected void emit_AttributeCS_____DerivationKeyword_6_0_1_2_0_UnrestrictedNameParserRuleCall_6_0_1_2_1_q_ColonKeyword_6_0_1_2_2_SemicolonKeyword_6_0_1_2_4___or___InitialKeyword_6_0_1_1_0_UnrestrictedNameParserRuleCall_6_0_1_1_1_q_ColonKeyword_6_0_1_1_2_SemicolonKeyword_6_0_1_1_4____a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ';' | ('{' '}')
@@ -1754,7 +1754,7 @@
 	protected void emit_DataTypeCS_SemicolonKeyword_6_1_or___LeftCurlyBracketKeyword_6_0_0_RightCurlyBracketKeyword_6_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('{' '!serializable'? '}')?
@@ -1776,7 +1776,7 @@
 	protected void emit_DataTypeCS___LeftCurlyBracketKeyword_5_0_SerializableKeyword_5_1_1_q_RightCurlyBracketKeyword_5_2__q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ';' | ('{' '}')
@@ -1790,7 +1790,7 @@
 	protected void emit_EnumerationCS_SemicolonKeyword_5_1_or___LeftCurlyBracketKeyword_5_0_0_RightCurlyBracketKeyword_5_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('{' '!serializable'? '}')?
@@ -1815,7 +1815,7 @@
 	protected void emit_EnumerationCS___LeftCurlyBracketKeyword_4_0_SerializableKeyword_4_1_1_q_RightCurlyBracketKeyword_4_2__q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('{' '}') | ';'
@@ -1828,7 +1828,7 @@
 	protected void emit_EnumerationLiteralCS_SemicolonKeyword_2_1_or___LeftCurlyBracketKeyword_2_0_0_RightCurlyBracketKeyword_2_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     'import' | 'library'
@@ -1840,7 +1840,7 @@
 	protected void emit_ImportCS_ImportKeyword_0_0_or_LibraryKeyword_0_1(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (':' ';') | ';'
@@ -1853,7 +1853,7 @@
 	protected void emit_InvariantConstraintCS_SemicolonKeyword_3_1_or___ColonKeyword_3_0_0_SemicolonKeyword_3_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     '|?'?
@@ -1868,7 +1868,7 @@
 	protected void emit_MultiplicityCS_VerticalLineQuestionMarkKeyword_2_0_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ','?
@@ -1990,7 +1990,7 @@
 	protected void emit_OperationCS_CommaKeyword_9_1_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ';' | ('{' ('body' UnrestrictedName? ':' ';')* '}')
@@ -2012,7 +2012,7 @@
 	protected void emit_OperationCS_SemicolonKeyword_10_1_or___LeftCurlyBracketKeyword_10_0_0___BodyKeyword_10_0_1_2_0_UnrestrictedNameParserRuleCall_10_0_1_2_1_q_ColonKeyword_10_0_1_2_2_SemicolonKeyword_10_0_1_2_4__a_RightCurlyBracketKeyword_10_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     UnrestrictedName?
@@ -2037,7 +2037,7 @@
 	protected void emit_OperationCS_UnrestrictedNameParserRuleCall_10_0_1_2_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('body' UnrestrictedName? ':' ';')*
@@ -2099,7 +2099,7 @@
 	protected void emit_OperationCS___BodyKeyword_10_0_1_2_0_UnrestrictedNameParserRuleCall_10_0_1_2_1_q_ColonKeyword_10_0_1_2_2_SemicolonKeyword_10_0_1_2_4__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (';' 'body' UnrestrictedName? ':')*
@@ -2124,7 +2124,7 @@
 	protected void emit_OperationCS___SemicolonKeyword_10_0_1_2_4_BodyKeyword_10_0_1_2_0_UnrestrictedNameParserRuleCall_10_0_1_2_1_q_ColonKeyword_10_0_1_2_2__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (';' 'body' UnrestrictedName? ':')+
@@ -2135,7 +2135,7 @@
 	protected void emit_OperationCS___SemicolonKeyword_10_0_1_2_4_BodyKeyword_10_0_1_2_0_UnrestrictedNameParserRuleCall_10_0_1_2_1_q_ColonKeyword_10_0_1_2_2__p(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ';' | ('{' '}')
@@ -2148,7 +2148,7 @@
 	protected void emit_PackageCS_SemicolonKeyword_4_1_or___LeftCurlyBracketKeyword_4_0_0_RightCurlyBracketKeyword_4_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ','?
@@ -2182,7 +2182,7 @@
 	protected void emit_ParameterCS_CommaKeyword_2_1_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('{' '}')?
@@ -2198,442 +2198,442 @@
 	protected void emit_ParameterCS___LeftCurlyBracketKeyword_3_0_RightCurlyBracketKeyword_3_2__q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ','?
 	 *
 	 * This ambiguous syntax occurs at:
 	 *     (
-	 *         qualifiers+='!composes' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!composes'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!composes' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!composes'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!derived' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!derived'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!derived' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!derived'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!ordered' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!ordered'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!ordered' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!ordered'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!readonly' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!readonly'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!readonly' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!readonly'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!resolve' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!resolve'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!resolve' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!resolve'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!transient' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!transient'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!transient' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!transient'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unique' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!unique'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unique' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!unique'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unsettable' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!unsettable'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unsettable' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!unsettable'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!volatile' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='!volatile'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!volatile' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='!volatile'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='composes' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='composes'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='composes' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='composes'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='derived' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='derived'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='derived' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='derived'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='ordered' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='ordered'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='ordered' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='ordered'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='readonly' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='readonly'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='readonly' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='readonly'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='resolve' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='resolve'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='resolve' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='resolve'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='transient' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='transient'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='transient' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='transient'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unique' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='unique'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unique' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='unique'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unsettable' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='unsettable'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unsettable' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='unsettable'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='volatile' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')* 
+	 *         qualifiers+='volatile'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='volatile' 
-	 *         (ambiguity) 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         UnrestrictedName? 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')* 
+	 *         qualifiers+='volatile'
+	 *         (ambiguity)
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         UnrestrictedName?
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     qualifiers+='!composes' (ambiguity) '}' '{' (('initial' UnrestrictedName? ':' ';') | ('derivation' UnrestrictedName? ':' ';'))* 'key' referredKeys+=[Property|UnrestrictedName]
@@ -3036,7 +3036,7 @@
 	protected void emit_ReferenceCS_CommaKeyword_6_1_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ';' | ('{' (('initial' UnrestrictedName? ':' ';') | ('derivation' UnrestrictedName? ':' ';'))* '}')
@@ -3068,577 +3068,577 @@
 	protected void emit_ReferenceCS_SemicolonKeyword_7_1_or___LeftCurlyBracketKeyword_7_0_0_____DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2_SemicolonKeyword_7_0_1_3_4___or___InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2_SemicolonKeyword_7_0_1_2_4____a_RightCurlyBracketKeyword_7_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     UnrestrictedName?
 	 *
 	 * This ambiguous syntax occurs at:
 	 *     (
-	 *         default=SINGLE_QUOTED_STRING 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         default=SINGLE_QUOTED_STRING
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         name=UnrestrictedName 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         name=UnrestrictedName
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         ownedAnnotations+=AnnotationElementCS 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         ownedAnnotations+=AnnotationElementCS
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         ownedType=TypedMultiplicityRefCS 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         ownedType=TypedMultiplicityRefCS
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!composes' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!composes'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!derived' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!derived'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!ordered' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!ordered'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!readonly' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!readonly'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!resolve' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!resolve'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!transient' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!transient'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unique' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!unique'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unsettable' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!unsettable'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!volatile' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='!volatile'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='composes' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='composes'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='derived' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='derived'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='ordered' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='ordered'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='readonly' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='readonly'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='resolve' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='resolve'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='transient' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='transient'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unique' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='unique'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unsettable' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='unsettable'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='volatile' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         qualifiers+='volatile'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         referredKeys+=[Property|UnrestrictedName] 
-	 *         ';' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         referredKeys+=[Property|UnrestrictedName]
+	 *         ';'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         referredOpposite=[Property|UnrestrictedName] 
-	 *         '{' 
-	 *         ('derivation' UnrestrictedName? ':' ';')* 
-	 *         'initial' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')* 
+	 *         referredOpposite=[Property|UnrestrictedName]
+	 *         '{'
+	 *         ('derivation' UnrestrictedName? ':' ';')*
+	 *         'initial'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 */
 	protected void emit_ReferenceCS_UnrestrictedNameParserRuleCall_7_0_1_2_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     UnrestrictedName?
 	 *
 	 * This ambiguous syntax occurs at:
 	 *     (
-	 *         default=SINGLE_QUOTED_STRING 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         default=SINGLE_QUOTED_STRING
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         name=UnrestrictedName 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         name=UnrestrictedName
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         ownedAnnotations+=AnnotationElementCS 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         ownedAnnotations+=AnnotationElementCS
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         ownedType=TypedMultiplicityRefCS 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         ownedType=TypedMultiplicityRefCS
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!composes' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!composes'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!derived' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!derived'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!ordered' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!ordered'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!readonly' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!readonly'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!resolve' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!resolve'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!transient' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!transient'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unique' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!unique'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!unsettable' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!unsettable'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='!volatile' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='!volatile'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='composes' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='composes'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='derived' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='derived'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='ordered' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='ordered'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='readonly' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='readonly'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='resolve' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='resolve'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='transient' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='transient'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unique' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='unique'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='unsettable' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='unsettable'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         qualifiers+='volatile' 
-	 *         ','? 
-	 *         '}' 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         qualifiers+='volatile'
+	 *         ','?
+	 *         '}'
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         referredKeys+=[Property|UnrestrictedName] 
-	 *         ';' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         referredKeys+=[Property|UnrestrictedName]
+	 *         ';'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 *     (
-	 *         referredOpposite=[Property|UnrestrictedName] 
-	 *         '{' 
-	 *         ('initial' UnrestrictedName? ':' ';')* 
-	 *         'derivation' 
-	 *         (ambiguity) 
-	 *         ':' 
-	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')* 
+	 *         referredOpposite=[Property|UnrestrictedName]
+	 *         '{'
+	 *         ('initial' UnrestrictedName? ':' ';')*
+	 *         'derivation'
+	 *         (ambiguity)
+	 *         ':'
+	 *         (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' (ambiguity) ':')*
 	 *         ownedDefaultExpressions+=SpecificationCS
 	 *     )
 	 */
 	protected void emit_ReferenceCS_UnrestrictedNameParserRuleCall_7_0_1_3_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('derivation' UnrestrictedName? ':' ';' ('initial' UnrestrictedName? ':' ';')*)*
@@ -3651,7 +3651,7 @@
 	protected void emit_ReferenceCS___DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2_SemicolonKeyword_7_0_1_3_4___InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2_SemicolonKeyword_7_0_1_2_4__a__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('derivation' UnrestrictedName? ':' ';')*
@@ -3688,24 +3688,24 @@
 	protected void emit_ReferenceCS___DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2_SemicolonKeyword_7_0_1_3_4__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (
-	  *         ('derivation' UnrestrictedName? ':' (';' 'derivation' UnrestrictedName? ':')*) | 
+	  *         ('derivation' UnrestrictedName? ':' (';' 'derivation' UnrestrictedName? ':')*) |
 	  *         (
-	  *             ('derivation' UnrestrictedName? ':' (';' 'derivation' UnrestrictedName? ':')* ';')? 
-	  *             ('initial' UnrestrictedName? ':' ';')+ 
-	  *             'derivation' 
-	  *             UnrestrictedName? 
-	  *             ':' 
-	  *             (';' 'derivation' UnrestrictedName? ':')* 
+	  *             ('derivation' UnrestrictedName? ':' (';' 'derivation' UnrestrictedName? ':')* ';')?
+	  *             ('initial' UnrestrictedName? ':' ';')+
+	  *             'derivation'
+	  *             UnrestrictedName?
+	  *             ':'
+	  *             (';' 'derivation' UnrestrictedName? ':')*
 	  *             (
-	  *                 ';' 
-	  *                 ('initial' UnrestrictedName? ':' ';')+ 
-	  *                 'derivation' 
-	  *                 UnrestrictedName? 
-	  *                 ':' 
+	  *                 ';'
+	  *                 ('initial' UnrestrictedName? ':' ';')+
+	  *                 'derivation'
+	  *                 UnrestrictedName?
+	  *                 ':'
 	  *                 (';' 'derivation' UnrestrictedName? ':')*
 	  *             )*
 	  *         )
@@ -3717,7 +3717,7 @@
 	protected void emit_ReferenceCS___DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2___SemicolonKeyword_7_0_1_3_4_DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2__a___or_____DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2___SemicolonKeyword_7_0_1_3_4_DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2__a_SemicolonKeyword_7_0_1_3_4__q___InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2_SemicolonKeyword_7_0_1_2_4__p_DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2___SemicolonKeyword_7_0_1_3_4_DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2__a___SemicolonKeyword_7_0_1_3_4___InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2_SemicolonKeyword_7_0_1_2_4__p_DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2___SemicolonKeyword_7_0_1_3_4_DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2__a__a__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('initial' UnrestrictedName? ':' ';' ('derivation' UnrestrictedName? ':' ';')*)*
@@ -3730,7 +3730,7 @@
 	protected void emit_ReferenceCS___InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2_SemicolonKeyword_7_0_1_2_4___DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2_SemicolonKeyword_7_0_1_3_4__a__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('initial' UnrestrictedName? ':' ';')*
@@ -3767,24 +3767,24 @@
 	protected void emit_ReferenceCS___InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2_SemicolonKeyword_7_0_1_2_4__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (
-	  *         ('initial' UnrestrictedName? ':' (';' 'initial' UnrestrictedName? ':')*) | 
+	  *         ('initial' UnrestrictedName? ':' (';' 'initial' UnrestrictedName? ':')*) |
 	  *         (
-	  *             ('initial' UnrestrictedName? ':' (';' 'initial' UnrestrictedName? ':')* ';')? 
-	  *             ('derivation' UnrestrictedName? ':' ';')+ 
-	  *             'initial' 
-	  *             UnrestrictedName? 
-	  *             ':' 
-	  *             (';' 'initial' UnrestrictedName? ':')* 
+	  *             ('initial' UnrestrictedName? ':' (';' 'initial' UnrestrictedName? ':')* ';')?
+	  *             ('derivation' UnrestrictedName? ':' ';')+
+	  *             'initial'
+	  *             UnrestrictedName?
+	  *             ':'
+	  *             (';' 'initial' UnrestrictedName? ':')*
 	  *             (
-	  *                 ';' 
-	  *                 ('derivation' UnrestrictedName? ':' ';')+ 
-	  *                 'initial' 
-	  *                 UnrestrictedName? 
-	  *                 ':' 
+	  *                 ';'
+	  *                 ('derivation' UnrestrictedName? ':' ';')+
+	  *                 'initial'
+	  *                 UnrestrictedName?
+	  *                 ':'
 	  *                 (';' 'initial' UnrestrictedName? ':')*
 	  *             )*
 	  *         )
@@ -3796,7 +3796,7 @@
 	protected void emit_ReferenceCS___InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2___SemicolonKeyword_7_0_1_2_4_InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2__a___or_____InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2___SemicolonKeyword_7_0_1_2_4_InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2__a_SemicolonKeyword_7_0_1_2_4__q___DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2_SemicolonKeyword_7_0_1_3_4__p_InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2___SemicolonKeyword_7_0_1_2_4_InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2__a___SemicolonKeyword_7_0_1_2_4___DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2_SemicolonKeyword_7_0_1_3_4__p_InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2___SemicolonKeyword_7_0_1_2_4_InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2__a__a__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')*
@@ -3830,7 +3830,7 @@
 	protected void emit_ReferenceCS___SemicolonKeyword_7_0_1_2_4___DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2_SemicolonKeyword_7_0_1_3_4__a_InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (';' ('derivation' UnrestrictedName? ':' ';')* 'initial' UnrestrictedName? ':')+
@@ -3841,7 +3841,7 @@
 	protected void emit_ReferenceCS___SemicolonKeyword_7_0_1_2_4___DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2_SemicolonKeyword_7_0_1_3_4__a_InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2__p(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')*
@@ -3875,7 +3875,7 @@
 	protected void emit_ReferenceCS___SemicolonKeyword_7_0_1_3_4___InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2_SemicolonKeyword_7_0_1_2_4__a_DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2__a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (';' ('initial' UnrestrictedName? ':' ';')* 'derivation' UnrestrictedName? ':')+
@@ -3886,7 +3886,7 @@
 	protected void emit_ReferenceCS___SemicolonKeyword_7_0_1_3_4___InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2_SemicolonKeyword_7_0_1_2_4__a_DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2__p(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (('initial' UnrestrictedName? ':' ';') | ('derivation' UnrestrictedName? ':' ';'))*
@@ -3946,7 +3946,7 @@
 	protected void emit_ReferenceCS_____DerivationKeyword_7_0_1_3_0_UnrestrictedNameParserRuleCall_7_0_1_3_1_q_ColonKeyword_7_0_1_3_2_SemicolonKeyword_7_0_1_3_4___or___InitialKeyword_7_0_1_2_0_UnrestrictedNameParserRuleCall_7_0_1_2_1_q_ColonKeyword_7_0_1_2_2_SemicolonKeyword_7_0_1_2_4____a(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ';' | ('{' '}')
@@ -3961,7 +3961,7 @@
 	protected void emit_StructuredClassCS_SemicolonKeyword_7_1_or___LeftCurlyBracketKeyword_7_0_0_RightCurlyBracketKeyword_7_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('{' '}')?
@@ -3995,7 +3995,7 @@
 	protected void emit_StructuredClassCS___LeftCurlyBracketKeyword_6_0_RightCurlyBracketKeyword_6_2__q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('module' UnrestrictedName)?
@@ -4008,7 +4008,7 @@
 	protected void emit_TopLevelCS___ModuleKeyword_1_0_UnrestrictedNameParserRuleCall_1_1__q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('(' ')')?
@@ -4020,5 +4020,5 @@
 	protected void emit_TupleTypeCS___LeftParenthesisKeyword_1_0_RightParenthesisKeyword_1_2__q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 }
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 0f15a0f..ef11495 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
@@ -24,8 +24,8 @@
 
 @Singleton
 public class OCLinEcoreGrammarAccess extends AbstractGrammarElementFinder {
-	
-	
+
+
 	public class TopLevelCSElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.TopLevelCS");
 		private final Group cGroup = (Group)rule.eContents().get(1);
@@ -37,10 +37,12 @@
 		private final RuleCall cOwnedImportsImportCSParserRuleCall_2_0 = (RuleCall)cOwnedImportsAssignment_2.eContents().get(0);
 		private final Assignment cOwnedPackagesAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cOwnedPackagesPackageCSParserRuleCall_3_0 = (RuleCall)cOwnedPackagesAssignment_3.eContents().get(0);
-		
+
 		////generate oclinEcore2 "http://www.eclipse.org/ocl/examples/xtext/oclinecore/OCLinEcore"
-		// TopLevelCS:
-		//	{TopLevelCS} ('module' UnrestrictedName)? ownedImports+=ImportCS* ownedPackages+=PackageCS*;
+		//TopLevelCS:
+		//	{TopLevelCS} ('module' UnrestrictedName)?
+		//	ownedImports+=ImportCS*
+		//	ownedPackages+=PackageCS*;
 		@Override public ParserRule getRule() { return rule; }
 
 		//{TopLevelCS} ('module' UnrestrictedName)? ownedImports+=ImportCS* ownedPackages+=PackageCS*
@@ -74,7 +76,7 @@
 	public class INTEGERElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.oclinecore.OCLinEcore.INTEGER");
 		private final RuleCall cINTTerminalRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//INTEGER ecore::EInt:
 		//	INT
 		@Override public ParserRule getRule() { return rule; }
@@ -88,7 +90,7 @@
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Keyword cHyphenMinusKeyword_0 = (Keyword)cGroup.eContents().get(0);
 		private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
-		
+
 		//SIGNED ecore::EInt:
 		//	'-'? INT
 		@Override public ParserRule getRule() { return rule; }
@@ -142,13 +144,44 @@
 		private final Keyword cUniqueKeyword_33 = (Keyword)cAlternatives.eContents().get(33);
 		private final Keyword cUnsettableKeyword_34 = (Keyword)cAlternatives.eContents().get(34);
 		private final Keyword cVolatileKeyword_35 = (Keyword)cAlternatives.eContents().get(35);
-		
+
 		//EnumerationLiteralName:
-		//	EssentialOCLUnrestrictedName | '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';
+		//	EssentialOCLUnrestrictedName
+		//	| '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';
 		@Override public ParserRule getRule() { return rule; }
 
 		//EssentialOCLUnrestrictedName | 'abstract' | 'attribute' | 'body' | 'callable' | 'class' | 'composes' | 'datatype' |
@@ -289,7 +322,7 @@
 		private final RuleCall cOwnedSpecificationSpecificationCSParserRuleCall_3_0_1_0 = (RuleCall)cOwnedSpecificationAssignment_3_0_1.eContents().get(0);
 		private final Keyword cSemicolonKeyword_3_0_2 = (Keyword)cGroup_3_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_3_1 = (Keyword)cAlternatives_3.eContents().get(1);
-		
+
 		//InvariantConstraintCS OCLinEcoreConstraintCS:
 		//	isCallable?='callable'? stereotype='invariant' (name=UnrestrictedName ('(' ownedMessageSpecification=SpecificationCS
 		//	')')?)? (':' ownedSpecification=SpecificationCS? ';' | ';')
@@ -374,7 +407,7 @@
 		private final Assignment cOwnedSpecificationAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cOwnedSpecificationSpecificationCSParserRuleCall_3_0 = (RuleCall)cOwnedSpecificationAssignment_3.eContents().get(0);
 		private final Keyword cSemicolonKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//PostconditionConstraintCS OCLinEcoreConstraintCS:
 		//	stereotype='postcondition' (name=UnrestrictedName ('(' ownedMessageSpecification=SpecificationCS ')')?)? ':'
 		//	ownedSpecification=SpecificationCS? ';'
@@ -444,7 +477,7 @@
 		private final Assignment cOwnedSpecificationAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cOwnedSpecificationSpecificationCSParserRuleCall_3_0 = (RuleCall)cOwnedSpecificationAssignment_3.eContents().get(0);
 		private final Keyword cSemicolonKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//PreconditionConstraintCS OCLinEcoreConstraintCS:
 		//	stereotype='precondition' (name=UnrestrictedName ('(' ownedMessageSpecification=SpecificationCS ')')?)? ':'
 		//	ownedSpecification=SpecificationCS? ';'
@@ -527,11 +560,12 @@
 		private final RuleCall cOwnedReferencesModelElementRefCSParserRuleCall_4_0_1_2_0 = (RuleCall)cOwnedReferencesAssignment_4_0_1_2.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_4_0_2 = (Keyword)cGroup_4_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_4_1 = (Keyword)cAlternatives_4.eContents().get(1);
-		
+
 		//AnnotationCS base::AnnotationCS:
 		//	{base::AnnotationCS} 'annotation' name=(UnrestrictedName | SINGLE_QUOTED_STRING)? ('(' ownedDetails+=DetailCS (','
-		//	ownedDetails+=DetailCS)* ')')? ('{' (ownedAnnotations+=AnnotationElementCS | ownedContents+=ModelElementCS |
-		//	ownedReferences+=ModelElementRefCS)+ '}' | ';')
+		//	ownedDetails+=DetailCS)* ')')? ('{' (ownedAnnotations+=AnnotationElementCS
+		//	| ownedContents+=ModelElementCS
+		//	| ownedReferences+=ModelElementRefCS)+ '}' | ';')
 		@Override public ParserRule getRule() { return rule; }
 
 		//{base::AnnotationCS} 'annotation' name=(UnrestrictedName | SINGLE_QUOTED_STRING)? ('(' ownedDetails+=DetailCS (','
@@ -628,7 +662,7 @@
 		private final RuleCall cAnnotationCSParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cDocumentationCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
 		private final RuleCall cSysMLCSParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
-		
+
 		//AnnotationElementCS base::AnnotationElementCS:
 		//	AnnotationCS | DocumentationCS | SysMLCS
 		@Override public ParserRule getRule() { return rule; }
@@ -731,16 +765,17 @@
 		private final Keyword cSemicolonKeyword_6_0_1_2_4 = (Keyword)cGroup_6_0_1_2.eContents().get(4);
 		private final Keyword cRightCurlyBracketKeyword_6_0_2 = (Keyword)cGroup_6_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_6_1 = (Keyword)cAlternatives_6.eContents().get(1);
-		
+
 		//AttributeCS base::AttributeCS:
-		//	(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)? 'attribute'
-		//	name=UnrestrictedName (':' ownedType=TypedMultiplicityRefCS)? ('=' default=SINGLE_QUOTED_STRING)? ('{'
+		//	(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)?
+		//	'attribute' name=UnrestrictedName (':' ownedType=TypedMultiplicityRefCS)? ('=' default=SINGLE_QUOTED_STRING)? ('{'
 		//	((qualifiers+='derived' | qualifiers+='!derived' | qualifiers+='id' | qualifiers+='!id' | qualifiers+='ordered' |
 		//	qualifiers+='!ordered' | qualifiers+='readonly' | qualifiers+='!readonly' | qualifiers+='transient' |
 		//	qualifiers+='!transient' | qualifiers+='unique' | qualifiers+='!unique' | qualifiers+='unsettable' |
-		//	qualifiers+='!unsettable' | qualifiers+='volatile' | qualifiers+='!volatile') ','?)+ '}')? ('{'
-		//	(ownedAnnotations+=AnnotationElementCS | 'initial' UnrestrictedName? ':' ownedDefaultExpressions+=SpecificationCS?
-		//	';' | 'derivation' UnrestrictedName? ':' ownedDefaultExpressions+=SpecificationCS? ';')* '}' | ';')
+		//	qualifiers+='!unsettable' | qualifiers+='volatile' | qualifiers+='!volatile') ','?)+
+		//	'}')? ('{' (ownedAnnotations+=AnnotationElementCS
+		//	| 'initial' UnrestrictedName? ':' ownedDefaultExpressions+=SpecificationCS? ';' | 'derivation' UnrestrictedName? ':'
+		//	ownedDefaultExpressions+=SpecificationCS? ';')* '}' | ';')
 		@Override public ParserRule getRule() { return rule; }
 
 		//(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)? 'attribute'
@@ -1018,7 +1053,7 @@
 		private final RuleCall cStructuredClassCSParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cDataTypeCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
 		private final RuleCall cEnumerationCSParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
-		
+
 		//ClassCS base::ClassCS:
 		//	StructuredClassCS | DataTypeCS | EnumerationCS
 		@Override public ParserRule getRule() { return rule; }
@@ -1067,11 +1102,12 @@
 		private final RuleCall cOwnedConstraintsInvariantConstraintCSParserRuleCall_6_0_1_1_0 = (RuleCall)cOwnedConstraintsAssignment_6_0_1_1.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_6_0_2 = (Keyword)cGroup_6_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_6_1 = (Keyword)cAlternatives_6.eContents().get(1);
-		
+
 		//DataTypeCS base::DataTypeCS:
-		//	isPrimitive?='primitive'? 'datatype' name=UnrestrictedName ownedSignature=TemplateSignatureCS? (':'
-		//	instanceClassName=SINGLE_QUOTED_STRING)? ('{' (isSerializable?='serializable' | '!serializable')? '}')? ('{'
-		//	(ownedAnnotations+=AnnotationElementCS | ownedConstraints+=InvariantConstraintCS)* '}' | ';')
+		//	isPrimitive?='primitive'? 'datatype' name=UnrestrictedName
+		//	ownedSignature=TemplateSignatureCS? (':' instanceClassName=SINGLE_QUOTED_STRING)? ('{' (isSerializable?='serializable'
+		//	| '!serializable')? '}')? ('{' (ownedAnnotations+=AnnotationElementCS
+		//	| ownedConstraints+=InvariantConstraintCS)* '}' | ';')
 		@Override public ParserRule getRule() { return rule; }
 
 		//isPrimitive?='primitive'? 'datatype' name=UnrestrictedName ownedSignature=TemplateSignatureCS? (':'
@@ -1176,7 +1212,7 @@
 		private final Alternatives cValuesAlternatives_2_0 = (Alternatives)cValuesAssignment_2.eContents().get(0);
 		private final RuleCall cValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0 = (RuleCall)cValuesAlternatives_2_0.eContents().get(0);
 		private final RuleCall cValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1 = (RuleCall)cValuesAlternatives_2_0.eContents().get(1);
-		
+
 		//DetailCS base::DetailCS:
 		//	name=(UnrestrictedName | SINGLE_QUOTED_STRING) '=' values+=(SINGLE_QUOTED_STRING | ML_SINGLE_QUOTED_STRING)*
 		@Override public ParserRule getRule() { return rule; }
@@ -1229,10 +1265,11 @@
 		private final RuleCall cOwnedDetailsDetailCSParserRuleCall_3_2_1_0 = (RuleCall)cOwnedDetailsAssignment_3_2_1.eContents().get(0);
 		private final Keyword cRightParenthesisKeyword_3_3 = (Keyword)cGroup_3.eContents().get(3);
 		private final Keyword cSemicolonKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//DocumentationCS base::DocumentationCS:
 		//	{base::DocumentationCS} 'documentation' value=SINGLE_QUOTED_STRING? ('(' ownedDetails+=DetailCS (','
-		//	ownedDetails+=DetailCS)* ')')? ';'
+		//	ownedDetails+=DetailCS)* ')')?
+		//	';'
 		@Override public ParserRule getRule() { return rule; }
 
 		//{base::DocumentationCS} 'documentation' value=SINGLE_QUOTED_STRING? ('(' ownedDetails+=DetailCS (','
@@ -1313,11 +1350,13 @@
 		private final RuleCall cOwnedConstraintsInvariantConstraintCSParserRuleCall_5_0_1_2_0 = (RuleCall)cOwnedConstraintsAssignment_5_0_1_2.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_5_0_2 = (Keyword)cGroup_5_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_5_1 = (Keyword)cAlternatives_5.eContents().get(1);
-		
+
 		//EnumerationCS base::EnumerationCS:
-		//	'enum' name=UnrestrictedName ownedSignature=TemplateSignatureCS? (':' instanceClassName=SINGLE_QUOTED_STRING)? ('{'
-		//	(isSerializable?='serializable' | '!serializable')? '}')? ('{' (ownedAnnotations+=AnnotationElementCS |
-		//	ownedLiterals+=EnumerationLiteralCS | ownedConstraints+=InvariantConstraintCS)* '}' | ';')
+		//	'enum' name=UnrestrictedName
+		//	ownedSignature=TemplateSignatureCS? (':' instanceClassName=SINGLE_QUOTED_STRING)? ('{' (isSerializable?='serializable'
+		//	| '!serializable')? '}')? ('{' (ownedAnnotations+=AnnotationElementCS
+		//	| ownedLiterals+=EnumerationLiteralCS
+		//	| ownedConstraints+=InvariantConstraintCS)* '}' | ';')
 		@Override public ParserRule getRule() { return rule; }
 
 		//'enum' name=UnrestrictedName ownedSignature=TemplateSignatureCS? (':' instanceClassName=SINGLE_QUOTED_STRING)? ('{'
@@ -1433,7 +1472,7 @@
 		private final RuleCall cOwnedAnnotationsAnnotationElementCSParserRuleCall_2_0_1_0 = (RuleCall)cOwnedAnnotationsAssignment_2_0_1.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_2_0_2 = (Keyword)cGroup_2_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_2_1 = (Keyword)cAlternatives_2.eContents().get(1);
-		
+
 		//EnumerationLiteralCS base::EnumerationLiteralCS:
 		//	('literal' name=UnrestrictedName | name=EnumerationLiteralName) ('=' value=SIGNED)? ('{'
 		//	ownedAnnotations+=AnnotationElementCS* '}' | ';')
@@ -1513,7 +1552,7 @@
 		private final Assignment cIsAllAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final Keyword cIsAllColonColonAsteriskKeyword_3_0 = (Keyword)cIsAllAssignment_3.eContents().get(0);
 		private final Keyword cSemicolonKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//ImportCS base::ImportCS:
 		//	('import' | 'library') (name=UnrestrictedName ':')? ownedPathName=URIPathNameCS isAll?='::*'? ';'
 		@Override public ParserRule getRule() { return rule; }
@@ -1566,7 +1605,7 @@
 		private final RuleCall cOperationCSParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
 		private final RuleCall cPackageCSParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
 		private final RuleCall cStructuralFeatureCSParserRuleCall_4 = (RuleCall)cAlternatives.eContents().get(4);
-		
+
 		//ModelElementCS base::ModelElementCS:
 		//	ClassCS | EnumerationLiteralCS | OperationCS | PackageCS | StructuralFeatureCS
 		@Override public ParserRule getRule() { return rule; }
@@ -1597,7 +1636,7 @@
 		private final Assignment cOwnedPathNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final RuleCall cOwnedPathNamePathNameCSParserRuleCall_1_0 = (RuleCall)cOwnedPathNameAssignment_1.eContents().get(0);
 		private final Keyword cSemicolonKeyword_2 = (Keyword)cGroup.eContents().get(2);
-		
+
 		//ModelElementRefCS base::ModelElementRefCS:
 		//	'reference' ownedPathName=PathNameCS ';'
 		@Override public ParserRule getRule() { return rule; }
@@ -1699,22 +1738,24 @@
 		private final RuleCall cOwnedPostconditionsPostconditionConstraintCSParserRuleCall_10_0_1_3_0 = (RuleCall)cOwnedPostconditionsAssignment_10_0_1_3.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_10_0_2 = (Keyword)cGroup_10_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_10_1 = (Keyword)cAlternatives_10.eContents().get(1);
-		
+
 		//OperationCS base::OperationCS:
-		//	(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)? 'operation'
-		//	ownedSignature=TemplateSignatureCS? name=UnrestrictedName '(' (ownedParameters+=ParameterCS (','
-		//	ownedParameters+=ParameterCS)*)? ')' (':' ownedType=TypedMultiplicityRefCS)? ('throws' ownedExceptions+=TypedRefCS
-		//	(',' ownedExceptions+=TypedRefCS)*)? ('{' ((qualifiers+='derived' | qualifiers+='!derived' | qualifiers+='ordered' |
-		//	qualifiers+='!ordered' | qualifiers+='transient' | qualifiers+='!transient' | qualifiers+='unique' |
-		//	qualifiers+='!unique') ','?)+ '}')? ('{' (ownedAnnotations+=AnnotationElementCS |
-		//	ownedPreconditions+=PreconditionConstraintCS | 'body' UnrestrictedName? ':' ownedBodyExpressions+=SpecificationCS?
-		//	';' | ownedPostconditions+=PostconditionConstraintCS)* '}' | ';')
+		//	(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)?
+		//	'operation' ownedSignature=TemplateSignatureCS? name=UnrestrictedName
+		//	'(' (ownedParameters+=ParameterCS (',' ownedParameters+=ParameterCS)*)? ')' (':' ownedType=TypedMultiplicityRefCS)?
+		//	('throws' ownedExceptions+=TypedRefCS (',' ownedExceptions+=TypedRefCS)*)? ('{' ((qualifiers+='derived' |
+		//	qualifiers+='!derived' | qualifiers+='ordered' | qualifiers+='!ordered' | qualifiers+='transient' |
+		//	qualifiers+='!transient' | qualifiers+='unique' | qualifiers+='!unique') ','?)+
+		//	'}')? ('{' (ownedAnnotations+=AnnotationElementCS
+		//	| ownedPreconditions+=PreconditionConstraintCS
+		//	| 'body' UnrestrictedName? ':' ownedBodyExpressions+=SpecificationCS? ';' |
+		//	ownedPostconditions+=PostconditionConstraintCS)* '}' | ';')
 		@Override public ParserRule getRule() { return rule; }
 
 		//(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)? 'operation'
 		//ownedSignature=TemplateSignatureCS? name=UnrestrictedName '(' (ownedParameters+=ParameterCS (','
-		//ownedParameters+=ParameterCS)*)? ')' (':' ownedType=TypedMultiplicityRefCS)? ('throws' ownedExceptions+=TypedRefCS
-		//(',' ownedExceptions+=TypedRefCS)*)? ('{' ((qualifiers+='derived' | qualifiers+='!derived' | qualifiers+='ordered' |
+		//ownedParameters+=ParameterCS)*)? ')' (':' ownedType=TypedMultiplicityRefCS)? ('throws' ownedExceptions+=TypedRefCS (','
+		//ownedExceptions+=TypedRefCS)*)? ('{' ((qualifiers+='derived' | qualifiers+='!derived' | qualifiers+='ordered' |
 		//qualifiers+='!ordered' | qualifiers+='transient' | qualifiers+='!transient' | qualifiers+='unique' |
 		//qualifiers+='!unique') ','?)+ '}')? ('{' (ownedAnnotations+=AnnotationElementCS |
 		//ownedPreconditions+=PreconditionConstraintCS | 'body' UnrestrictedName? ':' ownedBodyExpressions+=SpecificationCS? ';'
@@ -1988,10 +2029,11 @@
 		private final RuleCall cOwnedClassesClassCSParserRuleCall_4_0_1_2_0 = (RuleCall)cOwnedClassesAssignment_4_0_1_2.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_4_0_2 = (Keyword)cGroup_4_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_4_1 = (Keyword)cAlternatives_4.eContents().get(1);
-		
+
 		//PackageCS base::PackageCS:
 		//	'package' name=UnrestrictedName (':' nsPrefix=UnrestrictedName)? ('=' nsURI=URI)? ('{'
-		//	(ownedAnnotations+=AnnotationElementCS | ownedPackages+=PackageCS | ownedClasses+=ClassCS)* '}' | ';')
+		//	(ownedAnnotations+=AnnotationElementCS | ownedPackages+=PackageCS | ownedClasses+=ClassCS)*
+		//	'}' | ';')
 		@Override public ParserRule getRule() { return rule; }
 
 		//'package' name=UnrestrictedName (':' nsPrefix=UnrestrictedName)? ('=' nsURI=URI)? ('{'
@@ -2096,10 +2138,11 @@
 		private final Assignment cOwnedAnnotationsAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
 		private final RuleCall cOwnedAnnotationsAnnotationElementCSParserRuleCall_3_1_0 = (RuleCall)cOwnedAnnotationsAssignment_3_1.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_3_2 = (Keyword)cGroup_3.eContents().get(2);
-		
+
 		//ParameterCS base::ParameterCS:
 		//	name=UnrestrictedName (':' ownedType=TypedMultiplicityRefCS)? ('{' ((qualifiers+='ordered' | qualifiers+='!ordered' |
-		//	qualifiers+='unique' | qualifiers+='!unique') ','?)+ '}')? ('{' ownedAnnotations+=AnnotationElementCS* '}')?
+		//	qualifiers+='unique' | qualifiers+='!unique') ','?)+
+		//	'}')? ('{' ownedAnnotations+=AnnotationElementCS* '}')?
 		@Override public ParserRule getRule() { return rule; }
 
 		//name=UnrestrictedName (':' ownedType=TypedMultiplicityRefCS)? ('{' ((qualifiers+='ordered' | qualifiers+='!ordered' |
@@ -2287,17 +2330,18 @@
 		private final Keyword cSemicolonKeyword_7_0_1_3_4 = (Keyword)cGroup_7_0_1_3.eContents().get(4);
 		private final Keyword cRightCurlyBracketKeyword_7_0_2 = (Keyword)cGroup_7_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_7_1 = (Keyword)cAlternatives_7.eContents().get(1);
-		
+
 		//ReferenceCS base::ReferenceCS:
-		//	(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)? 'property'
-		//	name=UnrestrictedName ('#' referredOpposite=[pivot::Property|UnrestrictedName])? (':'
+		//	(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)?
+		//	'property' name=UnrestrictedName ('#' referredOpposite=[pivot::Property|UnrestrictedName])? (':'
 		//	ownedType=TypedMultiplicityRefCS)? ('=' default=SINGLE_QUOTED_STRING)? ('{' ((qualifiers+='composes' |
 		//	qualifiers+='!composes' | qualifiers+='derived' | qualifiers+='!derived' | qualifiers+='ordered' |
 		//	qualifiers+='!ordered' | qualifiers+='readonly' | qualifiers+='!readonly' | qualifiers+='resolve' |
 		//	qualifiers+='!resolve' | qualifiers+='transient' | qualifiers+='!transient' | qualifiers+='unique' |
 		//	qualifiers+='!unique' | qualifiers+='unsettable' | qualifiers+='!unsettable' | qualifiers+='volatile' |
-		//	qualifiers+='!volatile') ','?)+ '}')? ('{' (ownedAnnotations+=AnnotationElementCS | 'key'
-		//	referredKeys+=[pivot::Property|UnrestrictedName] (',' referredKeys+=[pivot::Property|UnrestrictedName])* ';' |
+		//	qualifiers+='!volatile') ','?)+
+		//	'}')? ('{' (ownedAnnotations+=AnnotationElementCS
+		//	| 'key' referredKeys+=[pivot::Property|UnrestrictedName] (',' referredKeys+=[pivot::Property|UnrestrictedName])* ';' |
 		//	'initial' UnrestrictedName? ':' ownedDefaultExpressions+=SpecificationCS? ';' | 'derivation' UnrestrictedName? ':'
 		//	ownedDefaultExpressions+=SpecificationCS? ';')* '}' | ';')
 		@Override public ParserRule getRule() { return rule; }
@@ -2650,7 +2694,7 @@
 		private final RuleCall cOwnedExpressionExpCSParserRuleCall_0_0 = (RuleCall)cOwnedExpressionAssignment_0.eContents().get(0);
 		private final Assignment cExprStringAssignment_1 = (Assignment)cAlternatives.eContents().get(1);
 		private final RuleCall cExprStringUNQUOTED_STRINGTerminalRuleCall_1_0 = (RuleCall)cExprStringAssignment_1.eContents().get(0);
-		
+
 		//SpecificationCS essentialocl::ExpSpecificationCS:
 		//	ownedExpression=ExpCS | exprString=UNQUOTED_STRING
 		@Override public ParserRule getRule() { return rule; }
@@ -2712,12 +2756,16 @@
 		private final RuleCall cOwnedConstraintsInvariantConstraintCSParserRuleCall_7_0_1_3_0 = (RuleCall)cOwnedConstraintsAssignment_7_0_1_3.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_7_0_2 = (Keyword)cGroup_7_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_7_1 = (Keyword)cAlternatives_7.eContents().get(1);
-		
+
 		//StructuredClassCS base::StructuredClassCS:
-		//	isAbstract?='abstract'? 'class' name=UnrestrictedName ownedSignature=TemplateSignatureCS? ('extends'
-		//	ownedSuperTypes+=TypedRefCS (',' ownedSuperTypes+=TypedRefCS)*)? (':' instanceClassName=SINGLE_QUOTED_STRING)? ('{'
-		//	isInterface?='interface'? '}')? ('{' (ownedAnnotations+=AnnotationElementCS | ownedOperations+=OperationCS |
-		//	ownedProperties+=StructuralFeatureCS | ownedConstraints+=InvariantConstraintCS)* '}' | ';')
+		//	isAbstract?='abstract'?
+		//	'class' name=UnrestrictedName
+		//	ownedSignature=TemplateSignatureCS? ('extends' ownedSuperTypes+=TypedRefCS (',' ownedSuperTypes+=TypedRefCS)*)? (':'
+		//	instanceClassName=SINGLE_QUOTED_STRING)? ('{' isInterface?='interface'?
+		//	'}')? ('{' (ownedAnnotations+=AnnotationElementCS
+		//	| ownedOperations+=OperationCS
+		//	| ownedProperties+=StructuralFeatureCS
+		//	| ownedConstraints+=InvariantConstraintCS)* '}' | ';')
 		@Override public ParserRule getRule() { return rule; }
 
 		//isAbstract?='abstract'? 'class' name=UnrestrictedName ownedSignature=TemplateSignatureCS? ('extends'
@@ -2849,7 +2897,7 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final RuleCall cAttributeCSParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cReferenceCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		//StructuralFeatureCS base::StructuralFeatureCS:
 		//	AttributeCS | ReferenceCS
 		@Override public ParserRule getRule() { return rule; }
@@ -2881,7 +2929,7 @@
 		private final RuleCall cOwnedDetailsDetailCSParserRuleCall_2_1_1_0_0 = (RuleCall)cOwnedDetailsAssignment_2_1_1_0.eContents().get(0);
 		private final Keyword cSemicolonKeyword_2_1_1_1 = (Keyword)cGroup_2_1_1.eContents().get(1);
 		private final Keyword cRightCurlyBracketKeyword_2_1_2 = (Keyword)cGroup_2_1.eContents().get(2);
-		
+
 		//SysMLCS:
 		//	{SysMLCS} 'sysml' (ownedDetails+=DetailCS ';' | '{' (ownedDetails+=DetailCS ';')* '}');
 		@Override public ParserRule getRule() { return rule; }
@@ -2937,9 +2985,10 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final RuleCall cUnrestrictedNameParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cPrimitiveTypeIdentifierParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		//TypeIdentifier:
-		//	UnrestrictedName | PrimitiveTypeIdentifier;
+		//	UnrestrictedName
+		//	| PrimitiveTypeIdentifier;
 		@Override public ParserRule getRule() { return rule; }
 
 		//UnrestrictedName | PrimitiveTypeIdentifier
@@ -2958,7 +3007,7 @@
 		private final RuleCall cTypedRefCSParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0);
 		private final Assignment cOwnedMultiplicityAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final RuleCall cOwnedMultiplicityMultiplicityCSParserRuleCall_1_0 = (RuleCall)cOwnedMultiplicityAssignment_1.eContents().get(0);
-		
+
 		//TypedMultiplicityRefCS base::TypedRefCS:
 		//	TypedRefCS ownedMultiplicity=MultiplicityCS?
 		@Override public ParserRule getRule() { return rule; }
@@ -2997,13 +3046,11 @@
 		private final Assignment cOwnedParametersAssignment_1_2_1 = (Assignment)cGroup_1_2.eContents().get(1);
 		private final RuleCall cOwnedParametersTypeParameterCSParserRuleCall_1_2_1_0 = (RuleCall)cOwnedParametersAssignment_1_2_1.eContents().get(0);
 		private final Keyword cGreaterThanSignKeyword_1_3 = (Keyword)cGroup_1.eContents().get(3);
-		
+
 		////---------------------------------------------------------------------------------
-		// //	Base overrides
-		//
+		////	Base overrides
 		////---------------------------------------------------------------------------------
-		// TemplateSignatureCS
-		//base::TemplateSignatureCS:
+		//TemplateSignatureCS base::TemplateSignatureCS:
 		//	'(' ownedParameters+=TypeParameterCS (',' ownedParameters+=TypeParameterCS)* ')' | '<'
 		//	ownedParameters+=TypeParameterCS (',' ownedParameters+=TypeParameterCS)* '>'
 		@Override public ParserRule getRule() { return rule; }
@@ -3072,7 +3119,7 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final RuleCall cTypeLiteralCSParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cTypedTypeRefCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		//TypedRefCS base::TypedRefCS:
 		//	TypeLiteralCS | TypedTypeRefCS
 		@Override public ParserRule getRule() { return rule; }
@@ -3103,7 +3150,7 @@
 		private final Assignment cOwnedBindingAssignment_1_1_1 = (Assignment)cGroup_1_1.eContents().get(1);
 		private final RuleCall cOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0 = (RuleCall)cOwnedBindingAssignment_1_1_1.eContents().get(0);
 		private final Keyword cGreaterThanSignKeyword_1_1_2 = (Keyword)cGroup_1_1.eContents().get(2);
-		
+
 		//TypedTypeRefCS base::TypedTypeRefCS:
 		//	ownedPathName=PathNameCS ('(' ownedBinding=TemplateBindingCS ')' | '<' ownedBinding=TemplateBindingCS '>')?
 		@Override public ParserRule getRule() { return rule; }
@@ -3161,9 +3208,15 @@
 		private final Keyword cLiteralKeyword_4 = (Keyword)cAlternatives.eContents().get(4);
 		private final Keyword cSerializableKeyword_5 = (Keyword)cAlternatives.eContents().get(5);
 		private final Keyword cSysmlKeyword_6 = (Keyword)cAlternatives.eContents().get(6);
-		
+
 		//UnrestrictedName:
-		//	EnumerationLiteralName | 'annotation' | 'documentation' | 'invariant' | 'literal' | 'serializable' | 'sysml';
+		//	EnumerationLiteralName
+		//	| 'annotation'
+		//	| 'documentation'
+		//	| 'invariant'
+		//	| 'literal'
+		//	| 'serializable'
+		//	| 'sysml';
 		@Override public ParserRule getRule() { return rule; }
 
 		//EnumerationLiteralName | 'annotation' | 'documentation' | 'invariant' | 'literal' | 'serializable' | 'sysml'
@@ -3190,8 +3243,8 @@
 		//'sysml'
 		public Keyword getSysmlKeyword_6() { return cSysmlKeyword_6; }
 	}
-	
-	
+
+
 	private final TopLevelCSElements pTopLevelCS;
 	private final TerminalRule tUNQUOTED_STRING;
 	private final INTEGERElements pINTEGER;
@@ -3226,7 +3279,7 @@
 	private final TypedRefCSElements pTypedRefCS;
 	private final TypedTypeRefCSElements pTypedTypeRefCS;
 	private final UnrestrictedNameElements pUnrestrictedName;
-	
+
 	private final Grammar grammar;
 
 	private final EssentialOCLGrammarAccess gaEssentialOCL;
@@ -3275,7 +3328,7 @@
 		this.pTypedTypeRefCS = new TypedTypeRefCSElements();
 		this.pUnrestrictedName = new UnrestrictedNameElements();
 	}
-	
+
 	protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
 		Grammar grammar = grammarProvider.getGrammar(this);
 		while (grammar != null) {
@@ -3291,12 +3344,12 @@
 		}
 		return grammar;
 	}
-	
+
 	@Override
 	public Grammar getGrammar() {
 		return grammar;
 	}
-	
+
 
 	public EssentialOCLGrammarAccess getEssentialOCLGrammarAccess() {
 		return gaEssentialOCL;
@@ -3306,32 +3359,33 @@
 		return gaBase;
 	}
 
-	
+
 	////generate oclinEcore2 "http://www.eclipse.org/ocl/examples/xtext/oclinecore/OCLinEcore"
-	// TopLevelCS:
-	//	{TopLevelCS} ('module' UnrestrictedName)? ownedImports+=ImportCS* ownedPackages+=PackageCS*;
+	//TopLevelCS:
+	//	{TopLevelCS} ('module' UnrestrictedName)?
+	//	ownedImports+=ImportCS*
+	//	ownedPackages+=PackageCS*;
 	public TopLevelCSElements getTopLevelCSAccess() {
 		return pTopLevelCS;
 	}
-	
+
 	public ParserRule getTopLevelCSRule() {
 		return getTopLevelCSAccess().getRule();
 	}
 
 	//terminal UNQUOTED_STRING: // Never forward parsed; just provides a placeholder
-	// '£$%^£$%^'
-	//	//  for reverse serialisation of embedded OCL 
+	//	'£$%^£$%^' //  for reverse serialisation of embedded OCL
 	//;
 	public TerminalRule getUNQUOTED_STRINGRule() {
 		return tUNQUOTED_STRING;
-	} 
+	}
 
 	//INTEGER ecore::EInt:
 	//	INT
 	public INTEGERElements getINTEGERAccess() {
 		return pINTEGER;
 	}
-	
+
 	public ParserRule getINTEGERRule() {
 		return getINTEGERAccess().getRule();
 	}
@@ -3341,21 +3395,52 @@
 	public SIGNEDElements getSIGNEDAccess() {
 		return pSIGNED;
 	}
-	
+
 	public ParserRule getSIGNEDRule() {
 		return getSIGNEDAccess().getRule();
 	}
 
 	//EnumerationLiteralName:
-	//	EssentialOCLUnrestrictedName | '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';
+	//	EssentialOCLUnrestrictedName
+	//	| '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 EnumerationLiteralNameElements getEnumerationLiteralNameAccess() {
 		return pEnumerationLiteralName;
 	}
-	
+
 	public ParserRule getEnumerationLiteralNameRule() {
 		return getEnumerationLiteralNameAccess().getRule();
 	}
@@ -3366,7 +3451,7 @@
 	public InvariantConstraintCSElements getInvariantConstraintCSAccess() {
 		return pInvariantConstraintCS;
 	}
-	
+
 	public ParserRule getInvariantConstraintCSRule() {
 		return getInvariantConstraintCSAccess().getRule();
 	}
@@ -3377,7 +3462,7 @@
 	public PostconditionConstraintCSElements getPostconditionConstraintCSAccess() {
 		return pPostconditionConstraintCS;
 	}
-	
+
 	public ParserRule getPostconditionConstraintCSRule() {
 		return getPostconditionConstraintCSAccess().getRule();
 	}
@@ -3388,19 +3473,20 @@
 	public PreconditionConstraintCSElements getPreconditionConstraintCSAccess() {
 		return pPreconditionConstraintCS;
 	}
-	
+
 	public ParserRule getPreconditionConstraintCSRule() {
 		return getPreconditionConstraintCSAccess().getRule();
 	}
 
 	//AnnotationCS base::AnnotationCS:
 	//	{base::AnnotationCS} 'annotation' name=(UnrestrictedName | SINGLE_QUOTED_STRING)? ('(' ownedDetails+=DetailCS (','
-	//	ownedDetails+=DetailCS)* ')')? ('{' (ownedAnnotations+=AnnotationElementCS | ownedContents+=ModelElementCS |
-	//	ownedReferences+=ModelElementRefCS)+ '}' | ';')
+	//	ownedDetails+=DetailCS)* ')')? ('{' (ownedAnnotations+=AnnotationElementCS
+	//	| ownedContents+=ModelElementCS
+	//	| ownedReferences+=ModelElementRefCS)+ '}' | ';')
 	public AnnotationCSElements getAnnotationCSAccess() {
 		return pAnnotationCS;
 	}
-	
+
 	public ParserRule getAnnotationCSRule() {
 		return getAnnotationCSAccess().getRule();
 	}
@@ -3410,24 +3496,25 @@
 	public AnnotationElementCSElements getAnnotationElementCSAccess() {
 		return pAnnotationElementCS;
 	}
-	
+
 	public ParserRule getAnnotationElementCSRule() {
 		return getAnnotationElementCSAccess().getRule();
 	}
 
 	//AttributeCS base::AttributeCS:
-	//	(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)? 'attribute'
-	//	name=UnrestrictedName (':' ownedType=TypedMultiplicityRefCS)? ('=' default=SINGLE_QUOTED_STRING)? ('{'
+	//	(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)?
+	//	'attribute' name=UnrestrictedName (':' ownedType=TypedMultiplicityRefCS)? ('=' default=SINGLE_QUOTED_STRING)? ('{'
 	//	((qualifiers+='derived' | qualifiers+='!derived' | qualifiers+='id' | qualifiers+='!id' | qualifiers+='ordered' |
 	//	qualifiers+='!ordered' | qualifiers+='readonly' | qualifiers+='!readonly' | qualifiers+='transient' |
 	//	qualifiers+='!transient' | qualifiers+='unique' | qualifiers+='!unique' | qualifiers+='unsettable' |
-	//	qualifiers+='!unsettable' | qualifiers+='volatile' | qualifiers+='!volatile') ','?)+ '}')? ('{'
-	//	(ownedAnnotations+=AnnotationElementCS | 'initial' UnrestrictedName? ':' ownedDefaultExpressions+=SpecificationCS?
-	//	';' | 'derivation' UnrestrictedName? ':' ownedDefaultExpressions+=SpecificationCS? ';')* '}' | ';')
+	//	qualifiers+='!unsettable' | qualifiers+='volatile' | qualifiers+='!volatile') ','?)+
+	//	'}')? ('{' (ownedAnnotations+=AnnotationElementCS
+	//	| 'initial' UnrestrictedName? ':' ownedDefaultExpressions+=SpecificationCS? ';' | 'derivation' UnrestrictedName? ':'
+	//	ownedDefaultExpressions+=SpecificationCS? ';')* '}' | ';')
 	public AttributeCSElements getAttributeCSAccess() {
 		return pAttributeCS;
 	}
-	
+
 	public ParserRule getAttributeCSRule() {
 		return getAttributeCSAccess().getRule();
 	}
@@ -3437,19 +3524,20 @@
 	public ClassCSElements getClassCSAccess() {
 		return pClassCS;
 	}
-	
+
 	public ParserRule getClassCSRule() {
 		return getClassCSAccess().getRule();
 	}
 
 	//DataTypeCS base::DataTypeCS:
-	//	isPrimitive?='primitive'? 'datatype' name=UnrestrictedName ownedSignature=TemplateSignatureCS? (':'
-	//	instanceClassName=SINGLE_QUOTED_STRING)? ('{' (isSerializable?='serializable' | '!serializable')? '}')? ('{'
-	//	(ownedAnnotations+=AnnotationElementCS | ownedConstraints+=InvariantConstraintCS)* '}' | ';')
+	//	isPrimitive?='primitive'? 'datatype' name=UnrestrictedName
+	//	ownedSignature=TemplateSignatureCS? (':' instanceClassName=SINGLE_QUOTED_STRING)? ('{' (isSerializable?='serializable'
+	//	| '!serializable')? '}')? ('{' (ownedAnnotations+=AnnotationElementCS
+	//	| ownedConstraints+=InvariantConstraintCS)* '}' | ';')
 	public DataTypeCSElements getDataTypeCSAccess() {
 		return pDataTypeCS;
 	}
-	
+
 	public ParserRule getDataTypeCSRule() {
 		return getDataTypeCSAccess().getRule();
 	}
@@ -3459,30 +3547,33 @@
 	public DetailCSElements getDetailCSAccess() {
 		return pDetailCS;
 	}
-	
+
 	public ParserRule getDetailCSRule() {
 		return getDetailCSAccess().getRule();
 	}
 
 	//DocumentationCS base::DocumentationCS:
 	//	{base::DocumentationCS} 'documentation' value=SINGLE_QUOTED_STRING? ('(' ownedDetails+=DetailCS (','
-	//	ownedDetails+=DetailCS)* ')')? ';'
+	//	ownedDetails+=DetailCS)* ')')?
+	//	';'
 	public DocumentationCSElements getDocumentationCSAccess() {
 		return pDocumentationCS;
 	}
-	
+
 	public ParserRule getDocumentationCSRule() {
 		return getDocumentationCSAccess().getRule();
 	}
 
 	//EnumerationCS base::EnumerationCS:
-	//	'enum' name=UnrestrictedName ownedSignature=TemplateSignatureCS? (':' instanceClassName=SINGLE_QUOTED_STRING)? ('{'
-	//	(isSerializable?='serializable' | '!serializable')? '}')? ('{' (ownedAnnotations+=AnnotationElementCS |
-	//	ownedLiterals+=EnumerationLiteralCS | ownedConstraints+=InvariantConstraintCS)* '}' | ';')
+	//	'enum' name=UnrestrictedName
+	//	ownedSignature=TemplateSignatureCS? (':' instanceClassName=SINGLE_QUOTED_STRING)? ('{' (isSerializable?='serializable'
+	//	| '!serializable')? '}')? ('{' (ownedAnnotations+=AnnotationElementCS
+	//	| ownedLiterals+=EnumerationLiteralCS
+	//	| ownedConstraints+=InvariantConstraintCS)* '}' | ';')
 	public EnumerationCSElements getEnumerationCSAccess() {
 		return pEnumerationCS;
 	}
-	
+
 	public ParserRule getEnumerationCSRule() {
 		return getEnumerationCSAccess().getRule();
 	}
@@ -3493,7 +3584,7 @@
 	public EnumerationLiteralCSElements getEnumerationLiteralCSAccess() {
 		return pEnumerationLiteralCS;
 	}
-	
+
 	public ParserRule getEnumerationLiteralCSRule() {
 		return getEnumerationLiteralCSAccess().getRule();
 	}
@@ -3503,7 +3594,7 @@
 	public ImportCSElements getImportCSAccess() {
 		return pImportCS;
 	}
-	
+
 	public ParserRule getImportCSRule() {
 		return getImportCSAccess().getRule();
 	}
@@ -3513,7 +3604,7 @@
 	public ModelElementCSElements getModelElementCSAccess() {
 		return pModelElementCS;
 	}
-	
+
 	public ParserRule getModelElementCSRule() {
 		return getModelElementCSAccess().getRule();
 	}
@@ -3523,66 +3614,71 @@
 	public ModelElementRefCSElements getModelElementRefCSAccess() {
 		return pModelElementRefCS;
 	}
-	
+
 	public ParserRule getModelElementRefCSRule() {
 		return getModelElementRefCSAccess().getRule();
 	}
 
 	//OperationCS base::OperationCS:
-	//	(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)? 'operation'
-	//	ownedSignature=TemplateSignatureCS? name=UnrestrictedName '(' (ownedParameters+=ParameterCS (','
-	//	ownedParameters+=ParameterCS)*)? ')' (':' ownedType=TypedMultiplicityRefCS)? ('throws' ownedExceptions+=TypedRefCS
-	//	(',' ownedExceptions+=TypedRefCS)*)? ('{' ((qualifiers+='derived' | qualifiers+='!derived' | qualifiers+='ordered' |
-	//	qualifiers+='!ordered' | qualifiers+='transient' | qualifiers+='!transient' | qualifiers+='unique' |
-	//	qualifiers+='!unique') ','?)+ '}')? ('{' (ownedAnnotations+=AnnotationElementCS |
-	//	ownedPreconditions+=PreconditionConstraintCS | 'body' UnrestrictedName? ':' ownedBodyExpressions+=SpecificationCS?
-	//	';' | ownedPostconditions+=PostconditionConstraintCS)* '}' | ';')
+	//	(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)?
+	//	'operation' ownedSignature=TemplateSignatureCS? name=UnrestrictedName
+	//	'(' (ownedParameters+=ParameterCS (',' ownedParameters+=ParameterCS)*)? ')' (':' ownedType=TypedMultiplicityRefCS)?
+	//	('throws' ownedExceptions+=TypedRefCS (',' ownedExceptions+=TypedRefCS)*)? ('{' ((qualifiers+='derived' |
+	//	qualifiers+='!derived' | qualifiers+='ordered' | qualifiers+='!ordered' | qualifiers+='transient' |
+	//	qualifiers+='!transient' | qualifiers+='unique' | qualifiers+='!unique') ','?)+
+	//	'}')? ('{' (ownedAnnotations+=AnnotationElementCS
+	//	| ownedPreconditions+=PreconditionConstraintCS
+	//	| 'body' UnrestrictedName? ':' ownedBodyExpressions+=SpecificationCS? ';' |
+	//	ownedPostconditions+=PostconditionConstraintCS)* '}' | ';')
 	public OperationCSElements getOperationCSAccess() {
 		return pOperationCS;
 	}
-	
+
 	public ParserRule getOperationCSRule() {
 		return getOperationCSAccess().getRule();
 	}
 
 	//PackageCS base::PackageCS:
 	//	'package' name=UnrestrictedName (':' nsPrefix=UnrestrictedName)? ('=' nsURI=URI)? ('{'
-	//	(ownedAnnotations+=AnnotationElementCS | ownedPackages+=PackageCS | ownedClasses+=ClassCS)* '}' | ';')
+	//	(ownedAnnotations+=AnnotationElementCS | ownedPackages+=PackageCS | ownedClasses+=ClassCS)*
+	//	'}' | ';')
 	public PackageCSElements getPackageCSAccess() {
 		return pPackageCS;
 	}
-	
+
 	public ParserRule getPackageCSRule() {
 		return getPackageCSAccess().getRule();
 	}
 
 	//ParameterCS base::ParameterCS:
 	//	name=UnrestrictedName (':' ownedType=TypedMultiplicityRefCS)? ('{' ((qualifiers+='ordered' | qualifiers+='!ordered' |
-	//	qualifiers+='unique' | qualifiers+='!unique') ','?)+ '}')? ('{' ownedAnnotations+=AnnotationElementCS* '}')?
+	//	qualifiers+='unique' | qualifiers+='!unique') ','?)+
+	//	'}')? ('{' ownedAnnotations+=AnnotationElementCS* '}')?
 	public ParameterCSElements getParameterCSAccess() {
 		return pParameterCS;
 	}
-	
+
 	public ParserRule getParameterCSRule() {
 		return getParameterCSAccess().getRule();
 	}
 
 	//ReferenceCS base::ReferenceCS:
-	//	(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)? 'property'
-	//	name=UnrestrictedName ('#' referredOpposite=[pivot::Property|UnrestrictedName])? (':'
+	//	(qualifiers+='static' qualifiers+='definition'? | qualifiers+='definition' qualifiers+='static'?)?
+	//	'property' name=UnrestrictedName ('#' referredOpposite=[pivot::Property|UnrestrictedName])? (':'
 	//	ownedType=TypedMultiplicityRefCS)? ('=' default=SINGLE_QUOTED_STRING)? ('{' ((qualifiers+='composes' |
 	//	qualifiers+='!composes' | qualifiers+='derived' | qualifiers+='!derived' | qualifiers+='ordered' |
 	//	qualifiers+='!ordered' | qualifiers+='readonly' | qualifiers+='!readonly' | qualifiers+='resolve' |
 	//	qualifiers+='!resolve' | qualifiers+='transient' | qualifiers+='!transient' | qualifiers+='unique' |
 	//	qualifiers+='!unique' | qualifiers+='unsettable' | qualifiers+='!unsettable' | qualifiers+='volatile' |
-	//	qualifiers+='!volatile') ','?)+ '}')? ('{' (ownedAnnotations+=AnnotationElementCS | 'key'
-	//	referredKeys+=[pivot::Property|UnrestrictedName] (',' referredKeys+=[pivot::Property|UnrestrictedName])* ';' |
+	//	qualifiers+='!volatile') ','?)+
+	//	'}')? ('{' (ownedAnnotations+=AnnotationElementCS
+	//	| 'key' referredKeys+=[pivot::Property|UnrestrictedName] (',' referredKeys+=[pivot::Property|UnrestrictedName])* ';' |
 	//	'initial' UnrestrictedName? ':' ownedDefaultExpressions+=SpecificationCS? ';' | 'derivation' UnrestrictedName? ':'
 	//	ownedDefaultExpressions+=SpecificationCS? ';')* '}' | ';')
 	public ReferenceCSElements getReferenceCSAccess() {
 		return pReferenceCS;
 	}
-	
+
 	public ParserRule getReferenceCSRule() {
 		return getReferenceCSAccess().getRule();
 	}
@@ -3592,20 +3688,24 @@
 	public SpecificationCSElements getSpecificationCSAccess() {
 		return pSpecificationCS;
 	}
-	
+
 	public ParserRule getSpecificationCSRule() {
 		return getSpecificationCSAccess().getRule();
 	}
 
 	//StructuredClassCS base::StructuredClassCS:
-	//	isAbstract?='abstract'? 'class' name=UnrestrictedName ownedSignature=TemplateSignatureCS? ('extends'
-	//	ownedSuperTypes+=TypedRefCS (',' ownedSuperTypes+=TypedRefCS)*)? (':' instanceClassName=SINGLE_QUOTED_STRING)? ('{'
-	//	isInterface?='interface'? '}')? ('{' (ownedAnnotations+=AnnotationElementCS | ownedOperations+=OperationCS |
-	//	ownedProperties+=StructuralFeatureCS | ownedConstraints+=InvariantConstraintCS)* '}' | ';')
+	//	isAbstract?='abstract'?
+	//	'class' name=UnrestrictedName
+	//	ownedSignature=TemplateSignatureCS? ('extends' ownedSuperTypes+=TypedRefCS (',' ownedSuperTypes+=TypedRefCS)*)? (':'
+	//	instanceClassName=SINGLE_QUOTED_STRING)? ('{' isInterface?='interface'?
+	//	'}')? ('{' (ownedAnnotations+=AnnotationElementCS
+	//	| ownedOperations+=OperationCS
+	//	| ownedProperties+=StructuralFeatureCS
+	//	| ownedConstraints+=InvariantConstraintCS)* '}' | ';')
 	public StructuredClassCSElements getStructuredClassCSAccess() {
 		return pStructuredClassCS;
 	}
-	
+
 	public ParserRule getStructuredClassCSRule() {
 		return getStructuredClassCSAccess().getRule();
 	}
@@ -3615,7 +3715,7 @@
 	public StructuralFeatureCSElements getStructuralFeatureCSAccess() {
 		return pStructuralFeatureCS;
 	}
-	
+
 	public ParserRule getStructuralFeatureCSRule() {
 		return getStructuralFeatureCSAccess().getRule();
 	}
@@ -3625,17 +3725,18 @@
 	public SysMLCSElements getSysMLCSAccess() {
 		return pSysMLCS;
 	}
-	
+
 	public ParserRule getSysMLCSRule() {
 		return getSysMLCSAccess().getRule();
 	}
 
 	//TypeIdentifier:
-	//	UnrestrictedName | PrimitiveTypeIdentifier;
+	//	UnrestrictedName
+	//	| PrimitiveTypeIdentifier;
 	public TypeIdentifierElements getTypeIdentifierAccess() {
 		return pTypeIdentifier;
 	}
-	
+
 	public ParserRule getTypeIdentifierRule() {
 		return getTypeIdentifierAccess().getRule();
 	}
@@ -3645,23 +3746,21 @@
 	public TypedMultiplicityRefCSElements getTypedMultiplicityRefCSAccess() {
 		return pTypedMultiplicityRefCS;
 	}
-	
+
 	public ParserRule getTypedMultiplicityRefCSRule() {
 		return getTypedMultiplicityRefCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------------------
-	// //	Base overrides
-	//
+	////	Base overrides
 	////---------------------------------------------------------------------------------
-	// TemplateSignatureCS
-	//base::TemplateSignatureCS:
+	//TemplateSignatureCS base::TemplateSignatureCS:
 	//	'(' ownedParameters+=TypeParameterCS (',' ownedParameters+=TypeParameterCS)* ')' | '<'
 	//	ownedParameters+=TypeParameterCS (',' ownedParameters+=TypeParameterCS)* '>'
 	public TemplateSignatureCSElements getTemplateSignatureCSAccess() {
 		return pTemplateSignatureCS;
 	}
-	
+
 	public ParserRule getTemplateSignatureCSRule() {
 		return getTemplateSignatureCSAccess().getRule();
 	}
@@ -3671,7 +3770,7 @@
 	public TypedRefCSElements getTypedRefCSAccess() {
 		return pTypedRefCS;
 	}
-	
+
 	public ParserRule getTypedRefCSRule() {
 		return getTypedRefCSAccess().getRule();
 	}
@@ -3681,39 +3780,55 @@
 	public TypedTypeRefCSElements getTypedTypeRefCSAccess() {
 		return pTypedTypeRefCS;
 	}
-	
+
 	public ParserRule getTypedTypeRefCSRule() {
 		return getTypedTypeRefCSAccess().getRule();
 	}
 
 	//UnrestrictedName:
-	//	EnumerationLiteralName | 'annotation' | 'documentation' | 'invariant' | 'literal' | 'serializable' | 'sysml';
+	//	EnumerationLiteralName
+	//	| 'annotation'
+	//	| 'documentation'
+	//	| 'invariant'
+	//	| 'literal'
+	//	| 'serializable'
+	//	| 'sysml';
 	public UnrestrictedNameElements getUnrestrictedNameAccess() {
 		return pUnrestrictedName;
 	}
-	
+
 	public ParserRule getUnrestrictedNameRule() {
 		return getUnrestrictedNameAccess().getRule();
 	}
 
 	////generate essentialOCLCST "http://www.eclipse.org/ocl/3.0.0/EssentialOCLCST"
-	// Model ContextCS:
+	//Model ContextCS:
 	//	ownedExpression=ExpCS
 	public EssentialOCLGrammarAccess.ModelElements getModelAccess() {
 		return gaEssentialOCL.getModelAccess();
 	}
-	
+
 	public ParserRule getModelRule() {
 		return getModelAccess().getRule();
 	}
 
 	/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 	//EssentialOCLReservedKeyword:
-	//	'and' | 'else' | 'endif' | 'if' | 'implies' | 'in' | 'let' | 'not' | 'or' | 'then' | 'xor';
+	//	'and'
+	//	| 'else'
+	//	| 'endif'
+	//	| 'if'
+	//	| 'implies'
+	//	| 'in'
+	//	| 'let'
+	//	| 'not'
+	//	| 'or'
+	//	| 'then'
+	//	| 'xor';
 	public EssentialOCLGrammarAccess.EssentialOCLReservedKeywordElements getEssentialOCLReservedKeywordAccess() {
 		return gaEssentialOCL.getEssentialOCLReservedKeywordAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLReservedKeywordRule() {
 		return getEssentialOCLReservedKeywordAccess().getRule();
 	}
@@ -3724,7 +3839,7 @@
 	public EssentialOCLGrammarAccess.EssentialOCLUnaryOperatorNameElements getEssentialOCLUnaryOperatorNameAccess() {
 		return gaEssentialOCL.getEssentialOCLUnaryOperatorNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLUnaryOperatorNameRule() {
 		return getEssentialOCLUnaryOperatorNameAccess().getRule();
 	}
@@ -3735,7 +3850,7 @@
 	public EssentialOCLGrammarAccess.EssentialOCLInfixOperatorNameElements getEssentialOCLInfixOperatorNameAccess() {
 		return gaEssentialOCL.getEssentialOCLInfixOperatorNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLInfixOperatorNameRule() {
 		return getEssentialOCLInfixOperatorNameAccess().getRule();
 	}
@@ -3746,7 +3861,7 @@
 	public EssentialOCLGrammarAccess.EssentialOCLNavigationOperatorNameElements getEssentialOCLNavigationOperatorNameAccess() {
 		return gaEssentialOCL.getEssentialOCLNavigationOperatorNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLNavigationOperatorNameRule() {
 		return getEssentialOCLNavigationOperatorNameAccess().getRule();
 	}
@@ -3756,7 +3871,7 @@
 	public EssentialOCLGrammarAccess.BinaryOperatorNameElements getBinaryOperatorNameAccess() {
 		return gaEssentialOCL.getBinaryOperatorNameAccess();
 	}
-	
+
 	public ParserRule getBinaryOperatorNameRule() {
 		return getBinaryOperatorNameAccess().getRule();
 	}
@@ -3766,7 +3881,7 @@
 	public EssentialOCLGrammarAccess.InfixOperatorNameElements getInfixOperatorNameAccess() {
 		return gaEssentialOCL.getInfixOperatorNameAccess();
 	}
-	
+
 	public ParserRule getInfixOperatorNameRule() {
 		return getInfixOperatorNameAccess().getRule();
 	}
@@ -3776,7 +3891,7 @@
 	public EssentialOCLGrammarAccess.NavigationOperatorNameElements getNavigationOperatorNameAccess() {
 		return gaEssentialOCL.getNavigationOperatorNameAccess();
 	}
-	
+
 	public ParserRule getNavigationOperatorNameRule() {
 		return getNavigationOperatorNameAccess().getRule();
 	}
@@ -3786,34 +3901,36 @@
 	public EssentialOCLGrammarAccess.UnaryOperatorNameElements getUnaryOperatorNameAccess() {
 		return gaEssentialOCL.getUnaryOperatorNameAccess();
 	}
-	
+
 	public ParserRule getUnaryOperatorNameRule() {
 		return getUnaryOperatorNameAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Names
-	//
+	////  Names
 	////---------------------------------------------------------------------
-	//
 	/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 	//EssentialOCLUnrestrictedName:
 	//	Identifier;
 	public EssentialOCLGrammarAccess.EssentialOCLUnrestrictedNameElements getEssentialOCLUnrestrictedNameAccess() {
 		return gaEssentialOCL.getEssentialOCLUnrestrictedNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLUnrestrictedNameRule() {
 		return getEssentialOCLUnrestrictedNameAccess().getRule();
 	}
 
 	/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 	//EssentialOCLUnreservedName:
-	//	super::UnrestrictedName | CollectionTypeIdentifier | PrimitiveTypeIdentifier | 'Map' | 'Tuple';
+	//	super::UnrestrictedName
+	//	| CollectionTypeIdentifier
+	//	| PrimitiveTypeIdentifier
+	//	| 'Map'
+	//	| 'Tuple';
 	public EssentialOCLGrammarAccess.EssentialOCLUnreservedNameElements getEssentialOCLUnreservedNameAccess() {
 		return gaEssentialOCL.getEssentialOCLUnreservedNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLUnreservedNameRule() {
 		return getEssentialOCLUnreservedNameAccess().getRule();
 	}
@@ -3823,7 +3940,7 @@
 	public EssentialOCLGrammarAccess.UnreservedNameElements getUnreservedNameAccess() {
 		return gaEssentialOCL.getUnreservedNameAccess();
 	}
-	
+
 	public ParserRule getUnreservedNameRule() {
 		return getUnreservedNameAccess().getRule();
 	}
@@ -3833,7 +3950,7 @@
 	public EssentialOCLGrammarAccess.URIPathNameCSElements getURIPathNameCSAccess() {
 		return gaEssentialOCL.getURIPathNameCSAccess();
 	}
-	
+
 	public ParserRule getURIPathNameCSRule() {
 		return getURIPathNameCSAccess().getRule();
 	}
@@ -3844,21 +3961,27 @@
 	public EssentialOCLGrammarAccess.URIFirstPathElementCSElements getURIFirstPathElementCSAccess() {
 		return gaEssentialOCL.getURIFirstPathElementCSAccess();
 	}
-	
+
 	public ParserRule getURIFirstPathElementCSRule() {
 		return getURIFirstPathElementCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Types
-	//
+	////  Types
 	////---------------------------------------------------------------------
-	// PrimitiveTypeIdentifier:
-	//	'Boolean' | 'Integer' | 'Real' | 'String' | 'UnlimitedNatural' | 'OclAny' | 'OclInvalid' | 'OclVoid';
+	//PrimitiveTypeIdentifier:
+	//	'Boolean'
+	//	| 'Integer'
+	//	| 'Real'
+	//	| 'String'
+	//	| 'UnlimitedNatural'
+	//	| 'OclAny'
+	//	| 'OclInvalid'
+	//	| 'OclVoid';
 	public EssentialOCLGrammarAccess.PrimitiveTypeIdentifierElements getPrimitiveTypeIdentifierAccess() {
 		return gaEssentialOCL.getPrimitiveTypeIdentifierAccess();
 	}
-	
+
 	public ParserRule getPrimitiveTypeIdentifierRule() {
 		return getPrimitiveTypeIdentifierAccess().getRule();
 	}
@@ -3868,17 +3991,21 @@
 	public EssentialOCLGrammarAccess.PrimitiveTypeCSElements getPrimitiveTypeCSAccess() {
 		return gaEssentialOCL.getPrimitiveTypeCSAccess();
 	}
-	
+
 	public ParserRule getPrimitiveTypeCSRule() {
 		return getPrimitiveTypeCSAccess().getRule();
 	}
 
 	//CollectionTypeIdentifier:
-	//	'Set' | 'Bag' | 'Sequence' | 'Collection' | 'OrderedSet';
+	//	'Set'
+	//	| 'Bag'
+	//	| 'Sequence'
+	//	| 'Collection'
+	//	| 'OrderedSet';
 	public EssentialOCLGrammarAccess.CollectionTypeIdentifierElements getCollectionTypeIdentifierAccess() {
 		return gaEssentialOCL.getCollectionTypeIdentifierAccess();
 	}
-	
+
 	public ParserRule getCollectionTypeIdentifierRule() {
 		return getCollectionTypeIdentifierAccess().getRule();
 	}
@@ -3888,7 +4015,7 @@
 	public EssentialOCLGrammarAccess.CollectionTypeCSElements getCollectionTypeCSAccess() {
 		return gaEssentialOCL.getCollectionTypeCSAccess();
 	}
-	
+
 	public ParserRule getCollectionTypeCSRule() {
 		return getCollectionTypeCSAccess().getRule();
 	}
@@ -3898,7 +4025,7 @@
 	public EssentialOCLGrammarAccess.MapTypeCSElements getMapTypeCSAccess() {
 		return gaEssentialOCL.getMapTypeCSAccess();
 	}
-	
+
 	public ParserRule getMapTypeCSRule() {
 		return getMapTypeCSAccess().getRule();
 	}
@@ -3908,7 +4035,7 @@
 	public EssentialOCLGrammarAccess.TupleTypeCSElements getTupleTypeCSAccess() {
 		return gaEssentialOCL.getTupleTypeCSAccess();
 	}
-	
+
 	public ParserRule getTupleTypeCSRule() {
 		return getTupleTypeCSAccess().getRule();
 	}
@@ -3918,21 +4045,22 @@
 	public EssentialOCLGrammarAccess.TuplePartCSElements getTuplePartCSAccess() {
 		return gaEssentialOCL.getTuplePartCSAccess();
 	}
-	
+
 	public ParserRule getTuplePartCSRule() {
 		return getTuplePartCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Literals
-	//
+	////  Literals
 	////---------------------------------------------------------------------
-	// CollectionLiteralExpCS:
-	//	ownedType=CollectionTypeCS '{' (ownedParts+=CollectionLiteralPartCS (',' ownedParts+=CollectionLiteralPartCS)*)? '}';
+	//CollectionLiteralExpCS:
+	//	ownedType=CollectionTypeCS
+	//	'{' (ownedParts+=CollectionLiteralPartCS (',' ownedParts+=CollectionLiteralPartCS)*)?
+	//	'}';
 	public EssentialOCLGrammarAccess.CollectionLiteralExpCSElements getCollectionLiteralExpCSAccess() {
 		return gaEssentialOCL.getCollectionLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getCollectionLiteralExpCSRule() {
 		return getCollectionLiteralExpCSAccess().getRule();
 	}
@@ -3942,18 +4070,19 @@
 	public EssentialOCLGrammarAccess.CollectionLiteralPartCSElements getCollectionLiteralPartCSAccess() {
 		return gaEssentialOCL.getCollectionLiteralPartCSAccess();
 	}
-	
+
 	public ParserRule getCollectionLiteralPartCSRule() {
 		return getCollectionLiteralPartCSAccess().getRule();
 	}
 
 	//CollectionPatternCS:
-	//	ownedType=CollectionTypeCS '{' (ownedParts+=PatternExpCS (',' ownedParts+=PatternExpCS)* ('++'
-	//	restVariableName=Identifier))? '}';
+	//	ownedType=CollectionTypeCS
+	//	'{' (ownedParts+=PatternExpCS (',' ownedParts+=PatternExpCS)* ('++' restVariableName=Identifier))?
+	//	'}';
 	public EssentialOCLGrammarAccess.CollectionPatternCSElements getCollectionPatternCSAccess() {
 		return gaEssentialOCL.getCollectionPatternCSAccess();
 	}
-	
+
 	public ParserRule getCollectionPatternCSRule() {
 		return getCollectionPatternCSAccess().getRule();
 	}
@@ -3963,7 +4092,7 @@
 	public EssentialOCLGrammarAccess.ShadowPartCSElements getShadowPartCSAccess() {
 		return gaEssentialOCL.getShadowPartCSAccess();
 	}
-	
+
 	public ParserRule getShadowPartCSRule() {
 		return getShadowPartCSAccess().getRule();
 	}
@@ -3973,7 +4102,7 @@
 	public EssentialOCLGrammarAccess.PatternExpCSElements getPatternExpCSAccess() {
 		return gaEssentialOCL.getPatternExpCSAccess();
 	}
-	
+
 	public ParserRule getPatternExpCSRule() {
 		return getPatternExpCSAccess().getRule();
 	}
@@ -3983,7 +4112,7 @@
 	public EssentialOCLGrammarAccess.LambdaLiteralExpCSElements getLambdaLiteralExpCSAccess() {
 		return gaEssentialOCL.getLambdaLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getLambdaLiteralExpCSRule() {
 		return getLambdaLiteralExpCSAccess().getRule();
 	}
@@ -3993,7 +4122,7 @@
 	public EssentialOCLGrammarAccess.MapLiteralExpCSElements getMapLiteralExpCSAccess() {
 		return gaEssentialOCL.getMapLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getMapLiteralExpCSRule() {
 		return getMapLiteralExpCSAccess().getRule();
 	}
@@ -4003,18 +4132,22 @@
 	public EssentialOCLGrammarAccess.MapLiteralPartCSElements getMapLiteralPartCSAccess() {
 		return gaEssentialOCL.getMapLiteralPartCSAccess();
 	}
-	
+
 	public ParserRule getMapLiteralPartCSRule() {
 		return getMapLiteralPartCSAccess().getRule();
 	}
 
 	//PrimitiveLiteralExpCS:
-	//	NumberLiteralExpCS | StringLiteralExpCS | BooleanLiteralExpCS | UnlimitedNaturalLiteralExpCS | InvalidLiteralExpCS |
-	//	NullLiteralExpCS;
+	//	NumberLiteralExpCS
+	//	| StringLiteralExpCS
+	//	| BooleanLiteralExpCS
+	//	| UnlimitedNaturalLiteralExpCS
+	//	| InvalidLiteralExpCS
+	//	| NullLiteralExpCS;
 	public EssentialOCLGrammarAccess.PrimitiveLiteralExpCSElements getPrimitiveLiteralExpCSAccess() {
 		return gaEssentialOCL.getPrimitiveLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getPrimitiveLiteralExpCSRule() {
 		return getPrimitiveLiteralExpCSAccess().getRule();
 	}
@@ -4024,7 +4157,7 @@
 	public EssentialOCLGrammarAccess.TupleLiteralExpCSElements getTupleLiteralExpCSAccess() {
 		return gaEssentialOCL.getTupleLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getTupleLiteralExpCSRule() {
 		return getTupleLiteralExpCSAccess().getRule();
 	}
@@ -4034,7 +4167,7 @@
 	public EssentialOCLGrammarAccess.TupleLiteralPartCSElements getTupleLiteralPartCSAccess() {
 		return gaEssentialOCL.getTupleLiteralPartCSAccess();
 	}
-	
+
 	public ParserRule getTupleLiteralPartCSRule() {
 		return getTupleLiteralPartCSAccess().getRule();
 	}
@@ -4044,7 +4177,7 @@
 	public EssentialOCLGrammarAccess.NumberLiteralExpCSElements getNumberLiteralExpCSAccess() {
 		return gaEssentialOCL.getNumberLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getNumberLiteralExpCSRule() {
 		return getNumberLiteralExpCSAccess().getRule();
 	}
@@ -4054,17 +4187,18 @@
 	public EssentialOCLGrammarAccess.StringLiteralExpCSElements getStringLiteralExpCSAccess() {
 		return gaEssentialOCL.getStringLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getStringLiteralExpCSRule() {
 		return getStringLiteralExpCSAccess().getRule();
 	}
 
 	//BooleanLiteralExpCS:
-	//	symbol='true' | symbol='false';
+	//	symbol='true'
+	//	| symbol='false';
 	public EssentialOCLGrammarAccess.BooleanLiteralExpCSElements getBooleanLiteralExpCSAccess() {
 		return gaEssentialOCL.getBooleanLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getBooleanLiteralExpCSRule() {
 		return getBooleanLiteralExpCSAccess().getRule();
 	}
@@ -4074,7 +4208,7 @@
 	public EssentialOCLGrammarAccess.UnlimitedNaturalLiteralExpCSElements getUnlimitedNaturalLiteralExpCSAccess() {
 		return gaEssentialOCL.getUnlimitedNaturalLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getUnlimitedNaturalLiteralExpCSRule() {
 		return getUnlimitedNaturalLiteralExpCSAccess().getRule();
 	}
@@ -4084,7 +4218,7 @@
 	public EssentialOCLGrammarAccess.InvalidLiteralExpCSElements getInvalidLiteralExpCSAccess() {
 		return gaEssentialOCL.getInvalidLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getInvalidLiteralExpCSRule() {
 		return getInvalidLiteralExpCSAccess().getRule();
 	}
@@ -4094,17 +4228,20 @@
 	public EssentialOCLGrammarAccess.NullLiteralExpCSElements getNullLiteralExpCSAccess() {
 		return gaEssentialOCL.getNullLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getNullLiteralExpCSRule() {
 		return getNullLiteralExpCSAccess().getRule();
 	}
 
 	//TypeLiteralCS base::TypedRefCS:
-	//	PrimitiveTypeCS | CollectionTypeCS | MapTypeCS | TupleTypeCS
+	//	PrimitiveTypeCS
+	//	| CollectionTypeCS
+	//	| MapTypeCS
+	//	| TupleTypeCS
 	public EssentialOCLGrammarAccess.TypeLiteralCSElements getTypeLiteralCSAccess() {
 		return gaEssentialOCL.getTypeLiteralCSAccess();
 	}
-	
+
 	public ParserRule getTypeLiteralCSRule() {
 		return getTypeLiteralCSAccess().getRule();
 	}
@@ -4114,7 +4251,7 @@
 	public EssentialOCLGrammarAccess.TypeLiteralWithMultiplicityCSElements getTypeLiteralWithMultiplicityCSAccess() {
 		return gaEssentialOCL.getTypeLiteralWithMultiplicityCSAccess();
 	}
-	
+
 	public ParserRule getTypeLiteralWithMultiplicityCSRule() {
 		return getTypeLiteralWithMultiplicityCSAccess().getRule();
 	}
@@ -4124,7 +4261,7 @@
 	public EssentialOCLGrammarAccess.TypeLiteralExpCSElements getTypeLiteralExpCSAccess() {
 		return gaEssentialOCL.getTypeLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getTypeLiteralExpCSRule() {
 		return getTypeLiteralExpCSAccess().getRule();
 	}
@@ -4134,7 +4271,7 @@
 	public EssentialOCLGrammarAccess.TypeNameExpCSElements getTypeNameExpCSAccess() {
 		return gaEssentialOCL.getTypeNameExpCSAccess();
 	}
-	
+
 	public ParserRule getTypeNameExpCSRule() {
 		return getTypeNameExpCSAccess().getRule();
 	}
@@ -4144,33 +4281,26 @@
 	public EssentialOCLGrammarAccess.TypeExpCSElements getTypeExpCSAccess() {
 		return gaEssentialOCL.getTypeExpCSAccess();
 	}
-	
+
 	public ParserRule getTypeExpCSRule() {
 		return getTypeExpCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Expressions
-	//
+	////  Expressions
 	////---------------------------------------------------------------------
-	//
 	//// An ExpCS permits a LetExpCS only in the final term to ensure
-	//
 	////  that let is right associative, whereas infix operators are left associative.
-	//
-	////   a = 64 / 16 / let b : Integer in 8 / let c : Integer in 4 
-	// // is
-	//
+	////   a = 64 / 16 / let b : Integer in 8 / let c : Integer in 4
+	//// is
 	////   a = (64 / 16) / (let b : Integer in 8 / (let c : Integer in 4 ))
-	//
 	/// * An expression elaborates a prefixed expression with zero or more binary operator and expression suffixes.
-	// * An optionally prefixed let expression is permitted except when suffixed with further expressions.* /
-	//ExpCS:
+	// * An optionally prefixed let expression is permitted except when suffixed with further expressions.* / ExpCS:
 	//	PrefixedPrimaryExpCS ({InfixExpCS.ownedLeft=current} name=BinaryOperatorName ownedRight=ExpCS)? | PrefixedLetExpCS;
 	public EssentialOCLGrammarAccess.ExpCSElements getExpCSAccess() {
 		return gaEssentialOCL.getExpCSAccess();
 	}
-	
+
 	public ParserRule getExpCSRule() {
 		return getExpCSAccess().getRule();
 	}
@@ -4181,7 +4311,7 @@
 	public EssentialOCLGrammarAccess.PrefixedLetExpCSElements getPrefixedLetExpCSAccess() {
 		return gaEssentialOCL.getPrefixedLetExpCSAccess();
 	}
-	
+
 	public ParserRule getPrefixedLetExpCSRule() {
 		return getPrefixedLetExpCSAccess().getRule();
 	}
@@ -4192,44 +4322,52 @@
 	public EssentialOCLGrammarAccess.PrefixedPrimaryExpCSElements getPrefixedPrimaryExpCSAccess() {
 		return gaEssentialOCL.getPrefixedPrimaryExpCSAccess();
 	}
-	
+
 	public ParserRule getPrefixedPrimaryExpCSRule() {
 		return getPrefixedPrimaryExpCSAccess().getRule();
 	}
 
 	/// * A primary expression identifies the basic expressions from which more complex expressions may be constructed. * /
 	//PrimaryExpCS ExpCS:
-	//	NestedExpCS | IfExpCS | SelfExpCS | PrimitiveLiteralExpCS | TupleLiteralExpCS | MapLiteralExpCS |
-	//	CollectionLiteralExpCS | LambdaLiteralExpCS | TypeLiteralExpCS | NameExpCS
+	//	NestedExpCS
+	//	| IfExpCS
+	//	| SelfExpCS
+	//	| PrimitiveLiteralExpCS
+	//	| TupleLiteralExpCS
+	//	| MapLiteralExpCS
+	//	| CollectionLiteralExpCS
+	//	| LambdaLiteralExpCS
+	//	| TypeLiteralExpCS
+	//	| NameExpCS
 	public EssentialOCLGrammarAccess.PrimaryExpCSElements getPrimaryExpCSAccess() {
 		return gaEssentialOCL.getPrimaryExpCSAccess();
 	}
-	
+
 	public ParserRule getPrimaryExpCSRule() {
 		return getPrimaryExpCSAccess().getRule();
 	}
 
 	/// * A name expression is a generalised rule for expressions that start with a name and which may be followed by square, round or
-	// * curly bracket clauses and optionally an @pre as well.* /
-	//NameExpCS:
+	// * curly bracket clauses and optionally an @pre as well.* / NameExpCS:
 	//	ownedPathName=PathNameCS ownedSquareBracketedClauses+=SquareBracketedClauseCS*
 	//	ownedRoundBracketedClause=RoundBracketedClauseCS? ownedCurlyBracketedClause=CurlyBracketedClauseCS? (isPre?='@'
 	//	'pre')?;
 	public EssentialOCLGrammarAccess.NameExpCSElements getNameExpCSAccess() {
 		return gaEssentialOCL.getNameExpCSAccess();
 	}
-	
+
 	public ParserRule getNameExpCSRule() {
 		return getNameExpCSAccess().getRule();
 	}
 
 	/// * A curly bracket clause is a generalized rule for the literal arguments of collections, maps, tuples and shadows.* /
 	//CurlyBracketedClauseCS:
-	//	{CurlyBracketedClauseCS} '{' ((ownedParts+=ShadowPartCS (',' ownedParts+=ShadowPartCS)*)? | value=StringLiteral) '}';
+	//	{CurlyBracketedClauseCS} '{' ((ownedParts+=ShadowPartCS (',' ownedParts+=ShadowPartCS)*)?
+	//	| value=StringLiteral) '}';
 	public EssentialOCLGrammarAccess.CurlyBracketedClauseCSElements getCurlyBracketedClauseCSAccess() {
 		return gaEssentialOCL.getCurlyBracketedClauseCSAccess();
 	}
-	
+
 	public ParserRule getCurlyBracketedClauseCSRule() {
 		return getCurlyBracketedClauseCSAccess().getRule();
 	}
@@ -4242,7 +4380,7 @@
 	public EssentialOCLGrammarAccess.RoundBracketedClauseCSElements getRoundBracketedClauseCSAccess() {
 		return gaEssentialOCL.getRoundBracketedClauseCSAccess();
 	}
-	
+
 	public ParserRule getRoundBracketedClauseCSRule() {
 		return getRoundBracketedClauseCSAccess().getRule();
 	}
@@ -4252,109 +4390,108 @@
 	public EssentialOCLGrammarAccess.SquareBracketedClauseCSElements getSquareBracketedClauseCSAccess() {
 		return gaEssentialOCL.getSquareBracketedClauseCSAccess();
 	}
-	
+
 	public ParserRule getSquareBracketedClauseCSRule() {
 		return getSquareBracketedClauseCSAccess().getRule();
 	}
 
 	/// * A navigating argument is a generalized rule for the first argument in a round bracket clause. This is typically the first operation
-	// * parameter or an iterator. * /
-	//NavigatingArgCS:
+	// * parameter or an iterator. * / NavigatingArgCS:
 	//	ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)? | 'in'
 	//	ownedInitExpression=ExpCS)? | ':' ownedType=TypeExpCS;
 	public EssentialOCLGrammarAccess.NavigatingArgCSElements getNavigatingArgCSAccess() {
 		return gaEssentialOCL.getNavigatingArgCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingArgCSRule() {
 		return getNavigatingArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	//
 	/// * A navigating bar argument is a generalized rule for a bar-prefixed argument in a round bracket clause. This is typically the body of an iteration. * /
 	//NavigatingBarArgCS NavigatingArgCS:
 	//	prefix='|' ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)?)?
 	public EssentialOCLGrammarAccess.NavigatingBarArgCSElements getNavigatingBarArgCSAccess() {
 		return gaEssentialOCL.getNavigatingBarArgCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingBarArgCSRule() {
 		return getNavigatingBarArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	//
 	/// * A navigating comma argument is a generalized rule for non-first argument in a round bracket clause. These are typically non-first operation
-	// * parameters or a second iterator. * /
-	//NavigatingCommaArgCS NavigatingArgCS:
+	// * parameters or a second iterator. * / NavigatingCommaArgCS NavigatingArgCS:
 	//	prefix=',' ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)? | 'in'
 	//	ownedInitExpression=ExpCS)?
 	public EssentialOCLGrammarAccess.NavigatingCommaArgCSElements getNavigatingCommaArgCSAccess() {
 		return gaEssentialOCL.getNavigatingCommaArgCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingCommaArgCSRule() {
 		return getNavigatingCommaArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	//
 	/// * A navigating semi argument is a generalized rule for a semicolon prefixed argument in a round bracket clause. This is typically an iterate accumulator. * /
 	//NavigatingSemiArgCS NavigatingArgCS:
 	//	prefix=';' ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)?)?
 	public EssentialOCLGrammarAccess.NavigatingSemiArgCSElements getNavigatingSemiArgCSAccess() {
 		return gaEssentialOCL.getNavigatingSemiArgCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingSemiArgCSRule() {
 		return getNavigatingSemiArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	// NavigatingArgExpCS ExpCS:
+	//NavigatingArgExpCS ExpCS:
 	//	ExpCS
 	public EssentialOCLGrammarAccess.NavigatingArgExpCSElements getNavigatingArgExpCSAccess() {
 		return gaEssentialOCL.getNavigatingArgExpCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingArgExpCSRule() {
 		return getNavigatingArgExpCSAccess().getRule();
 	}
 
 	//IfExpCS:
-	//	'if' ownedCondition=(ExpCS | PatternExpCS) 'then' ownedThenExpression=ExpCS //	ifThenExpressions+=IfThenExpCS
-	//
-	//	ownedIfThenExpressions+=ElseIfThenExpCS* 'else' ownedElseExpression=ExpCS 'endif';
+	//	'if' ownedCondition=(ExpCS | PatternExpCS)
+	//	'then' ownedThenExpression=ExpCS
+	//	//	ifThenExpressions+=IfThenExpCS
+	//	ownedIfThenExpressions+=ElseIfThenExpCS*
+	//	'else' ownedElseExpression=ExpCS
+	//	'endif';
 	public EssentialOCLGrammarAccess.IfExpCSElements getIfExpCSAccess() {
 		return gaEssentialOCL.getIfExpCSAccess();
 	}
-	
+
 	public ParserRule getIfExpCSRule() {
 		return getIfExpCSAccess().getRule();
 	}
 
 	////IfThenExpCS returns IfThenExpCS:
-	// //	'if' condition=ExpCS
-	// //	'then' thenExpression=ExpCS
-	// //;
-	// ElseIfThenExpCS
-	//IfThenExpCS:
-	//	'elseif' ownedCondition=ExpCS 'then' ownedThenExpression=ExpCS
+	////	'if' condition=ExpCS
+	////	'then' thenExpression=ExpCS
+	////;
+	//ElseIfThenExpCS IfThenExpCS:
+	//	'elseif' ownedCondition=ExpCS
+	//	'then' ownedThenExpression=ExpCS
 	public EssentialOCLGrammarAccess.ElseIfThenExpCSElements getElseIfThenExpCSAccess() {
 		return gaEssentialOCL.getElseIfThenExpCSAccess();
 	}
-	
+
 	public ParserRule getElseIfThenExpCSRule() {
 		return getElseIfThenExpCSAccess().getRule();
 	}
 
 	//LetExpCS:
-	//	'let' ownedVariables+=LetVariableCS (',' ownedVariables+=LetVariableCS)* 'in' ownedInExpression=ExpCS;
+	//	'let' ownedVariables+=LetVariableCS (',' ownedVariables+=LetVariableCS)*
+	//	'in' ownedInExpression=ExpCS;
 	public EssentialOCLGrammarAccess.LetExpCSElements getLetExpCSAccess() {
 		return gaEssentialOCL.getLetExpCSAccess();
 	}
-	
+
 	public ParserRule getLetExpCSRule() {
 		return getLetExpCSAccess().getRule();
 	}
@@ -4365,7 +4502,7 @@
 	public EssentialOCLGrammarAccess.LetVariableCSElements getLetVariableCSAccess() {
 		return gaEssentialOCL.getLetVariableCSAccess();
 	}
-	
+
 	public ParserRule getLetVariableCSRule() {
 		return getLetVariableCSAccess().getRule();
 	}
@@ -4375,7 +4512,7 @@
 	public EssentialOCLGrammarAccess.NestedExpCSElements getNestedExpCSAccess() {
 		return gaEssentialOCL.getNestedExpCSAccess();
 	}
-	
+
 	public ParserRule getNestedExpCSRule() {
 		return getNestedExpCSAccess().getRule();
 	}
@@ -4385,7 +4522,7 @@
 	public EssentialOCLGrammarAccess.SelfExpCSElements getSelfExpCSAccess() {
 		return gaEssentialOCL.getSelfExpCSAccess();
 	}
-	
+
 	public ParserRule getSelfExpCSRule() {
 		return getSelfExpCSAccess().getRule();
 	}
@@ -4395,7 +4532,7 @@
 	public BaseGrammarAccess.MultiplicityBoundsCSElements getMultiplicityBoundsCSAccess() {
 		return gaBase.getMultiplicityBoundsCSAccess();
 	}
-	
+
 	public ParserRule getMultiplicityBoundsCSRule() {
 		return getMultiplicityBoundsCSAccess().getRule();
 	}
@@ -4405,7 +4542,7 @@
 	public BaseGrammarAccess.MultiplicityCSElements getMultiplicityCSAccess() {
 		return gaBase.getMultiplicityCSAccess();
 	}
-	
+
 	public ParserRule getMultiplicityCSRule() {
 		return getMultiplicityCSAccess().getRule();
 	}
@@ -4415,7 +4552,7 @@
 	public BaseGrammarAccess.MultiplicityStringCSElements getMultiplicityStringCSAccess() {
 		return gaBase.getMultiplicityStringCSAccess();
 	}
-	
+
 	public ParserRule getMultiplicityStringCSRule() {
 		return getMultiplicityStringCSAccess().getRule();
 	}
@@ -4425,7 +4562,7 @@
 	public BaseGrammarAccess.PathNameCSElements getPathNameCSAccess() {
 		return gaBase.getPathNameCSAccess();
 	}
-	
+
 	public ParserRule getPathNameCSRule() {
 		return getPathNameCSAccess().getRule();
 	}
@@ -4435,7 +4572,7 @@
 	public BaseGrammarAccess.FirstPathElementCSElements getFirstPathElementCSAccess() {
 		return gaBase.getFirstPathElementCSAccess();
 	}
-	
+
 	public ParserRule getFirstPathElementCSRule() {
 		return getFirstPathElementCSAccess().getRule();
 	}
@@ -4445,7 +4582,7 @@
 	public BaseGrammarAccess.NextPathElementCSElements getNextPathElementCSAccess() {
 		return gaBase.getNextPathElementCSAccess();
 	}
-	
+
 	public ParserRule getNextPathElementCSRule() {
 		return getNextPathElementCSAccess().getRule();
 	}
@@ -4456,7 +4593,7 @@
 	public BaseGrammarAccess.TemplateBindingCSElements getTemplateBindingCSAccess() {
 		return gaBase.getTemplateBindingCSAccess();
 	}
-	
+
 	public ParserRule getTemplateBindingCSRule() {
 		return getTemplateBindingCSAccess().getRule();
 	}
@@ -4466,7 +4603,7 @@
 	public BaseGrammarAccess.TemplateParameterSubstitutionCSElements getTemplateParameterSubstitutionCSAccess() {
 		return gaBase.getTemplateParameterSubstitutionCSAccess();
 	}
-	
+
 	public ParserRule getTemplateParameterSubstitutionCSRule() {
 		return getTemplateParameterSubstitutionCSAccess().getRule();
 	}
@@ -4476,7 +4613,7 @@
 	public BaseGrammarAccess.TypeParameterCSElements getTypeParameterCSAccess() {
 		return gaBase.getTypeParameterCSAccess();
 	}
-	
+
 	public ParserRule getTypeParameterCSRule() {
 		return getTypeParameterCSAccess().getRule();
 	}
@@ -4486,7 +4623,7 @@
 	public BaseGrammarAccess.TypeRefCSElements getTypeRefCSAccess() {
 		return gaBase.getTypeRefCSAccess();
 	}
-	
+
 	public ParserRule getTypeRefCSRule() {
 		return getTypeRefCSAccess().getRule();
 	}
@@ -4496,7 +4633,7 @@
 	public BaseGrammarAccess.WildcardTypeRefCSElements getWildcardTypeRefCSAccess() {
 		return gaBase.getWildcardTypeRefCSAccess();
 	}
-	
+
 	public ParserRule getWildcardTypeRefCSRule() {
 		return getWildcardTypeRefCSAccess().getRule();
 	}
@@ -4506,7 +4643,7 @@
 	public BaseGrammarAccess.IDElements getIDAccess() {
 		return gaBase.getIDAccess();
 	}
-	
+
 	public ParserRule getIDRule() {
 		return getIDAccess().getRule();
 	}
@@ -4516,7 +4653,7 @@
 	public BaseGrammarAccess.IdentifierElements getIdentifierAccess() {
 		return gaBase.getIdentifierAccess();
 	}
-	
+
 	public ParserRule getIdentifierRule() {
 		return getIdentifierAccess().getRule();
 	}
@@ -4527,7 +4664,7 @@
 	public BaseGrammarAccess.LOWERElements getLOWERAccess() {
 		return gaBase.getLOWERAccess();
 	}
-	
+
 	public ParserRule getLOWERRule() {
 		return getLOWERAccess().getRule();
 	}
@@ -4536,24 +4673,23 @@
 	// * lookahead conflicts in simple lexers between a dot within a floating point number and the dot-dot in a CollectionLiteralPartCS. A
 	// * practical implementation should give high priority to a successful parse of INT ('.' INT)? (('e' | 'E') ('+' | '-')? INT)? than
 	// * to the unsuccessful partial parse of INT '..'. The type of the INT terminal is String to allow the floating point syntax to be used.
-	// * /
-	//NUMBER_LITERAL BigNumber:
+	// * / NUMBER_LITERAL BigNumber:
 	//	INT
 	public BaseGrammarAccess.NUMBER_LITERALElements getNUMBER_LITERALAccess() {
 		return gaBase.getNUMBER_LITERALAccess();
 	}
-	
+
 	public ParserRule getNUMBER_LITERALRule() {
 		return getNUMBER_LITERALAccess().getRule();
 	}
 
 	//// EssentialOCLTokenSource pieces this together ('.' INT)? (('e' | 'E') ('+' | '-')? INT)?;
-	// StringLiteral:
+	//StringLiteral:
 	//	SINGLE_QUOTED_STRING;
 	public BaseGrammarAccess.StringLiteralElements getStringLiteralAccess() {
 		return gaBase.getStringLiteralAccess();
 	}
-	
+
 	public ParserRule getStringLiteralRule() {
 		return getStringLiteralAccess().getRule();
 	}
@@ -4564,7 +4700,7 @@
 	public BaseGrammarAccess.UPPERElements getUPPERAccess() {
 		return gaBase.getUPPERAccess();
 	}
-	
+
 	public ParserRule getUPPERRule() {
 		return getUPPERAccess().getRule();
 	}
@@ -4574,7 +4710,7 @@
 	public BaseGrammarAccess.URIElements getURIAccess() {
 		return gaBase.getURIAccess();
 	}
-	
+
 	public ParserRule getURIRule() {
 		return getURIAccess().getRule();
 	}
@@ -4583,71 +4719,71 @@
 	//	'\\' ('b' | 't' | 'n' | 'f' | 'r' | 'u' | '"' | "'" | '\\');
 	public TerminalRule getESCAPED_CHARACTERRule() {
 		return gaBase.getESCAPED_CHARACTERRule();
-	} 
+	}
 
 	//terminal fragment LETTER_CHARACTER:
 	//	'a'..'z' | 'A'..'Z' | '_';
 	public TerminalRule getLETTER_CHARACTERRule() {
 		return gaBase.getLETTER_CHARACTERRule();
-	} 
+	}
 
 	//terminal DOUBLE_QUOTED_STRING:
 	//	'"' (ESCAPED_CHARACTER | !('\\' | '"'))* '"';
 	public TerminalRule getDOUBLE_QUOTED_STRINGRule() {
 		return gaBase.getDOUBLE_QUOTED_STRINGRule();
-	} 
+	}
 
 	//terminal SINGLE_QUOTED_STRING:
 	//	"'" (ESCAPED_CHARACTER | !('\\' | "'"))* "'";
 	public TerminalRule getSINGLE_QUOTED_STRINGRule() {
 		return gaBase.getSINGLE_QUOTED_STRINGRule();
-	} 
+	}
 
 	//terminal ML_SINGLE_QUOTED_STRING:
 	//	"/'"->"'/";
 	public TerminalRule getML_SINGLE_QUOTED_STRINGRule() {
 		return gaBase.getML_SINGLE_QUOTED_STRINGRule();
-	} 
+	}
 
 	//terminal SIMPLE_ID:
 	//	LETTER_CHARACTER (LETTER_CHARACTER | '0'..'9')*;
 	public TerminalRule getSIMPLE_IDRule() {
 		return gaBase.getSIMPLE_IDRule();
-	} 
+	}
 
 	//terminal ESCAPED_ID:
 	//	"_" SINGLE_QUOTED_STRING;
 	public TerminalRule getESCAPED_IDRule() {
 		return gaBase.getESCAPED_IDRule();
-	} 
+	}
 
 	//terminal INT:
 	//	'0'..'9'+;
 	public TerminalRule getINTRule() {
 		return gaBase.getINTRule();
-	} 
+	}
 
 	//terminal ML_COMMENT:
 	//	'/ *'->'* /';
 	public TerminalRule getML_COMMENTRule() {
 		return gaBase.getML_COMMENTRule();
-	} 
+	}
 
 	//terminal SL_COMMENT:
 	//	'--' !('\n' | '\r')* ('\r'? '\n')?;
 	public TerminalRule getSL_COMMENTRule() {
 		return gaBase.getSL_COMMENTRule();
-	} 
+	}
 
 	//terminal WS:
 	//	' ' | '\t' | '\r' | '\n'+;
 	public TerminalRule getWSRule() {
 		return gaBase.getWSRule();
-	} 
+	}
 
 	//terminal ANY_OTHER:
 	//	.;
 	public TerminalRule getANY_OTHERRule() {
 		return gaBase.getANY_OTHERRule();
-	} 
+	}
 }
diff --git a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/validation/AbstractOCLinEcoreJavaValidator.java b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/validation/AbstractOCLinEcoreJavaValidator.java
index 12f8a45..597c2f4 100644
--- a/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/validation/AbstractOCLinEcoreJavaValidator.java
+++ b/plugins/org.eclipse.ocl.xtext.oclinecore/src-gen/org/eclipse/ocl/xtext/oclinecore/validation/AbstractOCLinEcoreJavaValidator.java
@@ -9,7 +9,7 @@
  *     E.D.Willink - initial API and implementation
  *******************************************************************************/
 package org.eclipse.ocl.xtext.oclinecore.validation;
- 
+
 import java.util.ArrayList;
 import java.util.List;
 
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/AbstractOCLstdlibUiModule.java b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/AbstractOCLstdlibUiModule.java
index 725bdd8..c76e245 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/AbstractOCLstdlibUiModule.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/AbstractOCLstdlibUiModule.java
@@ -18,12 +18,12 @@
  */
 @SuppressWarnings("all")
 public abstract class AbstractOCLstdlibUiModule extends org.eclipse.xtext.ui.DefaultUiModule {
-	
+
 	public AbstractOCLstdlibUiModule(AbstractUIPlugin plugin) {
 		super(plugin);
 	}
-	
-	
+
+
 	// contributed by org.eclipse.xtext.ui.generator.ImplicitUiFragment
 	public com.google.inject.Provider<org.eclipse.xtext.resource.containers.IAllContainersState> provideIAllContainersState() {
 		return org.eclipse.xtext.ui.shared.Access.getJavaProjectsState();
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/OCLstdlibExecutableExtensionFactory.java b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/OCLstdlibExecutableExtensionFactory.java
index 9daba81..fdf0593 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/OCLstdlibExecutableExtensionFactory.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/OCLstdlibExecutableExtensionFactory.java
@@ -19,7 +19,7 @@
 
 /**
  * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
+ * introduced subclass.
  */
 public class OCLstdlibExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory {
 
@@ -27,10 +27,10 @@
 	protected Bundle getBundle() {
 		return OCLstdlibActivator.getInstance().getBundle();
 	}
-	
+
 	@Override
 	protected Injector getInjector() {
 		return OCLstdlibActivator.getInstance().getInjector(OCLstdlibActivator.ORG_ECLIPSE_OCL_XTEXT_OCLSTDLIB_OCLSTDLIB);
 	}
-	
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/AbstractOCLstdlibProposalProvider.java b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/AbstractOCLstdlibProposalProvider.java
index b6179a4..3baec96 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/AbstractOCLstdlibProposalProvider.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/contentassist/AbstractOCLstdlibProposalProvider.java
@@ -17,12 +17,12 @@
 
 /**
  * Represents a generated, default implementation of superclass {@link org.eclipse.ocl.xtext.essentialocl.ui.contentassist.EssentialOCLProposalProvider}.
- * Methods are dynamically dispatched on the first parameter, i.e., you can override them 
- * with a more concrete subtype. 
+ * Methods are dynamically dispatched on the first parameter, i.e., you can override them
+ * with a more concrete subtype.
  */
 @SuppressWarnings("all")
 public class AbstractOCLstdlibProposalProvider extends org.eclipse.ocl.xtext.essentialocl.ui.contentassist.EssentialOCLProposalProvider {
-		
+
 	public void completeLibrary_OwnedImports(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
@@ -329,7 +329,7 @@
 	public void completeTypedTypeRefCS_IsTypeof(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		// subclasses may override
 	}
-    
+
 	public void complete_Library(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		// subclasses may override
 	}
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 5106731..4f061e9 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
@@ -25,19 +25,19 @@
 import org.eclipse.ocl.xtext.oclstdlib.services.OCLstdlibGrammarAccess;
 
 public class OCLstdlibParser extends AbstractContentAssistParser {
-	
+
 	@Inject
 	private OCLstdlibGrammarAccess grammarAccess;
-	
+
 	private Map<AbstractElement, String> nameMappings;
-	
+
 	@Override
 	protected org.eclipse.ocl.xtext.oclstdlib.ui.contentassist.antlr.internal.InternalOCLstdlibParser createParser() {
 		org.eclipse.ocl.xtext.oclstdlib.ui.contentassist.antlr.internal.InternalOCLstdlibParser result = new org.eclipse.ocl.xtext.oclstdlib.ui.contentassist.antlr.internal.InternalOCLstdlibParser(null);
 		result.setGrammarAccess(grammarAccess);
 		return result;
 	}
-	
+
 	@Override
 	protected String getRuleName(AbstractElement element) {
 		if (nameMappings == null) {
@@ -495,7 +495,7 @@
 		}
 		return nameMappings.get(element);
 	}
-	
+
 	@Override
 	protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
 		try {
@@ -504,18 +504,18 @@
 			return typedParser.getFollowElements();
 		} catch(RecognitionException ex) {
 			throw new RuntimeException(ex);
-		}		
+		}
 	}
-	
+
 	@Override
 	protected String[] getInitialHiddenTokens() {
 		return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" };
 	}
-	
+
 	public OCLstdlibGrammarAccess getGrammarAccess() {
 		return this.grammarAccess;
 	}
-	
+
 	public void setGrammarAccess(OCLstdlibGrammarAccess grammarAccess) {
 		this.grammarAccess = grammarAccess;
 	}
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 4f7d9d5..9c03d22 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
@@ -13,19 +13,19 @@
 options {
 	superClass=AbstractInternalContentAssistParser;
 	backtrack=true;
-	
+
 }
 
 @lexer::header {
 package org.eclipse.ocl.xtext.oclstdlib.ui.contentassist.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
 }
 
 @parser::header {
-package org.eclipse.ocl.xtext.oclstdlib.ui.contentassist.antlr.internal; 
+package org.eclipse.ocl.xtext.oclstdlib.ui.contentassist.antlr.internal;
 
 import java.io.InputStream;
 import org.eclipse.xtext.*;
@@ -42,18 +42,18 @@
 }
 
 @parser::members {
- 
+
  	private OCLstdlibGrammarAccess grammarAccess;
- 	
+
     public void setGrammarAccess(OCLstdlibGrammarAccess grammarAccess) {
     	this.grammarAccess = grammarAccess;
     }
-    
+
     @Override
     protected Grammar getGrammar() {
     	return grammarAccess.getGrammar();
     }
-    
+
     @Override
     protected String getValueForTokenName(String tokenName) {
     	return tokenName;
@@ -65,12 +65,12 @@
 
 
 // Entry rule entryRuleLibrary
-entryRuleLibrary 
+entryRuleLibrary
 :
 { before(grammarAccess.getLibraryRule()); }
 	 ruleLibrary
-{ after(grammarAccess.getLibraryRule()); } 
-	 EOF 
+{ after(grammarAccess.getLibraryRule()); }
+	 EOF
 ;
 
 // Rule Library
@@ -93,12 +93,12 @@
 
 
 // Entry rule entryRuleIdentifier
-entryRuleIdentifier 
+entryRuleIdentifier
 :
 { before(grammarAccess.getIdentifierRule()); }
 	 ruleIdentifier
-{ after(grammarAccess.getIdentifierRule()); } 
-	 EOF 
+{ after(grammarAccess.getIdentifierRule()); }
+	 EOF
 ;
 
 // Rule Identifier
@@ -121,12 +121,12 @@
 
 
 // Entry rule entryRuleRestrictedKeywords
-entryRuleRestrictedKeywords 
+entryRuleRestrictedKeywords
 :
 { before(grammarAccess.getRestrictedKeywordsRule()); }
 	 ruleRestrictedKeywords
-{ after(grammarAccess.getRestrictedKeywordsRule()); } 
-	 EOF 
+{ after(grammarAccess.getRestrictedKeywordsRule()); }
+	 EOF
 ;
 
 // Rule RestrictedKeywords
@@ -149,12 +149,12 @@
 
 
 // Entry rule entryRuleName
-entryRuleName 
+entryRuleName
 :
 { before(grammarAccess.getNameRule()); }
 	 ruleName
-{ after(grammarAccess.getNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getNameRule()); }
+	 EOF
 ;
 
 // Rule Name
@@ -177,12 +177,12 @@
 
 
 // Entry rule entryRuleAnyName
-entryRuleAnyName 
+entryRuleAnyName
 :
 { before(grammarAccess.getAnyNameRule()); }
 	 ruleAnyName
-{ after(grammarAccess.getAnyNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getAnyNameRule()); }
+	 EOF
 ;
 
 // Rule AnyName
@@ -205,12 +205,12 @@
 
 
 // Entry rule entryRuleLibPathNameCS
-entryRuleLibPathNameCS 
+entryRuleLibPathNameCS
 :
 { before(grammarAccess.getLibPathNameCSRule()); }
 	 ruleLibPathNameCS
-{ after(grammarAccess.getLibPathNameCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLibPathNameCSRule()); }
+	 EOF
 ;
 
 // Rule LibPathNameCS
@@ -233,12 +233,12 @@
 
 
 // Entry rule entryRuleLibPathElementCS
-entryRuleLibPathElementCS 
+entryRuleLibPathElementCS
 :
 { before(grammarAccess.getLibPathElementCSRule()); }
 	 ruleLibPathElementCS
-{ after(grammarAccess.getLibPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLibPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule LibPathElementCS
@@ -261,12 +261,12 @@
 
 
 // Entry rule entryRuleAccumulatorCS
-entryRuleAccumulatorCS 
+entryRuleAccumulatorCS
 :
 { before(grammarAccess.getAccumulatorCSRule()); }
 	 ruleAccumulatorCS
-{ after(grammarAccess.getAccumulatorCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getAccumulatorCSRule()); }
+	 EOF
 ;
 
 // Rule AccumulatorCS
@@ -289,12 +289,12 @@
 
 
 // Entry rule entryRuleAnnotationCS
-entryRuleAnnotationCS 
+entryRuleAnnotationCS
 :
 { before(grammarAccess.getAnnotationCSRule()); }
 	 ruleAnnotationCS
-{ after(grammarAccess.getAnnotationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getAnnotationCSRule()); }
+	 EOF
 ;
 
 // Rule AnnotationCS
@@ -317,12 +317,12 @@
 
 
 // Entry rule entryRuleAnnotationElementCS
-entryRuleAnnotationElementCS 
+entryRuleAnnotationElementCS
 :
 { before(grammarAccess.getAnnotationElementCSRule()); }
 	 ruleAnnotationElementCS
-{ after(grammarAccess.getAnnotationElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getAnnotationElementCSRule()); }
+	 EOF
 ;
 
 // Rule AnnotationElementCS
@@ -345,12 +345,12 @@
 
 
 // Entry rule entryRuleLibClassCS
-entryRuleLibClassCS 
+entryRuleLibClassCS
 :
 { before(grammarAccess.getLibClassCSRule()); }
 	 ruleLibClassCS
-{ after(grammarAccess.getLibClassCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLibClassCSRule()); }
+	 EOF
 ;
 
 // Rule LibClassCS
@@ -373,12 +373,12 @@
 
 
 // Entry rule entryRuleClassCS
-entryRuleClassCS 
+entryRuleClassCS
 :
 { before(grammarAccess.getClassCSRule()); }
 	 ruleClassCS
-{ after(grammarAccess.getClassCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getClassCSRule()); }
+	 EOF
 ;
 
 // Rule ClassCS
@@ -401,12 +401,12 @@
 
 
 // Entry rule entryRuleDetailCS
-entryRuleDetailCS 
+entryRuleDetailCS
 :
 { before(grammarAccess.getDetailCSRule()); }
 	 ruleDetailCS
-{ after(grammarAccess.getDetailCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getDetailCSRule()); }
+	 EOF
 ;
 
 // Rule DetailCS
@@ -429,12 +429,12 @@
 
 
 // Entry rule entryRuleDocumentationCS
-entryRuleDocumentationCS 
+entryRuleDocumentationCS
 :
 { before(grammarAccess.getDocumentationCSRule()); }
 	 ruleDocumentationCS
-{ after(grammarAccess.getDocumentationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getDocumentationCSRule()); }
+	 EOF
 ;
 
 // Rule DocumentationCS
@@ -457,12 +457,12 @@
 
 
 // Entry rule entryRuleImportCS
-entryRuleImportCS 
+entryRuleImportCS
 :
 { before(grammarAccess.getImportCSRule()); }
 	 ruleImportCS
-{ after(grammarAccess.getImportCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getImportCSRule()); }
+	 EOF
 ;
 
 // Rule ImportCS
@@ -485,12 +485,12 @@
 
 
 // Entry rule entryRuleInvCS
-entryRuleInvCS 
+entryRuleInvCS
 :
 { before(grammarAccess.getInvCSRule()); }
 	 ruleInvCS
-{ after(grammarAccess.getInvCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getInvCSRule()); }
+	 EOF
 ;
 
 // Rule InvCS
@@ -513,12 +513,12 @@
 
 
 // Entry rule entryRuleLibCoercionCS
-entryRuleLibCoercionCS 
+entryRuleLibCoercionCS
 :
 { before(grammarAccess.getLibCoercionCSRule()); }
 	 ruleLibCoercionCS
-{ after(grammarAccess.getLibCoercionCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLibCoercionCSRule()); }
+	 EOF
 ;
 
 // Rule LibCoercionCS
@@ -541,12 +541,12 @@
 
 
 // Entry rule entryRuleLibIterationCS
-entryRuleLibIterationCS 
+entryRuleLibIterationCS
 :
 { before(grammarAccess.getLibIterationCSRule()); }
 	 ruleLibIterationCS
-{ after(grammarAccess.getLibIterationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLibIterationCSRule()); }
+	 EOF
 ;
 
 // Rule LibIterationCS
@@ -569,12 +569,12 @@
 
 
 // Entry rule entryRuleIteratorCS
-entryRuleIteratorCS 
+entryRuleIteratorCS
 :
 { before(grammarAccess.getIteratorCSRule()); }
 	 ruleIteratorCS
-{ after(grammarAccess.getIteratorCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getIteratorCSRule()); }
+	 EOF
 ;
 
 // Rule IteratorCS
@@ -597,12 +597,12 @@
 
 
 // Entry rule entryRuleLambdaTypeCS
-entryRuleLambdaTypeCS 
+entryRuleLambdaTypeCS
 :
 { before(grammarAccess.getLambdaTypeCSRule()); }
 	 ruleLambdaTypeCS
-{ after(grammarAccess.getLambdaTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLambdaTypeCSRule()); }
+	 EOF
 ;
 
 // Rule LambdaTypeCS
@@ -625,12 +625,12 @@
 
 
 // Entry rule entryRuleLambdaContextTypeRefCS
-entryRuleLambdaContextTypeRefCS 
+entryRuleLambdaContextTypeRefCS
 :
 { before(grammarAccess.getLambdaContextTypeRefCSRule()); }
 	 ruleLambdaContextTypeRefCS
-{ after(grammarAccess.getLambdaContextTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLambdaContextTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule LambdaContextTypeRefCS
@@ -653,12 +653,12 @@
 
 
 // Entry rule entryRuleOperationCS
-entryRuleOperationCS 
+entryRuleOperationCS
 :
 { before(grammarAccess.getOperationCSRule()); }
 	 ruleOperationCS
-{ after(grammarAccess.getOperationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getOperationCSRule()); }
+	 EOF
 ;
 
 // Rule OperationCS
@@ -681,12 +681,12 @@
 
 
 // Entry rule entryRuleLibOperationCS
-entryRuleLibOperationCS 
+entryRuleLibOperationCS
 :
 { before(grammarAccess.getLibOperationCSRule()); }
 	 ruleLibOperationCS
-{ after(grammarAccess.getLibOperationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLibOperationCSRule()); }
+	 EOF
 ;
 
 // Rule LibOperationCS
@@ -709,12 +709,12 @@
 
 
 // Entry rule entryRuleLibPackageCS
-entryRuleLibPackageCS 
+entryRuleLibPackageCS
 :
 { before(grammarAccess.getLibPackageCSRule()); }
 	 ruleLibPackageCS
-{ after(grammarAccess.getLibPackageCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLibPackageCSRule()); }
+	 EOF
 ;
 
 // Rule LibPackageCS
@@ -737,12 +737,12 @@
 
 
 // Entry rule entryRulePackageCS
-entryRulePackageCS 
+entryRulePackageCS
 :
 { before(grammarAccess.getPackageCSRule()); }
 	 rulePackageCS
-{ after(grammarAccess.getPackageCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPackageCSRule()); }
+	 EOF
 ;
 
 // Rule PackageCS
@@ -765,12 +765,12 @@
 
 
 // Entry rule entryRuleParameterCS
-entryRuleParameterCS 
+entryRuleParameterCS
 :
 { before(grammarAccess.getParameterCSRule()); }
 	 ruleParameterCS
-{ after(grammarAccess.getParameterCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getParameterCSRule()); }
+	 EOF
 ;
 
 // Rule ParameterCS
@@ -793,12 +793,12 @@
 
 
 // Entry rule entryRuleLibPropertyCS
-entryRuleLibPropertyCS 
+entryRuleLibPropertyCS
 :
 { before(grammarAccess.getLibPropertyCSRule()); }
 	 ruleLibPropertyCS
-{ after(grammarAccess.getLibPropertyCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLibPropertyCSRule()); }
+	 EOF
 ;
 
 // Rule LibPropertyCS
@@ -821,12 +821,12 @@
 
 
 // Entry rule entryRulePostCS
-entryRulePostCS 
+entryRulePostCS
 :
 { before(grammarAccess.getPostCSRule()); }
 	 rulePostCS
-{ after(grammarAccess.getPostCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPostCSRule()); }
+	 EOF
 ;
 
 // Rule PostCS
@@ -849,12 +849,12 @@
 
 
 // Entry rule entryRulePreCS
-entryRulePreCS 
+entryRulePreCS
 :
 { before(grammarAccess.getPreCSRule()); }
 	 rulePreCS
-{ after(grammarAccess.getPreCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPreCSRule()); }
+	 EOF
 ;
 
 // Rule PreCS
@@ -877,12 +877,12 @@
 
 
 // Entry rule entryRulePrecedenceCS
-entryRulePrecedenceCS 
+entryRulePrecedenceCS
 :
 { before(grammarAccess.getPrecedenceCSRule()); }
 	 rulePrecedenceCS
-{ after(grammarAccess.getPrecedenceCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrecedenceCSRule()); }
+	 EOF
 ;
 
 // Rule PrecedenceCS
@@ -905,12 +905,12 @@
 
 
 // Entry rule entryRuleSpecificationCS
-entryRuleSpecificationCS 
+entryRuleSpecificationCS
 :
 { before(grammarAccess.getSpecificationCSRule()); }
 	 ruleSpecificationCS
-{ after(grammarAccess.getSpecificationCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getSpecificationCSRule()); }
+	 EOF
 ;
 
 // Rule SpecificationCS
@@ -933,12 +933,12 @@
 
 
 // Entry rule entryRuleTypedMultiplicityRefCS
-entryRuleTypedMultiplicityRefCS 
+entryRuleTypedMultiplicityRefCS
 :
 { before(grammarAccess.getTypedMultiplicityRefCSRule()); }
 	 ruleTypedMultiplicityRefCS
-{ after(grammarAccess.getTypedMultiplicityRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypedMultiplicityRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypedMultiplicityRefCS
@@ -961,12 +961,12 @@
 
 
 // Entry rule entryRuleTypedRefCS
-entryRuleTypedRefCS 
+entryRuleTypedRefCS
 :
 { before(grammarAccess.getTypedRefCSRule()); }
 	 ruleTypedRefCS
-{ after(grammarAccess.getTypedRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypedRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypedRefCS
@@ -989,12 +989,12 @@
 
 
 // Entry rule entryRuleTypedTypeRefCS
-entryRuleTypedTypeRefCS 
+entryRuleTypedTypeRefCS
 :
 { before(grammarAccess.getTypedTypeRefCSRule()); }
 	 ruleTypedTypeRefCS
-{ after(grammarAccess.getTypedTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypedTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypedTypeRefCS
@@ -1017,12 +1017,12 @@
 
 
 // Entry rule entryRuleTuplePartCS
-entryRuleTuplePartCS 
+entryRuleTuplePartCS
 :
 { before(grammarAccess.getTuplePartCSRule()); }
 	 ruleTuplePartCS
-{ after(grammarAccess.getTuplePartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTuplePartCSRule()); }
+	 EOF
 ;
 
 // Rule TuplePartCS
@@ -1047,12 +1047,12 @@
 
 
 // Entry rule entryRuleEssentialOCLReservedKeyword
-entryRuleEssentialOCLReservedKeyword 
+entryRuleEssentialOCLReservedKeyword
 :
 { before(grammarAccess.getEssentialOCLReservedKeywordRule()); }
 	 ruleEssentialOCLReservedKeyword
-{ after(grammarAccess.getEssentialOCLReservedKeywordRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLReservedKeywordRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLReservedKeyword
@@ -1075,12 +1075,12 @@
 
 
 // Entry rule entryRuleEssentialOCLUnaryOperatorName
-entryRuleEssentialOCLUnaryOperatorName 
+entryRuleEssentialOCLUnaryOperatorName
 :
 { before(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); }
 	 ruleEssentialOCLUnaryOperatorName
-{ after(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnaryOperatorName
@@ -1103,12 +1103,12 @@
 
 
 // Entry rule entryRuleEssentialOCLInfixOperatorName
-entryRuleEssentialOCLInfixOperatorName 
+entryRuleEssentialOCLInfixOperatorName
 :
 { before(grammarAccess.getEssentialOCLInfixOperatorNameRule()); }
 	 ruleEssentialOCLInfixOperatorName
-{ after(grammarAccess.getEssentialOCLInfixOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLInfixOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLInfixOperatorName
@@ -1131,12 +1131,12 @@
 
 
 // Entry rule entryRuleEssentialOCLNavigationOperatorName
-entryRuleEssentialOCLNavigationOperatorName 
+entryRuleEssentialOCLNavigationOperatorName
 :
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); }
 	 ruleEssentialOCLNavigationOperatorName
-{ after(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLNavigationOperatorName
@@ -1159,12 +1159,12 @@
 
 
 // Entry rule entryRuleBinaryOperatorName
-entryRuleBinaryOperatorName 
+entryRuleBinaryOperatorName
 :
 { before(grammarAccess.getBinaryOperatorNameRule()); }
 	 ruleBinaryOperatorName
-{ after(grammarAccess.getBinaryOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getBinaryOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule BinaryOperatorName
@@ -1187,12 +1187,12 @@
 
 
 // Entry rule entryRuleInfixOperatorName
-entryRuleInfixOperatorName 
+entryRuleInfixOperatorName
 :
 { before(grammarAccess.getInfixOperatorNameRule()); }
 	 ruleInfixOperatorName
-{ after(grammarAccess.getInfixOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getInfixOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule InfixOperatorName
@@ -1215,12 +1215,12 @@
 
 
 // Entry rule entryRuleNavigationOperatorName
-entryRuleNavigationOperatorName 
+entryRuleNavigationOperatorName
 :
 { before(grammarAccess.getNavigationOperatorNameRule()); }
 	 ruleNavigationOperatorName
-{ after(grammarAccess.getNavigationOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigationOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule NavigationOperatorName
@@ -1243,12 +1243,12 @@
 
 
 // Entry rule entryRuleUnaryOperatorName
-entryRuleUnaryOperatorName 
+entryRuleUnaryOperatorName
 :
 { before(grammarAccess.getUnaryOperatorNameRule()); }
 	 ruleUnaryOperatorName
-{ after(grammarAccess.getUnaryOperatorNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnaryOperatorNameRule()); }
+	 EOF
 ;
 
 // Rule UnaryOperatorName
@@ -1271,12 +1271,12 @@
 
 
 // Entry rule entryRuleEssentialOCLUnrestrictedName
-entryRuleEssentialOCLUnrestrictedName 
+entryRuleEssentialOCLUnrestrictedName
 :
 { before(grammarAccess.getEssentialOCLUnrestrictedNameRule()); }
 	 ruleEssentialOCLUnrestrictedName
-{ after(grammarAccess.getEssentialOCLUnrestrictedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLUnrestrictedNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnrestrictedName
@@ -1299,12 +1299,12 @@
 
 
 // Entry rule entryRuleUnrestrictedName
-entryRuleUnrestrictedName 
+entryRuleUnrestrictedName
 :
 { before(grammarAccess.getUnrestrictedNameRule()); }
 	 ruleUnrestrictedName
-{ after(grammarAccess.getUnrestrictedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnrestrictedNameRule()); }
+	 EOF
 ;
 
 // Rule UnrestrictedName
@@ -1327,12 +1327,12 @@
 
 
 // Entry rule entryRuleEssentialOCLUnreservedName
-entryRuleEssentialOCLUnreservedName 
+entryRuleEssentialOCLUnreservedName
 :
 { before(grammarAccess.getEssentialOCLUnreservedNameRule()); }
 	 ruleEssentialOCLUnreservedName
-{ after(grammarAccess.getEssentialOCLUnreservedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getEssentialOCLUnreservedNameRule()); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnreservedName
@@ -1355,12 +1355,12 @@
 
 
 // Entry rule entryRuleUnreservedName
-entryRuleUnreservedName 
+entryRuleUnreservedName
 :
 { before(grammarAccess.getUnreservedNameRule()); }
 	 ruleUnreservedName
-{ after(grammarAccess.getUnreservedNameRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnreservedNameRule()); }
+	 EOF
 ;
 
 // Rule UnreservedName
@@ -1383,12 +1383,12 @@
 
 
 // Entry rule entryRuleURIPathNameCS
-entryRuleURIPathNameCS 
+entryRuleURIPathNameCS
 :
 { before(grammarAccess.getURIPathNameCSRule()); }
 	 ruleURIPathNameCS
-{ after(grammarAccess.getURIPathNameCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getURIPathNameCSRule()); }
+	 EOF
 ;
 
 // Rule URIPathNameCS
@@ -1411,12 +1411,12 @@
 
 
 // Entry rule entryRuleURIFirstPathElementCS
-entryRuleURIFirstPathElementCS 
+entryRuleURIFirstPathElementCS
 :
 { before(grammarAccess.getURIFirstPathElementCSRule()); }
 	 ruleURIFirstPathElementCS
-{ after(grammarAccess.getURIFirstPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getURIFirstPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule URIFirstPathElementCS
@@ -1439,12 +1439,12 @@
 
 
 // Entry rule entryRulePrimitiveTypeIdentifier
-entryRulePrimitiveTypeIdentifier 
+entryRulePrimitiveTypeIdentifier
 :
 { before(grammarAccess.getPrimitiveTypeIdentifierRule()); }
 	 rulePrimitiveTypeIdentifier
-{ after(grammarAccess.getPrimitiveTypeIdentifierRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimitiveTypeIdentifierRule()); }
+	 EOF
 ;
 
 // Rule PrimitiveTypeIdentifier
@@ -1467,12 +1467,12 @@
 
 
 // Entry rule entryRulePrimitiveTypeCS
-entryRulePrimitiveTypeCS 
+entryRulePrimitiveTypeCS
 :
 { before(grammarAccess.getPrimitiveTypeCSRule()); }
 	 rulePrimitiveTypeCS
-{ after(grammarAccess.getPrimitiveTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimitiveTypeCSRule()); }
+	 EOF
 ;
 
 // Rule PrimitiveTypeCS
@@ -1495,12 +1495,12 @@
 
 
 // Entry rule entryRuleCollectionTypeIdentifier
-entryRuleCollectionTypeIdentifier 
+entryRuleCollectionTypeIdentifier
 :
 { before(grammarAccess.getCollectionTypeIdentifierRule()); }
 	 ruleCollectionTypeIdentifier
-{ after(grammarAccess.getCollectionTypeIdentifierRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionTypeIdentifierRule()); }
+	 EOF
 ;
 
 // Rule CollectionTypeIdentifier
@@ -1523,12 +1523,12 @@
 
 
 // Entry rule entryRuleCollectionTypeCS
-entryRuleCollectionTypeCS 
+entryRuleCollectionTypeCS
 :
 { before(grammarAccess.getCollectionTypeCSRule()); }
 	 ruleCollectionTypeCS
-{ after(grammarAccess.getCollectionTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionTypeCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionTypeCS
@@ -1551,12 +1551,12 @@
 
 
 // Entry rule entryRuleMapTypeCS
-entryRuleMapTypeCS 
+entryRuleMapTypeCS
 :
 { before(grammarAccess.getMapTypeCSRule()); }
 	 ruleMapTypeCS
-{ after(grammarAccess.getMapTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMapTypeCSRule()); }
+	 EOF
 ;
 
 // Rule MapTypeCS
@@ -1579,12 +1579,12 @@
 
 
 // Entry rule entryRuleTupleTypeCS
-entryRuleTupleTypeCS 
+entryRuleTupleTypeCS
 :
 { before(grammarAccess.getTupleTypeCSRule()); }
 	 ruleTupleTypeCS
-{ after(grammarAccess.getTupleTypeCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTupleTypeCSRule()); }
+	 EOF
 ;
 
 // Rule TupleTypeCS
@@ -1607,12 +1607,12 @@
 
 
 // Entry rule entryRuleCollectionLiteralExpCS
-entryRuleCollectionLiteralExpCS 
+entryRuleCollectionLiteralExpCS
 :
 { before(grammarAccess.getCollectionLiteralExpCSRule()); }
 	 ruleCollectionLiteralExpCS
-{ after(grammarAccess.getCollectionLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionLiteralExpCS
@@ -1635,12 +1635,12 @@
 
 
 // Entry rule entryRuleCollectionLiteralPartCS
-entryRuleCollectionLiteralPartCS 
+entryRuleCollectionLiteralPartCS
 :
 { before(grammarAccess.getCollectionLiteralPartCSRule()); }
 	 ruleCollectionLiteralPartCS
-{ after(grammarAccess.getCollectionLiteralPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionLiteralPartCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionLiteralPartCS
@@ -1663,12 +1663,12 @@
 
 
 // Entry rule entryRuleCollectionPatternCS
-entryRuleCollectionPatternCS 
+entryRuleCollectionPatternCS
 :
 { before(grammarAccess.getCollectionPatternCSRule()); }
 	 ruleCollectionPatternCS
-{ after(grammarAccess.getCollectionPatternCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCollectionPatternCSRule()); }
+	 EOF
 ;
 
 // Rule CollectionPatternCS
@@ -1691,12 +1691,12 @@
 
 
 // Entry rule entryRuleShadowPartCS
-entryRuleShadowPartCS 
+entryRuleShadowPartCS
 :
 { before(grammarAccess.getShadowPartCSRule()); }
 	 ruleShadowPartCS
-{ after(grammarAccess.getShadowPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getShadowPartCSRule()); }
+	 EOF
 ;
 
 // Rule ShadowPartCS
@@ -1719,12 +1719,12 @@
 
 
 // Entry rule entryRulePatternExpCS
-entryRulePatternExpCS 
+entryRulePatternExpCS
 :
 { before(grammarAccess.getPatternExpCSRule()); }
 	 rulePatternExpCS
-{ after(grammarAccess.getPatternExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPatternExpCSRule()); }
+	 EOF
 ;
 
 // Rule PatternExpCS
@@ -1747,12 +1747,12 @@
 
 
 // Entry rule entryRuleLambdaLiteralExpCS
-entryRuleLambdaLiteralExpCS 
+entryRuleLambdaLiteralExpCS
 :
 { before(grammarAccess.getLambdaLiteralExpCSRule()); }
 	 ruleLambdaLiteralExpCS
-{ after(grammarAccess.getLambdaLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLambdaLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule LambdaLiteralExpCS
@@ -1775,12 +1775,12 @@
 
 
 // Entry rule entryRuleMapLiteralExpCS
-entryRuleMapLiteralExpCS 
+entryRuleMapLiteralExpCS
 :
 { before(grammarAccess.getMapLiteralExpCSRule()); }
 	 ruleMapLiteralExpCS
-{ after(grammarAccess.getMapLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMapLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule MapLiteralExpCS
@@ -1803,12 +1803,12 @@
 
 
 // Entry rule entryRuleMapLiteralPartCS
-entryRuleMapLiteralPartCS 
+entryRuleMapLiteralPartCS
 :
 { before(grammarAccess.getMapLiteralPartCSRule()); }
 	 ruleMapLiteralPartCS
-{ after(grammarAccess.getMapLiteralPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMapLiteralPartCSRule()); }
+	 EOF
 ;
 
 // Rule MapLiteralPartCS
@@ -1831,12 +1831,12 @@
 
 
 // Entry rule entryRulePrimitiveLiteralExpCS
-entryRulePrimitiveLiteralExpCS 
+entryRulePrimitiveLiteralExpCS
 :
 { before(grammarAccess.getPrimitiveLiteralExpCSRule()); }
 	 rulePrimitiveLiteralExpCS
-{ after(grammarAccess.getPrimitiveLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimitiveLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrimitiveLiteralExpCS
@@ -1859,12 +1859,12 @@
 
 
 // Entry rule entryRuleTupleLiteralExpCS
-entryRuleTupleLiteralExpCS 
+entryRuleTupleLiteralExpCS
 :
 { before(grammarAccess.getTupleLiteralExpCSRule()); }
 	 ruleTupleLiteralExpCS
-{ after(grammarAccess.getTupleLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTupleLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule TupleLiteralExpCS
@@ -1887,12 +1887,12 @@
 
 
 // Entry rule entryRuleTupleLiteralPartCS
-entryRuleTupleLiteralPartCS 
+entryRuleTupleLiteralPartCS
 :
 { before(grammarAccess.getTupleLiteralPartCSRule()); }
 	 ruleTupleLiteralPartCS
-{ after(grammarAccess.getTupleLiteralPartCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTupleLiteralPartCSRule()); }
+	 EOF
 ;
 
 // Rule TupleLiteralPartCS
@@ -1915,12 +1915,12 @@
 
 
 // Entry rule entryRuleNumberLiteralExpCS
-entryRuleNumberLiteralExpCS 
+entryRuleNumberLiteralExpCS
 :
 { before(grammarAccess.getNumberLiteralExpCSRule()); }
 	 ruleNumberLiteralExpCS
-{ after(grammarAccess.getNumberLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNumberLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule NumberLiteralExpCS
@@ -1943,12 +1943,12 @@
 
 
 // Entry rule entryRuleStringLiteralExpCS
-entryRuleStringLiteralExpCS 
+entryRuleStringLiteralExpCS
 :
 { before(grammarAccess.getStringLiteralExpCSRule()); }
 	 ruleStringLiteralExpCS
-{ after(grammarAccess.getStringLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getStringLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule StringLiteralExpCS
@@ -1978,12 +1978,12 @@
 
 
 // Entry rule entryRuleBooleanLiteralExpCS
-entryRuleBooleanLiteralExpCS 
+entryRuleBooleanLiteralExpCS
 :
 { before(grammarAccess.getBooleanLiteralExpCSRule()); }
 	 ruleBooleanLiteralExpCS
-{ after(grammarAccess.getBooleanLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getBooleanLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule BooleanLiteralExpCS
@@ -2006,12 +2006,12 @@
 
 
 // Entry rule entryRuleUnlimitedNaturalLiteralExpCS
-entryRuleUnlimitedNaturalLiteralExpCS 
+entryRuleUnlimitedNaturalLiteralExpCS
 :
 { before(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); }
 	 ruleUnlimitedNaturalLiteralExpCS
-{ after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule UnlimitedNaturalLiteralExpCS
@@ -2034,12 +2034,12 @@
 
 
 // Entry rule entryRuleInvalidLiteralExpCS
-entryRuleInvalidLiteralExpCS 
+entryRuleInvalidLiteralExpCS
 :
 { before(grammarAccess.getInvalidLiteralExpCSRule()); }
 	 ruleInvalidLiteralExpCS
-{ after(grammarAccess.getInvalidLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getInvalidLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule InvalidLiteralExpCS
@@ -2062,12 +2062,12 @@
 
 
 // Entry rule entryRuleNullLiteralExpCS
-entryRuleNullLiteralExpCS 
+entryRuleNullLiteralExpCS
 :
 { before(grammarAccess.getNullLiteralExpCSRule()); }
 	 ruleNullLiteralExpCS
-{ after(grammarAccess.getNullLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNullLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule NullLiteralExpCS
@@ -2090,12 +2090,12 @@
 
 
 // Entry rule entryRuleTypeLiteralCS
-entryRuleTypeLiteralCS 
+entryRuleTypeLiteralCS
 :
 { before(grammarAccess.getTypeLiteralCSRule()); }
 	 ruleTypeLiteralCS
-{ after(grammarAccess.getTypeLiteralCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeLiteralCSRule()); }
+	 EOF
 ;
 
 // Rule TypeLiteralCS
@@ -2118,12 +2118,12 @@
 
 
 // Entry rule entryRuleTypeLiteralWithMultiplicityCS
-entryRuleTypeLiteralWithMultiplicityCS 
+entryRuleTypeLiteralWithMultiplicityCS
 :
 { before(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); }
 	 ruleTypeLiteralWithMultiplicityCS
-{ after(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); }
+	 EOF
 ;
 
 // Rule TypeLiteralWithMultiplicityCS
@@ -2146,12 +2146,12 @@
 
 
 // Entry rule entryRuleTypeLiteralExpCS
-entryRuleTypeLiteralExpCS 
+entryRuleTypeLiteralExpCS
 :
 { before(grammarAccess.getTypeLiteralExpCSRule()); }
 	 ruleTypeLiteralExpCS
-{ after(grammarAccess.getTypeLiteralExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeLiteralExpCSRule()); }
+	 EOF
 ;
 
 // Rule TypeLiteralExpCS
@@ -2174,12 +2174,12 @@
 
 
 // Entry rule entryRuleTypeNameExpCS
-entryRuleTypeNameExpCS 
+entryRuleTypeNameExpCS
 :
 { before(grammarAccess.getTypeNameExpCSRule()); }
 	 ruleTypeNameExpCS
-{ after(grammarAccess.getTypeNameExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeNameExpCSRule()); }
+	 EOF
 ;
 
 // Rule TypeNameExpCS
@@ -2202,12 +2202,12 @@
 
 
 // Entry rule entryRuleTypeExpCS
-entryRuleTypeExpCS 
+entryRuleTypeExpCS
 :
 { before(grammarAccess.getTypeExpCSRule()); }
 	 ruleTypeExpCS
-{ after(grammarAccess.getTypeExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeExpCSRule()); }
+	 EOF
 ;
 
 // Rule TypeExpCS
@@ -2230,12 +2230,12 @@
 
 
 // Entry rule entryRuleExpCS
-entryRuleExpCS 
+entryRuleExpCS
 :
 { before(grammarAccess.getExpCSRule()); }
 	 ruleExpCS
-{ after(grammarAccess.getExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getExpCSRule()); }
+	 EOF
 ;
 
 // Rule ExpCS
@@ -2258,12 +2258,12 @@
 
 
 // Entry rule entryRulePrefixedLetExpCS
-entryRulePrefixedLetExpCS 
+entryRulePrefixedLetExpCS
 :
 { before(grammarAccess.getPrefixedLetExpCSRule()); }
 	 rulePrefixedLetExpCS
-{ after(grammarAccess.getPrefixedLetExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrefixedLetExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrefixedLetExpCS
@@ -2286,12 +2286,12 @@
 
 
 // Entry rule entryRulePrefixedPrimaryExpCS
-entryRulePrefixedPrimaryExpCS 
+entryRulePrefixedPrimaryExpCS
 :
 { before(grammarAccess.getPrefixedPrimaryExpCSRule()); }
 	 rulePrefixedPrimaryExpCS
-{ after(grammarAccess.getPrefixedPrimaryExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrefixedPrimaryExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrefixedPrimaryExpCS
@@ -2314,12 +2314,12 @@
 
 
 // Entry rule entryRulePrimaryExpCS
-entryRulePrimaryExpCS 
+entryRulePrimaryExpCS
 :
 { before(grammarAccess.getPrimaryExpCSRule()); }
 	 rulePrimaryExpCS
-{ after(grammarAccess.getPrimaryExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPrimaryExpCSRule()); }
+	 EOF
 ;
 
 // Rule PrimaryExpCS
@@ -2342,12 +2342,12 @@
 
 
 // Entry rule entryRuleNameExpCS
-entryRuleNameExpCS 
+entryRuleNameExpCS
 :
 { before(grammarAccess.getNameExpCSRule()); }
 	 ruleNameExpCS
-{ after(grammarAccess.getNameExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNameExpCSRule()); }
+	 EOF
 ;
 
 // Rule NameExpCS
@@ -2370,12 +2370,12 @@
 
 
 // Entry rule entryRuleCurlyBracketedClauseCS
-entryRuleCurlyBracketedClauseCS 
+entryRuleCurlyBracketedClauseCS
 :
 { before(grammarAccess.getCurlyBracketedClauseCSRule()); }
 	 ruleCurlyBracketedClauseCS
-{ after(grammarAccess.getCurlyBracketedClauseCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getCurlyBracketedClauseCSRule()); }
+	 EOF
 ;
 
 // Rule CurlyBracketedClauseCS
@@ -2398,12 +2398,12 @@
 
 
 // Entry rule entryRuleRoundBracketedClauseCS
-entryRuleRoundBracketedClauseCS 
+entryRuleRoundBracketedClauseCS
 :
 { before(grammarAccess.getRoundBracketedClauseCSRule()); }
 	 ruleRoundBracketedClauseCS
-{ after(grammarAccess.getRoundBracketedClauseCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getRoundBracketedClauseCSRule()); }
+	 EOF
 ;
 
 // Rule RoundBracketedClauseCS
@@ -2426,12 +2426,12 @@
 
 
 // Entry rule entryRuleSquareBracketedClauseCS
-entryRuleSquareBracketedClauseCS 
+entryRuleSquareBracketedClauseCS
 :
 { before(grammarAccess.getSquareBracketedClauseCSRule()); }
 	 ruleSquareBracketedClauseCS
-{ after(grammarAccess.getSquareBracketedClauseCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getSquareBracketedClauseCSRule()); }
+	 EOF
 ;
 
 // Rule SquareBracketedClauseCS
@@ -2454,12 +2454,12 @@
 
 
 // Entry rule entryRuleNavigatingArgCS
-entryRuleNavigatingArgCS 
+entryRuleNavigatingArgCS
 :
 { before(grammarAccess.getNavigatingArgCSRule()); }
 	 ruleNavigatingArgCS
-{ after(grammarAccess.getNavigatingArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingArgCS
@@ -2482,12 +2482,12 @@
 
 
 // Entry rule entryRuleNavigatingBarArgCS
-entryRuleNavigatingBarArgCS 
+entryRuleNavigatingBarArgCS
 :
 { before(grammarAccess.getNavigatingBarArgCSRule()); }
 	 ruleNavigatingBarArgCS
-{ after(grammarAccess.getNavigatingBarArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingBarArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingBarArgCS
@@ -2510,12 +2510,12 @@
 
 
 // Entry rule entryRuleNavigatingCommaArgCS
-entryRuleNavigatingCommaArgCS 
+entryRuleNavigatingCommaArgCS
 :
 { before(grammarAccess.getNavigatingCommaArgCSRule()); }
 	 ruleNavigatingCommaArgCS
-{ after(grammarAccess.getNavigatingCommaArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingCommaArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingCommaArgCS
@@ -2538,12 +2538,12 @@
 
 
 // Entry rule entryRuleNavigatingSemiArgCS
-entryRuleNavigatingSemiArgCS 
+entryRuleNavigatingSemiArgCS
 :
 { before(grammarAccess.getNavigatingSemiArgCSRule()); }
 	 ruleNavigatingSemiArgCS
-{ after(grammarAccess.getNavigatingSemiArgCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingSemiArgCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingSemiArgCS
@@ -2566,12 +2566,12 @@
 
 
 // Entry rule entryRuleNavigatingArgExpCS
-entryRuleNavigatingArgExpCS 
+entryRuleNavigatingArgExpCS
 :
 { before(grammarAccess.getNavigatingArgExpCSRule()); }
 	 ruleNavigatingArgExpCS
-{ after(grammarAccess.getNavigatingArgExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNavigatingArgExpCSRule()); }
+	 EOF
 ;
 
 // Rule NavigatingArgExpCS
@@ -2594,12 +2594,12 @@
 
 
 // Entry rule entryRuleIfExpCS
-entryRuleIfExpCS 
+entryRuleIfExpCS
 :
 { before(grammarAccess.getIfExpCSRule()); }
 	 ruleIfExpCS
-{ after(grammarAccess.getIfExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getIfExpCSRule()); }
+	 EOF
 ;
 
 // Rule IfExpCS
@@ -2622,12 +2622,12 @@
 
 
 // Entry rule entryRuleElseIfThenExpCS
-entryRuleElseIfThenExpCS 
+entryRuleElseIfThenExpCS
 :
 { before(grammarAccess.getElseIfThenExpCSRule()); }
 	 ruleElseIfThenExpCS
-{ after(grammarAccess.getElseIfThenExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getElseIfThenExpCSRule()); }
+	 EOF
 ;
 
 // Rule ElseIfThenExpCS
@@ -2650,12 +2650,12 @@
 
 
 // Entry rule entryRuleLetExpCS
-entryRuleLetExpCS 
+entryRuleLetExpCS
 :
 { before(grammarAccess.getLetExpCSRule()); }
 	 ruleLetExpCS
-{ after(grammarAccess.getLetExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLetExpCSRule()); }
+	 EOF
 ;
 
 // Rule LetExpCS
@@ -2678,12 +2678,12 @@
 
 
 // Entry rule entryRuleLetVariableCS
-entryRuleLetVariableCS 
+entryRuleLetVariableCS
 :
 { before(grammarAccess.getLetVariableCSRule()); }
 	 ruleLetVariableCS
-{ after(grammarAccess.getLetVariableCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getLetVariableCSRule()); }
+	 EOF
 ;
 
 // Rule LetVariableCS
@@ -2706,12 +2706,12 @@
 
 
 // Entry rule entryRuleNestedExpCS
-entryRuleNestedExpCS 
+entryRuleNestedExpCS
 :
 { before(grammarAccess.getNestedExpCSRule()); }
 	 ruleNestedExpCS
-{ after(grammarAccess.getNestedExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNestedExpCSRule()); }
+	 EOF
 ;
 
 // Rule NestedExpCS
@@ -2734,12 +2734,12 @@
 
 
 // Entry rule entryRuleSelfExpCS
-entryRuleSelfExpCS 
+entryRuleSelfExpCS
 :
 { before(grammarAccess.getSelfExpCSRule()); }
 	 ruleSelfExpCS
-{ after(grammarAccess.getSelfExpCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getSelfExpCSRule()); }
+	 EOF
 ;
 
 // Rule SelfExpCS
@@ -2762,12 +2762,12 @@
 
 
 // Entry rule entryRuleMultiplicityBoundsCS
-entryRuleMultiplicityBoundsCS 
+entryRuleMultiplicityBoundsCS
 :
 { before(grammarAccess.getMultiplicityBoundsCSRule()); }
 	 ruleMultiplicityBoundsCS
-{ after(grammarAccess.getMultiplicityBoundsCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityBoundsCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityBoundsCS
@@ -2790,12 +2790,12 @@
 
 
 // Entry rule entryRuleMultiplicityCS
-entryRuleMultiplicityCS 
+entryRuleMultiplicityCS
 :
 { before(grammarAccess.getMultiplicityCSRule()); }
 	 ruleMultiplicityCS
-{ after(grammarAccess.getMultiplicityCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityCS
@@ -2818,12 +2818,12 @@
 
 
 // Entry rule entryRuleMultiplicityStringCS
-entryRuleMultiplicityStringCS 
+entryRuleMultiplicityStringCS
 :
 { before(grammarAccess.getMultiplicityStringCSRule()); }
 	 ruleMultiplicityStringCS
-{ after(grammarAccess.getMultiplicityStringCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getMultiplicityStringCSRule()); }
+	 EOF
 ;
 
 // Rule MultiplicityStringCS
@@ -2846,12 +2846,12 @@
 
 
 // Entry rule entryRulePathNameCS
-entryRulePathNameCS 
+entryRulePathNameCS
 :
 { before(grammarAccess.getPathNameCSRule()); }
 	 rulePathNameCS
-{ after(grammarAccess.getPathNameCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getPathNameCSRule()); }
+	 EOF
 ;
 
 // Rule PathNameCS
@@ -2874,12 +2874,12 @@
 
 
 // Entry rule entryRuleFirstPathElementCS
-entryRuleFirstPathElementCS 
+entryRuleFirstPathElementCS
 :
 { before(grammarAccess.getFirstPathElementCSRule()); }
 	 ruleFirstPathElementCS
-{ after(grammarAccess.getFirstPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getFirstPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule FirstPathElementCS
@@ -2902,12 +2902,12 @@
 
 
 // Entry rule entryRuleNextPathElementCS
-entryRuleNextPathElementCS 
+entryRuleNextPathElementCS
 :
 { before(grammarAccess.getNextPathElementCSRule()); }
 	 ruleNextPathElementCS
-{ after(grammarAccess.getNextPathElementCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getNextPathElementCSRule()); }
+	 EOF
 ;
 
 // Rule NextPathElementCS
@@ -2930,12 +2930,12 @@
 
 
 // Entry rule entryRuleTemplateBindingCS
-entryRuleTemplateBindingCS 
+entryRuleTemplateBindingCS
 :
 { before(grammarAccess.getTemplateBindingCSRule()); }
 	 ruleTemplateBindingCS
-{ after(grammarAccess.getTemplateBindingCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTemplateBindingCSRule()); }
+	 EOF
 ;
 
 // Rule TemplateBindingCS
@@ -2958,12 +2958,12 @@
 
 
 // Entry rule entryRuleTemplateParameterSubstitutionCS
-entryRuleTemplateParameterSubstitutionCS 
+entryRuleTemplateParameterSubstitutionCS
 :
 { before(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
 	 ruleTemplateParameterSubstitutionCS
-{ after(grammarAccess.getTemplateParameterSubstitutionCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
+	 EOF
 ;
 
 // Rule TemplateParameterSubstitutionCS
@@ -2986,12 +2986,12 @@
 
 
 // Entry rule entryRuleTemplateSignatureCS
-entryRuleTemplateSignatureCS 
+entryRuleTemplateSignatureCS
 :
 { before(grammarAccess.getTemplateSignatureCSRule()); }
 	 ruleTemplateSignatureCS
-{ after(grammarAccess.getTemplateSignatureCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTemplateSignatureCSRule()); }
+	 EOF
 ;
 
 // Rule TemplateSignatureCS
@@ -3014,12 +3014,12 @@
 
 
 // Entry rule entryRuleTypeParameterCS
-entryRuleTypeParameterCS 
+entryRuleTypeParameterCS
 :
 { before(grammarAccess.getTypeParameterCSRule()); }
 	 ruleTypeParameterCS
-{ after(grammarAccess.getTypeParameterCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeParameterCSRule()); }
+	 EOF
 ;
 
 // Rule TypeParameterCS
@@ -3042,12 +3042,12 @@
 
 
 // Entry rule entryRuleTypeRefCS
-entryRuleTypeRefCS 
+entryRuleTypeRefCS
 :
 { before(grammarAccess.getTypeRefCSRule()); }
 	 ruleTypeRefCS
-{ after(grammarAccess.getTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule TypeRefCS
@@ -3070,12 +3070,12 @@
 
 
 // Entry rule entryRuleWildcardTypeRefCS
-entryRuleWildcardTypeRefCS 
+entryRuleWildcardTypeRefCS
 :
 { before(grammarAccess.getWildcardTypeRefCSRule()); }
 	 ruleWildcardTypeRefCS
-{ after(grammarAccess.getWildcardTypeRefCSRule()); } 
-	 EOF 
+{ after(grammarAccess.getWildcardTypeRefCSRule()); }
+	 EOF
 ;
 
 // Rule WildcardTypeRefCS
@@ -3098,12 +3098,12 @@
 
 
 // Entry rule entryRuleID
-entryRuleID 
+entryRuleID
 :
 { before(grammarAccess.getIDRule()); }
 	 ruleID
-{ after(grammarAccess.getIDRule()); } 
-	 EOF 
+{ after(grammarAccess.getIDRule()); }
+	 EOF
 ;
 
 // Rule ID
@@ -3126,12 +3126,12 @@
 
 
 // Entry rule entryRuleLOWER
-entryRuleLOWER 
+entryRuleLOWER
 :
 { before(grammarAccess.getLOWERRule()); }
 	 ruleLOWER
-{ after(grammarAccess.getLOWERRule()); } 
-	 EOF 
+{ after(grammarAccess.getLOWERRule()); }
+	 EOF
 ;
 
 // Rule LOWER
@@ -3154,12 +3154,12 @@
 
 
 // Entry rule entryRuleNUMBER_LITERAL
-entryRuleNUMBER_LITERAL 
+entryRuleNUMBER_LITERAL
 :
 { before(grammarAccess.getNUMBER_LITERALRule()); }
 	 ruleNUMBER_LITERAL
-{ after(grammarAccess.getNUMBER_LITERALRule()); } 
-	 EOF 
+{ after(grammarAccess.getNUMBER_LITERALRule()); }
+	 EOF
 ;
 
 // Rule NUMBER_LITERAL
@@ -3182,12 +3182,12 @@
 
 
 // Entry rule entryRuleStringLiteral
-entryRuleStringLiteral 
+entryRuleStringLiteral
 :
 { before(grammarAccess.getStringLiteralRule()); }
 	 ruleStringLiteral
-{ after(grammarAccess.getStringLiteralRule()); } 
-	 EOF 
+{ after(grammarAccess.getStringLiteralRule()); }
+	 EOF
 ;
 
 // Rule StringLiteral
@@ -3210,12 +3210,12 @@
 
 
 // Entry rule entryRuleUPPER
-entryRuleUPPER 
+entryRuleUPPER
 :
 { before(grammarAccess.getUPPERRule()); }
 	 ruleUPPER
-{ after(grammarAccess.getUPPERRule()); } 
-	 EOF 
+{ after(grammarAccess.getUPPERRule()); }
+	 EOF
 ;
 
 // Rule UPPER
@@ -3238,12 +3238,12 @@
 
 
 // Entry rule entryRuleURI
-entryRuleURI 
+entryRuleURI
 :
 { before(grammarAccess.getURIRule()); }
 	 ruleURI
-{ after(grammarAccess.getURIRule()); } 
-	 EOF 
+{ after(grammarAccess.getURIRule()); }
+	 EOF
 ;
 
 // Rule URI
@@ -3296,7 +3296,7 @@
 (
 { before(grammarAccess.getRestrictedKeywordsAccess().getAbstractKeyword_0()); }
 
-	'abstract' 
+	'abstract'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getAbstractKeyword_0()); }
 )
@@ -3304,7 +3304,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getAnnotationKeyword_1()); }
 
-	'annotation' 
+	'annotation'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getAnnotationKeyword_1()); }
 )
@@ -3312,7 +3312,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getConformsToKeyword_2()); }
 
-	'conformsTo' 
+	'conformsTo'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getConformsToKeyword_2()); }
 )
@@ -3320,7 +3320,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getDocumentationKeyword_3()); }
 
-	'documentation' 
+	'documentation'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getDocumentationKeyword_3()); }
 )
@@ -3328,7 +3328,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getExtendsKeyword_4()); }
 
-	'extends' 
+	'extends'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getExtendsKeyword_4()); }
 )
@@ -3336,7 +3336,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getImportKeyword_5()); }
 
-	'import' 
+	'import'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getImportKeyword_5()); }
 )
@@ -3344,7 +3344,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getInvKeyword_6()); }
 
-	'inv' 
+	'inv'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getInvKeyword_6()); }
 )
@@ -3352,7 +3352,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getInvalidatingKeyword_7()); }
 
-	'invalidating' 
+	'invalidating'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getInvalidatingKeyword_7()); }
 )
@@ -3360,7 +3360,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getIterationKeyword_8()); }
 
-	'iteration' 
+	'iteration'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getIterationKeyword_8()); }
 )
@@ -3368,7 +3368,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getLeftKeyword_9()); }
 
-	'left' 
+	'left'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getLeftKeyword_9()); }
 )
@@ -3376,7 +3376,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getLibraryKeyword_10()); }
 
-	'library' 
+	'library'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getLibraryKeyword_10()); }
 )
@@ -3384,7 +3384,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getOperationKeyword_11()); }
 
-	'operation' 
+	'operation'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getOperationKeyword_11()); }
 )
@@ -3392,7 +3392,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getPackageKeyword_12()); }
 
-	'package' 
+	'package'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getPackageKeyword_12()); }
 )
@@ -3400,7 +3400,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getPostKeyword_13()); }
 
-	'post' 
+	'post'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getPostKeyword_13()); }
 )
@@ -3408,7 +3408,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getPreKeyword_14()); }
 
-	'pre' 
+	'pre'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getPreKeyword_14()); }
 )
@@ -3416,7 +3416,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getPrecedenceKeyword_15()); }
 
-	'precedence' 
+	'precedence'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getPrecedenceKeyword_15()); }
 )
@@ -3424,7 +3424,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getPropertyKeyword_16()); }
 
-	'property' 
+	'property'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getPropertyKeyword_16()); }
 )
@@ -3432,7 +3432,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getRightKeyword_17()); }
 
-	'right' 
+	'right'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getRightKeyword_17()); }
 )
@@ -3440,7 +3440,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getStaticKeyword_18()); }
 
-	'static' 
+	'static'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getStaticKeyword_18()); }
 )
@@ -3448,7 +3448,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getTypeKeyword_19()); }
 
-	'type' 
+	'type'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getTypeKeyword_19()); }
 )
@@ -3456,7 +3456,7 @@
     |(
 { before(grammarAccess.getRestrictedKeywordsAccess().getValidatingKeyword_20()); }
 
-	'validating' 
+	'validating'
 
 { after(grammarAccess.getRestrictedKeywordsAccess().getValidatingKeyword_20()); }
 )
@@ -3520,7 +3520,7 @@
     |(
 { before(grammarAccess.getAnyNameAccess().getLambdaKeyword_1()); }
 
-	'Lambda' 
+	'Lambda'
 
 { after(grammarAccess.getAnyNameAccess().getLambdaKeyword_1()); }
 )
@@ -3528,7 +3528,7 @@
     |(
 { before(grammarAccess.getAnyNameAccess().getMapKeyword_2()); }
 
-	'Map' 
+	'Map'
 
 { after(grammarAccess.getAnyNameAccess().getMapKeyword_2()); }
 )
@@ -3536,7 +3536,7 @@
     |(
 { before(grammarAccess.getAnyNameAccess().getTupleKeyword_3()); }
 
-	'Tuple' 
+	'Tuple'
 
 { after(grammarAccess.getAnyNameAccess().getTupleKeyword_3()); }
 )
@@ -3582,7 +3582,7 @@
     |(
 { before(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_3_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_3_1()); }
 )
@@ -3706,7 +3706,7 @@
     |(
 { before(grammarAccess.getLibCoercionCSAccess().getSemicolonKeyword_7_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getLibCoercionCSAccess().getSemicolonKeyword_7_1()); }
 )
@@ -3758,7 +3758,7 @@
     |(
 { before(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_14_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_14_1()); }
 )
@@ -3838,7 +3838,7 @@
     |(
 { before(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_1()); }
 )
@@ -3958,7 +3958,7 @@
     |(
 { before(grammarAccess.getLibPropertyCSAccess().getSemicolonKeyword_6_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getLibPropertyCSAccess().getSemicolonKeyword_6_1()); }
 )
@@ -3976,7 +3976,7 @@
 (
 { before(grammarAccess.getPrecedenceCSAccess().getLeftKeyword_0_0()); }
 
-	'left' 
+	'left'
 
 { after(grammarAccess.getPrecedenceCSAccess().getLeftKeyword_0_0()); }
 )
@@ -4090,7 +4090,7 @@
 (
 { before(grammarAccess.getEssentialOCLReservedKeywordAccess().getAndKeyword_0()); }
 
-	'and' 
+	'and'
 
 { after(grammarAccess.getEssentialOCLReservedKeywordAccess().getAndKeyword_0()); }
 )
@@ -4098,7 +4098,7 @@
     |(
 { before(grammarAccess.getEssentialOCLReservedKeywordAccess().getElseKeyword_1()); }
 
-	'else' 
+	'else'
 
 { after(grammarAccess.getEssentialOCLReservedKeywordAccess().getElseKeyword_1()); }
 )
@@ -4106,7 +4106,7 @@
     |(
 { before(grammarAccess.getEssentialOCLReservedKeywordAccess().getEndifKeyword_2()); }
 
-	'endif' 
+	'endif'
 
 { after(grammarAccess.getEssentialOCLReservedKeywordAccess().getEndifKeyword_2()); }
 )
@@ -4114,7 +4114,7 @@
     |(
 { before(grammarAccess.getEssentialOCLReservedKeywordAccess().getIfKeyword_3()); }
 
-	'if' 
+	'if'
 
 { after(grammarAccess.getEssentialOCLReservedKeywordAccess().getIfKeyword_3()); }
 )
@@ -4122,7 +4122,7 @@
     |(
 { before(grammarAccess.getEssentialOCLReservedKeywordAccess().getImpliesKeyword_4()); }
 
-	'implies' 
+	'implies'
 
 { after(grammarAccess.getEssentialOCLReservedKeywordAccess().getImpliesKeyword_4()); }
 )
@@ -4130,7 +4130,7 @@
     |(
 { before(grammarAccess.getEssentialOCLReservedKeywordAccess().getInKeyword_5()); }
 
-	'in' 
+	'in'
 
 { after(grammarAccess.getEssentialOCLReservedKeywordAccess().getInKeyword_5()); }
 )
@@ -4138,7 +4138,7 @@
     |(
 { before(grammarAccess.getEssentialOCLReservedKeywordAccess().getLetKeyword_6()); }
 
-	'let' 
+	'let'
 
 { after(grammarAccess.getEssentialOCLReservedKeywordAccess().getLetKeyword_6()); }
 )
@@ -4146,7 +4146,7 @@
     |(
 { before(grammarAccess.getEssentialOCLReservedKeywordAccess().getNotKeyword_7()); }
 
-	'not' 
+	'not'
 
 { after(grammarAccess.getEssentialOCLReservedKeywordAccess().getNotKeyword_7()); }
 )
@@ -4154,7 +4154,7 @@
     |(
 { before(grammarAccess.getEssentialOCLReservedKeywordAccess().getOrKeyword_8()); }
 
-	'or' 
+	'or'
 
 { after(grammarAccess.getEssentialOCLReservedKeywordAccess().getOrKeyword_8()); }
 )
@@ -4162,7 +4162,7 @@
     |(
 { before(grammarAccess.getEssentialOCLReservedKeywordAccess().getThenKeyword_9()); }
 
-	'then' 
+	'then'
 
 { after(grammarAccess.getEssentialOCLReservedKeywordAccess().getThenKeyword_9()); }
 )
@@ -4170,7 +4170,7 @@
     |(
 { before(grammarAccess.getEssentialOCLReservedKeywordAccess().getXorKeyword_10()); }
 
-	'xor' 
+	'xor'
 
 { after(grammarAccess.getEssentialOCLReservedKeywordAccess().getXorKeyword_10()); }
 )
@@ -4188,7 +4188,7 @@
 (
 { before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); }
 
-	'-' 
+	'-'
 
 { after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); }
 )
@@ -4196,7 +4196,7 @@
     |(
 { before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); }
 
-	'not' 
+	'not'
 
 { after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); }
 )
@@ -4214,7 +4214,7 @@
 (
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); }
 )
@@ -4222,7 +4222,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); }
 
-	'/' 
+	'/'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); }
 )
@@ -4230,7 +4230,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); }
 
-	'+' 
+	'+'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); }
 )
@@ -4238,7 +4238,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); }
 
-	'-' 
+	'-'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); }
 )
@@ -4246,7 +4246,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); }
 
-	'>' 
+	'>'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); }
 )
@@ -4254,7 +4254,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); }
 
-	'<' 
+	'<'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); }
 )
@@ -4262,7 +4262,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); }
 
-	'>=' 
+	'>='
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); }
 )
@@ -4270,7 +4270,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); }
 
-	'<=' 
+	'<='
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); }
 )
@@ -4278,7 +4278,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); }
 )
@@ -4286,7 +4286,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); }
 
-	'<>' 
+	'<>'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); }
 )
@@ -4294,7 +4294,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); }
 
-	'and' 
+	'and'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); }
 )
@@ -4302,7 +4302,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); }
 
-	'or' 
+	'or'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); }
 )
@@ -4310,7 +4310,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); }
 
-	'xor' 
+	'xor'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); }
 )
@@ -4318,7 +4318,7 @@
     |(
 { before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); }
 
-	'implies' 
+	'implies'
 
 { after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); }
 )
@@ -4336,7 +4336,7 @@
 (
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); }
 
-	'.' 
+	'.'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); }
 )
@@ -4344,7 +4344,7 @@
     |(
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); }
 
-	'->' 
+	'->'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); }
 )
@@ -4352,7 +4352,7 @@
     |(
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); }
 
-	'?.' 
+	'?.'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); }
 )
@@ -4360,7 +4360,7 @@
     |(
 { before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); }
 
-	'?->' 
+	'?->'
 
 { after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); }
 )
@@ -4418,7 +4418,7 @@
     |(
 { before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); }
 
-	'Map' 
+	'Map'
 
 { after(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); }
 )
@@ -4426,7 +4426,7 @@
     |(
 { before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); }
 
-	'Tuple' 
+	'Tuple'
 
 { after(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); }
 )
@@ -4466,7 +4466,7 @@
 (
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); }
 
-	'Boolean' 
+	'Boolean'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); }
 )
@@ -4474,7 +4474,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); }
 
-	'Integer' 
+	'Integer'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); }
 )
@@ -4482,7 +4482,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); }
 
-	'Real' 
+	'Real'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); }
 )
@@ -4490,7 +4490,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); }
 
-	'String' 
+	'String'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); }
 )
@@ -4498,7 +4498,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); }
 
-	'UnlimitedNatural' 
+	'UnlimitedNatural'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); }
 )
@@ -4506,7 +4506,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); }
 
-	'OclAny' 
+	'OclAny'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); }
 )
@@ -4514,7 +4514,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); }
 
-	'OclInvalid' 
+	'OclInvalid'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); }
 )
@@ -4522,7 +4522,7 @@
     |(
 { before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); }
 
-	'OclVoid' 
+	'OclVoid'
 
 { after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); }
 )
@@ -4540,7 +4540,7 @@
 (
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); }
 
-	'Set' 
+	'Set'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); }
 )
@@ -4548,7 +4548,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); }
 
-	'Bag' 
+	'Bag'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); }
 )
@@ -4556,7 +4556,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); }
 
-	'Sequence' 
+	'Sequence'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); }
 )
@@ -4564,7 +4564,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); }
 
-	'Collection' 
+	'Collection'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); }
 )
@@ -4572,7 +4572,7 @@
     |(
 { before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); }
 
-	'OrderedSet' 
+	'OrderedSet'
 
 { after(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); }
 )
@@ -5032,7 +5032,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); }
 
-	'|?' 
+	'|?'
 
 { after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); }
 )
@@ -5056,7 +5056,7 @@
 (
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); }
 )
@@ -5064,7 +5064,7 @@
     |(
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); }
 
-	'+' 
+	'+'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); }
 )
@@ -5072,7 +5072,7 @@
     |(
 { before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); }
 
-	'?' 
+	'?'
 
 { after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); }
 )
@@ -5140,7 +5140,7 @@
     |(
 { before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); }
 )
@@ -5261,7 +5261,7 @@
 (
 { before(grammarAccess.getLibraryAccess().getSemicolonKeyword_0_1()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getLibraryAccess().getSemicolonKeyword_0_1()); }
 )
@@ -5357,7 +5357,7 @@
 (
 { before(grammarAccess.getLibPathNameCSAccess().getColonColonKeyword_1_0()); }
 
-	'::' 
+	'::'
 
 { after(grammarAccess.getLibPathNameCSAccess().getColonColonKeyword_1_0()); }
 )
@@ -5449,7 +5449,7 @@
 (
 { before(grammarAccess.getAccumulatorCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getAccumulatorCSAccess().getColonKeyword_1()); }
 )
@@ -5514,7 +5514,7 @@
 (
 { before(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_0()); }
 
-	'annotation' 
+	'annotation'
 
 { after(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_0()); }
 )
@@ -5639,7 +5639,7 @@
 (
 { before(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_2_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_2_0()); }
 )
@@ -5727,7 +5727,7 @@
 (
 { before(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_2_3()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_2_3()); }
 )
@@ -5766,7 +5766,7 @@
 (
 { before(grammarAccess.getAnnotationCSAccess().getCommaKeyword_2_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getAnnotationCSAccess().getCommaKeyword_2_2_0()); }
 )
@@ -5829,7 +5829,7 @@
 (
 { before(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_3_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_3_0_0()); }
 )
@@ -5888,7 +5888,7 @@
 (
 { before(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_3_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_3_0_2()); }
 )
@@ -5954,7 +5954,7 @@
 (
 { before(grammarAccess.getLibClassCSAccess().getTypeKeyword_1()); }
 
-	'type' 
+	'type'
 
 { after(grammarAccess.getLibClassCSAccess().getTypeKeyword_1()); }
 )
@@ -6101,7 +6101,7 @@
 (
 { before(grammarAccess.getLibClassCSAccess().getLeftCurlyBracketKeyword_6()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getLibClassCSAccess().getLeftCurlyBracketKeyword_6()); }
 )
@@ -6160,7 +6160,7 @@
 (
 { before(grammarAccess.getLibClassCSAccess().getRightCurlyBracketKeyword_8()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getLibClassCSAccess().getRightCurlyBracketKeyword_8()); }
 )
@@ -6209,7 +6209,7 @@
 (
 { before(grammarAccess.getLibClassCSAccess().getColonKeyword_4_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getLibClassCSAccess().getColonKeyword_4_0()); }
 )
@@ -6272,7 +6272,7 @@
 (
 { before(grammarAccess.getLibClassCSAccess().getConformsToKeyword_5_0()); }
 
-	'conformsTo' 
+	'conformsTo'
 
 { after(grammarAccess.getLibClassCSAccess().getConformsToKeyword_5_0()); }
 )
@@ -6366,7 +6366,7 @@
 (
 { before(grammarAccess.getLibClassCSAccess().getCommaKeyword_5_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getLibClassCSAccess().getCommaKeyword_5_2_0()); }
 )
@@ -6458,7 +6458,7 @@
 (
 { before(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1()); }
 )
@@ -6554,7 +6554,7 @@
 (
 { before(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1()); }
 
-	'documentation' 
+	'documentation'
 
 { after(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1()); }
 )
@@ -6642,7 +6642,7 @@
 (
 { before(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4()); }
 )
@@ -6683,7 +6683,7 @@
 (
 { before(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0()); }
 )
@@ -6771,7 +6771,7 @@
 (
 { before(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3()); }
 )
@@ -6810,7 +6810,7 @@
 (
 { before(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0()); }
 )
@@ -6873,7 +6873,7 @@
 (
 { before(grammarAccess.getImportCSAccess().getImportKeyword_0()); }
 
-	'import' 
+	'import'
 
 { after(grammarAccess.getImportCSAccess().getImportKeyword_0()); }
 )
@@ -7026,7 +7026,7 @@
 (
 { before(grammarAccess.getImportCSAccess().getColonKeyword_1_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getImportCSAccess().getColonKeyword_1_1()); }
 )
@@ -7119,7 +7119,7 @@
 (
 { before(grammarAccess.getInvCSAccess().getColonKeyword_2()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getInvCSAccess().getColonKeyword_2()); }
 )
@@ -7178,7 +7178,7 @@
 (
 { before(grammarAccess.getInvCSAccess().getSemicolonKeyword_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getInvCSAccess().getSemicolonKeyword_4()); }
 )
@@ -7280,7 +7280,7 @@
 (
 { before(grammarAccess.getInvCSAccess().getLeftParenthesisKeyword_1_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getInvCSAccess().getLeftParenthesisKeyword_1_1_0()); }
 )
@@ -7339,7 +7339,7 @@
 (
 { before(grammarAccess.getInvCSAccess().getRightParenthesisKeyword_1_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getInvCSAccess().getRightParenthesisKeyword_1_1_2()); }
 )
@@ -7376,7 +7376,7 @@
 (
 { before(grammarAccess.getLibCoercionCSAccess().getCoercionKeyword_0()); }
 
-	'coercion' 
+	'coercion'
 
 { after(grammarAccess.getLibCoercionCSAccess().getCoercionKeyword_0()); }
 )
@@ -7436,7 +7436,7 @@
 (
 { before(grammarAccess.getLibCoercionCSAccess().getLeftParenthesisKeyword_2()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getLibCoercionCSAccess().getLeftParenthesisKeyword_2()); }
 )
@@ -7467,7 +7467,7 @@
 (
 { before(grammarAccess.getLibCoercionCSAccess().getRightParenthesisKeyword_3()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getLibCoercionCSAccess().getRightParenthesisKeyword_3()); }
 )
@@ -7498,7 +7498,7 @@
 (
 { before(grammarAccess.getLibCoercionCSAccess().getColonKeyword_4()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getLibCoercionCSAccess().getColonKeyword_4()); }
 )
@@ -7631,7 +7631,7 @@
 (
 { before(grammarAccess.getLibCoercionCSAccess().getEqualsSignGreaterThanSignKeyword_6_0()); }
 
-	'=>' 
+	'=>'
 
 { after(grammarAccess.getLibCoercionCSAccess().getEqualsSignGreaterThanSignKeyword_6_0()); }
 )
@@ -7694,7 +7694,7 @@
 (
 { before(grammarAccess.getLibCoercionCSAccess().getLeftCurlyBracketKeyword_7_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getLibCoercionCSAccess().getLeftCurlyBracketKeyword_7_0_0()); }
 )
@@ -7753,7 +7753,7 @@
 (
 { before(grammarAccess.getLibCoercionCSAccess().getRightCurlyBracketKeyword_7_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getLibCoercionCSAccess().getRightCurlyBracketKeyword_7_0_2()); }
 )
@@ -7790,7 +7790,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getIterationKeyword_0()); }
 
-	'iteration' 
+	'iteration'
 
 { after(grammarAccess.getLibIterationCSAccess().getIterationKeyword_0()); }
 )
@@ -7879,7 +7879,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getLeftParenthesisKeyword_3()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getLibIterationCSAccess().getLeftParenthesisKeyword_3()); }
 )
@@ -8026,7 +8026,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getRightParenthesisKeyword_8()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getLibIterationCSAccess().getRightParenthesisKeyword_8()); }
 )
@@ -8057,7 +8057,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getColonKeyword_9()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getLibIterationCSAccess().getColonKeyword_9()); }
 )
@@ -8262,7 +8262,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getCommaKeyword_5_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getLibIterationCSAccess().getCommaKeyword_5_0()); }
 )
@@ -8325,7 +8325,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_6_0()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_6_0()); }
 )
@@ -8419,7 +8419,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getCommaKeyword_6_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getLibIterationCSAccess().getCommaKeyword_6_2_0()); }
 )
@@ -8482,7 +8482,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getVerticalLineKeyword_7_0()); }
 
-	'|' 
+	'|'
 
 { after(grammarAccess.getLibIterationCSAccess().getVerticalLineKeyword_7_0()); }
 )
@@ -8576,7 +8576,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getCommaKeyword_7_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getLibIterationCSAccess().getCommaKeyword_7_2_0()); }
 )
@@ -8639,7 +8639,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getEqualsSignGreaterThanSignKeyword_13_0()); }
 
-	'=>' 
+	'=>'
 
 { after(grammarAccess.getLibIterationCSAccess().getEqualsSignGreaterThanSignKeyword_13_0()); }
 )
@@ -8702,7 +8702,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getLeftCurlyBracketKeyword_14_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getLibIterationCSAccess().getLeftCurlyBracketKeyword_14_0_0()); }
 )
@@ -8761,7 +8761,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getRightCurlyBracketKeyword_14_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getLibIterationCSAccess().getRightCurlyBracketKeyword_14_0_2()); }
 )
@@ -8827,7 +8827,7 @@
 (
 { before(grammarAccess.getIteratorCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getIteratorCSAccess().getColonKeyword_1()); }
 )
@@ -8979,7 +8979,7 @@
 (
 { before(grammarAccess.getLambdaTypeCSAccess().getLeftParenthesisKeyword_3()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getLambdaTypeCSAccess().getLeftParenthesisKeyword_3()); }
 )
@@ -9039,7 +9039,7 @@
 (
 { before(grammarAccess.getLambdaTypeCSAccess().getRightParenthesisKeyword_5()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getLambdaTypeCSAccess().getRightParenthesisKeyword_5()); }
 )
@@ -9070,7 +9070,7 @@
 (
 { before(grammarAccess.getLambdaTypeCSAccess().getColonKeyword_6()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getLambdaTypeCSAccess().getColonKeyword_6()); }
 )
@@ -9206,7 +9206,7 @@
 (
 { before(grammarAccess.getLambdaTypeCSAccess().getCommaKeyword_4_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getLambdaTypeCSAccess().getCommaKeyword_4_1_0()); }
 )
@@ -9298,7 +9298,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getOperationKeyword_1()); }
 
-	'operation' 
+	'operation'
 
 { after(grammarAccess.getLibOperationCSAccess().getOperationKeyword_1()); }
 )
@@ -9387,7 +9387,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getLeftParenthesisKeyword_4()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getLibOperationCSAccess().getLeftParenthesisKeyword_4()); }
 )
@@ -9447,7 +9447,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getRightParenthesisKeyword_6()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getLibOperationCSAccess().getRightParenthesisKeyword_6()); }
 )
@@ -9478,7 +9478,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getColonKeyword_7()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getLibOperationCSAccess().getColonKeyword_7()); }
 )
@@ -9771,7 +9771,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getCommaKeyword_5_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getLibOperationCSAccess().getCommaKeyword_5_1_0()); }
 )
@@ -9834,7 +9834,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getPrecedenceKeyword_11_0()); }
 
-	'precedence' 
+	'precedence'
 
 { after(grammarAccess.getLibOperationCSAccess().getPrecedenceKeyword_11_0()); }
 )
@@ -9865,7 +9865,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getEqualsSignKeyword_11_1()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getLibOperationCSAccess().getEqualsSignKeyword_11_1()); }
 )
@@ -9930,7 +9930,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getEqualsSignGreaterThanSignKeyword_12_0()); }
 
-	'=>' 
+	'=>'
 
 { after(grammarAccess.getLibOperationCSAccess().getEqualsSignGreaterThanSignKeyword_12_0()); }
 )
@@ -9993,7 +9993,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getLeftCurlyBracketKeyword_13_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getLibOperationCSAccess().getLeftCurlyBracketKeyword_13_0_0()); }
 )
@@ -10052,7 +10052,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getRightCurlyBracketKeyword_13_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getLibOperationCSAccess().getRightCurlyBracketKeyword_13_0_2()); }
 )
@@ -10089,7 +10089,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getBodyKeyword_13_0_1_1_0()); }
 
-	'body' 
+	'body'
 
 { after(grammarAccess.getLibOperationCSAccess().getBodyKeyword_13_0_1_1_0()); }
 )
@@ -10149,7 +10149,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getColonKeyword_13_0_1_1_2()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getLibOperationCSAccess().getColonKeyword_13_0_1_1_2()); }
 )
@@ -10208,7 +10208,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_0_1_1_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_0_1_1_4()); }
 )
@@ -10249,7 +10249,7 @@
 (
 { before(grammarAccess.getLibPackageCSAccess().getLibraryKeyword_0()); }
 
-	'library' 
+	'library'
 
 { after(grammarAccess.getLibPackageCSAccess().getLibraryKeyword_0()); }
 )
@@ -10338,7 +10338,7 @@
 (
 { before(grammarAccess.getLibPackageCSAccess().getLeftCurlyBracketKeyword_3()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getLibPackageCSAccess().getLeftCurlyBracketKeyword_3()); }
 )
@@ -10397,7 +10397,7 @@
 (
 { before(grammarAccess.getLibPackageCSAccess().getRightCurlyBracketKeyword_5()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getLibPackageCSAccess().getRightCurlyBracketKeyword_5()); }
 )
@@ -10440,7 +10440,7 @@
 (
 { before(grammarAccess.getLibPackageCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getLibPackageCSAccess().getColonKeyword_2_0()); }
 )
@@ -10500,7 +10500,7 @@
 (
 { before(grammarAccess.getLibPackageCSAccess().getEqualsSignKeyword_2_2()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getLibPackageCSAccess().getEqualsSignKeyword_2_2()); }
 )
@@ -10567,7 +10567,7 @@
 (
 { before(grammarAccess.getLibPackageCSAccess().getPrecedenceKeyword_4_1_0()); }
 
-	'precedence' 
+	'precedence'
 
 { after(grammarAccess.getLibPackageCSAccess().getPrecedenceKeyword_4_1_0()); }
 )
@@ -10633,7 +10633,7 @@
 (
 { before(grammarAccess.getLibPackageCSAccess().getSemicolonKeyword_4_1_2()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getLibPackageCSAccess().getSemicolonKeyword_4_1_2()); }
 )
@@ -10670,7 +10670,7 @@
 (
 { before(grammarAccess.getPackageCSAccess().getPackageKeyword_0()); }
 
-	'package' 
+	'package'
 
 { after(grammarAccess.getPackageCSAccess().getPackageKeyword_0()); }
 )
@@ -10759,7 +10759,7 @@
 (
 { before(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_3()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_3()); }
 )
@@ -10818,7 +10818,7 @@
 (
 { before(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_5()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_5()); }
 )
@@ -10861,7 +10861,7 @@
 (
 { before(grammarAccess.getPackageCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getPackageCSAccess().getColonKeyword_2_0()); }
 )
@@ -10921,7 +10921,7 @@
 (
 { before(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_2_2()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_2_2()); }
 )
@@ -11017,7 +11017,7 @@
 (
 { before(grammarAccess.getParameterCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getParameterCSAccess().getColonKeyword_1()); }
 )
@@ -11111,7 +11111,7 @@
 (
 { before(grammarAccess.getLibPropertyCSAccess().getPropertyKeyword_1()); }
 
-	'property' 
+	'property'
 
 { after(grammarAccess.getLibPropertyCSAccess().getPropertyKeyword_1()); }
 )
@@ -11171,7 +11171,7 @@
 (
 { before(grammarAccess.getLibPropertyCSAccess().getColonKeyword_3()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getLibPropertyCSAccess().getColonKeyword_3()); }
 )
@@ -11302,7 +11302,7 @@
 (
 { before(grammarAccess.getLibPropertyCSAccess().getEqualsSignGreaterThanSignKeyword_5_0()); }
 
-	'=>' 
+	'=>'
 
 { after(grammarAccess.getLibPropertyCSAccess().getEqualsSignGreaterThanSignKeyword_5_0()); }
 )
@@ -11365,7 +11365,7 @@
 (
 { before(grammarAccess.getLibPropertyCSAccess().getLeftCurlyBracketKeyword_6_0_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getLibPropertyCSAccess().getLeftCurlyBracketKeyword_6_0_0()); }
 )
@@ -11424,7 +11424,7 @@
 (
 { before(grammarAccess.getLibPropertyCSAccess().getRightCurlyBracketKeyword_6_0_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getLibPropertyCSAccess().getRightCurlyBracketKeyword_6_0_2()); }
 )
@@ -11519,7 +11519,7 @@
 (
 { before(grammarAccess.getPostCSAccess().getColonKeyword_2()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getPostCSAccess().getColonKeyword_2()); }
 )
@@ -11578,7 +11578,7 @@
 (
 { before(grammarAccess.getPostCSAccess().getSemicolonKeyword_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getPostCSAccess().getSemicolonKeyword_4()); }
 )
@@ -11680,7 +11680,7 @@
 (
 { before(grammarAccess.getPostCSAccess().getLeftParenthesisKeyword_1_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getPostCSAccess().getLeftParenthesisKeyword_1_1_0()); }
 )
@@ -11739,7 +11739,7 @@
 (
 { before(grammarAccess.getPostCSAccess().getRightParenthesisKeyword_1_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getPostCSAccess().getRightParenthesisKeyword_1_1_2()); }
 )
@@ -11834,7 +11834,7 @@
 (
 { before(grammarAccess.getPreCSAccess().getColonKeyword_2()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getPreCSAccess().getColonKeyword_2()); }
 )
@@ -11893,7 +11893,7 @@
 (
 { before(grammarAccess.getPreCSAccess().getSemicolonKeyword_4()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getPreCSAccess().getSemicolonKeyword_4()); }
 )
@@ -11995,7 +11995,7 @@
 (
 { before(grammarAccess.getPreCSAccess().getLeftParenthesisKeyword_1_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getPreCSAccess().getLeftParenthesisKeyword_1_1_0()); }
 )
@@ -12054,7 +12054,7 @@
 (
 { before(grammarAccess.getPreCSAccess().getRightParenthesisKeyword_1_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getPreCSAccess().getRightParenthesisKeyword_1_1_2()); }
 )
@@ -12120,7 +12120,7 @@
 (
 { before(grammarAccess.getPrecedenceCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getPrecedenceCSAccess().getColonKeyword_1()); }
 )
@@ -12275,7 +12275,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_0_1()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_0_1()); }
 )
@@ -12334,7 +12334,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_0_3()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_0_3()); }
 )
@@ -12434,7 +12434,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_1_0()); }
 )
@@ -12493,7 +12493,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_1_2()); }
 )
@@ -12559,7 +12559,7 @@
 (
 { before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); }
 )
@@ -12685,7 +12685,7 @@
 (
 { before(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0()); }
 
-	'::' 
+	'::'
 
 { after(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0()); }
 )
@@ -12872,7 +12872,7 @@
 (
 { before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -12931,7 +12931,7 @@
 (
 { before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 )
@@ -13029,7 +13029,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -13089,7 +13089,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); }
 )
@@ -13148,7 +13148,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); }
 )
@@ -13250,7 +13250,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); }
 )
@@ -13309,7 +13309,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); }
 )
@@ -13407,7 +13407,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); }
 )
@@ -13499,7 +13499,7 @@
 (
 { before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -13558,7 +13558,7 @@
 (
 { before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -13658,7 +13658,7 @@
 (
 { before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 )
@@ -13782,7 +13782,7 @@
 (
 { before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); }
 
-	'..' 
+	'..'
 
 { after(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); }
 )
@@ -13874,7 +13874,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -13933,7 +13933,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -14064,7 +14064,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); }
 )
@@ -14127,7 +14127,7 @@
 (
 { before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); }
 
-	'++' 
+	'++'
 
 { after(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); }
 )
@@ -14219,7 +14219,7 @@
 (
 { before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); }
 )
@@ -14313,7 +14313,7 @@
 (
 { before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); }
 )
@@ -14378,7 +14378,7 @@
 (
 { before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); }
 
-	'Lambda' 
+	'Lambda'
 
 { after(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); }
 )
@@ -14409,7 +14409,7 @@
 (
 { before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -14468,7 +14468,7 @@
 (
 { before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -14536,7 +14536,7 @@
 (
 { before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -14595,7 +14595,7 @@
 (
 { before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -14695,7 +14695,7 @@
 (
 { before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); }
 )
@@ -14787,7 +14787,7 @@
 (
 { before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); }
 
-	'<-' 
+	'<-'
 
 { after(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); }
 )
@@ -14852,7 +14852,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); }
 
-	'Tuple' 
+	'Tuple'
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); }
 )
@@ -14883,7 +14883,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -14971,7 +14971,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); }
 )
@@ -15012,7 +15012,7 @@
 (
 { before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); }
 )
@@ -15133,7 +15133,7 @@
 (
 { before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); }
 )
@@ -15200,7 +15200,7 @@
 (
 { before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); }
 )
@@ -15293,7 +15293,7 @@
 (
 { before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); }
 
-	'*' 
+	'*'
 
 { after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); }
 )
@@ -15358,7 +15358,7 @@
 (
 { before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); }
 
-	'invalid' 
+	'invalid'
 
 { after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); }
 )
@@ -15423,7 +15423,7 @@
 (
 { before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); }
 
-	'null' 
+	'null'
 
 { after(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); }
 )
@@ -15641,7 +15641,7 @@
 (
 { before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); }
 )
@@ -15700,7 +15700,7 @@
 (
 { before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); }
 )
@@ -16323,7 +16323,7 @@
 (
 { before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); }
 
-	'pre' 
+	'pre'
 
 { after(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); }
 )
@@ -16389,7 +16389,7 @@
 (
 { before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); }
 
-	'{' 
+	'{'
 
 { after(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); }
 )
@@ -16448,7 +16448,7 @@
 (
 { before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); }
 
-	'}' 
+	'}'
 
 { after(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); }
 )
@@ -16548,7 +16548,7 @@
 (
 { before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); }
 )
@@ -16642,7 +16642,7 @@
 (
 { before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); }
 )
@@ -16701,7 +16701,7 @@
 (
 { before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); }
 )
@@ -16985,7 +16985,7 @@
 (
 { before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); }
 )
@@ -17073,7 +17073,7 @@
 (
 { before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); }
 )
@@ -17112,7 +17112,7 @@
 (
 { before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); }
 )
@@ -17236,7 +17236,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); }
 )
@@ -17330,7 +17330,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); }
 )
@@ -17393,7 +17393,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); }
 
-	'in' 
+	'in'
 
 { after(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); }
 )
@@ -17456,7 +17456,7 @@
 (
 { before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); }
 )
@@ -17611,7 +17611,7 @@
 (
 { before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); }
 )
@@ -17705,7 +17705,7 @@
 (
 { before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 )
@@ -17860,7 +17860,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); }
 )
@@ -17954,7 +17954,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); }
 )
@@ -18017,7 +18017,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); }
 
-	'in' 
+	'in'
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); }
 )
@@ -18172,7 +18172,7 @@
 (
 { before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); }
 )
@@ -18266,7 +18266,7 @@
 (
 { before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); }
 )
@@ -18329,7 +18329,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); }
 
-	'if' 
+	'if'
 
 { after(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); }
 )
@@ -18389,7 +18389,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); }
 
-	'then' 
+	'then'
 
 { after(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); }
 )
@@ -18478,7 +18478,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); }
 
-	'else' 
+	'else'
 
 { after(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); }
 )
@@ -18537,7 +18537,7 @@
 (
 { before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); }
 
-	'endif' 
+	'endif'
 
 { after(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); }
 )
@@ -18584,7 +18584,7 @@
 (
 { before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); }
 
-	'elseif' 
+	'elseif'
 
 { after(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); }
 )
@@ -18644,7 +18644,7 @@
 (
 { before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); }
 
-	'then' 
+	'then'
 
 { after(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); }
 )
@@ -18711,7 +18711,7 @@
 (
 { before(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); }
 
-	'let' 
+	'let'
 
 { after(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); }
 )
@@ -18800,7 +18800,7 @@
 (
 { before(grammarAccess.getLetExpCSAccess().getInKeyword_3()); }
 
-	'in' 
+	'in'
 
 { after(grammarAccess.getLetExpCSAccess().getInKeyword_3()); }
 )
@@ -18869,7 +18869,7 @@
 (
 { before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); }
 )
@@ -19019,7 +19019,7 @@
 (
 { before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); }
 
-	'=' 
+	'='
 
 { after(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); }
 )
@@ -19088,7 +19088,7 @@
 (
 { before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); }
 
-	':' 
+	':'
 
 { after(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); }
 )
@@ -19151,7 +19151,7 @@
 (
 { before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); }
 )
@@ -19210,7 +19210,7 @@
 (
 { before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); }
 )
@@ -19277,7 +19277,7 @@
 (
 { before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); }
 
-	'self' 
+	'self'
 
 { after(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); }
 )
@@ -19373,7 +19373,7 @@
 (
 { before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); }
 
-	'..' 
+	'..'
 
 { after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); }
 )
@@ -19436,7 +19436,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); }
 
-	'[' 
+	'['
 
 { after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); }
 )
@@ -19524,7 +19524,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); }
 
-	']' 
+	']'
 
 { after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); }
 )
@@ -19624,7 +19624,7 @@
 (
 { before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); }
 
-	'::' 
+	'::'
 
 { after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); }
 )
@@ -19779,7 +19779,7 @@
 (
 { before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); }
 )
@@ -19842,7 +19842,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0()); }
 
-	'(' 
+	'('
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0()); }
 )
@@ -19930,7 +19930,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_3()); }
 
-	')' 
+	')'
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_3()); }
 )
@@ -19969,7 +19969,7 @@
 (
 { before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_2_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_2_0()); }
 )
@@ -20093,7 +20093,7 @@
 (
 { before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); }
 
-	'extends' 
+	'extends'
 
 { after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); }
 )
@@ -20187,7 +20187,7 @@
 (
 { before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); }
 
-	'&&' 
+	'&&'
 
 { after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); }
 )
@@ -20281,7 +20281,7 @@
 (
 { before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); }
 
-	'?' 
+	'?'
 
 { after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); }
 )
@@ -20346,7 +20346,7 @@
 (
 { before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); }
 
-	'extends' 
+	'extends'
 
 { after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); }
 )
@@ -20570,7 +20570,7 @@
 (
 { before(grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0()); }
 
-	'abstract' 
+	'abstract'
 
 { after(grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0()); }
 )
@@ -20839,7 +20839,7 @@
 (
 { before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); }
 
-	'::*' 
+	'::*'
 
 { after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); }
 )
@@ -20862,7 +20862,7 @@
 (
 { before(grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0()); }
 
-	'inv' 
+	'inv'
 
 { after(grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0()); }
 )
@@ -21159,7 +21159,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0()); }
 
-	'invalidating' 
+	'invalidating'
 
 { after(grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0()); }
 )
@@ -21182,7 +21182,7 @@
 (
 { before(grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0()); }
 
-	'validating' 
+	'validating'
 
 { after(grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0()); }
 )
@@ -21299,7 +21299,7 @@
 (
 { before(grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0()); }
 
-	'Lambda' 
+	'Lambda'
 
 { after(grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0()); }
 )
@@ -21412,7 +21412,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0()); }
 
-	'static' 
+	'static'
 
 { after(grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0()); }
 )
@@ -21510,7 +21510,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0()); }
 
-	'validating' 
+	'validating'
 
 { after(grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0()); }
 )
@@ -21533,7 +21533,7 @@
 (
 { before(grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0()); }
 
-	'invalidating' 
+	'invalidating'
 
 { after(grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0()); }
 )
@@ -21879,7 +21879,7 @@
 (
 { before(grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0()); }
 
-	'static' 
+	'static'
 
 { after(grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0()); }
 )
@@ -21966,7 +21966,7 @@
 (
 { before(grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0()); }
 
-	'post' 
+	'post'
 
 { after(grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0()); }
 )
@@ -22034,7 +22034,7 @@
 (
 { before(grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0()); }
 
-	'pre' 
+	'pre'
 
 { after(grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0()); }
 )
@@ -22102,7 +22102,7 @@
 (
 { before(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0()); }
 
-	'right' 
+	'right'
 
 { after(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0()); }
 )
@@ -22170,7 +22170,7 @@
 (
 { before(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0()); }
 
-	'typeof' 
+	'typeof'
 
 { after(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0()); }
 )
@@ -22382,7 +22382,7 @@
 (
 { before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); }
 
-	'Map' 
+	'Map'
 
 { after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); }
 )
@@ -22435,7 +22435,7 @@
 (
 { before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); }
 
-	'Tuple' 
+	'Tuple'
 
 { after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); }
 )
@@ -22898,7 +22898,7 @@
 (
 { before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); }
 
-	'true' 
+	'true'
 
 { after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); }
 )
@@ -22921,7 +22921,7 @@
 (
 { before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); }
 
-	'false' 
+	'false'
 
 { after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); }
 )
@@ -23184,7 +23184,7 @@
 (
 { before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); }
 
-	'@' 
+	'@'
 
 { after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); }
 )
@@ -23447,7 +23447,7 @@
 (
 { before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); }
 
-	'|' 
+	'|'
 
 { after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); }
 )
@@ -23515,7 +23515,7 @@
 (
 { before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); }
 
-	',' 
+	','
 
 { after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); }
 )
@@ -23598,7 +23598,7 @@
 (
 { before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); }
 
-	';' 
+	';'
 
 { after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); }
 )
@@ -23907,7 +23907,7 @@
 (
 { before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); }
 
-	'|1' 
+	'|1'
 
 { after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); }
 )
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 abff2a6..e624187 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
@@ -1,6 +1,6 @@
 package org.eclipse.ocl.xtext.oclstdlib.ui.contentassist.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.Lexer;
 
@@ -121,7 +121,7 @@
     // delegates
     // delegators
 
-    public InternalOCLstdlibLexer() {;} 
+    public InternalOCLstdlibLexer() {;}
     public InternalOCLstdlibLexer(CharStream input) {
         this(input, new RecognizerSharedState());
     }
@@ -139,7 +139,7 @@
             // InternalOCLstdlib.g:11:7: ( 'abstract' )
             // InternalOCLstdlib.g:11:9: 'abstract'
             {
-            match("abstract"); 
+            match("abstract");
 
 
             }
@@ -160,7 +160,7 @@
             // InternalOCLstdlib.g:12:7: ( 'annotation' )
             // InternalOCLstdlib.g:12:9: 'annotation'
             {
-            match("annotation"); 
+            match("annotation");
 
 
             }
@@ -181,7 +181,7 @@
             // InternalOCLstdlib.g:13:7: ( 'conformsTo' )
             // InternalOCLstdlib.g:13:9: 'conformsTo'
             {
-            match("conformsTo"); 
+            match("conformsTo");
 
 
             }
@@ -202,7 +202,7 @@
             // InternalOCLstdlib.g:14:7: ( 'documentation' )
             // InternalOCLstdlib.g:14:9: 'documentation'
             {
-            match("documentation"); 
+            match("documentation");
 
 
             }
@@ -223,7 +223,7 @@
             // InternalOCLstdlib.g:15:7: ( 'extends' )
             // InternalOCLstdlib.g:15:9: 'extends'
             {
-            match("extends"); 
+            match("extends");
 
 
             }
@@ -244,7 +244,7 @@
             // InternalOCLstdlib.g:16:7: ( 'import' )
             // InternalOCLstdlib.g:16:9: 'import'
             {
-            match("import"); 
+            match("import");
 
 
             }
@@ -265,7 +265,7 @@
             // InternalOCLstdlib.g:17:7: ( 'inv' )
             // InternalOCLstdlib.g:17:9: 'inv'
             {
-            match("inv"); 
+            match("inv");
 
 
             }
@@ -286,7 +286,7 @@
             // InternalOCLstdlib.g:18:7: ( 'invalidating' )
             // InternalOCLstdlib.g:18:9: 'invalidating'
             {
-            match("invalidating"); 
+            match("invalidating");
 
 
             }
@@ -307,7 +307,7 @@
             // InternalOCLstdlib.g:19:7: ( 'iteration' )
             // InternalOCLstdlib.g:19:9: 'iteration'
             {
-            match("iteration"); 
+            match("iteration");
 
 
             }
@@ -328,7 +328,7 @@
             // InternalOCLstdlib.g:20:7: ( 'left' )
             // InternalOCLstdlib.g:20:9: 'left'
             {
-            match("left"); 
+            match("left");
 
 
             }
@@ -349,7 +349,7 @@
             // InternalOCLstdlib.g:21:7: ( 'library' )
             // InternalOCLstdlib.g:21:9: 'library'
             {
-            match("library"); 
+            match("library");
 
 
             }
@@ -370,7 +370,7 @@
             // InternalOCLstdlib.g:22:7: ( 'operation' )
             // InternalOCLstdlib.g:22:9: 'operation'
             {
-            match("operation"); 
+            match("operation");
 
 
             }
@@ -391,7 +391,7 @@
             // InternalOCLstdlib.g:23:7: ( 'package' )
             // InternalOCLstdlib.g:23:9: 'package'
             {
-            match("package"); 
+            match("package");
 
 
             }
@@ -412,7 +412,7 @@
             // InternalOCLstdlib.g:24:7: ( 'post' )
             // InternalOCLstdlib.g:24:9: 'post'
             {
-            match("post"); 
+            match("post");
 
 
             }
@@ -433,7 +433,7 @@
             // InternalOCLstdlib.g:25:7: ( 'pre' )
             // InternalOCLstdlib.g:25:9: 'pre'
             {
-            match("pre"); 
+            match("pre");
 
 
             }
@@ -454,7 +454,7 @@
             // InternalOCLstdlib.g:26:7: ( 'precedence' )
             // InternalOCLstdlib.g:26:9: 'precedence'
             {
-            match("precedence"); 
+            match("precedence");
 
 
             }
@@ -475,7 +475,7 @@
             // InternalOCLstdlib.g:27:7: ( 'property' )
             // InternalOCLstdlib.g:27:9: 'property'
             {
-            match("property"); 
+            match("property");
 
 
             }
@@ -496,7 +496,7 @@
             // InternalOCLstdlib.g:28:7: ( 'right' )
             // InternalOCLstdlib.g:28:9: 'right'
             {
-            match("right"); 
+            match("right");
 
 
             }
@@ -517,7 +517,7 @@
             // InternalOCLstdlib.g:29:7: ( 'static' )
             // InternalOCLstdlib.g:29:9: 'static'
             {
-            match("static"); 
+            match("static");
 
 
             }
@@ -538,7 +538,7 @@
             // InternalOCLstdlib.g:30:7: ( 'type' )
             // InternalOCLstdlib.g:30:9: 'type'
             {
-            match("type"); 
+            match("type");
 
 
             }
@@ -559,7 +559,7 @@
             // InternalOCLstdlib.g:31:7: ( 'validating' )
             // InternalOCLstdlib.g:31:9: 'validating'
             {
-            match("validating"); 
+            match("validating");
 
 
             }
@@ -580,7 +580,7 @@
             // InternalOCLstdlib.g:32:7: ( 'Lambda' )
             // InternalOCLstdlib.g:32:9: 'Lambda'
             {
-            match("Lambda"); 
+            match("Lambda");
 
 
             }
@@ -601,7 +601,7 @@
             // InternalOCLstdlib.g:33:7: ( 'Map' )
             // InternalOCLstdlib.g:33:9: 'Map'
             {
-            match("Map"); 
+            match("Map");
 
 
             }
@@ -622,7 +622,7 @@
             // InternalOCLstdlib.g:34:7: ( 'Tuple' )
             // InternalOCLstdlib.g:34:9: 'Tuple'
             {
-            match("Tuple"); 
+            match("Tuple");
 
 
             }
@@ -643,7 +643,7 @@
             // InternalOCLstdlib.g:35:7: ( ';' )
             // InternalOCLstdlib.g:35:9: ';'
             {
-            match(';'); 
+            match(';');
 
             }
 
@@ -663,7 +663,7 @@
             // InternalOCLstdlib.g:36:7: ( 'and' )
             // InternalOCLstdlib.g:36:9: 'and'
             {
-            match("and"); 
+            match("and");
 
 
             }
@@ -684,7 +684,7 @@
             // InternalOCLstdlib.g:37:7: ( 'else' )
             // InternalOCLstdlib.g:37:9: 'else'
             {
-            match("else"); 
+            match("else");
 
 
             }
@@ -705,7 +705,7 @@
             // InternalOCLstdlib.g:38:7: ( 'endif' )
             // InternalOCLstdlib.g:38:9: 'endif'
             {
-            match("endif"); 
+            match("endif");
 
 
             }
@@ -726,7 +726,7 @@
             // InternalOCLstdlib.g:39:7: ( 'if' )
             // InternalOCLstdlib.g:39:9: 'if'
             {
-            match("if"); 
+            match("if");
 
 
             }
@@ -747,7 +747,7 @@
             // InternalOCLstdlib.g:40:7: ( 'implies' )
             // InternalOCLstdlib.g:40:9: 'implies'
             {
-            match("implies"); 
+            match("implies");
 
 
             }
@@ -768,7 +768,7 @@
             // InternalOCLstdlib.g:41:7: ( 'in' )
             // InternalOCLstdlib.g:41:9: 'in'
             {
-            match("in"); 
+            match("in");
 
 
             }
@@ -789,7 +789,7 @@
             // InternalOCLstdlib.g:42:7: ( 'let' )
             // InternalOCLstdlib.g:42:9: 'let'
             {
-            match("let"); 
+            match("let");
 
 
             }
@@ -810,7 +810,7 @@
             // InternalOCLstdlib.g:43:7: ( 'not' )
             // InternalOCLstdlib.g:43:9: 'not'
             {
-            match("not"); 
+            match("not");
 
 
             }
@@ -831,7 +831,7 @@
             // InternalOCLstdlib.g:44:7: ( 'or' )
             // InternalOCLstdlib.g:44:9: 'or'
             {
-            match("or"); 
+            match("or");
 
 
             }
@@ -852,7 +852,7 @@
             // InternalOCLstdlib.g:45:7: ( 'then' )
             // InternalOCLstdlib.g:45:9: 'then'
             {
-            match("then"); 
+            match("then");
 
 
             }
@@ -873,7 +873,7 @@
             // InternalOCLstdlib.g:46:7: ( 'xor' )
             // InternalOCLstdlib.g:46:9: 'xor'
             {
-            match("xor"); 
+            match("xor");
 
 
             }
@@ -894,7 +894,7 @@
             // InternalOCLstdlib.g:47:7: ( '-' )
             // InternalOCLstdlib.g:47:9: '-'
             {
-            match('-'); 
+            match('-');
 
             }
 
@@ -914,7 +914,7 @@
             // InternalOCLstdlib.g:48:7: ( '*' )
             // InternalOCLstdlib.g:48:9: '*'
             {
-            match('*'); 
+            match('*');
 
             }
 
@@ -934,7 +934,7 @@
             // InternalOCLstdlib.g:49:7: ( '/' )
             // InternalOCLstdlib.g:49:9: '/'
             {
-            match('/'); 
+            match('/');
 
             }
 
@@ -954,7 +954,7 @@
             // InternalOCLstdlib.g:50:7: ( '+' )
             // InternalOCLstdlib.g:50:9: '+'
             {
-            match('+'); 
+            match('+');
 
             }
 
@@ -974,7 +974,7 @@
             // InternalOCLstdlib.g:51:7: ( '>' )
             // InternalOCLstdlib.g:51:9: '>'
             {
-            match('>'); 
+            match('>');
 
             }
 
@@ -994,7 +994,7 @@
             // InternalOCLstdlib.g:52:7: ( '<' )
             // InternalOCLstdlib.g:52:9: '<'
             {
-            match('<'); 
+            match('<');
 
             }
 
@@ -1014,7 +1014,7 @@
             // InternalOCLstdlib.g:53:7: ( '>=' )
             // InternalOCLstdlib.g:53:9: '>='
             {
-            match(">="); 
+            match(">=");
 
 
             }
@@ -1035,7 +1035,7 @@
             // InternalOCLstdlib.g:54:7: ( '<=' )
             // InternalOCLstdlib.g:54:9: '<='
             {
-            match("<="); 
+            match("<=");
 
 
             }
@@ -1056,7 +1056,7 @@
             // InternalOCLstdlib.g:55:7: ( '=' )
             // InternalOCLstdlib.g:55:9: '='
             {
-            match('='); 
+            match('=');
 
             }
 
@@ -1076,7 +1076,7 @@
             // InternalOCLstdlib.g:56:7: ( '<>' )
             // InternalOCLstdlib.g:56:9: '<>'
             {
-            match("<>"); 
+            match("<>");
 
 
             }
@@ -1097,7 +1097,7 @@
             // InternalOCLstdlib.g:57:7: ( '.' )
             // InternalOCLstdlib.g:57:9: '.'
             {
-            match('.'); 
+            match('.');
 
             }
 
@@ -1117,7 +1117,7 @@
             // InternalOCLstdlib.g:58:7: ( '->' )
             // InternalOCLstdlib.g:58:9: '->'
             {
-            match("->"); 
+            match("->");
 
 
             }
@@ -1138,7 +1138,7 @@
             // InternalOCLstdlib.g:59:7: ( '?.' )
             // InternalOCLstdlib.g:59:9: '?.'
             {
-            match("?."); 
+            match("?.");
 
 
             }
@@ -1159,7 +1159,7 @@
             // InternalOCLstdlib.g:60:7: ( '?->' )
             // InternalOCLstdlib.g:60:9: '?->'
             {
-            match("?->"); 
+            match("?->");
 
 
             }
@@ -1180,7 +1180,7 @@
             // InternalOCLstdlib.g:61:7: ( 'Boolean' )
             // InternalOCLstdlib.g:61:9: 'Boolean'
             {
-            match("Boolean"); 
+            match("Boolean");
 
 
             }
@@ -1201,7 +1201,7 @@
             // InternalOCLstdlib.g:62:7: ( 'Integer' )
             // InternalOCLstdlib.g:62:9: 'Integer'
             {
-            match("Integer"); 
+            match("Integer");
 
 
             }
@@ -1222,7 +1222,7 @@
             // InternalOCLstdlib.g:63:7: ( 'Real' )
             // InternalOCLstdlib.g:63:9: 'Real'
             {
-            match("Real"); 
+            match("Real");
 
 
             }
@@ -1243,7 +1243,7 @@
             // InternalOCLstdlib.g:64:7: ( 'String' )
             // InternalOCLstdlib.g:64:9: 'String'
             {
-            match("String"); 
+            match("String");
 
 
             }
@@ -1264,7 +1264,7 @@
             // InternalOCLstdlib.g:65:7: ( 'UnlimitedNatural' )
             // InternalOCLstdlib.g:65:9: 'UnlimitedNatural'
             {
-            match("UnlimitedNatural"); 
+            match("UnlimitedNatural");
 
 
             }
@@ -1285,7 +1285,7 @@
             // InternalOCLstdlib.g:66:7: ( 'OclAny' )
             // InternalOCLstdlib.g:66:9: 'OclAny'
             {
-            match("OclAny"); 
+            match("OclAny");
 
 
             }
@@ -1306,7 +1306,7 @@
             // InternalOCLstdlib.g:67:7: ( 'OclInvalid' )
             // InternalOCLstdlib.g:67:9: 'OclInvalid'
             {
-            match("OclInvalid"); 
+            match("OclInvalid");
 
 
             }
@@ -1327,7 +1327,7 @@
             // InternalOCLstdlib.g:68:7: ( 'OclVoid' )
             // InternalOCLstdlib.g:68:9: 'OclVoid'
             {
-            match("OclVoid"); 
+            match("OclVoid");
 
 
             }
@@ -1348,7 +1348,7 @@
             // InternalOCLstdlib.g:69:7: ( 'Set' )
             // InternalOCLstdlib.g:69:9: 'Set'
             {
-            match("Set"); 
+            match("Set");
 
 
             }
@@ -1369,7 +1369,7 @@
             // InternalOCLstdlib.g:70:7: ( 'Bag' )
             // InternalOCLstdlib.g:70:9: 'Bag'
             {
-            match("Bag"); 
+            match("Bag");
 
 
             }
@@ -1390,7 +1390,7 @@
             // InternalOCLstdlib.g:71:7: ( 'Sequence' )
             // InternalOCLstdlib.g:71:9: 'Sequence'
             {
-            match("Sequence"); 
+            match("Sequence");
 
 
             }
@@ -1411,7 +1411,7 @@
             // InternalOCLstdlib.g:72:7: ( 'Collection' )
             // InternalOCLstdlib.g:72:9: 'Collection'
             {
-            match("Collection"); 
+            match("Collection");
 
 
             }
@@ -1432,7 +1432,7 @@
             // InternalOCLstdlib.g:73:7: ( 'OrderedSet' )
             // InternalOCLstdlib.g:73:9: 'OrderedSet'
             {
-            match("OrderedSet"); 
+            match("OrderedSet");
 
 
             }
@@ -1453,7 +1453,7 @@
             // InternalOCLstdlib.g:74:7: ( '|?' )
             // InternalOCLstdlib.g:74:9: '|?'
             {
-            match("|?"); 
+            match("|?");
 
 
             }
@@ -1474,7 +1474,7 @@
             // InternalOCLstdlib.g:75:7: ( '?' )
             // InternalOCLstdlib.g:75:9: '?'
             {
-            match('?'); 
+            match('?');
 
             }
 
@@ -1494,7 +1494,7 @@
             // InternalOCLstdlib.g:76:7: ( '::' )
             // InternalOCLstdlib.g:76:9: '::'
             {
-            match("::"); 
+            match("::");
 
 
             }
@@ -1515,7 +1515,7 @@
             // InternalOCLstdlib.g:77:7: ( ':' )
             // InternalOCLstdlib.g:77:9: ':'
             {
-            match(':'); 
+            match(':');
 
             }
 
@@ -1535,7 +1535,7 @@
             // InternalOCLstdlib.g:78:7: ( '(' )
             // InternalOCLstdlib.g:78:9: '('
             {
-            match('('); 
+            match('(');
 
             }
 
@@ -1555,7 +1555,7 @@
             // InternalOCLstdlib.g:79:7: ( ')' )
             // InternalOCLstdlib.g:79:9: ')'
             {
-            match(')'); 
+            match(')');
 
             }
 
@@ -1575,7 +1575,7 @@
             // InternalOCLstdlib.g:80:7: ( ',' )
             // InternalOCLstdlib.g:80:9: ','
             {
-            match(','); 
+            match(',');
 
             }
 
@@ -1595,7 +1595,7 @@
             // InternalOCLstdlib.g:81:7: ( '{' )
             // InternalOCLstdlib.g:81:9: '{'
             {
-            match('{'); 
+            match('{');
 
             }
 
@@ -1615,7 +1615,7 @@
             // InternalOCLstdlib.g:82:7: ( '}' )
             // InternalOCLstdlib.g:82:9: '}'
             {
-            match('}'); 
+            match('}');
 
             }
 
@@ -1635,7 +1635,7 @@
             // InternalOCLstdlib.g:83:7: ( 'coercion' )
             // InternalOCLstdlib.g:83:9: 'coercion'
             {
-            match("coercion"); 
+            match("coercion");
 
 
             }
@@ -1656,7 +1656,7 @@
             // InternalOCLstdlib.g:84:7: ( '=>' )
             // InternalOCLstdlib.g:84:9: '=>'
             {
-            match("=>"); 
+            match("=>");
 
 
             }
@@ -1677,7 +1677,7 @@
             // InternalOCLstdlib.g:85:7: ( '|' )
             // InternalOCLstdlib.g:85:9: '|'
             {
-            match('|'); 
+            match('|');
 
             }
 
@@ -1697,7 +1697,7 @@
             // InternalOCLstdlib.g:86:7: ( 'body' )
             // InternalOCLstdlib.g:86:9: 'body'
             {
-            match("body"); 
+            match("body");
 
 
             }
@@ -1718,7 +1718,7 @@
             // InternalOCLstdlib.g:87:7: ( '..' )
             // InternalOCLstdlib.g:87:9: '..'
             {
-            match(".."); 
+            match("..");
 
 
             }
@@ -1739,7 +1739,7 @@
             // InternalOCLstdlib.g:88:7: ( '++' )
             // InternalOCLstdlib.g:88:9: '++'
             {
-            match("++"); 
+            match("++");
 
 
             }
@@ -1760,7 +1760,7 @@
             // InternalOCLstdlib.g:89:7: ( '<-' )
             // InternalOCLstdlib.g:89:9: '<-'
             {
-            match("<-"); 
+            match("<-");
 
 
             }
@@ -1781,7 +1781,7 @@
             // InternalOCLstdlib.g:90:7: ( 'invalid' )
             // InternalOCLstdlib.g:90:9: 'invalid'
             {
-            match("invalid"); 
+            match("invalid");
 
 
             }
@@ -1802,7 +1802,7 @@
             // InternalOCLstdlib.g:91:7: ( 'null' )
             // InternalOCLstdlib.g:91:9: 'null'
             {
-            match("null"); 
+            match("null");
 
 
             }
@@ -1823,7 +1823,7 @@
             // InternalOCLstdlib.g:92:7: ( '[' )
             // InternalOCLstdlib.g:92:9: '['
             {
-            match('['); 
+            match('[');
 
             }
 
@@ -1843,7 +1843,7 @@
             // InternalOCLstdlib.g:93:7: ( ']' )
             // InternalOCLstdlib.g:93:9: ']'
             {
-            match(']'); 
+            match(']');
 
             }
 
@@ -1863,7 +1863,7 @@
             // InternalOCLstdlib.g:94:7: ( 'elseif' )
             // InternalOCLstdlib.g:94:9: 'elseif'
             {
-            match("elseif"); 
+            match("elseif");
 
 
             }
@@ -1884,7 +1884,7 @@
             // InternalOCLstdlib.g:95:8: ( 'self' )
             // InternalOCLstdlib.g:95:10: 'self'
             {
-            match("self"); 
+            match("self");
 
 
             }
@@ -1905,7 +1905,7 @@
             // InternalOCLstdlib.g:96:8: ( '&&' )
             // InternalOCLstdlib.g:96:10: '&&'
             {
-            match("&&"); 
+            match("&&");
 
 
             }
@@ -1926,7 +1926,7 @@
             // InternalOCLstdlib.g:97:8: ( '::*' )
             // InternalOCLstdlib.g:97:10: '::*'
             {
-            match("::*"); 
+            match("::*");
 
 
             }
@@ -1947,7 +1947,7 @@
             // InternalOCLstdlib.g:98:8: ( 'typeof' )
             // InternalOCLstdlib.g:98:10: 'typeof'
             {
-            match("typeof"); 
+            match("typeof");
 
 
             }
@@ -1968,7 +1968,7 @@
             // InternalOCLstdlib.g:99:8: ( 'true' )
             // InternalOCLstdlib.g:99:10: 'true'
             {
-            match("true"); 
+            match("true");
 
 
             }
@@ -1989,7 +1989,7 @@
             // InternalOCLstdlib.g:100:8: ( 'false' )
             // InternalOCLstdlib.g:100:10: 'false'
             {
-            match("false"); 
+            match("false");
 
 
             }
@@ -2010,7 +2010,7 @@
             // InternalOCLstdlib.g:101:8: ( '@' )
             // InternalOCLstdlib.g:101:10: '@'
             {
-            match('@'); 
+            match('@');
 
             }
 
@@ -2030,7 +2030,7 @@
             // InternalOCLstdlib.g:102:8: ( '|1' )
             // InternalOCLstdlib.g:102:10: '|1'
             {
-            match("|1"); 
+            match("|1");
 
 
             }
@@ -2049,7 +2049,7 @@
             // InternalOCLstdlib.g:24158:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
             // InternalOCLstdlib.g:24158:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
-            match('\\'); 
+            match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
                 input.consume();
 
@@ -2100,7 +2100,7 @@
             // InternalOCLstdlib.g:24162:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
             // InternalOCLstdlib.g:24162:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
-            match('\"'); 
+            match('\"');
             // InternalOCLstdlib.g:24162:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
@@ -2119,7 +2119,7 @@
             	case 1 :
             	    // InternalOCLstdlib.g:24162:34: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -2144,7 +2144,7 @@
                 }
             } while (true);
 
-            match('\"'); 
+            match('\"');
 
             }
 
@@ -2164,7 +2164,7 @@
             // InternalOCLstdlib.g:24164:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             // InternalOCLstdlib.g:24164:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
-            match('\''); 
+            match('\'');
             // InternalOCLstdlib.g:24164:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
@@ -2183,7 +2183,7 @@
             	case 1 :
             	    // InternalOCLstdlib.g:24164:35: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -2208,7 +2208,7 @@
                 }
             } while (true);
 
-            match('\''); 
+            match('\'');
 
             }
 
@@ -2228,7 +2228,7 @@
             // InternalOCLstdlib.g:24166:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
             // InternalOCLstdlib.g:24166:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
-            match("/'"); 
+            match("/'");
 
             // InternalOCLstdlib.g:24166:38: ( options {greedy=false; } : . )*
             loop3:
@@ -2257,7 +2257,7 @@
             	case 1 :
             	    // InternalOCLstdlib.g:24166:66: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -2267,7 +2267,7 @@
                 }
             } while (true);
 
-            match("'/"); 
+            match("'/");
 
 
             }
@@ -2288,7 +2288,7 @@
             // InternalOCLstdlib.g:24168:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
             // InternalOCLstdlib.g:24168:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
-            mRULE_LETTER_CHARACTER(); 
+            mRULE_LETTER_CHARACTER();
             // InternalOCLstdlib.g:24168:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
@@ -2341,8 +2341,8 @@
             // InternalOCLstdlib.g:24170:17: ( '_' RULE_SINGLE_QUOTED_STRING )
             // InternalOCLstdlib.g:24170:19: '_' RULE_SINGLE_QUOTED_STRING
             {
-            match('_'); 
-            mRULE_SINGLE_QUOTED_STRING(); 
+            match('_');
+            mRULE_SINGLE_QUOTED_STRING();
 
             }
 
@@ -2378,7 +2378,7 @@
             	case 1 :
             	    // InternalOCLstdlib.g:24172:13: '0' .. '9'
             	    {
-            	    matchRange('0','9'); 
+            	    matchRange('0','9');
 
             	    }
             	    break;
@@ -2411,7 +2411,7 @@
             // InternalOCLstdlib.g:24174:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
             // InternalOCLstdlib.g:24174:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
-            match("/*"); 
+            match("/*");
 
             // InternalOCLstdlib.g:24174:24: ( options {greedy=false; } : . )*
             loop6:
@@ -2440,7 +2440,7 @@
             	case 1 :
             	    // InternalOCLstdlib.g:24174:52: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -2450,7 +2450,7 @@
                 }
             } while (true);
 
-            match("*/"); 
+            match("*/");
 
 
             }
@@ -2471,7 +2471,7 @@
             // InternalOCLstdlib.g:24176:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
             // InternalOCLstdlib.g:24176:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
-            match("--"); 
+            match("--");
 
             // InternalOCLstdlib.g:24176:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
@@ -2528,14 +2528,14 @@
                         case 1 :
                             // InternalOCLstdlib.g:24176:41: '\\r'
                             {
-                            match('\r'); 
+                            match('\r');
 
                             }
                             break;
 
                     }
 
-                    match('\n'); 
+                    match('\n');
 
                     }
                     break;
@@ -2618,7 +2618,7 @@
             // InternalOCLstdlib.g:24180:16: ( . )
             // InternalOCLstdlib.g:24180:18: .
             {
-            matchAny(); 
+            matchAny();
 
             }
 
@@ -2638,714 +2638,714 @@
             case 1 :
                 // InternalOCLstdlib.g:1:10: T__16
                 {
-                mT__16(); 
+                mT__16();
 
                 }
                 break;
             case 2 :
                 // InternalOCLstdlib.g:1:16: T__17
                 {
-                mT__17(); 
+                mT__17();
 
                 }
                 break;
             case 3 :
                 // InternalOCLstdlib.g:1:22: T__18
                 {
-                mT__18(); 
+                mT__18();
 
                 }
                 break;
             case 4 :
                 // InternalOCLstdlib.g:1:28: T__19
                 {
-                mT__19(); 
+                mT__19();
 
                 }
                 break;
             case 5 :
                 // InternalOCLstdlib.g:1:34: T__20
                 {
-                mT__20(); 
+                mT__20();
 
                 }
                 break;
             case 6 :
                 // InternalOCLstdlib.g:1:40: T__21
                 {
-                mT__21(); 
+                mT__21();
 
                 }
                 break;
             case 7 :
                 // InternalOCLstdlib.g:1:46: T__22
                 {
-                mT__22(); 
+                mT__22();
 
                 }
                 break;
             case 8 :
                 // InternalOCLstdlib.g:1:52: T__23
                 {
-                mT__23(); 
+                mT__23();
 
                 }
                 break;
             case 9 :
                 // InternalOCLstdlib.g:1:58: T__24
                 {
-                mT__24(); 
+                mT__24();
 
                 }
                 break;
             case 10 :
                 // InternalOCLstdlib.g:1:64: T__25
                 {
-                mT__25(); 
+                mT__25();
 
                 }
                 break;
             case 11 :
                 // InternalOCLstdlib.g:1:70: T__26
                 {
-                mT__26(); 
+                mT__26();
 
                 }
                 break;
             case 12 :
                 // InternalOCLstdlib.g:1:76: T__27
                 {
-                mT__27(); 
+                mT__27();
 
                 }
                 break;
             case 13 :
                 // InternalOCLstdlib.g:1:82: T__28
                 {
-                mT__28(); 
+                mT__28();
 
                 }
                 break;
             case 14 :
                 // InternalOCLstdlib.g:1:88: T__29
                 {
-                mT__29(); 
+                mT__29();
 
                 }
                 break;
             case 15 :
                 // InternalOCLstdlib.g:1:94: T__30
                 {
-                mT__30(); 
+                mT__30();
 
                 }
                 break;
             case 16 :
                 // InternalOCLstdlib.g:1:100: T__31
                 {
-                mT__31(); 
+                mT__31();
 
                 }
                 break;
             case 17 :
                 // InternalOCLstdlib.g:1:106: T__32
                 {
-                mT__32(); 
+                mT__32();
 
                 }
                 break;
             case 18 :
                 // InternalOCLstdlib.g:1:112: T__33
                 {
-                mT__33(); 
+                mT__33();
 
                 }
                 break;
             case 19 :
                 // InternalOCLstdlib.g:1:118: T__34
                 {
-                mT__34(); 
+                mT__34();
 
                 }
                 break;
             case 20 :
                 // InternalOCLstdlib.g:1:124: T__35
                 {
-                mT__35(); 
+                mT__35();
 
                 }
                 break;
             case 21 :
                 // InternalOCLstdlib.g:1:130: T__36
                 {
-                mT__36(); 
+                mT__36();
 
                 }
                 break;
             case 22 :
                 // InternalOCLstdlib.g:1:136: T__37
                 {
-                mT__37(); 
+                mT__37();
 
                 }
                 break;
             case 23 :
                 // InternalOCLstdlib.g:1:142: T__38
                 {
-                mT__38(); 
+                mT__38();
 
                 }
                 break;
             case 24 :
                 // InternalOCLstdlib.g:1:148: T__39
                 {
-                mT__39(); 
+                mT__39();
 
                 }
                 break;
             case 25 :
                 // InternalOCLstdlib.g:1:154: T__40
                 {
-                mT__40(); 
+                mT__40();
 
                 }
                 break;
             case 26 :
                 // InternalOCLstdlib.g:1:160: T__41
                 {
-                mT__41(); 
+                mT__41();
 
                 }
                 break;
             case 27 :
                 // InternalOCLstdlib.g:1:166: T__42
                 {
-                mT__42(); 
+                mT__42();
 
                 }
                 break;
             case 28 :
                 // InternalOCLstdlib.g:1:172: T__43
                 {
-                mT__43(); 
+                mT__43();
 
                 }
                 break;
             case 29 :
                 // InternalOCLstdlib.g:1:178: T__44
                 {
-                mT__44(); 
+                mT__44();
 
                 }
                 break;
             case 30 :
                 // InternalOCLstdlib.g:1:184: T__45
                 {
-                mT__45(); 
+                mT__45();
 
                 }
                 break;
             case 31 :
                 // InternalOCLstdlib.g:1:190: T__46
                 {
-                mT__46(); 
+                mT__46();
 
                 }
                 break;
             case 32 :
                 // InternalOCLstdlib.g:1:196: T__47
                 {
-                mT__47(); 
+                mT__47();
 
                 }
                 break;
             case 33 :
                 // InternalOCLstdlib.g:1:202: T__48
                 {
-                mT__48(); 
+                mT__48();
 
                 }
                 break;
             case 34 :
                 // InternalOCLstdlib.g:1:208: T__49
                 {
-                mT__49(); 
+                mT__49();
 
                 }
                 break;
             case 35 :
                 // InternalOCLstdlib.g:1:214: T__50
                 {
-                mT__50(); 
+                mT__50();
 
                 }
                 break;
             case 36 :
                 // InternalOCLstdlib.g:1:220: T__51
                 {
-                mT__51(); 
+                mT__51();
 
                 }
                 break;
             case 37 :
                 // InternalOCLstdlib.g:1:226: T__52
                 {
-                mT__52(); 
+                mT__52();
 
                 }
                 break;
             case 38 :
                 // InternalOCLstdlib.g:1:232: T__53
                 {
-                mT__53(); 
+                mT__53();
 
                 }
                 break;
             case 39 :
                 // InternalOCLstdlib.g:1:238: T__54
                 {
-                mT__54(); 
+                mT__54();
 
                 }
                 break;
             case 40 :
                 // InternalOCLstdlib.g:1:244: T__55
                 {
-                mT__55(); 
+                mT__55();
 
                 }
                 break;
             case 41 :
                 // InternalOCLstdlib.g:1:250: T__56
                 {
-                mT__56(); 
+                mT__56();
 
                 }
                 break;
             case 42 :
                 // InternalOCLstdlib.g:1:256: T__57
                 {
-                mT__57(); 
+                mT__57();
 
                 }
                 break;
             case 43 :
                 // InternalOCLstdlib.g:1:262: T__58
                 {
-                mT__58(); 
+                mT__58();
 
                 }
                 break;
             case 44 :
                 // InternalOCLstdlib.g:1:268: T__59
                 {
-                mT__59(); 
+                mT__59();
 
                 }
                 break;
             case 45 :
                 // InternalOCLstdlib.g:1:274: T__60
                 {
-                mT__60(); 
+                mT__60();
 
                 }
                 break;
             case 46 :
                 // InternalOCLstdlib.g:1:280: T__61
                 {
-                mT__61(); 
+                mT__61();
 
                 }
                 break;
             case 47 :
                 // InternalOCLstdlib.g:1:286: T__62
                 {
-                mT__62(); 
+                mT__62();
 
                 }
                 break;
             case 48 :
                 // InternalOCLstdlib.g:1:292: T__63
                 {
-                mT__63(); 
+                mT__63();
 
                 }
                 break;
             case 49 :
                 // InternalOCLstdlib.g:1:298: T__64
                 {
-                mT__64(); 
+                mT__64();
 
                 }
                 break;
             case 50 :
                 // InternalOCLstdlib.g:1:304: T__65
                 {
-                mT__65(); 
+                mT__65();
 
                 }
                 break;
             case 51 :
                 // InternalOCLstdlib.g:1:310: T__66
                 {
-                mT__66(); 
+                mT__66();
 
                 }
                 break;
             case 52 :
                 // InternalOCLstdlib.g:1:316: T__67
                 {
-                mT__67(); 
+                mT__67();
 
                 }
                 break;
             case 53 :
                 // InternalOCLstdlib.g:1:322: T__68
                 {
-                mT__68(); 
+                mT__68();
 
                 }
                 break;
             case 54 :
                 // InternalOCLstdlib.g:1:328: T__69
                 {
-                mT__69(); 
+                mT__69();
 
                 }
                 break;
             case 55 :
                 // InternalOCLstdlib.g:1:334: T__70
                 {
-                mT__70(); 
+                mT__70();
 
                 }
                 break;
             case 56 :
                 // InternalOCLstdlib.g:1:340: T__71
                 {
-                mT__71(); 
+                mT__71();
 
                 }
                 break;
             case 57 :
                 // InternalOCLstdlib.g:1:346: T__72
                 {
-                mT__72(); 
+                mT__72();
 
                 }
                 break;
             case 58 :
                 // InternalOCLstdlib.g:1:352: T__73
                 {
-                mT__73(); 
+                mT__73();
 
                 }
                 break;
             case 59 :
                 // InternalOCLstdlib.g:1:358: T__74
                 {
-                mT__74(); 
+                mT__74();
 
                 }
                 break;
             case 60 :
                 // InternalOCLstdlib.g:1:364: T__75
                 {
-                mT__75(); 
+                mT__75();
 
                 }
                 break;
             case 61 :
                 // InternalOCLstdlib.g:1:370: T__76
                 {
-                mT__76(); 
+                mT__76();
 
                 }
                 break;
             case 62 :
                 // InternalOCLstdlib.g:1:376: T__77
                 {
-                mT__77(); 
+                mT__77();
 
                 }
                 break;
             case 63 :
                 // InternalOCLstdlib.g:1:382: T__78
                 {
-                mT__78(); 
+                mT__78();
 
                 }
                 break;
             case 64 :
                 // InternalOCLstdlib.g:1:388: T__79
                 {
-                mT__79(); 
+                mT__79();
 
                 }
                 break;
             case 65 :
                 // InternalOCLstdlib.g:1:394: T__80
                 {
-                mT__80(); 
+                mT__80();
 
                 }
                 break;
             case 66 :
                 // InternalOCLstdlib.g:1:400: T__81
                 {
-                mT__81(); 
+                mT__81();
 
                 }
                 break;
             case 67 :
                 // InternalOCLstdlib.g:1:406: T__82
                 {
-                mT__82(); 
+                mT__82();
 
                 }
                 break;
             case 68 :
                 // InternalOCLstdlib.g:1:412: T__83
                 {
-                mT__83(); 
+                mT__83();
 
                 }
                 break;
             case 69 :
                 // InternalOCLstdlib.g:1:418: T__84
                 {
-                mT__84(); 
+                mT__84();
 
                 }
                 break;
             case 70 :
                 // InternalOCLstdlib.g:1:424: T__85
                 {
-                mT__85(); 
+                mT__85();
 
                 }
                 break;
             case 71 :
                 // InternalOCLstdlib.g:1:430: T__86
                 {
-                mT__86(); 
+                mT__86();
 
                 }
                 break;
             case 72 :
                 // InternalOCLstdlib.g:1:436: T__87
                 {
-                mT__87(); 
+                mT__87();
 
                 }
                 break;
             case 73 :
                 // InternalOCLstdlib.g:1:442: T__88
                 {
-                mT__88(); 
+                mT__88();
 
                 }
                 break;
             case 74 :
                 // InternalOCLstdlib.g:1:448: T__89
                 {
-                mT__89(); 
+                mT__89();
 
                 }
                 break;
             case 75 :
                 // InternalOCLstdlib.g:1:454: T__90
                 {
-                mT__90(); 
+                mT__90();
 
                 }
                 break;
             case 76 :
                 // InternalOCLstdlib.g:1:460: T__91
                 {
-                mT__91(); 
+                mT__91();
 
                 }
                 break;
             case 77 :
                 // InternalOCLstdlib.g:1:466: T__92
                 {
-                mT__92(); 
+                mT__92();
 
                 }
                 break;
             case 78 :
                 // InternalOCLstdlib.g:1:472: T__93
                 {
-                mT__93(); 
+                mT__93();
 
                 }
                 break;
             case 79 :
                 // InternalOCLstdlib.g:1:478: T__94
                 {
-                mT__94(); 
+                mT__94();
 
                 }
                 break;
             case 80 :
                 // InternalOCLstdlib.g:1:484: T__95
                 {
-                mT__95(); 
+                mT__95();
 
                 }
                 break;
             case 81 :
                 // InternalOCLstdlib.g:1:490: T__96
                 {
-                mT__96(); 
+                mT__96();
 
                 }
                 break;
             case 82 :
                 // InternalOCLstdlib.g:1:496: T__97
                 {
-                mT__97(); 
+                mT__97();
 
                 }
                 break;
             case 83 :
                 // InternalOCLstdlib.g:1:502: T__98
                 {
-                mT__98(); 
+                mT__98();
 
                 }
                 break;
             case 84 :
                 // InternalOCLstdlib.g:1:508: T__99
                 {
-                mT__99(); 
+                mT__99();
 
                 }
                 break;
             case 85 :
                 // InternalOCLstdlib.g:1:514: T__100
                 {
-                mT__100(); 
+                mT__100();
 
                 }
                 break;
             case 86 :
                 // InternalOCLstdlib.g:1:521: T__101
                 {
-                mT__101(); 
+                mT__101();
 
                 }
                 break;
             case 87 :
                 // InternalOCLstdlib.g:1:528: T__102
                 {
-                mT__102(); 
+                mT__102();
 
                 }
                 break;
             case 88 :
                 // InternalOCLstdlib.g:1:535: T__103
                 {
-                mT__103(); 
+                mT__103();
 
                 }
                 break;
             case 89 :
                 // InternalOCLstdlib.g:1:542: T__104
                 {
-                mT__104(); 
+                mT__104();
 
                 }
                 break;
             case 90 :
                 // InternalOCLstdlib.g:1:549: T__105
                 {
-                mT__105(); 
+                mT__105();
 
                 }
                 break;
             case 91 :
                 // InternalOCLstdlib.g:1:556: T__106
                 {
-                mT__106(); 
+                mT__106();
 
                 }
                 break;
             case 92 :
                 // InternalOCLstdlib.g:1:563: T__107
                 {
-                mT__107(); 
+                mT__107();
 
                 }
                 break;
             case 93 :
                 // InternalOCLstdlib.g:1:570: RULE_DOUBLE_QUOTED_STRING
                 {
-                mRULE_DOUBLE_QUOTED_STRING(); 
+                mRULE_DOUBLE_QUOTED_STRING();
 
                 }
                 break;
             case 94 :
                 // InternalOCLstdlib.g:1:596: RULE_SINGLE_QUOTED_STRING
                 {
-                mRULE_SINGLE_QUOTED_STRING(); 
+                mRULE_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 95 :
                 // InternalOCLstdlib.g:1:622: RULE_ML_SINGLE_QUOTED_STRING
                 {
-                mRULE_ML_SINGLE_QUOTED_STRING(); 
+                mRULE_ML_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 96 :
                 // InternalOCLstdlib.g:1:651: RULE_SIMPLE_ID
                 {
-                mRULE_SIMPLE_ID(); 
+                mRULE_SIMPLE_ID();
 
                 }
                 break;
             case 97 :
                 // InternalOCLstdlib.g:1:666: RULE_ESCAPED_ID
                 {
-                mRULE_ESCAPED_ID(); 
+                mRULE_ESCAPED_ID();
 
                 }
                 break;
             case 98 :
                 // InternalOCLstdlib.g:1:682: RULE_INT
                 {
-                mRULE_INT(); 
+                mRULE_INT();
 
                 }
                 break;
             case 99 :
                 // InternalOCLstdlib.g:1:691: RULE_ML_COMMENT
                 {
-                mRULE_ML_COMMENT(); 
+                mRULE_ML_COMMENT();
 
                 }
                 break;
             case 100 :
                 // InternalOCLstdlib.g:1:707: RULE_SL_COMMENT
                 {
-                mRULE_SL_COMMENT(); 
+                mRULE_SL_COMMENT();
 
                 }
                 break;
             case 101 :
                 // InternalOCLstdlib.g:1:723: RULE_WS
                 {
-                mRULE_WS(); 
+                mRULE_WS();
 
                 }
                 break;
             case 102 :
                 // InternalOCLstdlib.g:1:731: RULE_ANY_OTHER
                 {
-                mRULE_ANY_OTHER(); 
+                mRULE_ANY_OTHER();
 
                 }
                 break;
@@ -3831,7 +3831,7 @@
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA11_0 = input.LA(1);
 
                         s = -1;
@@ -3945,7 +3945,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA11_48 = input.LA(1);
 
                         s = -1;
@@ -3955,7 +3955,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA11_49 = input.LA(1);
 
                         s = -1;
@@ -3972,6 +3972,6 @@
             throw nvae;
         }
     }
- 
+
 
 }
\ No newline at end of file
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 52b995d..9a31df1 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
@@ -1,4 +1,4 @@
-package org.eclipse.ocl.xtext.oclstdlib.ui.contentassist.antlr.internal; 
+package org.eclipse.ocl.xtext.oclstdlib.ui.contentassist.antlr.internal;
 
 import java.io.InputStream;
 import org.eclipse.xtext.*;
@@ -150,26 +150,26 @@
         }
         public InternalOCLstdlibParser(TokenStream input, RecognizerSharedState state) {
             super(input, state);
-             
+
         }
-        
+
 
     public String[] getTokenNames() { return InternalOCLstdlibParser.tokenNames; }
     public String getGrammarFileName() { return "InternalOCLstdlib.g"; }
 
 
-     
+
      	private OCLstdlibGrammarAccess grammarAccess;
-     	
+
         public void setGrammarAccess(OCLstdlibGrammarAccess grammarAccess) {
         	this.grammarAccess = grammarAccess;
         }
-        
+
         @Override
         protected Grammar getGrammar() {
         	return grammarAccess.getGrammar();
         }
-        
+
         @Override
         protected String getValueForTokenName(String tokenName) {
         	return tokenName;
@@ -186,7 +186,7 @@
             // InternalOCLstdlib.g:70:1: ruleLibrary EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibraryRule()); 
+               before(grammarAccess.getLibraryRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLibrary();
@@ -194,7 +194,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibraryRule()); 
+               after(grammarAccess.getLibraryRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -217,7 +217,7 @@
     public final void ruleLibrary() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:81:2: ( ( ( rule__Library__Group__0 ) ) )
             // InternalOCLstdlib.g:82:1: ( ( rule__Library__Group__0 ) )
@@ -226,7 +226,7 @@
             // InternalOCLstdlib.g:83:1: ( rule__Library__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibraryAccess().getGroup()); 
+               before(grammarAccess.getLibraryAccess().getGroup());
             }
             // InternalOCLstdlib.g:84:1: ( rule__Library__Group__0 )
             // InternalOCLstdlib.g:84:2: rule__Library__Group__0
@@ -240,7 +240,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibraryAccess().getGroup()); 
+               after(grammarAccess.getLibraryAccess().getGroup());
             }
 
             }
@@ -271,7 +271,7 @@
             // InternalOCLstdlib.g:98:1: ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIdentifierRule()); 
+               before(grammarAccess.getIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleIdentifier();
@@ -279,7 +279,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIdentifierRule()); 
+               after(grammarAccess.getIdentifierRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -302,7 +302,7 @@
     public final void ruleIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:109:2: ( ( ( rule__Identifier__Alternatives ) ) )
             // InternalOCLstdlib.g:110:1: ( ( rule__Identifier__Alternatives ) )
@@ -311,7 +311,7 @@
             // InternalOCLstdlib.g:111:1: ( rule__Identifier__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIdentifierAccess().getAlternatives()); 
+               before(grammarAccess.getIdentifierAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:112:1: ( rule__Identifier__Alternatives )
             // InternalOCLstdlib.g:112:2: rule__Identifier__Alternatives
@@ -325,7 +325,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIdentifierAccess().getAlternatives()); 
+               after(grammarAccess.getIdentifierAccess().getAlternatives());
             }
 
             }
@@ -356,7 +356,7 @@
             // InternalOCLstdlib.g:126:1: ruleRestrictedKeywords EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRestrictedKeywordsRule()); 
+               before(grammarAccess.getRestrictedKeywordsRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleRestrictedKeywords();
@@ -364,7 +364,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRestrictedKeywordsRule()); 
+               after(grammarAccess.getRestrictedKeywordsRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -387,7 +387,7 @@
     public final void ruleRestrictedKeywords() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:137:2: ( ( ( rule__RestrictedKeywords__Alternatives ) ) )
             // InternalOCLstdlib.g:138:1: ( ( rule__RestrictedKeywords__Alternatives ) )
@@ -396,7 +396,7 @@
             // InternalOCLstdlib.g:139:1: ( rule__RestrictedKeywords__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRestrictedKeywordsAccess().getAlternatives()); 
+               before(grammarAccess.getRestrictedKeywordsAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:140:1: ( rule__RestrictedKeywords__Alternatives )
             // InternalOCLstdlib.g:140:2: rule__RestrictedKeywords__Alternatives
@@ -410,7 +410,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRestrictedKeywordsAccess().getAlternatives()); 
+               after(grammarAccess.getRestrictedKeywordsAccess().getAlternatives());
             }
 
             }
@@ -441,7 +441,7 @@
             // InternalOCLstdlib.g:154:1: ruleName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameRule()); 
+               before(grammarAccess.getNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleName();
@@ -449,7 +449,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameRule()); 
+               after(grammarAccess.getNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -472,7 +472,7 @@
     public final void ruleName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:165:2: ( ( ( rule__Name__Alternatives ) ) )
             // InternalOCLstdlib.g:166:1: ( ( rule__Name__Alternatives ) )
@@ -481,7 +481,7 @@
             // InternalOCLstdlib.g:167:1: ( rule__Name__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameAccess().getAlternatives()); 
+               before(grammarAccess.getNameAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:168:1: ( rule__Name__Alternatives )
             // InternalOCLstdlib.g:168:2: rule__Name__Alternatives
@@ -495,7 +495,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameAccess().getAlternatives()); 
+               after(grammarAccess.getNameAccess().getAlternatives());
             }
 
             }
@@ -526,7 +526,7 @@
             // InternalOCLstdlib.g:182:1: ruleAnyName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnyNameRule()); 
+               before(grammarAccess.getAnyNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleAnyName();
@@ -534,7 +534,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnyNameRule()); 
+               after(grammarAccess.getAnyNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -557,7 +557,7 @@
     public final void ruleAnyName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:193:2: ( ( ( rule__AnyName__Alternatives ) ) )
             // InternalOCLstdlib.g:194:1: ( ( rule__AnyName__Alternatives ) )
@@ -566,7 +566,7 @@
             // InternalOCLstdlib.g:195:1: ( rule__AnyName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnyNameAccess().getAlternatives()); 
+               before(grammarAccess.getAnyNameAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:196:1: ( rule__AnyName__Alternatives )
             // InternalOCLstdlib.g:196:2: rule__AnyName__Alternatives
@@ -580,7 +580,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnyNameAccess().getAlternatives()); 
+               after(grammarAccess.getAnyNameAccess().getAlternatives());
             }
 
             }
@@ -611,7 +611,7 @@
             // InternalOCLstdlib.g:210:1: ruleLibPathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPathNameCSRule()); 
+               before(grammarAccess.getLibPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLibPathNameCS();
@@ -619,7 +619,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPathNameCSRule()); 
+               after(grammarAccess.getLibPathNameCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -642,7 +642,7 @@
     public final void ruleLibPathNameCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:221:2: ( ( ( rule__LibPathNameCS__Group__0 ) ) )
             // InternalOCLstdlib.g:222:1: ( ( rule__LibPathNameCS__Group__0 ) )
@@ -651,7 +651,7 @@
             // InternalOCLstdlib.g:223:1: ( rule__LibPathNameCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPathNameCSAccess().getGroup()); 
+               before(grammarAccess.getLibPathNameCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:224:1: ( rule__LibPathNameCS__Group__0 )
             // InternalOCLstdlib.g:224:2: rule__LibPathNameCS__Group__0
@@ -665,7 +665,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPathNameCSAccess().getGroup()); 
+               after(grammarAccess.getLibPathNameCSAccess().getGroup());
             }
 
             }
@@ -696,7 +696,7 @@
             // InternalOCLstdlib.g:238:1: ruleLibPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPathElementCSRule()); 
+               before(grammarAccess.getLibPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLibPathElementCS();
@@ -704,7 +704,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPathElementCSRule()); 
+               after(grammarAccess.getLibPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -727,7 +727,7 @@
     public final void ruleLibPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:249:2: ( ( ( rule__LibPathElementCS__ReferredElementAssignment ) ) )
             // InternalOCLstdlib.g:250:1: ( ( rule__LibPathElementCS__ReferredElementAssignment ) )
@@ -736,7 +736,7 @@
             // InternalOCLstdlib.g:251:1: ( rule__LibPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPathElementCSAccess().getReferredElementAssignment()); 
+               before(grammarAccess.getLibPathElementCSAccess().getReferredElementAssignment());
             }
             // InternalOCLstdlib.g:252:1: ( rule__LibPathElementCS__ReferredElementAssignment )
             // InternalOCLstdlib.g:252:2: rule__LibPathElementCS__ReferredElementAssignment
@@ -750,7 +750,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPathElementCSAccess().getReferredElementAssignment()); 
+               after(grammarAccess.getLibPathElementCSAccess().getReferredElementAssignment());
             }
 
             }
@@ -781,7 +781,7 @@
             // InternalOCLstdlib.g:266:1: ruleAccumulatorCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAccumulatorCSRule()); 
+               before(grammarAccess.getAccumulatorCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleAccumulatorCS();
@@ -789,7 +789,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAccumulatorCSRule()); 
+               after(grammarAccess.getAccumulatorCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -812,7 +812,7 @@
     public final void ruleAccumulatorCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:277:2: ( ( ( rule__AccumulatorCS__Group__0 ) ) )
             // InternalOCLstdlib.g:278:1: ( ( rule__AccumulatorCS__Group__0 ) )
@@ -821,7 +821,7 @@
             // InternalOCLstdlib.g:279:1: ( rule__AccumulatorCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAccumulatorCSAccess().getGroup()); 
+               before(grammarAccess.getAccumulatorCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:280:1: ( rule__AccumulatorCS__Group__0 )
             // InternalOCLstdlib.g:280:2: rule__AccumulatorCS__Group__0
@@ -835,7 +835,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAccumulatorCSAccess().getGroup()); 
+               after(grammarAccess.getAccumulatorCSAccess().getGroup());
             }
 
             }
@@ -866,7 +866,7 @@
             // InternalOCLstdlib.g:294:1: ruleAnnotationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSRule()); 
+               before(grammarAccess.getAnnotationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleAnnotationCS();
@@ -874,7 +874,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSRule()); 
+               after(grammarAccess.getAnnotationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -897,7 +897,7 @@
     public final void ruleAnnotationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:305:2: ( ( ( rule__AnnotationCS__Group__0 ) ) )
             // InternalOCLstdlib.g:306:1: ( ( rule__AnnotationCS__Group__0 ) )
@@ -906,7 +906,7 @@
             // InternalOCLstdlib.g:307:1: ( rule__AnnotationCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getGroup()); 
+               before(grammarAccess.getAnnotationCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:308:1: ( rule__AnnotationCS__Group__0 )
             // InternalOCLstdlib.g:308:2: rule__AnnotationCS__Group__0
@@ -920,7 +920,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getGroup()); 
+               after(grammarAccess.getAnnotationCSAccess().getGroup());
             }
 
             }
@@ -951,7 +951,7 @@
             // InternalOCLstdlib.g:322:1: ruleAnnotationElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationElementCSRule()); 
+               before(grammarAccess.getAnnotationElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleAnnotationElementCS();
@@ -959,7 +959,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationElementCSRule()); 
+               after(grammarAccess.getAnnotationElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -982,7 +982,7 @@
     public final void ruleAnnotationElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:333:2: ( ( ( rule__AnnotationElementCS__Alternatives ) ) )
             // InternalOCLstdlib.g:334:1: ( ( rule__AnnotationElementCS__Alternatives ) )
@@ -991,7 +991,7 @@
             // InternalOCLstdlib.g:335:1: ( rule__AnnotationElementCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationElementCSAccess().getAlternatives()); 
+               before(grammarAccess.getAnnotationElementCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:336:1: ( rule__AnnotationElementCS__Alternatives )
             // InternalOCLstdlib.g:336:2: rule__AnnotationElementCS__Alternatives
@@ -1005,7 +1005,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationElementCSAccess().getAlternatives()); 
+               after(grammarAccess.getAnnotationElementCSAccess().getAlternatives());
             }
 
             }
@@ -1036,7 +1036,7 @@
             // InternalOCLstdlib.g:350:1: ruleLibClassCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSRule()); 
+               before(grammarAccess.getLibClassCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLibClassCS();
@@ -1044,7 +1044,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSRule()); 
+               after(grammarAccess.getLibClassCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1067,7 +1067,7 @@
     public final void ruleLibClassCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:361:2: ( ( ( rule__LibClassCS__Group__0 ) ) )
             // InternalOCLstdlib.g:362:1: ( ( rule__LibClassCS__Group__0 ) )
@@ -1076,7 +1076,7 @@
             // InternalOCLstdlib.g:363:1: ( rule__LibClassCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getGroup()); 
+               before(grammarAccess.getLibClassCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:364:1: ( rule__LibClassCS__Group__0 )
             // InternalOCLstdlib.g:364:2: rule__LibClassCS__Group__0
@@ -1090,7 +1090,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getGroup()); 
+               after(grammarAccess.getLibClassCSAccess().getGroup());
             }
 
             }
@@ -1121,7 +1121,7 @@
             // InternalOCLstdlib.g:378:1: ruleClassCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassCSRule()); 
+               before(grammarAccess.getClassCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleClassCS();
@@ -1129,7 +1129,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassCSRule()); 
+               after(grammarAccess.getClassCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1152,7 +1152,7 @@
     public final void ruleClassCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:389:2: ( ( ruleLibClassCS ) )
             // InternalOCLstdlib.g:390:1: ( ruleLibClassCS )
@@ -1161,7 +1161,7 @@
             // InternalOCLstdlib.g:391:1: ruleLibClassCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getClassCSAccess().getLibClassCSParserRuleCall()); 
+               before(grammarAccess.getClassCSAccess().getLibClassCSParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLibClassCS();
@@ -1169,7 +1169,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getClassCSAccess().getLibClassCSParserRuleCall()); 
+               after(grammarAccess.getClassCSAccess().getLibClassCSParserRuleCall());
             }
 
             }
@@ -1200,7 +1200,7 @@
             // InternalOCLstdlib.g:406:1: ruleDetailCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSRule()); 
+               before(grammarAccess.getDetailCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleDetailCS();
@@ -1208,7 +1208,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSRule()); 
+               after(grammarAccess.getDetailCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1231,7 +1231,7 @@
     public final void ruleDetailCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:417:2: ( ( ( rule__DetailCS__Group__0 ) ) )
             // InternalOCLstdlib.g:418:1: ( ( rule__DetailCS__Group__0 ) )
@@ -1240,7 +1240,7 @@
             // InternalOCLstdlib.g:419:1: ( rule__DetailCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSAccess().getGroup()); 
+               before(grammarAccess.getDetailCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:420:1: ( rule__DetailCS__Group__0 )
             // InternalOCLstdlib.g:420:2: rule__DetailCS__Group__0
@@ -1254,7 +1254,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSAccess().getGroup()); 
+               after(grammarAccess.getDetailCSAccess().getGroup());
             }
 
             }
@@ -1285,7 +1285,7 @@
             // InternalOCLstdlib.g:434:1: ruleDocumentationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSRule()); 
+               before(grammarAccess.getDocumentationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleDocumentationCS();
@@ -1293,7 +1293,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSRule()); 
+               after(grammarAccess.getDocumentationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1316,7 +1316,7 @@
     public final void ruleDocumentationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:445:2: ( ( ( rule__DocumentationCS__Group__0 ) ) )
             // InternalOCLstdlib.g:446:1: ( ( rule__DocumentationCS__Group__0 ) )
@@ -1325,7 +1325,7 @@
             // InternalOCLstdlib.g:447:1: ( rule__DocumentationCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getGroup()); 
+               before(grammarAccess.getDocumentationCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:448:1: ( rule__DocumentationCS__Group__0 )
             // InternalOCLstdlib.g:448:2: rule__DocumentationCS__Group__0
@@ -1339,7 +1339,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getGroup()); 
+               after(grammarAccess.getDocumentationCSAccess().getGroup());
             }
 
             }
@@ -1370,7 +1370,7 @@
             // InternalOCLstdlib.g:462:1: ruleImportCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSRule()); 
+               before(grammarAccess.getImportCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleImportCS();
@@ -1378,7 +1378,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSRule()); 
+               after(grammarAccess.getImportCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1401,7 +1401,7 @@
     public final void ruleImportCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:473:2: ( ( ( rule__ImportCS__Group__0 ) ) )
             // InternalOCLstdlib.g:474:1: ( ( rule__ImportCS__Group__0 ) )
@@ -1410,7 +1410,7 @@
             // InternalOCLstdlib.g:475:1: ( rule__ImportCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getGroup()); 
+               before(grammarAccess.getImportCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:476:1: ( rule__ImportCS__Group__0 )
             // InternalOCLstdlib.g:476:2: rule__ImportCS__Group__0
@@ -1424,7 +1424,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getGroup()); 
+               after(grammarAccess.getImportCSAccess().getGroup());
             }
 
             }
@@ -1455,7 +1455,7 @@
             // InternalOCLstdlib.g:490:1: ruleInvCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSRule()); 
+               before(grammarAccess.getInvCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleInvCS();
@@ -1463,7 +1463,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSRule()); 
+               after(grammarAccess.getInvCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1486,7 +1486,7 @@
     public final void ruleInvCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:501:2: ( ( ( rule__InvCS__Group__0 ) ) )
             // InternalOCLstdlib.g:502:1: ( ( rule__InvCS__Group__0 ) )
@@ -1495,7 +1495,7 @@
             // InternalOCLstdlib.g:503:1: ( rule__InvCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getGroup()); 
+               before(grammarAccess.getInvCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:504:1: ( rule__InvCS__Group__0 )
             // InternalOCLstdlib.g:504:2: rule__InvCS__Group__0
@@ -1509,7 +1509,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getGroup()); 
+               after(grammarAccess.getInvCSAccess().getGroup());
             }
 
             }
@@ -1540,7 +1540,7 @@
             // InternalOCLstdlib.g:518:1: ruleLibCoercionCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSRule()); 
+               before(grammarAccess.getLibCoercionCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLibCoercionCS();
@@ -1548,7 +1548,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSRule()); 
+               after(grammarAccess.getLibCoercionCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1571,7 +1571,7 @@
     public final void ruleLibCoercionCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:529:2: ( ( ( rule__LibCoercionCS__Group__0 ) ) )
             // InternalOCLstdlib.g:530:1: ( ( rule__LibCoercionCS__Group__0 ) )
@@ -1580,7 +1580,7 @@
             // InternalOCLstdlib.g:531:1: ( rule__LibCoercionCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getGroup()); 
+               before(grammarAccess.getLibCoercionCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:532:1: ( rule__LibCoercionCS__Group__0 )
             // InternalOCLstdlib.g:532:2: rule__LibCoercionCS__Group__0
@@ -1594,7 +1594,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getGroup()); 
+               after(grammarAccess.getLibCoercionCSAccess().getGroup());
             }
 
             }
@@ -1625,7 +1625,7 @@
             // InternalOCLstdlib.g:546:1: ruleLibIterationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSRule()); 
+               before(grammarAccess.getLibIterationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLibIterationCS();
@@ -1633,7 +1633,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSRule()); 
+               after(grammarAccess.getLibIterationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1656,7 +1656,7 @@
     public final void ruleLibIterationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:557:2: ( ( ( rule__LibIterationCS__Group__0 ) ) )
             // InternalOCLstdlib.g:558:1: ( ( rule__LibIterationCS__Group__0 ) )
@@ -1665,7 +1665,7 @@
             // InternalOCLstdlib.g:559:1: ( rule__LibIterationCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getGroup()); 
+               before(grammarAccess.getLibIterationCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:560:1: ( rule__LibIterationCS__Group__0 )
             // InternalOCLstdlib.g:560:2: rule__LibIterationCS__Group__0
@@ -1679,7 +1679,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getGroup()); 
+               after(grammarAccess.getLibIterationCSAccess().getGroup());
             }
 
             }
@@ -1710,7 +1710,7 @@
             // InternalOCLstdlib.g:574:1: ruleIteratorCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIteratorCSRule()); 
+               before(grammarAccess.getIteratorCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleIteratorCS();
@@ -1718,7 +1718,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIteratorCSRule()); 
+               after(grammarAccess.getIteratorCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1741,7 +1741,7 @@
     public final void ruleIteratorCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:585:2: ( ( ( rule__IteratorCS__Group__0 ) ) )
             // InternalOCLstdlib.g:586:1: ( ( rule__IteratorCS__Group__0 ) )
@@ -1750,7 +1750,7 @@
             // InternalOCLstdlib.g:587:1: ( rule__IteratorCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIteratorCSAccess().getGroup()); 
+               before(grammarAccess.getIteratorCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:588:1: ( rule__IteratorCS__Group__0 )
             // InternalOCLstdlib.g:588:2: rule__IteratorCS__Group__0
@@ -1764,7 +1764,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIteratorCSAccess().getGroup()); 
+               after(grammarAccess.getIteratorCSAccess().getGroup());
             }
 
             }
@@ -1795,7 +1795,7 @@
             // InternalOCLstdlib.g:602:1: ruleLambdaTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSRule()); 
+               before(grammarAccess.getLambdaTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLambdaTypeCS();
@@ -1803,7 +1803,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSRule()); 
+               after(grammarAccess.getLambdaTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1826,7 +1826,7 @@
     public final void ruleLambdaTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:613:2: ( ( ( rule__LambdaTypeCS__Group__0 ) ) )
             // InternalOCLstdlib.g:614:1: ( ( rule__LambdaTypeCS__Group__0 ) )
@@ -1835,7 +1835,7 @@
             // InternalOCLstdlib.g:615:1: ( rule__LambdaTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getGroup()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:616:1: ( rule__LambdaTypeCS__Group__0 )
             // InternalOCLstdlib.g:616:2: rule__LambdaTypeCS__Group__0
@@ -1849,7 +1849,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getGroup()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getGroup());
             }
 
             }
@@ -1880,7 +1880,7 @@
             // InternalOCLstdlib.g:630:1: ruleLambdaContextTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaContextTypeRefCSRule()); 
+               before(grammarAccess.getLambdaContextTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLambdaContextTypeRefCS();
@@ -1888,7 +1888,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaContextTypeRefCSRule()); 
+               after(grammarAccess.getLambdaContextTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1911,7 +1911,7 @@
     public final void ruleLambdaContextTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:641:2: ( ( ( rule__LambdaContextTypeRefCS__OwnedPathNameAssignment ) ) )
             // InternalOCLstdlib.g:642:1: ( ( rule__LambdaContextTypeRefCS__OwnedPathNameAssignment ) )
@@ -1920,7 +1920,7 @@
             // InternalOCLstdlib.g:643:1: ( rule__LambdaContextTypeRefCS__OwnedPathNameAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameAssignment()); 
+               before(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameAssignment());
             }
             // InternalOCLstdlib.g:644:1: ( rule__LambdaContextTypeRefCS__OwnedPathNameAssignment )
             // InternalOCLstdlib.g:644:2: rule__LambdaContextTypeRefCS__OwnedPathNameAssignment
@@ -1934,7 +1934,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameAssignment()); 
+               after(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameAssignment());
             }
 
             }
@@ -1965,7 +1965,7 @@
             // InternalOCLstdlib.g:658:1: ruleOperationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSRule()); 
+               before(grammarAccess.getOperationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleOperationCS();
@@ -1973,7 +1973,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSRule()); 
+               after(grammarAccess.getOperationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -1996,7 +1996,7 @@
     public final void ruleOperationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:669:2: ( ( ( rule__OperationCS__Alternatives ) ) )
             // InternalOCLstdlib.g:670:1: ( ( rule__OperationCS__Alternatives ) )
@@ -2005,7 +2005,7 @@
             // InternalOCLstdlib.g:671:1: ( rule__OperationCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getOperationCSAccess().getAlternatives()); 
+               before(grammarAccess.getOperationCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:672:1: ( rule__OperationCS__Alternatives )
             // InternalOCLstdlib.g:672:2: rule__OperationCS__Alternatives
@@ -2019,7 +2019,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getOperationCSAccess().getAlternatives()); 
+               after(grammarAccess.getOperationCSAccess().getAlternatives());
             }
 
             }
@@ -2050,7 +2050,7 @@
             // InternalOCLstdlib.g:686:1: ruleLibOperationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSRule()); 
+               before(grammarAccess.getLibOperationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLibOperationCS();
@@ -2058,7 +2058,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSRule()); 
+               after(grammarAccess.getLibOperationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2081,7 +2081,7 @@
     public final void ruleLibOperationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:697:2: ( ( ( rule__LibOperationCS__Group__0 ) ) )
             // InternalOCLstdlib.g:698:1: ( ( rule__LibOperationCS__Group__0 ) )
@@ -2090,7 +2090,7 @@
             // InternalOCLstdlib.g:699:1: ( rule__LibOperationCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getGroup()); 
+               before(grammarAccess.getLibOperationCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:700:1: ( rule__LibOperationCS__Group__0 )
             // InternalOCLstdlib.g:700:2: rule__LibOperationCS__Group__0
@@ -2104,7 +2104,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getGroup()); 
+               after(grammarAccess.getLibOperationCSAccess().getGroup());
             }
 
             }
@@ -2135,7 +2135,7 @@
             // InternalOCLstdlib.g:714:1: ruleLibPackageCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSRule()); 
+               before(grammarAccess.getLibPackageCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLibPackageCS();
@@ -2143,7 +2143,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSRule()); 
+               after(grammarAccess.getLibPackageCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2166,7 +2166,7 @@
     public final void ruleLibPackageCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:725:2: ( ( ( rule__LibPackageCS__Group__0 ) ) )
             // InternalOCLstdlib.g:726:1: ( ( rule__LibPackageCS__Group__0 ) )
@@ -2175,7 +2175,7 @@
             // InternalOCLstdlib.g:727:1: ( rule__LibPackageCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getGroup()); 
+               before(grammarAccess.getLibPackageCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:728:1: ( rule__LibPackageCS__Group__0 )
             // InternalOCLstdlib.g:728:2: rule__LibPackageCS__Group__0
@@ -2189,7 +2189,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getGroup()); 
+               after(grammarAccess.getLibPackageCSAccess().getGroup());
             }
 
             }
@@ -2220,7 +2220,7 @@
             // InternalOCLstdlib.g:742:1: rulePackageCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSRule()); 
+               before(grammarAccess.getPackageCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePackageCS();
@@ -2228,7 +2228,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSRule()); 
+               after(grammarAccess.getPackageCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2251,7 +2251,7 @@
     public final void rulePackageCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:753:2: ( ( ( rule__PackageCS__Group__0 ) ) )
             // InternalOCLstdlib.g:754:1: ( ( rule__PackageCS__Group__0 ) )
@@ -2260,7 +2260,7 @@
             // InternalOCLstdlib.g:755:1: ( rule__PackageCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getGroup()); 
+               before(grammarAccess.getPackageCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:756:1: ( rule__PackageCS__Group__0 )
             // InternalOCLstdlib.g:756:2: rule__PackageCS__Group__0
@@ -2274,7 +2274,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getGroup()); 
+               after(grammarAccess.getPackageCSAccess().getGroup());
             }
 
             }
@@ -2305,7 +2305,7 @@
             // InternalOCLstdlib.g:770:1: ruleParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSRule()); 
+               before(grammarAccess.getParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleParameterCS();
@@ -2313,7 +2313,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSRule()); 
+               after(grammarAccess.getParameterCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2336,7 +2336,7 @@
     public final void ruleParameterCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:781:2: ( ( ( rule__ParameterCS__Group__0 ) ) )
             // InternalOCLstdlib.g:782:1: ( ( rule__ParameterCS__Group__0 ) )
@@ -2345,7 +2345,7 @@
             // InternalOCLstdlib.g:783:1: ( rule__ParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getGroup()); 
+               before(grammarAccess.getParameterCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:784:1: ( rule__ParameterCS__Group__0 )
             // InternalOCLstdlib.g:784:2: rule__ParameterCS__Group__0
@@ -2359,7 +2359,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getGroup()); 
+               after(grammarAccess.getParameterCSAccess().getGroup());
             }
 
             }
@@ -2390,7 +2390,7 @@
             // InternalOCLstdlib.g:798:1: ruleLibPropertyCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSRule()); 
+               before(grammarAccess.getLibPropertyCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLibPropertyCS();
@@ -2398,7 +2398,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSRule()); 
+               after(grammarAccess.getLibPropertyCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2421,7 +2421,7 @@
     public final void ruleLibPropertyCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:809:2: ( ( ( rule__LibPropertyCS__Group__0 ) ) )
             // InternalOCLstdlib.g:810:1: ( ( rule__LibPropertyCS__Group__0 ) )
@@ -2430,7 +2430,7 @@
             // InternalOCLstdlib.g:811:1: ( rule__LibPropertyCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getGroup()); 
+               before(grammarAccess.getLibPropertyCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:812:1: ( rule__LibPropertyCS__Group__0 )
             // InternalOCLstdlib.g:812:2: rule__LibPropertyCS__Group__0
@@ -2444,7 +2444,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getGroup()); 
+               after(grammarAccess.getLibPropertyCSAccess().getGroup());
             }
 
             }
@@ -2475,7 +2475,7 @@
             // InternalOCLstdlib.g:826:1: rulePostCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSRule()); 
+               before(grammarAccess.getPostCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePostCS();
@@ -2483,7 +2483,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSRule()); 
+               after(grammarAccess.getPostCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2506,7 +2506,7 @@
     public final void rulePostCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:837:2: ( ( ( rule__PostCS__Group__0 ) ) )
             // InternalOCLstdlib.g:838:1: ( ( rule__PostCS__Group__0 ) )
@@ -2515,7 +2515,7 @@
             // InternalOCLstdlib.g:839:1: ( rule__PostCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getGroup()); 
+               before(grammarAccess.getPostCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:840:1: ( rule__PostCS__Group__0 )
             // InternalOCLstdlib.g:840:2: rule__PostCS__Group__0
@@ -2529,7 +2529,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getGroup()); 
+               after(grammarAccess.getPostCSAccess().getGroup());
             }
 
             }
@@ -2560,7 +2560,7 @@
             // InternalOCLstdlib.g:854:1: rulePreCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSRule()); 
+               before(grammarAccess.getPreCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePreCS();
@@ -2568,7 +2568,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSRule()); 
+               after(grammarAccess.getPreCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2591,7 +2591,7 @@
     public final void rulePreCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:865:2: ( ( ( rule__PreCS__Group__0 ) ) )
             // InternalOCLstdlib.g:866:1: ( ( rule__PreCS__Group__0 ) )
@@ -2600,7 +2600,7 @@
             // InternalOCLstdlib.g:867:1: ( rule__PreCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getGroup()); 
+               before(grammarAccess.getPreCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:868:1: ( rule__PreCS__Group__0 )
             // InternalOCLstdlib.g:868:2: rule__PreCS__Group__0
@@ -2614,7 +2614,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getGroup()); 
+               after(grammarAccess.getPreCSAccess().getGroup());
             }
 
             }
@@ -2645,7 +2645,7 @@
             // InternalOCLstdlib.g:882:1: rulePrecedenceCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrecedenceCSRule()); 
+               before(grammarAccess.getPrecedenceCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrecedenceCS();
@@ -2653,7 +2653,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrecedenceCSRule()); 
+               after(grammarAccess.getPrecedenceCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2676,7 +2676,7 @@
     public final void rulePrecedenceCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:893:2: ( ( ( rule__PrecedenceCS__Group__0 ) ) )
             // InternalOCLstdlib.g:894:1: ( ( rule__PrecedenceCS__Group__0 ) )
@@ -2685,7 +2685,7 @@
             // InternalOCLstdlib.g:895:1: ( rule__PrecedenceCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrecedenceCSAccess().getGroup()); 
+               before(grammarAccess.getPrecedenceCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:896:1: ( rule__PrecedenceCS__Group__0 )
             // InternalOCLstdlib.g:896:2: rule__PrecedenceCS__Group__0
@@ -2699,7 +2699,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrecedenceCSAccess().getGroup()); 
+               after(grammarAccess.getPrecedenceCSAccess().getGroup());
             }
 
             }
@@ -2730,7 +2730,7 @@
             // InternalOCLstdlib.g:910:1: ruleSpecificationCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSpecificationCSRule()); 
+               before(grammarAccess.getSpecificationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleSpecificationCS();
@@ -2738,7 +2738,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSpecificationCSRule()); 
+               after(grammarAccess.getSpecificationCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2761,7 +2761,7 @@
     public final void ruleSpecificationCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:921:2: ( ( ( rule__SpecificationCS__OwnedExpressionAssignment ) ) )
             // InternalOCLstdlib.g:922:1: ( ( rule__SpecificationCS__OwnedExpressionAssignment ) )
@@ -2770,7 +2770,7 @@
             // InternalOCLstdlib.g:923:1: ( rule__SpecificationCS__OwnedExpressionAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment()); 
+               before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment());
             }
             // InternalOCLstdlib.g:924:1: ( rule__SpecificationCS__OwnedExpressionAssignment )
             // InternalOCLstdlib.g:924:2: rule__SpecificationCS__OwnedExpressionAssignment
@@ -2784,7 +2784,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment()); 
+               after(grammarAccess.getSpecificationCSAccess().getOwnedExpressionAssignment());
             }
 
             }
@@ -2815,7 +2815,7 @@
             // InternalOCLstdlib.g:938:1: ruleTypedMultiplicityRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedMultiplicityRefCSRule()); 
+               before(grammarAccess.getTypedMultiplicityRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypedMultiplicityRefCS();
@@ -2823,7 +2823,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedMultiplicityRefCSRule()); 
+               after(grammarAccess.getTypedMultiplicityRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2846,7 +2846,7 @@
     public final void ruleTypedMultiplicityRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:949:2: ( ( ( rule__TypedMultiplicityRefCS__Group__0 ) ) )
             // InternalOCLstdlib.g:950:1: ( ( rule__TypedMultiplicityRefCS__Group__0 ) )
@@ -2855,7 +2855,7 @@
             // InternalOCLstdlib.g:951:1: ( rule__TypedMultiplicityRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedMultiplicityRefCSAccess().getGroup()); 
+               before(grammarAccess.getTypedMultiplicityRefCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:952:1: ( rule__TypedMultiplicityRefCS__Group__0 )
             // InternalOCLstdlib.g:952:2: rule__TypedMultiplicityRefCS__Group__0
@@ -2869,7 +2869,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedMultiplicityRefCSAccess().getGroup()); 
+               after(grammarAccess.getTypedMultiplicityRefCSAccess().getGroup());
             }
 
             }
@@ -2900,7 +2900,7 @@
             // InternalOCLstdlib.g:966:1: ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedRefCSRule()); 
+               before(grammarAccess.getTypedRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypedRefCS();
@@ -2908,7 +2908,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedRefCSRule()); 
+               after(grammarAccess.getTypedRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -2931,7 +2931,7 @@
     public final void ruleTypedRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:977:2: ( ( ( rule__TypedRefCS__Alternatives ) ) )
             // InternalOCLstdlib.g:978:1: ( ( rule__TypedRefCS__Alternatives ) )
@@ -2940,7 +2940,7 @@
             // InternalOCLstdlib.g:979:1: ( rule__TypedRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedRefCSAccess().getAlternatives()); 
+               before(grammarAccess.getTypedRefCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:980:1: ( rule__TypedRefCS__Alternatives )
             // InternalOCLstdlib.g:980:2: rule__TypedRefCS__Alternatives
@@ -2954,7 +2954,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedRefCSAccess().getAlternatives()); 
+               after(grammarAccess.getTypedRefCSAccess().getAlternatives());
             }
 
             }
@@ -2985,7 +2985,7 @@
             // InternalOCLstdlib.g:994:1: ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSRule()); 
+               before(grammarAccess.getTypedTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypedTypeRefCS();
@@ -2993,7 +2993,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSRule()); 
+               after(grammarAccess.getTypedTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3016,7 +3016,7 @@
     public final void ruleTypedTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1005:2: ( ( ( rule__TypedTypeRefCS__Alternatives ) ) )
             // InternalOCLstdlib.g:1006:1: ( ( rule__TypedTypeRefCS__Alternatives ) )
@@ -3025,7 +3025,7 @@
             // InternalOCLstdlib.g:1007:1: ( rule__TypedTypeRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getAlternatives()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:1008:1: ( rule__TypedTypeRefCS__Alternatives )
             // InternalOCLstdlib.g:1008:2: rule__TypedTypeRefCS__Alternatives
@@ -3039,7 +3039,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getAlternatives()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getAlternatives());
             }
 
             }
@@ -3070,7 +3070,7 @@
             // InternalOCLstdlib.g:1022:1: ruleTuplePartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSRule()); 
+               before(grammarAccess.getTuplePartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTuplePartCS();
@@ -3078,7 +3078,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSRule()); 
+               after(grammarAccess.getTuplePartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3101,7 +3101,7 @@
     public final void ruleTuplePartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1033:2: ( ( ( rule__TuplePartCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1034:1: ( ( rule__TuplePartCS__Group__0 ) )
@@ -3110,7 +3110,7 @@
             // InternalOCLstdlib.g:1035:1: ( rule__TuplePartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getGroup()); 
+               before(grammarAccess.getTuplePartCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1036:1: ( rule__TuplePartCS__Group__0 )
             // InternalOCLstdlib.g:1036:2: rule__TuplePartCS__Group__0
@@ -3124,7 +3124,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getGroup()); 
+               after(grammarAccess.getTuplePartCSAccess().getGroup());
             }
 
             }
@@ -3155,7 +3155,7 @@
             // InternalOCLstdlib.g:1052:1: ruleEssentialOCLReservedKeyword EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLReservedKeywordRule()); 
+               before(grammarAccess.getEssentialOCLReservedKeywordRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLReservedKeyword();
@@ -3163,7 +3163,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLReservedKeywordRule()); 
+               after(grammarAccess.getEssentialOCLReservedKeywordRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3186,7 +3186,7 @@
     public final void ruleEssentialOCLReservedKeyword() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1063:2: ( ( ( rule__EssentialOCLReservedKeyword__Alternatives ) ) )
             // InternalOCLstdlib.g:1064:1: ( ( rule__EssentialOCLReservedKeyword__Alternatives ) )
@@ -3195,7 +3195,7 @@
             // InternalOCLstdlib.g:1065:1: ( rule__EssentialOCLReservedKeyword__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLReservedKeywordAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLReservedKeywordAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:1066:1: ( rule__EssentialOCLReservedKeyword__Alternatives )
             // InternalOCLstdlib.g:1066:2: rule__EssentialOCLReservedKeyword__Alternatives
@@ -3209,7 +3209,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLReservedKeywordAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLReservedKeywordAccess().getAlternatives());
             }
 
             }
@@ -3240,7 +3240,7 @@
             // InternalOCLstdlib.g:1080:1: ruleEssentialOCLUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); 
+               before(grammarAccess.getEssentialOCLUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLUnaryOperatorName();
@@ -3248,7 +3248,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); 
+               after(grammarAccess.getEssentialOCLUnaryOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3271,7 +3271,7 @@
     public final void ruleEssentialOCLUnaryOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1091:2: ( ( ( rule__EssentialOCLUnaryOperatorName__Alternatives ) ) )
             // InternalOCLstdlib.g:1092:1: ( ( rule__EssentialOCLUnaryOperatorName__Alternatives ) )
@@ -3280,7 +3280,7 @@
             // InternalOCLstdlib.g:1093:1: ( rule__EssentialOCLUnaryOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:1094:1: ( rule__EssentialOCLUnaryOperatorName__Alternatives )
             // InternalOCLstdlib.g:1094:2: rule__EssentialOCLUnaryOperatorName__Alternatives
@@ -3294,7 +3294,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -3325,7 +3325,7 @@
             // InternalOCLstdlib.g:1108:1: ruleEssentialOCLInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLInfixOperatorNameRule()); 
+               before(grammarAccess.getEssentialOCLInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLInfixOperatorName();
@@ -3333,7 +3333,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLInfixOperatorNameRule()); 
+               after(grammarAccess.getEssentialOCLInfixOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3356,7 +3356,7 @@
     public final void ruleEssentialOCLInfixOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1119:2: ( ( ( rule__EssentialOCLInfixOperatorName__Alternatives ) ) )
             // InternalOCLstdlib.g:1120:1: ( ( rule__EssentialOCLInfixOperatorName__Alternatives ) )
@@ -3365,7 +3365,7 @@
             // InternalOCLstdlib.g:1121:1: ( rule__EssentialOCLInfixOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:1122:1: ( rule__EssentialOCLInfixOperatorName__Alternatives )
             // InternalOCLstdlib.g:1122:2: rule__EssentialOCLInfixOperatorName__Alternatives
@@ -3379,7 +3379,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -3410,7 +3410,7 @@
             // InternalOCLstdlib.g:1136:1: ruleEssentialOCLNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); 
+               before(grammarAccess.getEssentialOCLNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLNavigationOperatorName();
@@ -3418,7 +3418,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); 
+               after(grammarAccess.getEssentialOCLNavigationOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3441,7 +3441,7 @@
     public final void ruleEssentialOCLNavigationOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1147:2: ( ( ( rule__EssentialOCLNavigationOperatorName__Alternatives ) ) )
             // InternalOCLstdlib.g:1148:1: ( ( rule__EssentialOCLNavigationOperatorName__Alternatives ) )
@@ -3450,7 +3450,7 @@
             // InternalOCLstdlib.g:1149:1: ( rule__EssentialOCLNavigationOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:1150:1: ( rule__EssentialOCLNavigationOperatorName__Alternatives )
             // InternalOCLstdlib.g:1150:2: rule__EssentialOCLNavigationOperatorName__Alternatives
@@ -3464,7 +3464,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -3495,7 +3495,7 @@
             // InternalOCLstdlib.g:1164:1: ruleBinaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBinaryOperatorNameRule()); 
+               before(grammarAccess.getBinaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleBinaryOperatorName();
@@ -3503,7 +3503,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBinaryOperatorNameRule()); 
+               after(grammarAccess.getBinaryOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3526,7 +3526,7 @@
     public final void ruleBinaryOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1175:2: ( ( ( rule__BinaryOperatorName__Alternatives ) ) )
             // InternalOCLstdlib.g:1176:1: ( ( rule__BinaryOperatorName__Alternatives ) )
@@ -3535,7 +3535,7 @@
             // InternalOCLstdlib.g:1177:1: ( rule__BinaryOperatorName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBinaryOperatorNameAccess().getAlternatives()); 
+               before(grammarAccess.getBinaryOperatorNameAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:1178:1: ( rule__BinaryOperatorName__Alternatives )
             // InternalOCLstdlib.g:1178:2: rule__BinaryOperatorName__Alternatives
@@ -3549,7 +3549,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBinaryOperatorNameAccess().getAlternatives()); 
+               after(grammarAccess.getBinaryOperatorNameAccess().getAlternatives());
             }
 
             }
@@ -3580,7 +3580,7 @@
             // InternalOCLstdlib.g:1192:1: ruleInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInfixOperatorNameRule()); 
+               before(grammarAccess.getInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleInfixOperatorName();
@@ -3588,7 +3588,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInfixOperatorNameRule()); 
+               after(grammarAccess.getInfixOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3611,7 +3611,7 @@
     public final void ruleInfixOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1203:2: ( ( ruleEssentialOCLInfixOperatorName ) )
             // InternalOCLstdlib.g:1204:1: ( ruleEssentialOCLInfixOperatorName )
@@ -3620,7 +3620,7 @@
             // InternalOCLstdlib.g:1205:1: ruleEssentialOCLInfixOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
+               before(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLInfixOperatorName();
@@ -3628,7 +3628,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
+               after(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
             }
 
             }
@@ -3659,7 +3659,7 @@
             // InternalOCLstdlib.g:1220:1: ruleNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigationOperatorNameRule()); 
+               before(grammarAccess.getNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigationOperatorName();
@@ -3667,7 +3667,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigationOperatorNameRule()); 
+               after(grammarAccess.getNavigationOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3690,7 +3690,7 @@
     public final void ruleNavigationOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1231:2: ( ( ruleEssentialOCLNavigationOperatorName ) )
             // InternalOCLstdlib.g:1232:1: ( ruleEssentialOCLNavigationOperatorName )
@@ -3699,7 +3699,7 @@
             // InternalOCLstdlib.g:1233:1: ruleEssentialOCLNavigationOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall()); 
+               before(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLNavigationOperatorName();
@@ -3707,7 +3707,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall()); 
+               after(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall());
             }
 
             }
@@ -3738,7 +3738,7 @@
             // InternalOCLstdlib.g:1248:1: ruleUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnaryOperatorNameRule()); 
+               before(grammarAccess.getUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnaryOperatorName();
@@ -3746,7 +3746,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnaryOperatorNameRule()); 
+               after(grammarAccess.getUnaryOperatorNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3769,7 +3769,7 @@
     public final void ruleUnaryOperatorName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1259:2: ( ( ruleEssentialOCLUnaryOperatorName ) )
             // InternalOCLstdlib.g:1260:1: ( ruleEssentialOCLUnaryOperatorName )
@@ -3778,7 +3778,7 @@
             // InternalOCLstdlib.g:1261:1: ruleEssentialOCLUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
+               before(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLUnaryOperatorName();
@@ -3786,7 +3786,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
+               after(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
             }
 
             }
@@ -3817,7 +3817,7 @@
             // InternalOCLstdlib.g:1276:1: ruleEssentialOCLUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnrestrictedNameRule()); 
+               before(grammarAccess.getEssentialOCLUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLUnrestrictedName();
@@ -3825,7 +3825,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnrestrictedNameRule()); 
+               after(grammarAccess.getEssentialOCLUnrestrictedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3848,7 +3848,7 @@
     public final void ruleEssentialOCLUnrestrictedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1287:2: ( ( ruleIdentifier ) )
             // InternalOCLstdlib.g:1288:1: ( ruleIdentifier )
@@ -3857,7 +3857,7 @@
             // InternalOCLstdlib.g:1289:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+               before(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -3865,7 +3865,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+               after(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
             }
 
             }
@@ -3896,7 +3896,7 @@
             // InternalOCLstdlib.g:1304:1: ruleUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnrestrictedNameRule()); 
+               before(grammarAccess.getUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnrestrictedName();
@@ -3904,7 +3904,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnrestrictedNameRule()); 
+               after(grammarAccess.getUnrestrictedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -3927,7 +3927,7 @@
     public final void ruleUnrestrictedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1315:2: ( ( ruleEssentialOCLUnrestrictedName ) )
             // InternalOCLstdlib.g:1316:1: ( ruleEssentialOCLUnrestrictedName )
@@ -3936,7 +3936,7 @@
             // InternalOCLstdlib.g:1317:1: ruleEssentialOCLUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall()); 
+               before(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLUnrestrictedName();
@@ -3944,7 +3944,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall()); 
+               after(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall());
             }
 
             }
@@ -3975,7 +3975,7 @@
             // InternalOCLstdlib.g:1332:1: ruleEssentialOCLUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnreservedNameRule()); 
+               before(grammarAccess.getEssentialOCLUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleEssentialOCLUnreservedName();
@@ -3983,7 +3983,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnreservedNameRule()); 
+               after(grammarAccess.getEssentialOCLUnreservedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4006,7 +4006,7 @@
     public final void ruleEssentialOCLUnreservedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1343:2: ( ( ( rule__EssentialOCLUnreservedName__Alternatives ) ) )
             // InternalOCLstdlib.g:1344:1: ( ( rule__EssentialOCLUnreservedName__Alternatives ) )
@@ -4015,7 +4015,7 @@
             // InternalOCLstdlib.g:1345:1: ( rule__EssentialOCLUnreservedName__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives()); 
+               before(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:1346:1: ( rule__EssentialOCLUnreservedName__Alternatives )
             // InternalOCLstdlib.g:1346:2: rule__EssentialOCLUnreservedName__Alternatives
@@ -4029,7 +4029,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives()); 
+               after(grammarAccess.getEssentialOCLUnreservedNameAccess().getAlternatives());
             }
 
             }
@@ -4060,7 +4060,7 @@
             // InternalOCLstdlib.g:1360:1: ruleUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnreservedNameRule()); 
+               before(grammarAccess.getUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnreservedName();
@@ -4068,7 +4068,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnreservedNameRule()); 
+               after(grammarAccess.getUnreservedNameRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4091,7 +4091,7 @@
     public final void ruleUnreservedName() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1371:2: ( ( ruleEssentialOCLUnreservedName ) )
             // InternalOCLstdlib.g:1372:1: ( ruleEssentialOCLUnreservedName )
@@ -4100,7 +4100,7 @@
             // InternalOCLstdlib.g:1373:1: ruleEssentialOCLUnreservedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
+               before(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleEssentialOCLUnreservedName();
@@ -4108,7 +4108,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
+               after(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
             }
 
             }
@@ -4139,7 +4139,7 @@
             // InternalOCLstdlib.g:1388:1: ruleURIPathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSRule()); 
+               before(grammarAccess.getURIPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleURIPathNameCS();
@@ -4147,7 +4147,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSRule()); 
+               after(grammarAccess.getURIPathNameCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4170,7 +4170,7 @@
     public final void ruleURIPathNameCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1399:2: ( ( ( rule__URIPathNameCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1400:1: ( ( rule__URIPathNameCS__Group__0 ) )
@@ -4179,7 +4179,7 @@
             // InternalOCLstdlib.g:1401:1: ( rule__URIPathNameCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getGroup()); 
+               before(grammarAccess.getURIPathNameCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1402:1: ( rule__URIPathNameCS__Group__0 )
             // InternalOCLstdlib.g:1402:2: rule__URIPathNameCS__Group__0
@@ -4193,7 +4193,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getGroup()); 
+               after(grammarAccess.getURIPathNameCSAccess().getGroup());
             }
 
             }
@@ -4224,7 +4224,7 @@
             // InternalOCLstdlib.g:1416:1: ruleURIFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSRule()); 
+               before(grammarAccess.getURIFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleURIFirstPathElementCS();
@@ -4232,7 +4232,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSRule()); 
+               after(grammarAccess.getURIFirstPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4255,7 +4255,7 @@
     public final void ruleURIFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1427:2: ( ( ( rule__URIFirstPathElementCS__Alternatives ) ) )
             // InternalOCLstdlib.g:1428:1: ( ( rule__URIFirstPathElementCS__Alternatives ) )
@@ -4264,7 +4264,7 @@
             // InternalOCLstdlib.g:1429:1: ( rule__URIFirstPathElementCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:1430:1: ( rule__URIFirstPathElementCS__Alternatives )
             // InternalOCLstdlib.g:1430:2: rule__URIFirstPathElementCS__Alternatives
@@ -4278,7 +4278,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getAlternatives());
             }
 
             }
@@ -4309,7 +4309,7 @@
             // InternalOCLstdlib.g:1444:1: rulePrimitiveTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeIdentifierRule()); 
+               before(grammarAccess.getPrimitiveTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimitiveTypeIdentifier();
@@ -4317,7 +4317,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeIdentifierRule()); 
+               after(grammarAccess.getPrimitiveTypeIdentifierRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4340,7 +4340,7 @@
     public final void rulePrimitiveTypeIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1455:2: ( ( ( rule__PrimitiveTypeIdentifier__Alternatives ) ) )
             // InternalOCLstdlib.g:1456:1: ( ( rule__PrimitiveTypeIdentifier__Alternatives ) )
@@ -4349,7 +4349,7 @@
             // InternalOCLstdlib.g:1457:1: ( rule__PrimitiveTypeIdentifier__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives()); 
+               before(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:1458:1: ( rule__PrimitiveTypeIdentifier__Alternatives )
             // InternalOCLstdlib.g:1458:2: rule__PrimitiveTypeIdentifier__Alternatives
@@ -4363,7 +4363,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives()); 
+               after(grammarAccess.getPrimitiveTypeIdentifierAccess().getAlternatives());
             }
 
             }
@@ -4394,7 +4394,7 @@
             // InternalOCLstdlib.g:1472:1: rulePrimitiveTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeCSRule()); 
+               before(grammarAccess.getPrimitiveTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimitiveTypeCS();
@@ -4402,7 +4402,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeCSRule()); 
+               after(grammarAccess.getPrimitiveTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4425,7 +4425,7 @@
     public final void rulePrimitiveTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1483:2: ( ( ( rule__PrimitiveTypeCS__NameAssignment ) ) )
             // InternalOCLstdlib.g:1484:1: ( ( rule__PrimitiveTypeCS__NameAssignment ) )
@@ -4434,7 +4434,7 @@
             // InternalOCLstdlib.g:1485:1: ( rule__PrimitiveTypeCS__NameAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment()); 
+               before(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment());
             }
             // InternalOCLstdlib.g:1486:1: ( rule__PrimitiveTypeCS__NameAssignment )
             // InternalOCLstdlib.g:1486:2: rule__PrimitiveTypeCS__NameAssignment
@@ -4448,7 +4448,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment()); 
+               after(grammarAccess.getPrimitiveTypeCSAccess().getNameAssignment());
             }
 
             }
@@ -4479,7 +4479,7 @@
             // InternalOCLstdlib.g:1500:1: ruleCollectionTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeIdentifierRule()); 
+               before(grammarAccess.getCollectionTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionTypeIdentifier();
@@ -4487,7 +4487,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeIdentifierRule()); 
+               after(grammarAccess.getCollectionTypeIdentifierRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4510,7 +4510,7 @@
     public final void ruleCollectionTypeIdentifier() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1511:2: ( ( ( rule__CollectionTypeIdentifier__Alternatives ) ) )
             // InternalOCLstdlib.g:1512:1: ( ( rule__CollectionTypeIdentifier__Alternatives ) )
@@ -4519,7 +4519,7 @@
             // InternalOCLstdlib.g:1513:1: ( rule__CollectionTypeIdentifier__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives()); 
+               before(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:1514:1: ( rule__CollectionTypeIdentifier__Alternatives )
             // InternalOCLstdlib.g:1514:2: rule__CollectionTypeIdentifier__Alternatives
@@ -4533,7 +4533,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives()); 
+               after(grammarAccess.getCollectionTypeIdentifierAccess().getAlternatives());
             }
 
             }
@@ -4564,7 +4564,7 @@
             // InternalOCLstdlib.g:1528:1: ruleCollectionTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSRule()); 
+               before(grammarAccess.getCollectionTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionTypeCS();
@@ -4572,7 +4572,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSRule()); 
+               after(grammarAccess.getCollectionTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4595,7 +4595,7 @@
     public final void ruleCollectionTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1539:2: ( ( ( rule__CollectionTypeCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1540:1: ( ( rule__CollectionTypeCS__Group__0 ) )
@@ -4604,7 +4604,7 @@
             // InternalOCLstdlib.g:1541:1: ( rule__CollectionTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getGroup()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1542:1: ( rule__CollectionTypeCS__Group__0 )
             // InternalOCLstdlib.g:1542:2: rule__CollectionTypeCS__Group__0
@@ -4618,7 +4618,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getGroup()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getGroup());
             }
 
             }
@@ -4649,7 +4649,7 @@
             // InternalOCLstdlib.g:1556:1: ruleMapTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSRule()); 
+               before(grammarAccess.getMapTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMapTypeCS();
@@ -4657,7 +4657,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSRule()); 
+               after(grammarAccess.getMapTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4680,7 +4680,7 @@
     public final void ruleMapTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1567:2: ( ( ( rule__MapTypeCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1568:1: ( ( rule__MapTypeCS__Group__0 ) )
@@ -4689,7 +4689,7 @@
             // InternalOCLstdlib.g:1569:1: ( rule__MapTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getGroup()); 
+               before(grammarAccess.getMapTypeCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1570:1: ( rule__MapTypeCS__Group__0 )
             // InternalOCLstdlib.g:1570:2: rule__MapTypeCS__Group__0
@@ -4703,7 +4703,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getGroup()); 
+               after(grammarAccess.getMapTypeCSAccess().getGroup());
             }
 
             }
@@ -4734,7 +4734,7 @@
             // InternalOCLstdlib.g:1584:1: ruleTupleTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSRule()); 
+               before(grammarAccess.getTupleTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTupleTypeCS();
@@ -4742,7 +4742,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSRule()); 
+               after(grammarAccess.getTupleTypeCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4765,7 +4765,7 @@
     public final void ruleTupleTypeCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1595:2: ( ( ( rule__TupleTypeCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1596:1: ( ( rule__TupleTypeCS__Group__0 ) )
@@ -4774,7 +4774,7 @@
             // InternalOCLstdlib.g:1597:1: ( rule__TupleTypeCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1598:1: ( rule__TupleTypeCS__Group__0 )
             // InternalOCLstdlib.g:1598:2: rule__TupleTypeCS__Group__0
@@ -4788,7 +4788,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup());
             }
 
             }
@@ -4819,7 +4819,7 @@
             // InternalOCLstdlib.g:1612:1: ruleCollectionLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSRule()); 
+               before(grammarAccess.getCollectionLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionLiteralExpCS();
@@ -4827,7 +4827,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSRule()); 
+               after(grammarAccess.getCollectionLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4850,7 +4850,7 @@
     public final void ruleCollectionLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1623:2: ( ( ( rule__CollectionLiteralExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1624:1: ( ( rule__CollectionLiteralExpCS__Group__0 ) )
@@ -4859,7 +4859,7 @@
             // InternalOCLstdlib.g:1625:1: ( rule__CollectionLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1626:1: ( rule__CollectionLiteralExpCS__Group__0 )
             // InternalOCLstdlib.g:1626:2: rule__CollectionLiteralExpCS__Group__0
@@ -4873,7 +4873,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -4904,7 +4904,7 @@
             // InternalOCLstdlib.g:1640:1: ruleCollectionLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSRule()); 
+               before(grammarAccess.getCollectionLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionLiteralPartCS();
@@ -4912,7 +4912,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSRule()); 
+               after(grammarAccess.getCollectionLiteralPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -4935,7 +4935,7 @@
     public final void ruleCollectionLiteralPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1651:2: ( ( ( rule__CollectionLiteralPartCS__Alternatives ) ) )
             // InternalOCLstdlib.g:1652:1: ( ( rule__CollectionLiteralPartCS__Alternatives ) )
@@ -4944,7 +4944,7 @@
             // InternalOCLstdlib.g:1653:1: ( rule__CollectionLiteralPartCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:1654:1: ( rule__CollectionLiteralPartCS__Alternatives )
             // InternalOCLstdlib.g:1654:2: rule__CollectionLiteralPartCS__Alternatives
@@ -4958,7 +4958,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getAlternatives());
             }
 
             }
@@ -4989,7 +4989,7 @@
             // InternalOCLstdlib.g:1668:1: ruleCollectionPatternCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSRule()); 
+               before(grammarAccess.getCollectionPatternCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCollectionPatternCS();
@@ -4997,7 +4997,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSRule()); 
+               after(grammarAccess.getCollectionPatternCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5020,7 +5020,7 @@
     public final void ruleCollectionPatternCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1679:2: ( ( ( rule__CollectionPatternCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1680:1: ( ( rule__CollectionPatternCS__Group__0 ) )
@@ -5029,7 +5029,7 @@
             // InternalOCLstdlib.g:1681:1: ( rule__CollectionPatternCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1682:1: ( rule__CollectionPatternCS__Group__0 )
             // InternalOCLstdlib.g:1682:2: rule__CollectionPatternCS__Group__0
@@ -5043,7 +5043,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup());
             }
 
             }
@@ -5074,7 +5074,7 @@
             // InternalOCLstdlib.g:1696:1: ruleShadowPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSRule()); 
+               before(grammarAccess.getShadowPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleShadowPartCS();
@@ -5082,7 +5082,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSRule()); 
+               after(grammarAccess.getShadowPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5105,7 +5105,7 @@
     public final void ruleShadowPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1707:2: ( ( ( rule__ShadowPartCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1708:1: ( ( rule__ShadowPartCS__Group__0 ) )
@@ -5114,7 +5114,7 @@
             // InternalOCLstdlib.g:1709:1: ( rule__ShadowPartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getGroup()); 
+               before(grammarAccess.getShadowPartCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1710:1: ( rule__ShadowPartCS__Group__0 )
             // InternalOCLstdlib.g:1710:2: rule__ShadowPartCS__Group__0
@@ -5128,7 +5128,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getGroup()); 
+               after(grammarAccess.getShadowPartCSAccess().getGroup());
             }
 
             }
@@ -5159,7 +5159,7 @@
             // InternalOCLstdlib.g:1724:1: rulePatternExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSRule()); 
+               before(grammarAccess.getPatternExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePatternExpCS();
@@ -5167,7 +5167,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSRule()); 
+               after(grammarAccess.getPatternExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5190,7 +5190,7 @@
     public final void rulePatternExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1735:2: ( ( ( rule__PatternExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1736:1: ( ( rule__PatternExpCS__Group__0 ) )
@@ -5199,7 +5199,7 @@
             // InternalOCLstdlib.g:1737:1: ( rule__PatternExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getGroup()); 
+               before(grammarAccess.getPatternExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1738:1: ( rule__PatternExpCS__Group__0 )
             // InternalOCLstdlib.g:1738:2: rule__PatternExpCS__Group__0
@@ -5213,7 +5213,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getGroup()); 
+               after(grammarAccess.getPatternExpCSAccess().getGroup());
             }
 
             }
@@ -5244,7 +5244,7 @@
             // InternalOCLstdlib.g:1752:1: ruleLambdaLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSRule()); 
+               before(grammarAccess.getLambdaLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLambdaLiteralExpCS();
@@ -5252,7 +5252,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSRule()); 
+               after(grammarAccess.getLambdaLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5275,7 +5275,7 @@
     public final void ruleLambdaLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1763:2: ( ( ( rule__LambdaLiteralExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1764:1: ( ( rule__LambdaLiteralExpCS__Group__0 ) )
@@ -5284,7 +5284,7 @@
             // InternalOCLstdlib.g:1765:1: ( rule__LambdaLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1766:1: ( rule__LambdaLiteralExpCS__Group__0 )
             // InternalOCLstdlib.g:1766:2: rule__LambdaLiteralExpCS__Group__0
@@ -5298,7 +5298,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -5329,7 +5329,7 @@
             // InternalOCLstdlib.g:1780:1: ruleMapLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSRule()); 
+               before(grammarAccess.getMapLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMapLiteralExpCS();
@@ -5337,7 +5337,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSRule()); 
+               after(grammarAccess.getMapLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5360,7 +5360,7 @@
     public final void ruleMapLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1791:2: ( ( ( rule__MapLiteralExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1792:1: ( ( rule__MapLiteralExpCS__Group__0 ) )
@@ -5369,7 +5369,7 @@
             // InternalOCLstdlib.g:1793:1: ( rule__MapLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1794:1: ( rule__MapLiteralExpCS__Group__0 )
             // InternalOCLstdlib.g:1794:2: rule__MapLiteralExpCS__Group__0
@@ -5383,7 +5383,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -5414,7 +5414,7 @@
             // InternalOCLstdlib.g:1808:1: ruleMapLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSRule()); 
+               before(grammarAccess.getMapLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMapLiteralPartCS();
@@ -5422,7 +5422,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSRule()); 
+               after(grammarAccess.getMapLiteralPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5445,7 +5445,7 @@
     public final void ruleMapLiteralPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1819:2: ( ( ( rule__MapLiteralPartCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1820:1: ( ( rule__MapLiteralPartCS__Group__0 ) )
@@ -5454,7 +5454,7 @@
             // InternalOCLstdlib.g:1821:1: ( rule__MapLiteralPartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getGroup()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1822:1: ( rule__MapLiteralPartCS__Group__0 )
             // InternalOCLstdlib.g:1822:2: rule__MapLiteralPartCS__Group__0
@@ -5468,7 +5468,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getGroup()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getGroup());
             }
 
             }
@@ -5499,7 +5499,7 @@
             // InternalOCLstdlib.g:1836:1: rulePrimitiveLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveLiteralExpCSRule()); 
+               before(grammarAccess.getPrimitiveLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimitiveLiteralExpCS();
@@ -5507,7 +5507,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveLiteralExpCSRule()); 
+               after(grammarAccess.getPrimitiveLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5530,7 +5530,7 @@
     public final void rulePrimitiveLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1847:2: ( ( ( rule__PrimitiveLiteralExpCS__Alternatives ) ) )
             // InternalOCLstdlib.g:1848:1: ( ( rule__PrimitiveLiteralExpCS__Alternatives ) )
@@ -5539,7 +5539,7 @@
             // InternalOCLstdlib.g:1849:1: ( rule__PrimitiveLiteralExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:1850:1: ( rule__PrimitiveLiteralExpCS__Alternatives )
             // InternalOCLstdlib.g:1850:2: rule__PrimitiveLiteralExpCS__Alternatives
@@ -5553,7 +5553,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrimitiveLiteralExpCSAccess().getAlternatives());
             }
 
             }
@@ -5584,7 +5584,7 @@
             // InternalOCLstdlib.g:1864:1: ruleTupleLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSRule()); 
+               before(grammarAccess.getTupleLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTupleLiteralExpCS();
@@ -5592,7 +5592,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSRule()); 
+               after(grammarAccess.getTupleLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5615,7 +5615,7 @@
     public final void ruleTupleLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1875:2: ( ( ( rule__TupleLiteralExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1876:1: ( ( rule__TupleLiteralExpCS__Group__0 ) )
@@ -5624,7 +5624,7 @@
             // InternalOCLstdlib.g:1877:1: ( rule__TupleLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1878:1: ( rule__TupleLiteralExpCS__Group__0 )
             // InternalOCLstdlib.g:1878:2: rule__TupleLiteralExpCS__Group__0
@@ -5638,7 +5638,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -5669,7 +5669,7 @@
             // InternalOCLstdlib.g:1892:1: ruleTupleLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSRule()); 
+               before(grammarAccess.getTupleLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTupleLiteralPartCS();
@@ -5677,7 +5677,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSRule()); 
+               after(grammarAccess.getTupleLiteralPartCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5700,7 +5700,7 @@
     public final void ruleTupleLiteralPartCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1903:2: ( ( ( rule__TupleLiteralPartCS__Group__0 ) ) )
             // InternalOCLstdlib.g:1904:1: ( ( rule__TupleLiteralPartCS__Group__0 ) )
@@ -5709,7 +5709,7 @@
             // InternalOCLstdlib.g:1905:1: ( rule__TupleLiteralPartCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:1906:1: ( rule__TupleLiteralPartCS__Group__0 )
             // InternalOCLstdlib.g:1906:2: rule__TupleLiteralPartCS__Group__0
@@ -5723,7 +5723,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup());
             }
 
             }
@@ -5754,7 +5754,7 @@
             // InternalOCLstdlib.g:1920:1: ruleNumberLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNumberLiteralExpCSRule()); 
+               before(grammarAccess.getNumberLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNumberLiteralExpCS();
@@ -5762,7 +5762,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNumberLiteralExpCSRule()); 
+               after(grammarAccess.getNumberLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5785,7 +5785,7 @@
     public final void ruleNumberLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1931:2: ( ( ( rule__NumberLiteralExpCS__SymbolAssignment ) ) )
             // InternalOCLstdlib.g:1932:1: ( ( rule__NumberLiteralExpCS__SymbolAssignment ) )
@@ -5794,7 +5794,7 @@
             // InternalOCLstdlib.g:1933:1: ( rule__NumberLiteralExpCS__SymbolAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment()); 
+               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment());
             }
             // InternalOCLstdlib.g:1934:1: ( rule__NumberLiteralExpCS__SymbolAssignment )
             // InternalOCLstdlib.g:1934:2: rule__NumberLiteralExpCS__SymbolAssignment
@@ -5808,7 +5808,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment()); 
+               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolAssignment());
             }
 
             }
@@ -5839,7 +5839,7 @@
             // InternalOCLstdlib.g:1948:1: ruleStringLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSRule()); 
+               before(grammarAccess.getStringLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleStringLiteralExpCS();
@@ -5847,7 +5847,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSRule()); 
+               after(grammarAccess.getStringLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -5870,7 +5870,7 @@
     public final void ruleStringLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1959:2: ( ( ( ( rule__StringLiteralExpCS__SegmentsAssignment ) ) ( ( rule__StringLiteralExpCS__SegmentsAssignment )* ) ) )
             // InternalOCLstdlib.g:1960:1: ( ( ( rule__StringLiteralExpCS__SegmentsAssignment ) ) ( ( rule__StringLiteralExpCS__SegmentsAssignment )* ) )
@@ -5882,7 +5882,7 @@
             // InternalOCLstdlib.g:1962:1: ( rule__StringLiteralExpCS__SegmentsAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
             // InternalOCLstdlib.g:1963:1: ( rule__StringLiteralExpCS__SegmentsAssignment )
             // InternalOCLstdlib.g:1963:2: rule__StringLiteralExpCS__SegmentsAssignment
@@ -5896,7 +5896,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
 
             }
@@ -5905,7 +5905,7 @@
             // InternalOCLstdlib.g:1967:1: ( rule__StringLiteralExpCS__SegmentsAssignment )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
             // InternalOCLstdlib.g:1968:1: ( rule__StringLiteralExpCS__SegmentsAssignment )*
             loop1:
@@ -5937,7 +5937,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment()); 
+               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsAssignment());
             }
 
             }
@@ -5971,7 +5971,7 @@
             // InternalOCLstdlib.g:1983:1: ruleBooleanLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSRule()); 
+               before(grammarAccess.getBooleanLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleBooleanLiteralExpCS();
@@ -5979,7 +5979,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSRule()); 
+               after(grammarAccess.getBooleanLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6002,7 +6002,7 @@
     public final void ruleBooleanLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:1994:2: ( ( ( rule__BooleanLiteralExpCS__Alternatives ) ) )
             // InternalOCLstdlib.g:1995:1: ( ( rule__BooleanLiteralExpCS__Alternatives ) )
@@ -6011,7 +6011,7 @@
             // InternalOCLstdlib.g:1996:1: ( rule__BooleanLiteralExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:1997:1: ( rule__BooleanLiteralExpCS__Alternatives )
             // InternalOCLstdlib.g:1997:2: rule__BooleanLiteralExpCS__Alternatives
@@ -6025,7 +6025,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getAlternatives());
             }
 
             }
@@ -6056,7 +6056,7 @@
             // InternalOCLstdlib.g:2011:1: ruleUnlimitedNaturalLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUnlimitedNaturalLiteralExpCS();
@@ -6064,7 +6064,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6087,7 +6087,7 @@
     public final void ruleUnlimitedNaturalLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2022:2: ( ( ( rule__UnlimitedNaturalLiteralExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2023:1: ( ( rule__UnlimitedNaturalLiteralExpCS__Group__0 ) )
@@ -6096,7 +6096,7 @@
             // InternalOCLstdlib.g:2024:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2025:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0 )
             // InternalOCLstdlib.g:2025:2: rule__UnlimitedNaturalLiteralExpCS__Group__0
@@ -6110,7 +6110,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -6141,7 +6141,7 @@
             // InternalOCLstdlib.g:2039:1: ruleInvalidLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSRule()); 
+               before(grammarAccess.getInvalidLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleInvalidLiteralExpCS();
@@ -6149,7 +6149,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSRule()); 
+               after(grammarAccess.getInvalidLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6172,7 +6172,7 @@
     public final void ruleInvalidLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2050:2: ( ( ( rule__InvalidLiteralExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2051:1: ( ( rule__InvalidLiteralExpCS__Group__0 ) )
@@ -6181,7 +6181,7 @@
             // InternalOCLstdlib.g:2052:1: ( rule__InvalidLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getInvalidLiteralExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2053:1: ( rule__InvalidLiteralExpCS__Group__0 )
             // InternalOCLstdlib.g:2053:2: rule__InvalidLiteralExpCS__Group__0
@@ -6195,7 +6195,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getInvalidLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -6226,7 +6226,7 @@
             // InternalOCLstdlib.g:2067:1: ruleNullLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSRule()); 
+               before(grammarAccess.getNullLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNullLiteralExpCS();
@@ -6234,7 +6234,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSRule()); 
+               after(grammarAccess.getNullLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6257,7 +6257,7 @@
     public final void ruleNullLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2078:2: ( ( ( rule__NullLiteralExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2079:1: ( ( rule__NullLiteralExpCS__Group__0 ) )
@@ -6266,7 +6266,7 @@
             // InternalOCLstdlib.g:2080:1: ( rule__NullLiteralExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSAccess().getGroup()); 
+               before(grammarAccess.getNullLiteralExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2081:1: ( rule__NullLiteralExpCS__Group__0 )
             // InternalOCLstdlib.g:2081:2: rule__NullLiteralExpCS__Group__0
@@ -6280,7 +6280,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSAccess().getGroup()); 
+               after(grammarAccess.getNullLiteralExpCSAccess().getGroup());
             }
 
             }
@@ -6311,7 +6311,7 @@
             // InternalOCLstdlib.g:2095:1: ruleTypeLiteralCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralCSRule()); 
+               before(grammarAccess.getTypeLiteralCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeLiteralCS();
@@ -6319,7 +6319,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralCSRule()); 
+               after(grammarAccess.getTypeLiteralCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6342,7 +6342,7 @@
     public final void ruleTypeLiteralCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2106:2: ( ( ( rule__TypeLiteralCS__Alternatives ) ) )
             // InternalOCLstdlib.g:2107:1: ( ( rule__TypeLiteralCS__Alternatives ) )
@@ -6351,7 +6351,7 @@
             // InternalOCLstdlib.g:2108:1: ( rule__TypeLiteralCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralCSAccess().getAlternatives()); 
+               before(grammarAccess.getTypeLiteralCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:2109:1: ( rule__TypeLiteralCS__Alternatives )
             // InternalOCLstdlib.g:2109:2: rule__TypeLiteralCS__Alternatives
@@ -6365,7 +6365,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralCSAccess().getAlternatives()); 
+               after(grammarAccess.getTypeLiteralCSAccess().getAlternatives());
             }
 
             }
@@ -6396,7 +6396,7 @@
             // InternalOCLstdlib.g:2123:1: ruleTypeLiteralWithMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeLiteralWithMultiplicityCS();
@@ -6404,7 +6404,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6427,7 +6427,7 @@
     public final void ruleTypeLiteralWithMultiplicityCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2134:2: ( ( ( rule__TypeLiteralWithMultiplicityCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2135:1: ( ( rule__TypeLiteralWithMultiplicityCS__Group__0 ) )
@@ -6436,7 +6436,7 @@
             // InternalOCLstdlib.g:2136:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2137:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0 )
             // InternalOCLstdlib.g:2137:2: rule__TypeLiteralWithMultiplicityCS__Group__0
@@ -6450,7 +6450,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getGroup());
             }
 
             }
@@ -6481,7 +6481,7 @@
             // InternalOCLstdlib.g:2151:1: ruleTypeLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralExpCSRule()); 
+               before(grammarAccess.getTypeLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeLiteralExpCS();
@@ -6489,7 +6489,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralExpCSRule()); 
+               after(grammarAccess.getTypeLiteralExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6512,7 +6512,7 @@
     public final void ruleTypeLiteralExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2162:2: ( ( ( rule__TypeLiteralExpCS__OwnedTypeAssignment ) ) )
             // InternalOCLstdlib.g:2163:1: ( ( rule__TypeLiteralExpCS__OwnedTypeAssignment ) )
@@ -6521,7 +6521,7 @@
             // InternalOCLstdlib.g:2164:1: ( rule__TypeLiteralExpCS__OwnedTypeAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment()); 
+               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment());
             }
             // InternalOCLstdlib.g:2165:1: ( rule__TypeLiteralExpCS__OwnedTypeAssignment )
             // InternalOCLstdlib.g:2165:2: rule__TypeLiteralExpCS__OwnedTypeAssignment
@@ -6535,7 +6535,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment()); 
+               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeAssignment());
             }
 
             }
@@ -6566,7 +6566,7 @@
             // InternalOCLstdlib.g:2179:1: ruleTypeNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSRule()); 
+               before(grammarAccess.getTypeNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeNameExpCS();
@@ -6574,7 +6574,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSRule()); 
+               after(grammarAccess.getTypeNameExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6597,7 +6597,7 @@
     public final void ruleTypeNameExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2190:2: ( ( ( rule__TypeNameExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2191:1: ( ( rule__TypeNameExpCS__Group__0 ) )
@@ -6606,7 +6606,7 @@
             // InternalOCLstdlib.g:2192:1: ( rule__TypeNameExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getGroup()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2193:1: ( rule__TypeNameExpCS__Group__0 )
             // InternalOCLstdlib.g:2193:2: rule__TypeNameExpCS__Group__0
@@ -6620,7 +6620,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getGroup()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getGroup());
             }
 
             }
@@ -6651,7 +6651,7 @@
             // InternalOCLstdlib.g:2207:1: ruleTypeExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSRule()); 
+               before(grammarAccess.getTypeExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeExpCS();
@@ -6659,7 +6659,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSRule()); 
+               after(grammarAccess.getTypeExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6682,7 +6682,7 @@
     public final void ruleTypeExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2218:2: ( ( ( rule__TypeExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2219:1: ( ( rule__TypeExpCS__Group__0 ) )
@@ -6691,7 +6691,7 @@
             // InternalOCLstdlib.g:2220:1: ( rule__TypeExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getGroup()); 
+               before(grammarAccess.getTypeExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2221:1: ( rule__TypeExpCS__Group__0 )
             // InternalOCLstdlib.g:2221:2: rule__TypeExpCS__Group__0
@@ -6705,7 +6705,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getGroup()); 
+               after(grammarAccess.getTypeExpCSAccess().getGroup());
             }
 
             }
@@ -6736,7 +6736,7 @@
             // InternalOCLstdlib.g:2235:1: ruleExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSRule()); 
+               before(grammarAccess.getExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleExpCS();
@@ -6744,7 +6744,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSRule()); 
+               after(grammarAccess.getExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6767,7 +6767,7 @@
     public final void ruleExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2246:2: ( ( ( rule__ExpCS__Alternatives ) ) )
             // InternalOCLstdlib.g:2247:1: ( ( rule__ExpCS__Alternatives ) )
@@ -6776,7 +6776,7 @@
             // InternalOCLstdlib.g:2248:1: ( rule__ExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getExpCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:2249:1: ( rule__ExpCS__Alternatives )
             // InternalOCLstdlib.g:2249:2: rule__ExpCS__Alternatives
@@ -6790,7 +6790,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getExpCSAccess().getAlternatives());
             }
 
             }
@@ -6821,7 +6821,7 @@
             // InternalOCLstdlib.g:2263:1: rulePrefixedLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSRule()); 
+               before(grammarAccess.getPrefixedLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrefixedLetExpCS();
@@ -6829,7 +6829,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSRule()); 
+               after(grammarAccess.getPrefixedLetExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6852,7 +6852,7 @@
     public final void rulePrefixedLetExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2274:2: ( ( ( rule__PrefixedLetExpCS__Alternatives ) ) )
             // InternalOCLstdlib.g:2275:1: ( ( rule__PrefixedLetExpCS__Alternatives ) )
@@ -6861,7 +6861,7 @@
             // InternalOCLstdlib.g:2276:1: ( rule__PrefixedLetExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:2277:1: ( rule__PrefixedLetExpCS__Alternatives )
             // InternalOCLstdlib.g:2277:2: rule__PrefixedLetExpCS__Alternatives
@@ -6875,7 +6875,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getAlternatives());
             }
 
             }
@@ -6906,7 +6906,7 @@
             // InternalOCLstdlib.g:2291:1: rulePrefixedPrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSRule()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrefixedPrimaryExpCS();
@@ -6914,7 +6914,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSRule()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -6937,7 +6937,7 @@
     public final void rulePrefixedPrimaryExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2302:2: ( ( ( rule__PrefixedPrimaryExpCS__Alternatives ) ) )
             // InternalOCLstdlib.g:2303:1: ( ( rule__PrefixedPrimaryExpCS__Alternatives ) )
@@ -6946,7 +6946,7 @@
             // InternalOCLstdlib.g:2304:1: ( rule__PrefixedPrimaryExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:2305:1: ( rule__PrefixedPrimaryExpCS__Alternatives )
             // InternalOCLstdlib.g:2305:2: rule__PrefixedPrimaryExpCS__Alternatives
@@ -6960,7 +6960,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getAlternatives());
             }
 
             }
@@ -6991,7 +6991,7 @@
             // InternalOCLstdlib.g:2319:1: rulePrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimaryExpCSRule()); 
+               before(grammarAccess.getPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePrimaryExpCS();
@@ -6999,7 +6999,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimaryExpCSRule()); 
+               after(grammarAccess.getPrimaryExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7022,7 +7022,7 @@
     public final void rulePrimaryExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2330:2: ( ( ( rule__PrimaryExpCS__Alternatives ) ) )
             // InternalOCLstdlib.g:2331:1: ( ( rule__PrimaryExpCS__Alternatives ) )
@@ -7031,7 +7031,7 @@
             // InternalOCLstdlib.g:2332:1: ( rule__PrimaryExpCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimaryExpCSAccess().getAlternatives()); 
+               before(grammarAccess.getPrimaryExpCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:2333:1: ( rule__PrimaryExpCS__Alternatives )
             // InternalOCLstdlib.g:2333:2: rule__PrimaryExpCS__Alternatives
@@ -7045,7 +7045,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimaryExpCSAccess().getAlternatives()); 
+               after(grammarAccess.getPrimaryExpCSAccess().getAlternatives());
             }
 
             }
@@ -7076,7 +7076,7 @@
             // InternalOCLstdlib.g:2347:1: ruleNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSRule()); 
+               before(grammarAccess.getNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNameExpCS();
@@ -7084,7 +7084,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSRule()); 
+               after(grammarAccess.getNameExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7107,7 +7107,7 @@
     public final void ruleNameExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2358:2: ( ( ( rule__NameExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2359:1: ( ( rule__NameExpCS__Group__0 ) )
@@ -7116,7 +7116,7 @@
             // InternalOCLstdlib.g:2360:1: ( rule__NameExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getGroup()); 
+               before(grammarAccess.getNameExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2361:1: ( rule__NameExpCS__Group__0 )
             // InternalOCLstdlib.g:2361:2: rule__NameExpCS__Group__0
@@ -7130,7 +7130,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getGroup()); 
+               after(grammarAccess.getNameExpCSAccess().getGroup());
             }
 
             }
@@ -7161,7 +7161,7 @@
             // InternalOCLstdlib.g:2375:1: ruleCurlyBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSRule()); 
+               before(grammarAccess.getCurlyBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleCurlyBracketedClauseCS();
@@ -7169,7 +7169,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSRule()); 
+               after(grammarAccess.getCurlyBracketedClauseCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7192,7 +7192,7 @@
     public final void ruleCurlyBracketedClauseCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2386:2: ( ( ( rule__CurlyBracketedClauseCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2387:1: ( ( rule__CurlyBracketedClauseCS__Group__0 ) )
@@ -7201,7 +7201,7 @@
             // InternalOCLstdlib.g:2388:1: ( rule__CurlyBracketedClauseCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2389:1: ( rule__CurlyBracketedClauseCS__Group__0 )
             // InternalOCLstdlib.g:2389:2: rule__CurlyBracketedClauseCS__Group__0
@@ -7215,7 +7215,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup());
             }
 
             }
@@ -7246,7 +7246,7 @@
             // InternalOCLstdlib.g:2403:1: ruleRoundBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSRule()); 
+               before(grammarAccess.getRoundBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleRoundBracketedClauseCS();
@@ -7254,7 +7254,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSRule()); 
+               after(grammarAccess.getRoundBracketedClauseCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7277,7 +7277,7 @@
     public final void ruleRoundBracketedClauseCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2414:2: ( ( ( rule__RoundBracketedClauseCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2415:1: ( ( rule__RoundBracketedClauseCS__Group__0 ) )
@@ -7286,7 +7286,7 @@
             // InternalOCLstdlib.g:2416:1: ( rule__RoundBracketedClauseCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2417:1: ( rule__RoundBracketedClauseCS__Group__0 )
             // InternalOCLstdlib.g:2417:2: rule__RoundBracketedClauseCS__Group__0
@@ -7300,7 +7300,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup());
             }
 
             }
@@ -7331,7 +7331,7 @@
             // InternalOCLstdlib.g:2431:1: ruleSquareBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSRule()); 
+               before(grammarAccess.getSquareBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleSquareBracketedClauseCS();
@@ -7339,7 +7339,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSRule()); 
+               after(grammarAccess.getSquareBracketedClauseCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7362,7 +7362,7 @@
     public final void ruleSquareBracketedClauseCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2442:2: ( ( ( rule__SquareBracketedClauseCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2443:1: ( ( rule__SquareBracketedClauseCS__Group__0 ) )
@@ -7371,7 +7371,7 @@
             // InternalOCLstdlib.g:2444:1: ( rule__SquareBracketedClauseCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2445:1: ( rule__SquareBracketedClauseCS__Group__0 )
             // InternalOCLstdlib.g:2445:2: rule__SquareBracketedClauseCS__Group__0
@@ -7385,7 +7385,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup());
             }
 
             }
@@ -7416,7 +7416,7 @@
             // InternalOCLstdlib.g:2459:1: ruleNavigatingArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSRule()); 
+               before(grammarAccess.getNavigatingArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingArgCS();
@@ -7424,7 +7424,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSRule()); 
+               after(grammarAccess.getNavigatingArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7447,7 +7447,7 @@
     public final void ruleNavigatingArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2470:2: ( ( ( rule__NavigatingArgCS__Alternatives ) ) )
             // InternalOCLstdlib.g:2471:1: ( ( rule__NavigatingArgCS__Alternatives ) )
@@ -7456,7 +7456,7 @@
             // InternalOCLstdlib.g:2472:1: ( rule__NavigatingArgCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:2473:1: ( rule__NavigatingArgCS__Alternatives )
             // InternalOCLstdlib.g:2473:2: rule__NavigatingArgCS__Alternatives
@@ -7470,7 +7470,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives());
             }
 
             }
@@ -7501,7 +7501,7 @@
             // InternalOCLstdlib.g:2487:1: ruleNavigatingBarArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSRule()); 
+               before(grammarAccess.getNavigatingBarArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingBarArgCS();
@@ -7509,7 +7509,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSRule()); 
+               after(grammarAccess.getNavigatingBarArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7532,7 +7532,7 @@
     public final void ruleNavigatingBarArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2498:2: ( ( ( rule__NavigatingBarArgCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2499:1: ( ( rule__NavigatingBarArgCS__Group__0 ) )
@@ -7541,7 +7541,7 @@
             // InternalOCLstdlib.g:2500:1: ( rule__NavigatingBarArgCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2501:1: ( rule__NavigatingBarArgCS__Group__0 )
             // InternalOCLstdlib.g:2501:2: rule__NavigatingBarArgCS__Group__0
@@ -7555,7 +7555,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup());
             }
 
             }
@@ -7586,7 +7586,7 @@
             // InternalOCLstdlib.g:2515:1: ruleNavigatingCommaArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSRule()); 
+               before(grammarAccess.getNavigatingCommaArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingCommaArgCS();
@@ -7594,7 +7594,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSRule()); 
+               after(grammarAccess.getNavigatingCommaArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7617,7 +7617,7 @@
     public final void ruleNavigatingCommaArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2526:2: ( ( ( rule__NavigatingCommaArgCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2527:1: ( ( rule__NavigatingCommaArgCS__Group__0 ) )
@@ -7626,7 +7626,7 @@
             // InternalOCLstdlib.g:2528:1: ( rule__NavigatingCommaArgCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2529:1: ( rule__NavigatingCommaArgCS__Group__0 )
             // InternalOCLstdlib.g:2529:2: rule__NavigatingCommaArgCS__Group__0
@@ -7640,7 +7640,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup());
             }
 
             }
@@ -7671,7 +7671,7 @@
             // InternalOCLstdlib.g:2543:1: ruleNavigatingSemiArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSRule()); 
+               before(grammarAccess.getNavigatingSemiArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingSemiArgCS();
@@ -7679,7 +7679,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSRule()); 
+               after(grammarAccess.getNavigatingSemiArgCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7702,7 +7702,7 @@
     public final void ruleNavigatingSemiArgCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2554:2: ( ( ( rule__NavigatingSemiArgCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2555:1: ( ( rule__NavigatingSemiArgCS__Group__0 ) )
@@ -7711,7 +7711,7 @@
             // InternalOCLstdlib.g:2556:1: ( rule__NavigatingSemiArgCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2557:1: ( rule__NavigatingSemiArgCS__Group__0 )
             // InternalOCLstdlib.g:2557:2: rule__NavigatingSemiArgCS__Group__0
@@ -7725,7 +7725,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup());
             }
 
             }
@@ -7756,7 +7756,7 @@
             // InternalOCLstdlib.g:2571:1: ruleNavigatingArgExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgExpCSRule()); 
+               before(grammarAccess.getNavigatingArgExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNavigatingArgExpCS();
@@ -7764,7 +7764,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgExpCSRule()); 
+               after(grammarAccess.getNavigatingArgExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7787,7 +7787,7 @@
     public final void ruleNavigatingArgExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2582:2: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:2583:1: ( ruleExpCS )
@@ -7796,7 +7796,7 @@
             // InternalOCLstdlib.g:2584:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall()); 
+               before(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -7804,7 +7804,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall()); 
+               after(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall());
             }
 
             }
@@ -7835,7 +7835,7 @@
             // InternalOCLstdlib.g:2599:1: ruleIfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSRule()); 
+               before(grammarAccess.getIfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleIfExpCS();
@@ -7843,7 +7843,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSRule()); 
+               after(grammarAccess.getIfExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7866,7 +7866,7 @@
     public final void ruleIfExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2610:2: ( ( ( rule__IfExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2611:1: ( ( rule__IfExpCS__Group__0 ) )
@@ -7875,7 +7875,7 @@
             // InternalOCLstdlib.g:2612:1: ( rule__IfExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getGroup()); 
+               before(grammarAccess.getIfExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2613:1: ( rule__IfExpCS__Group__0 )
             // InternalOCLstdlib.g:2613:2: rule__IfExpCS__Group__0
@@ -7889,7 +7889,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getGroup()); 
+               after(grammarAccess.getIfExpCSAccess().getGroup());
             }
 
             }
@@ -7920,7 +7920,7 @@
             // InternalOCLstdlib.g:2627:1: ruleElseIfThenExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSRule()); 
+               before(grammarAccess.getElseIfThenExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleElseIfThenExpCS();
@@ -7928,7 +7928,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSRule()); 
+               after(grammarAccess.getElseIfThenExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -7951,7 +7951,7 @@
     public final void ruleElseIfThenExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2638:2: ( ( ( rule__ElseIfThenExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2639:1: ( ( rule__ElseIfThenExpCS__Group__0 ) )
@@ -7960,7 +7960,7 @@
             // InternalOCLstdlib.g:2640:1: ( rule__ElseIfThenExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getGroup()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2641:1: ( rule__ElseIfThenExpCS__Group__0 )
             // InternalOCLstdlib.g:2641:2: rule__ElseIfThenExpCS__Group__0
@@ -7974,7 +7974,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getGroup()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getGroup());
             }
 
             }
@@ -8005,7 +8005,7 @@
             // InternalOCLstdlib.g:2655:1: ruleLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSRule()); 
+               before(grammarAccess.getLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLetExpCS();
@@ -8013,7 +8013,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSRule()); 
+               after(grammarAccess.getLetExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8036,7 +8036,7 @@
     public final void ruleLetExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2666:2: ( ( ( rule__LetExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2667:1: ( ( rule__LetExpCS__Group__0 ) )
@@ -8045,7 +8045,7 @@
             // InternalOCLstdlib.g:2668:1: ( rule__LetExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getGroup()); 
+               before(grammarAccess.getLetExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2669:1: ( rule__LetExpCS__Group__0 )
             // InternalOCLstdlib.g:2669:2: rule__LetExpCS__Group__0
@@ -8059,7 +8059,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getGroup()); 
+               after(grammarAccess.getLetExpCSAccess().getGroup());
             }
 
             }
@@ -8090,7 +8090,7 @@
             // InternalOCLstdlib.g:2683:1: ruleLetVariableCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSRule()); 
+               before(grammarAccess.getLetVariableCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLetVariableCS();
@@ -8098,7 +8098,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSRule()); 
+               after(grammarAccess.getLetVariableCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8121,7 +8121,7 @@
     public final void ruleLetVariableCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2694:2: ( ( ( rule__LetVariableCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2695:1: ( ( rule__LetVariableCS__Group__0 ) )
@@ -8130,7 +8130,7 @@
             // InternalOCLstdlib.g:2696:1: ( rule__LetVariableCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getGroup()); 
+               before(grammarAccess.getLetVariableCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2697:1: ( rule__LetVariableCS__Group__0 )
             // InternalOCLstdlib.g:2697:2: rule__LetVariableCS__Group__0
@@ -8144,7 +8144,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getGroup()); 
+               after(grammarAccess.getLetVariableCSAccess().getGroup());
             }
 
             }
@@ -8175,7 +8175,7 @@
             // InternalOCLstdlib.g:2711:1: ruleNestedExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSRule()); 
+               before(grammarAccess.getNestedExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNestedExpCS();
@@ -8183,7 +8183,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSRule()); 
+               after(grammarAccess.getNestedExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8206,7 +8206,7 @@
     public final void ruleNestedExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2722:2: ( ( ( rule__NestedExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2723:1: ( ( rule__NestedExpCS__Group__0 ) )
@@ -8215,7 +8215,7 @@
             // InternalOCLstdlib.g:2724:1: ( rule__NestedExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getGroup()); 
+               before(grammarAccess.getNestedExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2725:1: ( rule__NestedExpCS__Group__0 )
             // InternalOCLstdlib.g:2725:2: rule__NestedExpCS__Group__0
@@ -8229,7 +8229,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getGroup()); 
+               after(grammarAccess.getNestedExpCSAccess().getGroup());
             }
 
             }
@@ -8260,7 +8260,7 @@
             // InternalOCLstdlib.g:2739:1: ruleSelfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSRule()); 
+               before(grammarAccess.getSelfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleSelfExpCS();
@@ -8268,7 +8268,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSRule()); 
+               after(grammarAccess.getSelfExpCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8291,7 +8291,7 @@
     public final void ruleSelfExpCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2750:2: ( ( ( rule__SelfExpCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2751:1: ( ( rule__SelfExpCS__Group__0 ) )
@@ -8300,7 +8300,7 @@
             // InternalOCLstdlib.g:2752:1: ( rule__SelfExpCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSAccess().getGroup()); 
+               before(grammarAccess.getSelfExpCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2753:1: ( rule__SelfExpCS__Group__0 )
             // InternalOCLstdlib.g:2753:2: rule__SelfExpCS__Group__0
@@ -8314,7 +8314,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSAccess().getGroup()); 
+               after(grammarAccess.getSelfExpCSAccess().getGroup());
             }
 
             }
@@ -8345,7 +8345,7 @@
             // InternalOCLstdlib.g:2767:1: ruleMultiplicityBoundsCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSRule()); 
+               before(grammarAccess.getMultiplicityBoundsCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityBoundsCS();
@@ -8353,7 +8353,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSRule()); 
+               after(grammarAccess.getMultiplicityBoundsCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8376,7 +8376,7 @@
     public final void ruleMultiplicityBoundsCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2778:2: ( ( ( rule__MultiplicityBoundsCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2779:1: ( ( rule__MultiplicityBoundsCS__Group__0 ) )
@@ -8385,7 +8385,7 @@
             // InternalOCLstdlib.g:2780:1: ( rule__MultiplicityBoundsCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2781:1: ( rule__MultiplicityBoundsCS__Group__0 )
             // InternalOCLstdlib.g:2781:2: rule__MultiplicityBoundsCS__Group__0
@@ -8399,7 +8399,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup());
             }
 
             }
@@ -8430,7 +8430,7 @@
             // InternalOCLstdlib.g:2795:1: ruleMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSRule()); 
+               before(grammarAccess.getMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityCS();
@@ -8438,7 +8438,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSRule()); 
+               after(grammarAccess.getMultiplicityCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8461,7 +8461,7 @@
     public final void ruleMultiplicityCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2806:2: ( ( ( rule__MultiplicityCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2807:1: ( ( rule__MultiplicityCS__Group__0 ) )
@@ -8470,7 +8470,7 @@
             // InternalOCLstdlib.g:2808:1: ( rule__MultiplicityCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getGroup()); 
+               before(grammarAccess.getMultiplicityCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2809:1: ( rule__MultiplicityCS__Group__0 )
             // InternalOCLstdlib.g:2809:2: rule__MultiplicityCS__Group__0
@@ -8484,7 +8484,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getGroup()); 
+               after(grammarAccess.getMultiplicityCSAccess().getGroup());
             }
 
             }
@@ -8515,7 +8515,7 @@
             // InternalOCLstdlib.g:2823:1: ruleMultiplicityStringCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSRule()); 
+               before(grammarAccess.getMultiplicityStringCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleMultiplicityStringCS();
@@ -8523,7 +8523,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSRule()); 
+               after(grammarAccess.getMultiplicityStringCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8546,7 +8546,7 @@
     public final void ruleMultiplicityStringCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2834:2: ( ( ( rule__MultiplicityStringCS__StringBoundsAssignment ) ) )
             // InternalOCLstdlib.g:2835:1: ( ( rule__MultiplicityStringCS__StringBoundsAssignment ) )
@@ -8555,7 +8555,7 @@
             // InternalOCLstdlib.g:2836:1: ( rule__MultiplicityStringCS__StringBoundsAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment()); 
+               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment());
             }
             // InternalOCLstdlib.g:2837:1: ( rule__MultiplicityStringCS__StringBoundsAssignment )
             // InternalOCLstdlib.g:2837:2: rule__MultiplicityStringCS__StringBoundsAssignment
@@ -8569,7 +8569,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment()); 
+               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAssignment());
             }
 
             }
@@ -8600,7 +8600,7 @@
             // InternalOCLstdlib.g:2851:1: rulePathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSRule()); 
+               before(grammarAccess.getPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             rulePathNameCS();
@@ -8608,7 +8608,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSRule()); 
+               after(grammarAccess.getPathNameCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8631,7 +8631,7 @@
     public final void rulePathNameCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2862:2: ( ( ( rule__PathNameCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2863:1: ( ( rule__PathNameCS__Group__0 ) )
@@ -8640,7 +8640,7 @@
             // InternalOCLstdlib.g:2864:1: ( rule__PathNameCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getGroup()); 
+               before(grammarAccess.getPathNameCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2865:1: ( rule__PathNameCS__Group__0 )
             // InternalOCLstdlib.g:2865:2: rule__PathNameCS__Group__0
@@ -8654,7 +8654,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getGroup()); 
+               after(grammarAccess.getPathNameCSAccess().getGroup());
             }
 
             }
@@ -8685,7 +8685,7 @@
             // InternalOCLstdlib.g:2879:1: ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSRule()); 
+               before(grammarAccess.getFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleFirstPathElementCS();
@@ -8693,7 +8693,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSRule()); 
+               after(grammarAccess.getFirstPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8716,7 +8716,7 @@
     public final void ruleFirstPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2890:2: ( ( ( rule__FirstPathElementCS__ReferredElementAssignment ) ) )
             // InternalOCLstdlib.g:2891:1: ( ( rule__FirstPathElementCS__ReferredElementAssignment ) )
@@ -8725,7 +8725,7 @@
             // InternalOCLstdlib.g:2892:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
             // InternalOCLstdlib.g:2893:1: ( rule__FirstPathElementCS__ReferredElementAssignment )
             // InternalOCLstdlib.g:2893:2: rule__FirstPathElementCS__ReferredElementAssignment
@@ -8739,7 +8739,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementAssignment());
             }
 
             }
@@ -8770,7 +8770,7 @@
             // InternalOCLstdlib.g:2907:1: ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSRule()); 
+               before(grammarAccess.getNextPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNextPathElementCS();
@@ -8778,7 +8778,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSRule()); 
+               after(grammarAccess.getNextPathElementCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8801,7 +8801,7 @@
     public final void ruleNextPathElementCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2918:2: ( ( ( rule__NextPathElementCS__ReferredElementAssignment ) ) )
             // InternalOCLstdlib.g:2919:1: ( ( rule__NextPathElementCS__ReferredElementAssignment ) )
@@ -8810,7 +8810,7 @@
             // InternalOCLstdlib.g:2920:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
             // InternalOCLstdlib.g:2921:1: ( rule__NextPathElementCS__ReferredElementAssignment )
             // InternalOCLstdlib.g:2921:2: rule__NextPathElementCS__ReferredElementAssignment
@@ -8824,7 +8824,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementAssignment());
             }
 
             }
@@ -8855,7 +8855,7 @@
             // InternalOCLstdlib.g:2935:1: ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSRule()); 
+               before(grammarAccess.getTemplateBindingCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTemplateBindingCS();
@@ -8863,7 +8863,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSRule()); 
+               after(grammarAccess.getTemplateBindingCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8886,7 +8886,7 @@
     public final void ruleTemplateBindingCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2946:2: ( ( ( rule__TemplateBindingCS__Group__0 ) ) )
             // InternalOCLstdlib.g:2947:1: ( ( rule__TemplateBindingCS__Group__0 ) )
@@ -8895,7 +8895,7 @@
             // InternalOCLstdlib.g:2948:1: ( rule__TemplateBindingCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getGroup()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:2949:1: ( rule__TemplateBindingCS__Group__0 )
             // InternalOCLstdlib.g:2949:2: rule__TemplateBindingCS__Group__0
@@ -8909,7 +8909,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getGroup()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getGroup());
             }
 
             }
@@ -8940,7 +8940,7 @@
             // InternalOCLstdlib.g:2963:1: ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTemplateParameterSubstitutionCS();
@@ -8948,7 +8948,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -8971,7 +8971,7 @@
     public final void ruleTemplateParameterSubstitutionCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:2974:2: ( ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) ) )
             // InternalOCLstdlib.g:2975:1: ( ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment ) )
@@ -8980,7 +8980,7 @@
             // InternalOCLstdlib.g:2976:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
             // InternalOCLstdlib.g:2977:1: ( rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment )
             // InternalOCLstdlib.g:2977:2: rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment
@@ -8994,7 +8994,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterAssignment());
             }
 
             }
@@ -9025,7 +9025,7 @@
             // InternalOCLstdlib.g:2991:1: ruleTemplateSignatureCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSRule()); 
+               before(grammarAccess.getTemplateSignatureCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTemplateSignatureCS();
@@ -9033,7 +9033,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSRule()); 
+               after(grammarAccess.getTemplateSignatureCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9056,7 +9056,7 @@
     public final void ruleTemplateSignatureCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3002:2: ( ( ( rule__TemplateSignatureCS__Group__0 ) ) )
             // InternalOCLstdlib.g:3003:1: ( ( rule__TemplateSignatureCS__Group__0 ) )
@@ -9065,7 +9065,7 @@
             // InternalOCLstdlib.g:3004:1: ( rule__TemplateSignatureCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getGroup()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:3005:1: ( rule__TemplateSignatureCS__Group__0 )
             // InternalOCLstdlib.g:3005:2: rule__TemplateSignatureCS__Group__0
@@ -9079,7 +9079,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getGroup()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getGroup());
             }
 
             }
@@ -9110,7 +9110,7 @@
             // InternalOCLstdlib.g:3019:1: ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSRule()); 
+               before(grammarAccess.getTypeParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeParameterCS();
@@ -9118,7 +9118,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSRule()); 
+               after(grammarAccess.getTypeParameterCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9141,7 +9141,7 @@
     public final void ruleTypeParameterCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3030:2: ( ( ( rule__TypeParameterCS__Group__0 ) ) )
             // InternalOCLstdlib.g:3031:1: ( ( rule__TypeParameterCS__Group__0 ) )
@@ -9150,7 +9150,7 @@
             // InternalOCLstdlib.g:3032:1: ( rule__TypeParameterCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:3033:1: ( rule__TypeParameterCS__Group__0 )
             // InternalOCLstdlib.g:3033:2: rule__TypeParameterCS__Group__0
@@ -9164,7 +9164,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup());
             }
 
             }
@@ -9195,7 +9195,7 @@
             // InternalOCLstdlib.g:3047:1: ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeRefCSRule()); 
+               before(grammarAccess.getTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleTypeRefCS();
@@ -9203,7 +9203,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeRefCSRule()); 
+               after(grammarAccess.getTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9226,7 +9226,7 @@
     public final void ruleTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3058:2: ( ( ( rule__TypeRefCS__Alternatives ) ) )
             // InternalOCLstdlib.g:3059:1: ( ( rule__TypeRefCS__Alternatives ) )
@@ -9235,7 +9235,7 @@
             // InternalOCLstdlib.g:3060:1: ( rule__TypeRefCS__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeRefCSAccess().getAlternatives()); 
+               before(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:3061:1: ( rule__TypeRefCS__Alternatives )
             // InternalOCLstdlib.g:3061:2: rule__TypeRefCS__Alternatives
@@ -9249,7 +9249,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeRefCSAccess().getAlternatives()); 
+               after(grammarAccess.getTypeRefCSAccess().getAlternatives());
             }
 
             }
@@ -9280,7 +9280,7 @@
             // InternalOCLstdlib.g:3075:1: ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSRule()); 
+               before(grammarAccess.getWildcardTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleWildcardTypeRefCS();
@@ -9288,7 +9288,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSRule()); 
+               after(grammarAccess.getWildcardTypeRefCSRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9311,7 +9311,7 @@
     public final void ruleWildcardTypeRefCS() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3086:2: ( ( ( rule__WildcardTypeRefCS__Group__0 ) ) )
             // InternalOCLstdlib.g:3087:1: ( ( rule__WildcardTypeRefCS__Group__0 ) )
@@ -9320,7 +9320,7 @@
             // InternalOCLstdlib.g:3088:1: ( rule__WildcardTypeRefCS__Group__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
             // InternalOCLstdlib.g:3089:1: ( rule__WildcardTypeRefCS__Group__0 )
             // InternalOCLstdlib.g:3089:2: rule__WildcardTypeRefCS__Group__0
@@ -9334,7 +9334,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup());
             }
 
             }
@@ -9365,7 +9365,7 @@
             // InternalOCLstdlib.g:3103:1: ruleID EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIDRule()); 
+               before(grammarAccess.getIDRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleID();
@@ -9373,7 +9373,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIDRule()); 
+               after(grammarAccess.getIDRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9396,7 +9396,7 @@
     public final void ruleID() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3114:2: ( ( ( rule__ID__Alternatives ) ) )
             // InternalOCLstdlib.g:3115:1: ( ( rule__ID__Alternatives ) )
@@ -9405,7 +9405,7 @@
             // InternalOCLstdlib.g:3116:1: ( rule__ID__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIDAccess().getAlternatives()); 
+               before(grammarAccess.getIDAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:3117:1: ( rule__ID__Alternatives )
             // InternalOCLstdlib.g:3117:2: rule__ID__Alternatives
@@ -9419,7 +9419,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIDAccess().getAlternatives()); 
+               after(grammarAccess.getIDAccess().getAlternatives());
             }
 
             }
@@ -9450,7 +9450,7 @@
             // InternalOCLstdlib.g:3131:1: ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLOWERRule()); 
+               before(grammarAccess.getLOWERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleLOWER();
@@ -9458,7 +9458,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLOWERRule()); 
+               after(grammarAccess.getLOWERRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9481,7 +9481,7 @@
     public final void ruleLOWER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3142:2: ( ( RULE_INT ) )
             // InternalOCLstdlib.g:3143:1: ( RULE_INT )
@@ -9490,11 +9490,11 @@
             // InternalOCLstdlib.g:3144:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+               before(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+               after(grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
             }
 
             }
@@ -9525,7 +9525,7 @@
             // InternalOCLstdlib.g:3159:1: ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNUMBER_LITERALRule()); 
+               before(grammarAccess.getNUMBER_LITERALRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleNUMBER_LITERAL();
@@ -9533,7 +9533,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNUMBER_LITERALRule()); 
+               after(grammarAccess.getNUMBER_LITERALRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9556,7 +9556,7 @@
     public final void ruleNUMBER_LITERAL() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3170:2: ( ( RULE_INT ) )
             // InternalOCLstdlib.g:3171:1: ( RULE_INT )
@@ -9565,11 +9565,11 @@
             // InternalOCLstdlib.g:3172:1: RULE_INT
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
+               before(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
             }
             match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
+               after(grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
             }
 
             }
@@ -9600,7 +9600,7 @@
             // InternalOCLstdlib.g:3187:1: ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralRule()); 
+               before(grammarAccess.getStringLiteralRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleStringLiteral();
@@ -9608,7 +9608,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralRule()); 
+               after(grammarAccess.getStringLiteralRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9631,7 +9631,7 @@
     public final void ruleStringLiteral() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3198:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalOCLstdlib.g:3199:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -9640,11 +9640,11 @@
             // InternalOCLstdlib.g:3200:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               before(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               after(grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
 
             }
@@ -9675,7 +9675,7 @@
             // InternalOCLstdlib.g:3215:1: ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUPPERRule()); 
+               before(grammarAccess.getUPPERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleUPPER();
@@ -9683,7 +9683,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUPPERRule()); 
+               after(grammarAccess.getUPPERRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9706,7 +9706,7 @@
     public final void ruleUPPER() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3226:2: ( ( ( rule__UPPER__Alternatives ) ) )
             // InternalOCLstdlib.g:3227:1: ( ( rule__UPPER__Alternatives ) )
@@ -9715,7 +9715,7 @@
             // InternalOCLstdlib.g:3228:1: ( rule__UPPER__Alternatives )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUPPERAccess().getAlternatives()); 
+               before(grammarAccess.getUPPERAccess().getAlternatives());
             }
             // InternalOCLstdlib.g:3229:1: ( rule__UPPER__Alternatives )
             // InternalOCLstdlib.g:3229:2: rule__UPPER__Alternatives
@@ -9729,7 +9729,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUPPERAccess().getAlternatives()); 
+               after(grammarAccess.getUPPERAccess().getAlternatives());
             }
 
             }
@@ -9760,7 +9760,7 @@
             // InternalOCLstdlib.g:3243:1: ruleURI EOF
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIRule()); 
+               before(grammarAccess.getURIRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             ruleURI();
@@ -9768,7 +9768,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIRule()); 
+               after(grammarAccess.getURIRule());
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return ;
 
@@ -9791,7 +9791,7 @@
     public final void ruleURI() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3254:2: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalOCLstdlib.g:3255:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -9800,11 +9800,11 @@
             // InternalOCLstdlib.g:3256:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               before(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+               after(grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
             }
 
             }
@@ -9832,7 +9832,7 @@
     public final void rule__Identifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3273:1: ( ( ruleID ) | ( ruleRestrictedKeywords ) )
             int alt2=2;
@@ -9859,7 +9859,7 @@
                     // InternalOCLstdlib.g:3275:1: ruleID
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIdentifierAccess().getIDParserRuleCall_0()); 
+                       before(grammarAccess.getIdentifierAccess().getIDParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleID();
@@ -9867,7 +9867,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIdentifierAccess().getIDParserRuleCall_0()); 
+                       after(grammarAccess.getIdentifierAccess().getIDParserRuleCall_0());
                     }
 
                     }
@@ -9882,7 +9882,7 @@
                     // InternalOCLstdlib.g:3281:1: ruleRestrictedKeywords
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIdentifierAccess().getRestrictedKeywordsParserRuleCall_1()); 
+                       before(grammarAccess.getIdentifierAccess().getRestrictedKeywordsParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleRestrictedKeywords();
@@ -9890,7 +9890,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIdentifierAccess().getRestrictedKeywordsParserRuleCall_1()); 
+                       after(grammarAccess.getIdentifierAccess().getRestrictedKeywordsParserRuleCall_1());
                     }
 
                     }
@@ -9920,7 +9920,7 @@
     public final void rule__RestrictedKeywords__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3295:1: ( ( 'abstract' ) | ( 'annotation' ) | ( 'conformsTo' ) | ( 'documentation' ) | ( 'extends' ) | ( 'import' ) | ( 'inv' ) | ( 'invalidating' ) | ( 'iteration' ) | ( 'left' ) | ( 'library' ) | ( 'operation' ) | ( 'package' ) | ( 'post' ) | ( 'pre' ) | ( 'precedence' ) | ( 'property' ) | ( 'right' ) | ( 'static' ) | ( 'type' ) | ( 'validating' ) )
             int alt3=21;
@@ -10046,11 +10046,11 @@
                     // InternalOCLstdlib.g:3297:1: 'abstract'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getAbstractKeyword_0()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getAbstractKeyword_0());
                     }
                     match(input,16,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getAbstractKeyword_0()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getAbstractKeyword_0());
                     }
 
                     }
@@ -10065,11 +10065,11 @@
                     // InternalOCLstdlib.g:3305:1: 'annotation'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getAnnotationKeyword_1()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getAnnotationKeyword_1());
                     }
                     match(input,17,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getAnnotationKeyword_1()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getAnnotationKeyword_1());
                     }
 
                     }
@@ -10084,11 +10084,11 @@
                     // InternalOCLstdlib.g:3313:1: 'conformsTo'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getConformsToKeyword_2()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getConformsToKeyword_2());
                     }
                     match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getConformsToKeyword_2()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getConformsToKeyword_2());
                     }
 
                     }
@@ -10103,11 +10103,11 @@
                     // InternalOCLstdlib.g:3321:1: 'documentation'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getDocumentationKeyword_3()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getDocumentationKeyword_3());
                     }
                     match(input,19,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getDocumentationKeyword_3()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getDocumentationKeyword_3());
                     }
 
                     }
@@ -10122,11 +10122,11 @@
                     // InternalOCLstdlib.g:3329:1: 'extends'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getExtendsKeyword_4()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getExtendsKeyword_4());
                     }
                     match(input,20,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getExtendsKeyword_4()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getExtendsKeyword_4());
                     }
 
                     }
@@ -10141,11 +10141,11 @@
                     // InternalOCLstdlib.g:3337:1: 'import'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getImportKeyword_5()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getImportKeyword_5());
                     }
                     match(input,21,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getImportKeyword_5()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getImportKeyword_5());
                     }
 
                     }
@@ -10160,11 +10160,11 @@
                     // InternalOCLstdlib.g:3345:1: 'inv'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getInvKeyword_6()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getInvKeyword_6());
                     }
                     match(input,22,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getInvKeyword_6()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getInvKeyword_6());
                     }
 
                     }
@@ -10179,11 +10179,11 @@
                     // InternalOCLstdlib.g:3353:1: 'invalidating'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getInvalidatingKeyword_7()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getInvalidatingKeyword_7());
                     }
                     match(input,23,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getInvalidatingKeyword_7()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getInvalidatingKeyword_7());
                     }
 
                     }
@@ -10198,11 +10198,11 @@
                     // InternalOCLstdlib.g:3361:1: 'iteration'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getIterationKeyword_8()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getIterationKeyword_8());
                     }
                     match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getIterationKeyword_8()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getIterationKeyword_8());
                     }
 
                     }
@@ -10217,11 +10217,11 @@
                     // InternalOCLstdlib.g:3369:1: 'left'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getLeftKeyword_9()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getLeftKeyword_9());
                     }
                     match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getLeftKeyword_9()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getLeftKeyword_9());
                     }
 
                     }
@@ -10236,11 +10236,11 @@
                     // InternalOCLstdlib.g:3377:1: 'library'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getLibraryKeyword_10()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getLibraryKeyword_10());
                     }
                     match(input,26,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getLibraryKeyword_10()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getLibraryKeyword_10());
                     }
 
                     }
@@ -10255,11 +10255,11 @@
                     // InternalOCLstdlib.g:3385:1: 'operation'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getOperationKeyword_11()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getOperationKeyword_11());
                     }
                     match(input,27,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getOperationKeyword_11()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getOperationKeyword_11());
                     }
 
                     }
@@ -10274,11 +10274,11 @@
                     // InternalOCLstdlib.g:3393:1: 'package'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getPackageKeyword_12()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getPackageKeyword_12());
                     }
                     match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getPackageKeyword_12()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getPackageKeyword_12());
                     }
 
                     }
@@ -10293,11 +10293,11 @@
                     // InternalOCLstdlib.g:3401:1: 'post'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getPostKeyword_13()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getPostKeyword_13());
                     }
                     match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getPostKeyword_13()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getPostKeyword_13());
                     }
 
                     }
@@ -10312,11 +10312,11 @@
                     // InternalOCLstdlib.g:3409:1: 'pre'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getPreKeyword_14()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getPreKeyword_14());
                     }
                     match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getPreKeyword_14()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getPreKeyword_14());
                     }
 
                     }
@@ -10331,11 +10331,11 @@
                     // InternalOCLstdlib.g:3417:1: 'precedence'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getPrecedenceKeyword_15()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getPrecedenceKeyword_15());
                     }
                     match(input,31,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getPrecedenceKeyword_15()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getPrecedenceKeyword_15());
                     }
 
                     }
@@ -10350,11 +10350,11 @@
                     // InternalOCLstdlib.g:3425:1: 'property'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getPropertyKeyword_16()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getPropertyKeyword_16());
                     }
                     match(input,32,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getPropertyKeyword_16()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getPropertyKeyword_16());
                     }
 
                     }
@@ -10369,11 +10369,11 @@
                     // InternalOCLstdlib.g:3433:1: 'right'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getRightKeyword_17()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getRightKeyword_17());
                     }
                     match(input,33,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getRightKeyword_17()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getRightKeyword_17());
                     }
 
                     }
@@ -10388,11 +10388,11 @@
                     // InternalOCLstdlib.g:3441:1: 'static'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getStaticKeyword_18()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getStaticKeyword_18());
                     }
                     match(input,34,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getStaticKeyword_18()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getStaticKeyword_18());
                     }
 
                     }
@@ -10407,11 +10407,11 @@
                     // InternalOCLstdlib.g:3449:1: 'type'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getTypeKeyword_19()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getTypeKeyword_19());
                     }
                     match(input,35,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getTypeKeyword_19()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getTypeKeyword_19());
                     }
 
                     }
@@ -10426,11 +10426,11 @@
                     // InternalOCLstdlib.g:3457:1: 'validating'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getRestrictedKeywordsAccess().getValidatingKeyword_20()); 
+                       before(grammarAccess.getRestrictedKeywordsAccess().getValidatingKeyword_20());
                     }
                     match(input,36,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getRestrictedKeywordsAccess().getValidatingKeyword_20()); 
+                       after(grammarAccess.getRestrictedKeywordsAccess().getValidatingKeyword_20());
                     }
 
                     }
@@ -10460,7 +10460,7 @@
     public final void rule__Name__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3473:1: ( ( ruleIdentifier ) | ( RULE_DOUBLE_QUOTED_STRING ) | ( ruleEssentialOCLReservedKeyword ) | ( rulePrimitiveTypeIdentifier ) | ( ruleCollectionTypeIdentifier ) )
             int alt4=5;
@@ -10549,7 +10549,7 @@
                     // InternalOCLstdlib.g:3475:1: ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNameAccess().getIdentifierParserRuleCall_0()); 
+                       before(grammarAccess.getNameAccess().getIdentifierParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleIdentifier();
@@ -10557,7 +10557,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNameAccess().getIdentifierParserRuleCall_0()); 
+                       after(grammarAccess.getNameAccess().getIdentifierParserRuleCall_0());
                     }
 
                     }
@@ -10572,11 +10572,11 @@
                     // InternalOCLstdlib.g:3481:1: RULE_DOUBLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNameAccess().getDOUBLE_QUOTED_STRINGTerminalRuleCall_1()); 
+                       before(grammarAccess.getNameAccess().getDOUBLE_QUOTED_STRINGTerminalRuleCall_1());
                     }
                     match(input,RULE_DOUBLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNameAccess().getDOUBLE_QUOTED_STRINGTerminalRuleCall_1()); 
+                       after(grammarAccess.getNameAccess().getDOUBLE_QUOTED_STRINGTerminalRuleCall_1());
                     }
 
                     }
@@ -10591,7 +10591,7 @@
                     // InternalOCLstdlib.g:3487:1: ruleEssentialOCLReservedKeyword
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNameAccess().getEssentialOCLReservedKeywordParserRuleCall_2()); 
+                       before(grammarAccess.getNameAccess().getEssentialOCLReservedKeywordParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleEssentialOCLReservedKeyword();
@@ -10599,7 +10599,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNameAccess().getEssentialOCLReservedKeywordParserRuleCall_2()); 
+                       after(grammarAccess.getNameAccess().getEssentialOCLReservedKeywordParserRuleCall_2());
                     }
 
                     }
@@ -10614,7 +10614,7 @@
                     // InternalOCLstdlib.g:3493:1: rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNameAccess().getPrimitiveTypeIdentifierParserRuleCall_3()); 
+                       before(grammarAccess.getNameAccess().getPrimitiveTypeIdentifierParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimitiveTypeIdentifier();
@@ -10622,7 +10622,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNameAccess().getPrimitiveTypeIdentifierParserRuleCall_3()); 
+                       after(grammarAccess.getNameAccess().getPrimitiveTypeIdentifierParserRuleCall_3());
                     }
 
                     }
@@ -10637,7 +10637,7 @@
                     // InternalOCLstdlib.g:3499:1: ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNameAccess().getCollectionTypeIdentifierParserRuleCall_4()); 
+                       before(grammarAccess.getNameAccess().getCollectionTypeIdentifierParserRuleCall_4());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionTypeIdentifier();
@@ -10645,7 +10645,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNameAccess().getCollectionTypeIdentifierParserRuleCall_4()); 
+                       after(grammarAccess.getNameAccess().getCollectionTypeIdentifierParserRuleCall_4());
                     }
 
                     }
@@ -10675,7 +10675,7 @@
     public final void rule__AnyName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3513:1: ( ( ruleName ) | ( 'Lambda' ) | ( 'Map' ) | ( 'Tuple' ) )
             int alt5=4;
@@ -10763,7 +10763,7 @@
                     // InternalOCLstdlib.g:3515:1: ruleName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnyNameAccess().getNameParserRuleCall_0()); 
+                       before(grammarAccess.getAnyNameAccess().getNameParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleName();
@@ -10771,7 +10771,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnyNameAccess().getNameParserRuleCall_0()); 
+                       after(grammarAccess.getAnyNameAccess().getNameParserRuleCall_0());
                     }
 
                     }
@@ -10786,11 +10786,11 @@
                     // InternalOCLstdlib.g:3521:1: 'Lambda'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnyNameAccess().getLambdaKeyword_1()); 
+                       before(grammarAccess.getAnyNameAccess().getLambdaKeyword_1());
                     }
                     match(input,37,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnyNameAccess().getLambdaKeyword_1()); 
+                       after(grammarAccess.getAnyNameAccess().getLambdaKeyword_1());
                     }
 
                     }
@@ -10805,11 +10805,11 @@
                     // InternalOCLstdlib.g:3529:1: 'Map'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnyNameAccess().getMapKeyword_2()); 
+                       before(grammarAccess.getAnyNameAccess().getMapKeyword_2());
                     }
                     match(input,38,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnyNameAccess().getMapKeyword_2()); 
+                       after(grammarAccess.getAnyNameAccess().getMapKeyword_2());
                     }
 
                     }
@@ -10824,11 +10824,11 @@
                     // InternalOCLstdlib.g:3537:1: 'Tuple'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnyNameAccess().getTupleKeyword_3()); 
+                       before(grammarAccess.getAnyNameAccess().getTupleKeyword_3());
                     }
                     match(input,39,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnyNameAccess().getTupleKeyword_3()); 
+                       after(grammarAccess.getAnyNameAccess().getTupleKeyword_3());
                     }
 
                     }
@@ -10858,7 +10858,7 @@
     public final void rule__AnnotationCS__NameAlternatives_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3553:1: ( ( ruleIdentifier ) | ( RULE_SINGLE_QUOTED_STRING ) )
             int alt6=2;
@@ -10885,7 +10885,7 @@
                     // InternalOCLstdlib.g:3555:1: ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationCSAccess().getNameIdentifierParserRuleCall_1_0_0()); 
+                       before(grammarAccess.getAnnotationCSAccess().getNameIdentifierParserRuleCall_1_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleIdentifier();
@@ -10893,7 +10893,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationCSAccess().getNameIdentifierParserRuleCall_1_0_0()); 
+                       after(grammarAccess.getAnnotationCSAccess().getNameIdentifierParserRuleCall_1_0_0());
                     }
 
                     }
@@ -10908,11 +10908,11 @@
                     // InternalOCLstdlib.g:3561:1: RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_1_0_1()); 
+                       before(grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_1_0_1());
                     }
                     match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_1_0_1()); 
+                       after(grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_1_0_1());
                     }
 
                     }
@@ -10942,7 +10942,7 @@
     public final void rule__AnnotationCS__Alternatives_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3575:1: ( ( ( rule__AnnotationCS__Group_3_0__0 ) ) | ( ';' ) )
             int alt7=2;
@@ -10969,7 +10969,7 @@
                     // InternalOCLstdlib.g:3577:1: ( rule__AnnotationCS__Group_3_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationCSAccess().getGroup_3_0()); 
+                       before(grammarAccess.getAnnotationCSAccess().getGroup_3_0());
                     }
                     // InternalOCLstdlib.g:3578:1: ( rule__AnnotationCS__Group_3_0__0 )
                     // InternalOCLstdlib.g:3578:2: rule__AnnotationCS__Group_3_0__0
@@ -10983,7 +10983,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationCSAccess().getGroup_3_0()); 
+                       after(grammarAccess.getAnnotationCSAccess().getGroup_3_0());
                     }
 
                     }
@@ -10998,11 +10998,11 @@
                     // InternalOCLstdlib.g:3583:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_3_1()); 
+                       before(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_3_1());
                     }
                     match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_3_1()); 
+                       after(grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_3_1());
                     }
 
                     }
@@ -11032,7 +11032,7 @@
     public final void rule__AnnotationElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3599:1: ( ( ruleAnnotationCS ) | ( ruleDocumentationCS ) )
             int alt8=2;
@@ -11059,7 +11059,7 @@
                     // InternalOCLstdlib.g:3601:1: ruleAnnotationCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0()); 
+                       before(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleAnnotationCS();
@@ -11067,7 +11067,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0()); 
+                       after(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0());
                     }
 
                     }
@@ -11082,7 +11082,7 @@
                     // InternalOCLstdlib.g:3607:1: ruleDocumentationCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1()); 
+                       before(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleDocumentationCS();
@@ -11090,7 +11090,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1()); 
+                       after(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1());
                     }
 
                     }
@@ -11120,7 +11120,7 @@
     public final void rule__LibClassCS__Alternatives_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3621:1: ( ( ( rule__LibClassCS__OwnedOperationsAssignment_7_0 ) ) | ( ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 ) ) | ( ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 ) ) | ( ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 ) ) )
             int alt9=4;
@@ -11183,7 +11183,7 @@
                     // InternalOCLstdlib.g:3623:1: ( rule__LibClassCS__OwnedOperationsAssignment_7_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibClassCSAccess().getOwnedOperationsAssignment_7_0()); 
+                       before(grammarAccess.getLibClassCSAccess().getOwnedOperationsAssignment_7_0());
                     }
                     // InternalOCLstdlib.g:3624:1: ( rule__LibClassCS__OwnedOperationsAssignment_7_0 )
                     // InternalOCLstdlib.g:3624:2: rule__LibClassCS__OwnedOperationsAssignment_7_0
@@ -11197,7 +11197,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibClassCSAccess().getOwnedOperationsAssignment_7_0()); 
+                       after(grammarAccess.getLibClassCSAccess().getOwnedOperationsAssignment_7_0());
                     }
 
                     }
@@ -11212,7 +11212,7 @@
                     // InternalOCLstdlib.g:3629:1: ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibClassCSAccess().getOwnedPropertiesAssignment_7_1()); 
+                       before(grammarAccess.getLibClassCSAccess().getOwnedPropertiesAssignment_7_1());
                     }
                     // InternalOCLstdlib.g:3630:1: ( rule__LibClassCS__OwnedPropertiesAssignment_7_1 )
                     // InternalOCLstdlib.g:3630:2: rule__LibClassCS__OwnedPropertiesAssignment_7_1
@@ -11226,7 +11226,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibClassCSAccess().getOwnedPropertiesAssignment_7_1()); 
+                       after(grammarAccess.getLibClassCSAccess().getOwnedPropertiesAssignment_7_1());
                     }
 
                     }
@@ -11241,7 +11241,7 @@
                     // InternalOCLstdlib.g:3635:1: ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibClassCSAccess().getOwnedConstraintsAssignment_7_2()); 
+                       before(grammarAccess.getLibClassCSAccess().getOwnedConstraintsAssignment_7_2());
                     }
                     // InternalOCLstdlib.g:3636:1: ( rule__LibClassCS__OwnedConstraintsAssignment_7_2 )
                     // InternalOCLstdlib.g:3636:2: rule__LibClassCS__OwnedConstraintsAssignment_7_2
@@ -11255,7 +11255,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibClassCSAccess().getOwnedConstraintsAssignment_7_2()); 
+                       after(grammarAccess.getLibClassCSAccess().getOwnedConstraintsAssignment_7_2());
                     }
 
                     }
@@ -11270,7 +11270,7 @@
                     // InternalOCLstdlib.g:3641:1: ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAssignment_7_3()); 
+                       before(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAssignment_7_3());
                     }
                     // InternalOCLstdlib.g:3642:1: ( rule__LibClassCS__OwnedAnnotationsAssignment_7_3 )
                     // InternalOCLstdlib.g:3642:2: rule__LibClassCS__OwnedAnnotationsAssignment_7_3
@@ -11284,7 +11284,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAssignment_7_3()); 
+                       after(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAssignment_7_3());
                     }
 
                     }
@@ -11314,7 +11314,7 @@
     public final void rule__DetailCS__NameAlternatives_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3655:1: ( ( ruleName ) | ( RULE_SINGLE_QUOTED_STRING ) )
             int alt10=2;
@@ -11341,7 +11341,7 @@
                     // InternalOCLstdlib.g:3657:1: ruleName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDetailCSAccess().getNameNameParserRuleCall_0_0_0()); 
+                       before(grammarAccess.getDetailCSAccess().getNameNameParserRuleCall_0_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleName();
@@ -11349,7 +11349,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDetailCSAccess().getNameNameParserRuleCall_0_0_0()); 
+                       after(grammarAccess.getDetailCSAccess().getNameNameParserRuleCall_0_0_0());
                     }
 
                     }
@@ -11364,11 +11364,11 @@
                     // InternalOCLstdlib.g:3663:1: RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1()); 
+                       before(grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1());
                     }
                     match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1()); 
+                       after(grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1());
                     }
 
                     }
@@ -11398,7 +11398,7 @@
     public final void rule__DetailCS__ValuesAlternatives_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3677:1: ( ( RULE_SINGLE_QUOTED_STRING ) | ( RULE_ML_SINGLE_QUOTED_STRING ) )
             int alt11=2;
@@ -11425,11 +11425,11 @@
                     // InternalOCLstdlib.g:3679:1: RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0()); 
+                       before(grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0());
                     }
                     match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0()); 
+                       after(grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0());
                     }
 
                     }
@@ -11444,11 +11444,11 @@
                     // InternalOCLstdlib.g:3685:1: RULE_ML_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); 
+                       before(grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
                     }
                     match(input,RULE_ML_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); 
+                       after(grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
                     }
 
                     }
@@ -11478,7 +11478,7 @@
     public final void rule__LibCoercionCS__Alternatives_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3699:1: ( ( ( rule__LibCoercionCS__Group_7_0__0 ) ) | ( ';' ) )
             int alt12=2;
@@ -11505,7 +11505,7 @@
                     // InternalOCLstdlib.g:3701:1: ( rule__LibCoercionCS__Group_7_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibCoercionCSAccess().getGroup_7_0()); 
+                       before(grammarAccess.getLibCoercionCSAccess().getGroup_7_0());
                     }
                     // InternalOCLstdlib.g:3702:1: ( rule__LibCoercionCS__Group_7_0__0 )
                     // InternalOCLstdlib.g:3702:2: rule__LibCoercionCS__Group_7_0__0
@@ -11519,7 +11519,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibCoercionCSAccess().getGroup_7_0()); 
+                       after(grammarAccess.getLibCoercionCSAccess().getGroup_7_0());
                     }
 
                     }
@@ -11534,11 +11534,11 @@
                     // InternalOCLstdlib.g:3707:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibCoercionCSAccess().getSemicolonKeyword_7_1()); 
+                       before(grammarAccess.getLibCoercionCSAccess().getSemicolonKeyword_7_1());
                     }
                     match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibCoercionCSAccess().getSemicolonKeyword_7_1()); 
+                       after(grammarAccess.getLibCoercionCSAccess().getSemicolonKeyword_7_1());
                     }
 
                     }
@@ -11568,7 +11568,7 @@
     public final void rule__LibCoercionCS__Alternatives_7_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3723: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;
@@ -11605,7 +11605,7 @@
                     // InternalOCLstdlib.g:3725:1: ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAssignment_7_0_1_0()); 
+                       before(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAssignment_7_0_1_0());
                     }
                     // InternalOCLstdlib.g:3726:1: ( rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0 )
                     // InternalOCLstdlib.g:3726:2: rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0
@@ -11619,7 +11619,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAssignment_7_0_1_0()); 
+                       after(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAssignment_7_0_1_0());
                     }
 
                     }
@@ -11634,7 +11634,7 @@
                     // InternalOCLstdlib.g:3731:1: ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsAssignment_7_0_1_1()); 
+                       before(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsAssignment_7_0_1_1());
                     }
                     // InternalOCLstdlib.g:3732:1: ( rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1 )
                     // InternalOCLstdlib.g:3732:2: rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1
@@ -11648,7 +11648,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsAssignment_7_0_1_1()); 
+                       after(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsAssignment_7_0_1_1());
                     }
 
                     }
@@ -11663,7 +11663,7 @@
                     // InternalOCLstdlib.g:3737:1: ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsAssignment_7_0_1_2()); 
+                       before(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsAssignment_7_0_1_2());
                     }
                     // InternalOCLstdlib.g:3738:1: ( rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2 )
                     // InternalOCLstdlib.g:3738:2: rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2
@@ -11677,7 +11677,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsAssignment_7_0_1_2()); 
+                       after(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsAssignment_7_0_1_2());
                     }
 
                     }
@@ -11707,7 +11707,7 @@
     public final void rule__LibIterationCS__Alternatives_14() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3751:1: ( ( ( rule__LibIterationCS__Group_14_0__0 ) ) | ( ';' ) )
             int alt14=2;
@@ -11734,7 +11734,7 @@
                     // InternalOCLstdlib.g:3753:1: ( rule__LibIterationCS__Group_14_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibIterationCSAccess().getGroup_14_0()); 
+                       before(grammarAccess.getLibIterationCSAccess().getGroup_14_0());
                     }
                     // InternalOCLstdlib.g:3754:1: ( rule__LibIterationCS__Group_14_0__0 )
                     // InternalOCLstdlib.g:3754:2: rule__LibIterationCS__Group_14_0__0
@@ -11748,7 +11748,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibIterationCSAccess().getGroup_14_0()); 
+                       after(grammarAccess.getLibIterationCSAccess().getGroup_14_0());
                     }
 
                     }
@@ -11763,11 +11763,11 @@
                     // InternalOCLstdlib.g:3759:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_14_1()); 
+                       before(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_14_1());
                     }
                     match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_14_1()); 
+                       after(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_14_1());
                     }
 
                     }
@@ -11797,7 +11797,7 @@
     public final void rule__LibIterationCS__Alternatives_14_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3775: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;
@@ -11834,7 +11834,7 @@
                     // InternalOCLstdlib.g:3777:1: ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAssignment_14_0_1_0()); 
+                       before(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAssignment_14_0_1_0());
                     }
                     // InternalOCLstdlib.g:3778:1: ( rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0 )
                     // InternalOCLstdlib.g:3778:2: rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0
@@ -11848,7 +11848,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAssignment_14_0_1_0()); 
+                       after(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAssignment_14_0_1_0());
                     }
 
                     }
@@ -11863,7 +11863,7 @@
                     // InternalOCLstdlib.g:3783:1: ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsAssignment_14_0_1_1()); 
+                       before(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsAssignment_14_0_1_1());
                     }
                     // InternalOCLstdlib.g:3784:1: ( rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1 )
                     // InternalOCLstdlib.g:3784:2: rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1
@@ -11877,7 +11877,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsAssignment_14_0_1_1()); 
+                       after(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsAssignment_14_0_1_1());
                     }
 
                     }
@@ -11892,7 +11892,7 @@
                     // InternalOCLstdlib.g:3789:1: ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsAssignment_14_0_1_2()); 
+                       before(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsAssignment_14_0_1_2());
                     }
                     // InternalOCLstdlib.g:3790:1: ( rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2 )
                     // InternalOCLstdlib.g:3790:2: rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2
@@ -11906,7 +11906,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsAssignment_14_0_1_2()); 
+                       after(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsAssignment_14_0_1_2());
                     }
 
                     }
@@ -11936,7 +11936,7 @@
     public final void rule__OperationCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3803:1: ( ( ruleLibCoercionCS ) | ( ruleLibIterationCS ) | ( ruleLibOperationCS ) )
             int alt16=3;
@@ -11973,7 +11973,7 @@
                     // InternalOCLstdlib.g:3805:1: ruleLibCoercionCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getLibCoercionCSParserRuleCall_0()); 
+                       before(grammarAccess.getOperationCSAccess().getLibCoercionCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleLibCoercionCS();
@@ -11981,7 +11981,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getLibCoercionCSParserRuleCall_0()); 
+                       after(grammarAccess.getOperationCSAccess().getLibCoercionCSParserRuleCall_0());
                     }
 
                     }
@@ -11996,7 +11996,7 @@
                     // InternalOCLstdlib.g:3811:1: ruleLibIterationCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getLibIterationCSParserRuleCall_1()); 
+                       before(grammarAccess.getOperationCSAccess().getLibIterationCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleLibIterationCS();
@@ -12004,7 +12004,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getLibIterationCSParserRuleCall_1()); 
+                       after(grammarAccess.getOperationCSAccess().getLibIterationCSParserRuleCall_1());
                     }
 
                     }
@@ -12019,7 +12019,7 @@
                     // InternalOCLstdlib.g:3817:1: ruleLibOperationCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getOperationCSAccess().getLibOperationCSParserRuleCall_2()); 
+                       before(grammarAccess.getOperationCSAccess().getLibOperationCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleLibOperationCS();
@@ -12027,7 +12027,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getOperationCSAccess().getLibOperationCSParserRuleCall_2()); 
+                       after(grammarAccess.getOperationCSAccess().getLibOperationCSParserRuleCall_2());
                     }
 
                     }
@@ -12057,7 +12057,7 @@
     public final void rule__LibOperationCS__Alternatives_13() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3831:1: ( ( ( rule__LibOperationCS__Group_13_0__0 ) ) | ( ';' ) )
             int alt17=2;
@@ -12084,7 +12084,7 @@
                     // InternalOCLstdlib.g:3833:1: ( rule__LibOperationCS__Group_13_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibOperationCSAccess().getGroup_13_0()); 
+                       before(grammarAccess.getLibOperationCSAccess().getGroup_13_0());
                     }
                     // InternalOCLstdlib.g:3834:1: ( rule__LibOperationCS__Group_13_0__0 )
                     // InternalOCLstdlib.g:3834:2: rule__LibOperationCS__Group_13_0__0
@@ -12098,7 +12098,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibOperationCSAccess().getGroup_13_0()); 
+                       after(grammarAccess.getLibOperationCSAccess().getGroup_13_0());
                     }
 
                     }
@@ -12113,11 +12113,11 @@
                     // InternalOCLstdlib.g:3839:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_1()); 
+                       before(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_1());
                     }
                     match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_1()); 
+                       after(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_1());
                     }
 
                     }
@@ -12147,7 +12147,7 @@
     public final void rule__LibOperationCS__Alternatives_13_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3855: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;
@@ -12189,7 +12189,7 @@
                     // InternalOCLstdlib.g:3857:1: ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAssignment_13_0_1_0()); 
+                       before(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAssignment_13_0_1_0());
                     }
                     // InternalOCLstdlib.g:3858:1: ( rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0 )
                     // InternalOCLstdlib.g:3858:2: rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0
@@ -12203,7 +12203,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAssignment_13_0_1_0()); 
+                       after(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAssignment_13_0_1_0());
                     }
 
                     }
@@ -12218,7 +12218,7 @@
                     // InternalOCLstdlib.g:3863:1: ( rule__LibOperationCS__Group_13_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibOperationCSAccess().getGroup_13_0_1_1()); 
+                       before(grammarAccess.getLibOperationCSAccess().getGroup_13_0_1_1());
                     }
                     // InternalOCLstdlib.g:3864:1: ( rule__LibOperationCS__Group_13_0_1_1__0 )
                     // InternalOCLstdlib.g:3864:2: rule__LibOperationCS__Group_13_0_1_1__0
@@ -12232,7 +12232,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibOperationCSAccess().getGroup_13_0_1_1()); 
+                       after(grammarAccess.getLibOperationCSAccess().getGroup_13_0_1_1());
                     }
 
                     }
@@ -12247,7 +12247,7 @@
                     // InternalOCLstdlib.g:3869:1: ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsAssignment_13_0_1_2()); 
+                       before(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsAssignment_13_0_1_2());
                     }
                     // InternalOCLstdlib.g:3870:1: ( rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2 )
                     // InternalOCLstdlib.g:3870:2: rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2
@@ -12261,7 +12261,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsAssignment_13_0_1_2()); 
+                       after(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsAssignment_13_0_1_2());
                     }
 
                     }
@@ -12276,7 +12276,7 @@
                     // InternalOCLstdlib.g:3875:1: ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsAssignment_13_0_1_3()); 
+                       before(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsAssignment_13_0_1_3());
                     }
                     // InternalOCLstdlib.g:3876:1: ( rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3 )
                     // InternalOCLstdlib.g:3876:2: rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3
@@ -12290,7 +12290,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsAssignment_13_0_1_3()); 
+                       after(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsAssignment_13_0_1_3());
                     }
 
                     }
@@ -12320,7 +12320,7 @@
     public final void rule__LibPackageCS__Alternatives_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3889: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;
@@ -12363,7 +12363,7 @@
                     // InternalOCLstdlib.g:3891:1: ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibPackageCSAccess().getOwnedPackagesAssignment_4_0()); 
+                       before(grammarAccess.getLibPackageCSAccess().getOwnedPackagesAssignment_4_0());
                     }
                     // InternalOCLstdlib.g:3892:1: ( rule__LibPackageCS__OwnedPackagesAssignment_4_0 )
                     // InternalOCLstdlib.g:3892:2: rule__LibPackageCS__OwnedPackagesAssignment_4_0
@@ -12377,7 +12377,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibPackageCSAccess().getOwnedPackagesAssignment_4_0()); 
+                       after(grammarAccess.getLibPackageCSAccess().getOwnedPackagesAssignment_4_0());
                     }
 
                     }
@@ -12392,7 +12392,7 @@
                     // InternalOCLstdlib.g:3897:1: ( rule__LibPackageCS__Group_4_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibPackageCSAccess().getGroup_4_1()); 
+                       before(grammarAccess.getLibPackageCSAccess().getGroup_4_1());
                     }
                     // InternalOCLstdlib.g:3898:1: ( rule__LibPackageCS__Group_4_1__0 )
                     // InternalOCLstdlib.g:3898:2: rule__LibPackageCS__Group_4_1__0
@@ -12406,7 +12406,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibPackageCSAccess().getGroup_4_1()); 
+                       after(grammarAccess.getLibPackageCSAccess().getGroup_4_1());
                     }
 
                     }
@@ -12421,7 +12421,7 @@
                     // InternalOCLstdlib.g:3903:1: ( rule__LibPackageCS__OwnedClassesAssignment_4_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibPackageCSAccess().getOwnedClassesAssignment_4_2()); 
+                       before(grammarAccess.getLibPackageCSAccess().getOwnedClassesAssignment_4_2());
                     }
                     // InternalOCLstdlib.g:3904:1: ( rule__LibPackageCS__OwnedClassesAssignment_4_2 )
                     // InternalOCLstdlib.g:3904:2: rule__LibPackageCS__OwnedClassesAssignment_4_2
@@ -12435,7 +12435,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibPackageCSAccess().getOwnedClassesAssignment_4_2()); 
+                       after(grammarAccess.getLibPackageCSAccess().getOwnedClassesAssignment_4_2());
                     }
 
                     }
@@ -12450,7 +12450,7 @@
                     // InternalOCLstdlib.g:3909:1: ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAssignment_4_3()); 
+                       before(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAssignment_4_3());
                     }
                     // InternalOCLstdlib.g:3910:1: ( rule__LibPackageCS__OwnedAnnotationsAssignment_4_3 )
                     // InternalOCLstdlib.g:3910:2: rule__LibPackageCS__OwnedAnnotationsAssignment_4_3
@@ -12464,7 +12464,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAssignment_4_3()); 
+                       after(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAssignment_4_3());
                     }
 
                     }
@@ -12494,7 +12494,7 @@
     public final void rule__PackageCS__Alternatives_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3923:1: ( ( ( rule__PackageCS__OwnedPackagesAssignment_4_0 ) ) | ( ( rule__PackageCS__OwnedClassesAssignment_4_1 ) ) | ( ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 ) ) )
             int alt20=3;
@@ -12532,7 +12532,7 @@
                     // InternalOCLstdlib.g:3925:1: ( rule__PackageCS__OwnedPackagesAssignment_4_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPackageCSAccess().getOwnedPackagesAssignment_4_0()); 
+                       before(grammarAccess.getPackageCSAccess().getOwnedPackagesAssignment_4_0());
                     }
                     // InternalOCLstdlib.g:3926:1: ( rule__PackageCS__OwnedPackagesAssignment_4_0 )
                     // InternalOCLstdlib.g:3926:2: rule__PackageCS__OwnedPackagesAssignment_4_0
@@ -12546,7 +12546,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPackageCSAccess().getOwnedPackagesAssignment_4_0()); 
+                       after(grammarAccess.getPackageCSAccess().getOwnedPackagesAssignment_4_0());
                     }
 
                     }
@@ -12561,7 +12561,7 @@
                     // InternalOCLstdlib.g:3931:1: ( rule__PackageCS__OwnedClassesAssignment_4_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPackageCSAccess().getOwnedClassesAssignment_4_1()); 
+                       before(grammarAccess.getPackageCSAccess().getOwnedClassesAssignment_4_1());
                     }
                     // InternalOCLstdlib.g:3932:1: ( rule__PackageCS__OwnedClassesAssignment_4_1 )
                     // InternalOCLstdlib.g:3932:2: rule__PackageCS__OwnedClassesAssignment_4_1
@@ -12575,7 +12575,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPackageCSAccess().getOwnedClassesAssignment_4_1()); 
+                       after(grammarAccess.getPackageCSAccess().getOwnedClassesAssignment_4_1());
                     }
 
                     }
@@ -12590,7 +12590,7 @@
                     // InternalOCLstdlib.g:3937:1: ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAssignment_4_2()); 
+                       before(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAssignment_4_2());
                     }
                     // InternalOCLstdlib.g:3938:1: ( rule__PackageCS__OwnedAnnotationsAssignment_4_2 )
                     // InternalOCLstdlib.g:3938:2: rule__PackageCS__OwnedAnnotationsAssignment_4_2
@@ -12604,7 +12604,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAssignment_4_2()); 
+                       after(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAssignment_4_2());
                     }
 
                     }
@@ -12634,7 +12634,7 @@
     public final void rule__LibPropertyCS__Alternatives_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3951:1: ( ( ( rule__LibPropertyCS__Group_6_0__0 ) ) | ( ';' ) )
             int alt21=2;
@@ -12661,7 +12661,7 @@
                     // InternalOCLstdlib.g:3953:1: ( rule__LibPropertyCS__Group_6_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibPropertyCSAccess().getGroup_6_0()); 
+                       before(grammarAccess.getLibPropertyCSAccess().getGroup_6_0());
                     }
                     // InternalOCLstdlib.g:3954:1: ( rule__LibPropertyCS__Group_6_0__0 )
                     // InternalOCLstdlib.g:3954:2: rule__LibPropertyCS__Group_6_0__0
@@ -12675,7 +12675,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibPropertyCSAccess().getGroup_6_0()); 
+                       after(grammarAccess.getLibPropertyCSAccess().getGroup_6_0());
                     }
 
                     }
@@ -12690,11 +12690,11 @@
                     // InternalOCLstdlib.g:3959:1: ';'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getLibPropertyCSAccess().getSemicolonKeyword_6_1()); 
+                       before(grammarAccess.getLibPropertyCSAccess().getSemicolonKeyword_6_1());
                     }
                     match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getLibPropertyCSAccess().getSemicolonKeyword_6_1()); 
+                       after(grammarAccess.getLibPropertyCSAccess().getSemicolonKeyword_6_1());
                     }
 
                     }
@@ -12724,7 +12724,7 @@
     public final void rule__PrecedenceCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3975:1: ( ( 'left' ) | ( ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 ) ) )
             int alt22=2;
@@ -12751,11 +12751,11 @@
                     // InternalOCLstdlib.g:3977:1: 'left'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrecedenceCSAccess().getLeftKeyword_0_0()); 
+                       before(grammarAccess.getPrecedenceCSAccess().getLeftKeyword_0_0());
                     }
                     match(input,25,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrecedenceCSAccess().getLeftKeyword_0_0()); 
+                       after(grammarAccess.getPrecedenceCSAccess().getLeftKeyword_0_0());
                     }
 
                     }
@@ -12770,7 +12770,7 @@
                     // InternalOCLstdlib.g:3985:1: ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeAssignment_0_1()); 
+                       before(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeAssignment_0_1());
                     }
                     // InternalOCLstdlib.g:3986:1: ( rule__PrecedenceCS__IsRightAssociativeAssignment_0_1 )
                     // InternalOCLstdlib.g:3986:2: rule__PrecedenceCS__IsRightAssociativeAssignment_0_1
@@ -12784,7 +12784,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeAssignment_0_1()); 
+                       after(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeAssignment_0_1());
                     }
 
                     }
@@ -12814,7 +12814,7 @@
     public final void rule__TypedMultiplicityRefCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:3999:1: ( ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) | ( ruleTypedTypeRefCS ) | ( ruleLambdaTypeCS ) )
             int alt23=4;
@@ -12903,7 +12903,7 @@
                     // InternalOCLstdlib.g:4001:1: ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedMultiplicityRefCSAccess().getMapTypeCSParserRuleCall_0_0()); 
+                       before(grammarAccess.getTypedMultiplicityRefCSAccess().getMapTypeCSParserRuleCall_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMapTypeCS();
@@ -12911,7 +12911,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedMultiplicityRefCSAccess().getMapTypeCSParserRuleCall_0_0()); 
+                       after(grammarAccess.getTypedMultiplicityRefCSAccess().getMapTypeCSParserRuleCall_0_0());
                     }
 
                     }
@@ -12926,7 +12926,7 @@
                     // InternalOCLstdlib.g:4007:1: ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedMultiplicityRefCSAccess().getTupleTypeCSParserRuleCall_0_1()); 
+                       before(grammarAccess.getTypedMultiplicityRefCSAccess().getTupleTypeCSParserRuleCall_0_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTupleTypeCS();
@@ -12934,7 +12934,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedMultiplicityRefCSAccess().getTupleTypeCSParserRuleCall_0_1()); 
+                       after(grammarAccess.getTypedMultiplicityRefCSAccess().getTupleTypeCSParserRuleCall_0_1());
                     }
 
                     }
@@ -12949,7 +12949,7 @@
                     // InternalOCLstdlib.g:4013:1: ruleTypedTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedTypeRefCSParserRuleCall_0_2()); 
+                       before(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedTypeRefCSParserRuleCall_0_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypedTypeRefCS();
@@ -12957,7 +12957,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedTypeRefCSParserRuleCall_0_2()); 
+                       after(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedTypeRefCSParserRuleCall_0_2());
                     }
 
                     }
@@ -12972,7 +12972,7 @@
                     // InternalOCLstdlib.g:4019:1: ruleLambdaTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedMultiplicityRefCSAccess().getLambdaTypeCSParserRuleCall_0_3()); 
+                       before(grammarAccess.getTypedMultiplicityRefCSAccess().getLambdaTypeCSParserRuleCall_0_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleLambdaTypeCS();
@@ -12980,7 +12980,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedMultiplicityRefCSAccess().getLambdaTypeCSParserRuleCall_0_3()); 
+                       after(grammarAccess.getTypedMultiplicityRefCSAccess().getLambdaTypeCSParserRuleCall_0_3());
                     }
 
                     }
@@ -13010,7 +13010,7 @@
     public final void rule__TypedRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4033:1: ( ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) | ( ruleTypedTypeRefCS ) | ( ruleLambdaTypeCS ) )
             int alt24=4;
@@ -13099,7 +13099,7 @@
                     // InternalOCLstdlib.g:4035:1: ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedRefCSAccess().getMapTypeCSParserRuleCall_0()); 
+                       before(grammarAccess.getTypedRefCSAccess().getMapTypeCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMapTypeCS();
@@ -13107,7 +13107,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedRefCSAccess().getMapTypeCSParserRuleCall_0()); 
+                       after(grammarAccess.getTypedRefCSAccess().getMapTypeCSParserRuleCall_0());
                     }
 
                     }
@@ -13122,7 +13122,7 @@
                     // InternalOCLstdlib.g:4041:1: ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedRefCSAccess().getTupleTypeCSParserRuleCall_1()); 
+                       before(grammarAccess.getTypedRefCSAccess().getTupleTypeCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTupleTypeCS();
@@ -13130,7 +13130,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedRefCSAccess().getTupleTypeCSParserRuleCall_1()); 
+                       after(grammarAccess.getTypedRefCSAccess().getTupleTypeCSParserRuleCall_1());
                     }
 
                     }
@@ -13145,7 +13145,7 @@
                     // InternalOCLstdlib.g:4047:1: ruleTypedTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_2()); 
+                       before(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypedTypeRefCS();
@@ -13153,7 +13153,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_2()); 
+                       after(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_2());
                     }
 
                     }
@@ -13168,7 +13168,7 @@
                     // InternalOCLstdlib.g:4053:1: ruleLambdaTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedRefCSAccess().getLambdaTypeCSParserRuleCall_3()); 
+                       before(grammarAccess.getTypedRefCSAccess().getLambdaTypeCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleLambdaTypeCS();
@@ -13176,7 +13176,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedRefCSAccess().getLambdaTypeCSParserRuleCall_3()); 
+                       after(grammarAccess.getTypedRefCSAccess().getLambdaTypeCSParserRuleCall_3());
                     }
 
                     }
@@ -13206,7 +13206,7 @@
     public final void rule__TypedTypeRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4067:1: ( ( ( rule__TypedTypeRefCS__Group_0__0 ) ) | ( ( rule__TypedTypeRefCS__Group_1__0 ) ) )
             int alt25=2;
@@ -13233,7 +13233,7 @@
                     // InternalOCLstdlib.g:4069:1: ( rule__TypedTypeRefCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedTypeRefCSAccess().getGroup_0()); 
+                       before(grammarAccess.getTypedTypeRefCSAccess().getGroup_0());
                     }
                     // InternalOCLstdlib.g:4070:1: ( rule__TypedTypeRefCS__Group_0__0 )
                     // InternalOCLstdlib.g:4070:2: rule__TypedTypeRefCS__Group_0__0
@@ -13247,7 +13247,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedTypeRefCSAccess().getGroup_0()); 
+                       after(grammarAccess.getTypedTypeRefCSAccess().getGroup_0());
                     }
 
                     }
@@ -13262,7 +13262,7 @@
                     // InternalOCLstdlib.g:4075:1: ( rule__TypedTypeRefCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1()); 
+                       before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1());
                     }
                     // InternalOCLstdlib.g:4076:1: ( rule__TypedTypeRefCS__Group_1__0 )
                     // InternalOCLstdlib.g:4076:2: rule__TypedTypeRefCS__Group_1__0
@@ -13276,7 +13276,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1()); 
+                       after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1());
                     }
 
                     }
@@ -13306,7 +13306,7 @@
     public final void rule__EssentialOCLReservedKeyword__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4089:1: ( ( 'and' ) | ( 'else' ) | ( 'endif' ) | ( 'if' ) | ( 'implies' ) | ( 'in' ) | ( 'let' ) | ( 'not' ) | ( 'or' ) | ( 'then' ) | ( 'xor' ) )
             int alt26=11;
@@ -13382,11 +13382,11 @@
                     // InternalOCLstdlib.g:4091:1: 'and'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getAndKeyword_0()); 
+                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getAndKeyword_0());
                     }
                     match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getAndKeyword_0()); 
+                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getAndKeyword_0());
                     }
 
                     }
@@ -13401,11 +13401,11 @@
                     // InternalOCLstdlib.g:4099:1: 'else'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getElseKeyword_1()); 
+                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getElseKeyword_1());
                     }
                     match(input,42,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getElseKeyword_1()); 
+                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getElseKeyword_1());
                     }
 
                     }
@@ -13420,11 +13420,11 @@
                     // InternalOCLstdlib.g:4107:1: 'endif'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getEndifKeyword_2()); 
+                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getEndifKeyword_2());
                     }
                     match(input,43,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getEndifKeyword_2()); 
+                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getEndifKeyword_2());
                     }
 
                     }
@@ -13439,11 +13439,11 @@
                     // InternalOCLstdlib.g:4115:1: 'if'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getIfKeyword_3()); 
+                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getIfKeyword_3());
                     }
                     match(input,44,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getIfKeyword_3()); 
+                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getIfKeyword_3());
                     }
 
                     }
@@ -13458,11 +13458,11 @@
                     // InternalOCLstdlib.g:4123:1: 'implies'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getImpliesKeyword_4()); 
+                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getImpliesKeyword_4());
                     }
                     match(input,45,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getImpliesKeyword_4()); 
+                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getImpliesKeyword_4());
                     }
 
                     }
@@ -13477,11 +13477,11 @@
                     // InternalOCLstdlib.g:4131:1: 'in'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getInKeyword_5()); 
+                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getInKeyword_5());
                     }
                     match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getInKeyword_5()); 
+                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getInKeyword_5());
                     }
 
                     }
@@ -13496,11 +13496,11 @@
                     // InternalOCLstdlib.g:4139:1: 'let'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getLetKeyword_6()); 
+                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getLetKeyword_6());
                     }
                     match(input,47,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getLetKeyword_6()); 
+                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getLetKeyword_6());
                     }
 
                     }
@@ -13515,11 +13515,11 @@
                     // InternalOCLstdlib.g:4147:1: 'not'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getNotKeyword_7()); 
+                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getNotKeyword_7());
                     }
                     match(input,48,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getNotKeyword_7()); 
+                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getNotKeyword_7());
                     }
 
                     }
@@ -13534,11 +13534,11 @@
                     // InternalOCLstdlib.g:4155:1: 'or'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getOrKeyword_8()); 
+                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getOrKeyword_8());
                     }
                     match(input,49,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getOrKeyword_8()); 
+                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getOrKeyword_8());
                     }
 
                     }
@@ -13553,11 +13553,11 @@
                     // InternalOCLstdlib.g:4163:1: 'then'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getThenKeyword_9()); 
+                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getThenKeyword_9());
                     }
                     match(input,50,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getThenKeyword_9()); 
+                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getThenKeyword_9());
                     }
 
                     }
@@ -13572,11 +13572,11 @@
                     // InternalOCLstdlib.g:4171:1: 'xor'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getXorKeyword_10()); 
+                       before(grammarAccess.getEssentialOCLReservedKeywordAccess().getXorKeyword_10());
                     }
                     match(input,51,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getXorKeyword_10()); 
+                       after(grammarAccess.getEssentialOCLReservedKeywordAccess().getXorKeyword_10());
                     }
 
                     }
@@ -13606,7 +13606,7 @@
     public final void rule__EssentialOCLUnaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4187:1: ( ( '-' ) | ( 'not' ) )
             int alt27=2;
@@ -13633,11 +13633,11 @@
                     // InternalOCLstdlib.g:4189:1: '-'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
+                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
                     }
                     match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
+                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
                     }
 
                     }
@@ -13652,11 +13652,11 @@
                     // InternalOCLstdlib.g:4197:1: 'not'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
+                       before(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
                     }
                     match(input,48,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
+                       after(grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
                     }
 
                     }
@@ -13686,7 +13686,7 @@
     public final void rule__EssentialOCLInfixOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4213:1: ( ( '*' ) | ( '/' ) | ( '+' ) | ( '-' ) | ( '>' ) | ( '<' ) | ( '>=' ) | ( '<=' ) | ( '=' ) | ( '<>' ) | ( 'and' ) | ( 'or' ) | ( 'xor' ) | ( 'implies' ) )
             int alt28=14;
@@ -13777,11 +13777,11 @@
                     // InternalOCLstdlib.g:4215:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
                     }
                     match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
                     }
 
                     }
@@ -13796,11 +13796,11 @@
                     // InternalOCLstdlib.g:4223:1: '/'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
                     }
                     match(input,54,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
                     }
 
                     }
@@ -13815,11 +13815,11 @@
                     // InternalOCLstdlib.g:4231:1: '+'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
                     }
                     match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
                     }
 
                     }
@@ -13834,11 +13834,11 @@
                     // InternalOCLstdlib.g:4239:1: '-'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
                     }
                     match(input,52,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
                     }
 
                     }
@@ -13853,11 +13853,11 @@
                     // InternalOCLstdlib.g:4247:1: '>'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
                     }
                     match(input,56,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
                     }
 
                     }
@@ -13872,11 +13872,11 @@
                     // InternalOCLstdlib.g:4255:1: '<'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
                     }
                     match(input,57,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
                     }
 
                     }
@@ -13891,11 +13891,11 @@
                     // InternalOCLstdlib.g:4263:1: '>='
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
                     }
                     match(input,58,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
                     }
 
                     }
@@ -13910,11 +13910,11 @@
                     // InternalOCLstdlib.g:4271:1: '<='
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
                     }
                     match(input,59,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
                     }
 
                     }
@@ -13929,11 +13929,11 @@
                     // InternalOCLstdlib.g:4279:1: '='
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
                     }
                     match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
                     }
 
                     }
@@ -13948,11 +13948,11 @@
                     // InternalOCLstdlib.g:4287:1: '<>'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
                     }
                     match(input,61,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
                     }
 
                     }
@@ -13967,11 +13967,11 @@
                     // InternalOCLstdlib.g:4295:1: 'and'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
                     }
                     match(input,41,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
                     }
 
                     }
@@ -13986,11 +13986,11 @@
                     // InternalOCLstdlib.g:4303:1: 'or'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
                     }
                     match(input,49,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
                     }
 
                     }
@@ -14005,11 +14005,11 @@
                     // InternalOCLstdlib.g:4311:1: 'xor'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
                     }
                     match(input,51,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
                     }
 
                     }
@@ -14024,11 +14024,11 @@
                     // InternalOCLstdlib.g:4319:1: 'implies'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
+                       before(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
                     }
                     match(input,45,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
+                       after(grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
                     }
 
                     }
@@ -14058,7 +14058,7 @@
     public final void rule__EssentialOCLNavigationOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4335:1: ( ( '.' ) | ( '->' ) | ( '?.' ) | ( '?->' ) )
             int alt29=4;
@@ -14099,11 +14099,11 @@
                     // InternalOCLstdlib.g:4337:1: '.'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
                     }
                     match(input,62,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
                     }
 
                     }
@@ -14118,11 +14118,11 @@
                     // InternalOCLstdlib.g:4345:1: '->'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
                     }
                     match(input,63,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
                     }
 
                     }
@@ -14137,11 +14137,11 @@
                     // InternalOCLstdlib.g:4353:1: '?.'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
                     }
                     match(input,64,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
                     }
 
                     }
@@ -14156,11 +14156,11 @@
                     // InternalOCLstdlib.g:4361:1: '?->'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
+                       before(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
                     }
                     match(input,65,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
+                       after(grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
                     }
 
                     }
@@ -14190,7 +14190,7 @@
     public final void rule__BinaryOperatorName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4377:1: ( ( ruleInfixOperatorName ) | ( ruleNavigationOperatorName ) )
             int alt30=2;
@@ -14217,7 +14217,7 @@
                     // InternalOCLstdlib.g:4379:1: ruleInfixOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
+                       before(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleInfixOperatorName();
@@ -14225,7 +14225,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
+                       after(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
                     }
 
                     }
@@ -14240,7 +14240,7 @@
                     // InternalOCLstdlib.g:4385:1: ruleNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
+                       before(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNavigationOperatorName();
@@ -14248,7 +14248,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
+                       after(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
                     }
 
                     }
@@ -14278,7 +14278,7 @@
     public final void rule__EssentialOCLUnreservedName__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4399:1: ( ( ruleUnrestrictedName ) | ( ruleCollectionTypeIdentifier ) | ( rulePrimitiveTypeIdentifier ) | ( 'Map' ) | ( 'Tuple' ) )
             int alt31=5;
@@ -14357,7 +14357,7 @@
                     // InternalOCLstdlib.g:4401:1: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -14365,7 +14365,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
                     }
 
                     }
@@ -14380,7 +14380,7 @@
                     // InternalOCLstdlib.g:4407:1: ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionTypeIdentifier();
@@ -14388,7 +14388,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
                     }
 
                     }
@@ -14403,7 +14403,7 @@
                     // InternalOCLstdlib.g:4413:1: rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimitiveTypeIdentifier();
@@ -14411,7 +14411,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
                     }
 
                     }
@@ -14426,11 +14426,11 @@
                     // InternalOCLstdlib.g:4419:1: 'Map'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
                     }
                     match(input,38,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
                     }
 
                     }
@@ -14445,11 +14445,11 @@
                     // InternalOCLstdlib.g:4427:1: 'Tuple'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
+                       before(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
                     }
                     match(input,39,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
+                       after(grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
                     }
 
                     }
@@ -14479,7 +14479,7 @@
     public final void rule__URIFirstPathElementCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4443:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 ) ) | ( ( rule__URIFirstPathElementCS__Group_1__0 ) ) )
             int alt32=2;
@@ -14506,7 +14506,7 @@
                     // InternalOCLstdlib.g:4445:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0()); 
+                       before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0());
                     }
                     // InternalOCLstdlib.g:4446:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_0 )
                     // InternalOCLstdlib.g:4446:2: rule__URIFirstPathElementCS__ReferredElementAssignment_0
@@ -14520,7 +14520,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0()); 
+                       after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_0());
                     }
 
                     }
@@ -14535,7 +14535,7 @@
                     // InternalOCLstdlib.g:4451:1: ( rule__URIFirstPathElementCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1()); 
+                       before(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1());
                     }
                     // InternalOCLstdlib.g:4452:1: ( rule__URIFirstPathElementCS__Group_1__0 )
                     // InternalOCLstdlib.g:4452:2: rule__URIFirstPathElementCS__Group_1__0
@@ -14549,7 +14549,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1()); 
+                       after(grammarAccess.getURIFirstPathElementCSAccess().getGroup_1());
                     }
 
                     }
@@ -14579,7 +14579,7 @@
     public final void rule__PrimitiveTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4465:1: ( ( 'Boolean' ) | ( 'Integer' ) | ( 'Real' ) | ( 'String' ) | ( 'UnlimitedNatural' ) | ( 'OclAny' ) | ( 'OclInvalid' ) | ( 'OclVoid' ) )
             int alt33=8;
@@ -14640,11 +14640,11 @@
                     // InternalOCLstdlib.g:4467:1: 'Boolean'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
                     }
                     match(input,66,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
                     }
 
                     }
@@ -14659,11 +14659,11 @@
                     // InternalOCLstdlib.g:4475:1: 'Integer'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
                     }
                     match(input,67,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
                     }
 
                     }
@@ -14678,11 +14678,11 @@
                     // InternalOCLstdlib.g:4483:1: 'Real'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
                     }
                     match(input,68,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
                     }
 
                     }
@@ -14697,11 +14697,11 @@
                     // InternalOCLstdlib.g:4491:1: 'String'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
                     }
                     match(input,69,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
                     }
 
                     }
@@ -14716,11 +14716,11 @@
                     // InternalOCLstdlib.g:4499:1: 'UnlimitedNatural'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
                     }
                     match(input,70,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
                     }
 
                     }
@@ -14735,11 +14735,11 @@
                     // InternalOCLstdlib.g:4507:1: 'OclAny'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
                     }
                     match(input,71,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
                     }
 
                     }
@@ -14754,11 +14754,11 @@
                     // InternalOCLstdlib.g:4515:1: 'OclInvalid'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
                     }
                     match(input,72,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
                     }
 
                     }
@@ -14773,11 +14773,11 @@
                     // InternalOCLstdlib.g:4523:1: 'OclVoid'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); 
+                       before(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
                     }
                     match(input,73,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); 
+                       after(grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
                     }
 
                     }
@@ -14807,7 +14807,7 @@
     public final void rule__CollectionTypeIdentifier__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4539:1: ( ( 'Set' ) | ( 'Bag' ) | ( 'Sequence' ) | ( 'Collection' ) | ( 'OrderedSet' ) )
             int alt34=5;
@@ -14853,11 +14853,11 @@
                     // InternalOCLstdlib.g:4541:1: 'Set'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
                     }
                     match(input,74,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
                     }
 
                     }
@@ -14872,11 +14872,11 @@
                     // InternalOCLstdlib.g:4549:1: 'Bag'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
                     }
                     match(input,75,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
                     }
 
                     }
@@ -14891,11 +14891,11 @@
                     // InternalOCLstdlib.g:4557:1: 'Sequence'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
                     }
                     match(input,76,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
                     }
 
                     }
@@ -14910,11 +14910,11 @@
                     // InternalOCLstdlib.g:4565:1: 'Collection'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
                     }
                     match(input,77,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
                     }
 
                     }
@@ -14929,11 +14929,11 @@
                     // InternalOCLstdlib.g:4573:1: 'OrderedSet'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
+                       before(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
                     }
                     match(input,78,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
+                       after(grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
                     }
 
                     }
@@ -14963,7 +14963,7 @@
     public final void rule__CollectionLiteralPartCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4589:1: ( ( ( rule__CollectionLiteralPartCS__Group_0__0 ) ) | ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 ) ) )
             int alt35=2;
@@ -14976,7 +14976,7 @@
                     // InternalOCLstdlib.g:4591:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0()); 
+                       before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0());
                     }
                     // InternalOCLstdlib.g:4592:1: ( rule__CollectionLiteralPartCS__Group_0__0 )
                     // InternalOCLstdlib.g:4592:2: rule__CollectionLiteralPartCS__Group_0__0
@@ -14990,7 +14990,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0()); 
+                       after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0());
                     }
 
                     }
@@ -15005,7 +15005,7 @@
                     // InternalOCLstdlib.g:4597:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1()); 
+                       before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1());
                     }
                     // InternalOCLstdlib.g:4598:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1 )
                     // InternalOCLstdlib.g:4598:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1
@@ -15019,7 +15019,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1()); 
+                       after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_1());
                     }
 
                     }
@@ -15049,7 +15049,7 @@
     public final void rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4611:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt36=2;
@@ -15062,7 +15062,7 @@
                     // InternalOCLstdlib.g:4613:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
+                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleExpCS();
@@ -15070,7 +15070,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
+                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
                     }
 
                     }
@@ -15085,7 +15085,7 @@
                     // InternalOCLstdlib.g:4619:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
+                       before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePatternExpCS();
@@ -15093,7 +15093,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
+                       after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
                     }
 
                     }
@@ -15123,7 +15123,7 @@
     public final void rule__PrimitiveLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4633:1: ( ( ruleNumberLiteralExpCS ) | ( ruleStringLiteralExpCS ) | ( ruleBooleanLiteralExpCS ) | ( ruleUnlimitedNaturalLiteralExpCS ) | ( ruleInvalidLiteralExpCS ) | ( ruleNullLiteralExpCS ) )
             int alt37=6;
@@ -15175,7 +15175,7 @@
                     // InternalOCLstdlib.g:4635:1: ruleNumberLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNumberLiteralExpCS();
@@ -15183,7 +15183,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
                     }
 
                     }
@@ -15198,7 +15198,7 @@
                     // InternalOCLstdlib.g:4641:1: ruleStringLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleStringLiteralExpCS();
@@ -15206,7 +15206,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
                     }
 
                     }
@@ -15221,7 +15221,7 @@
                     // InternalOCLstdlib.g:4647:1: ruleBooleanLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleBooleanLiteralExpCS();
@@ -15229,7 +15229,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
                     }
 
                     }
@@ -15244,7 +15244,7 @@
                     // InternalOCLstdlib.g:4653:1: ruleUnlimitedNaturalLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnlimitedNaturalLiteralExpCS();
@@ -15252,7 +15252,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
                     }
 
                     }
@@ -15267,7 +15267,7 @@
                     // InternalOCLstdlib.g:4659:1: ruleInvalidLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleInvalidLiteralExpCS();
@@ -15275,7 +15275,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
                     }
 
                     }
@@ -15290,7 +15290,7 @@
                     // InternalOCLstdlib.g:4665:1: ruleNullLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
+                       before(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNullLiteralExpCS();
@@ -15298,7 +15298,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
+                       after(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
                     }
 
                     }
@@ -15328,7 +15328,7 @@
     public final void rule__BooleanLiteralExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4679:1: ( ( ( rule__BooleanLiteralExpCS__SymbolAssignment_0 ) ) | ( ( rule__BooleanLiteralExpCS__SymbolAssignment_1 ) ) )
             int alt38=2;
@@ -15355,7 +15355,7 @@
                     // InternalOCLstdlib.g:4681:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0()); 
+                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0());
                     }
                     // InternalOCLstdlib.g:4682:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_0 )
                     // InternalOCLstdlib.g:4682:2: rule__BooleanLiteralExpCS__SymbolAssignment_0
@@ -15369,7 +15369,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0()); 
+                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_0());
                     }
 
                     }
@@ -15384,7 +15384,7 @@
                     // InternalOCLstdlib.g:4687:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1()); 
+                       before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1());
                     }
                     // InternalOCLstdlib.g:4688:1: ( rule__BooleanLiteralExpCS__SymbolAssignment_1 )
                     // InternalOCLstdlib.g:4688:2: rule__BooleanLiteralExpCS__SymbolAssignment_1
@@ -15398,7 +15398,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1()); 
+                       after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolAssignment_1());
                     }
 
                     }
@@ -15428,7 +15428,7 @@
     public final void rule__TypeLiteralCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4701:1: ( ( rulePrimitiveTypeCS ) | ( ruleCollectionTypeCS ) | ( ruleMapTypeCS ) | ( ruleTupleTypeCS ) )
             int alt39=4;
@@ -15480,7 +15480,7 @@
                     // InternalOCLstdlib.g:4703:1: rulePrimitiveTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimitiveTypeCS();
@@ -15488,7 +15488,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
                     }
 
                     }
@@ -15503,7 +15503,7 @@
                     // InternalOCLstdlib.g:4709:1: ruleCollectionTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionTypeCS();
@@ -15511,7 +15511,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
                     }
 
                     }
@@ -15526,7 +15526,7 @@
                     // InternalOCLstdlib.g:4715:1: ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMapTypeCS();
@@ -15534,7 +15534,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
                     }
 
                     }
@@ -15549,7 +15549,7 @@
                     // InternalOCLstdlib.g:4721:1: ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
+                       before(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTupleTypeCS();
@@ -15557,7 +15557,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
+                       after(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
                     }
 
                     }
@@ -15587,7 +15587,7 @@
     public final void rule__TypeExpCS__Alternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4735:1: ( ( ruleTypeNameExpCS ) | ( ruleTypeLiteralCS ) | ( ruleCollectionPatternCS ) )
             int alt40=3;
@@ -15600,7 +15600,7 @@
                     // InternalOCLstdlib.g:4737:1: ruleTypeNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
+                       before(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeNameExpCS();
@@ -15608,7 +15608,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
+                       after(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
                     }
 
                     }
@@ -15623,7 +15623,7 @@
                     // InternalOCLstdlib.g:4743:1: ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+                       before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeLiteralCS();
@@ -15631,7 +15631,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+                       after(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
                     }
 
                     }
@@ -15646,7 +15646,7 @@
                     // InternalOCLstdlib.g:4749:1: ruleCollectionPatternCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
+                       before(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionPatternCS();
@@ -15654,7 +15654,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
+                       after(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
                     }
 
                     }
@@ -15684,7 +15684,7 @@
     public final void rule__ExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4763:1: ( ( ( rule__ExpCS__Group_0__0 ) ) | ( rulePrefixedLetExpCS ) )
             int alt41=2;
@@ -15697,7 +15697,7 @@
                     // InternalOCLstdlib.g:4765:1: ( rule__ExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getExpCSAccess().getGroup_0()); 
+                       before(grammarAccess.getExpCSAccess().getGroup_0());
                     }
                     // InternalOCLstdlib.g:4766:1: ( rule__ExpCS__Group_0__0 )
                     // InternalOCLstdlib.g:4766:2: rule__ExpCS__Group_0__0
@@ -15711,7 +15711,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getExpCSAccess().getGroup_0()); 
+                       after(grammarAccess.getExpCSAccess().getGroup_0());
                     }
 
                     }
@@ -15726,7 +15726,7 @@
                     // InternalOCLstdlib.g:4771:1: rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrefixedLetExpCS();
@@ -15734,7 +15734,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
                     }
 
                     }
@@ -15764,7 +15764,7 @@
     public final void rule__PrefixedLetExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4785:1: ( ( ( rule__PrefixedLetExpCS__Group_0__0 ) ) | ( ruleLetExpCS ) )
             int alt42=2;
@@ -15791,7 +15791,7 @@
                     // InternalOCLstdlib.g:4787:1: ( rule__PrefixedLetExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0()); 
+                       before(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0());
                     }
                     // InternalOCLstdlib.g:4788:1: ( rule__PrefixedLetExpCS__Group_0__0 )
                     // InternalOCLstdlib.g:4788:2: rule__PrefixedLetExpCS__Group_0__0
@@ -15805,7 +15805,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0()); 
+                       after(grammarAccess.getPrefixedLetExpCSAccess().getGroup_0());
                     }
 
                     }
@@ -15820,7 +15820,7 @@
                     // InternalOCLstdlib.g:4793:1: ruleLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleLetExpCS();
@@ -15828,7 +15828,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
                     }
 
                     }
@@ -15858,7 +15858,7 @@
     public final void rule__PrefixedPrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4807:1: ( ( ( rule__PrefixedPrimaryExpCS__Group_0__0 ) ) | ( rulePrimaryExpCS ) )
             int alt43=2;
@@ -15885,7 +15885,7 @@
                     // InternalOCLstdlib.g:4809:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0()); 
+                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0());
                     }
                     // InternalOCLstdlib.g:4810:1: ( rule__PrefixedPrimaryExpCS__Group_0__0 )
                     // InternalOCLstdlib.g:4810:2: rule__PrefixedPrimaryExpCS__Group_0__0
@@ -15899,7 +15899,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0()); 
+                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getGroup_0());
                     }
 
                     }
@@ -15914,7 +15914,7 @@
                     // InternalOCLstdlib.g:4815:1: rulePrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimaryExpCS();
@@ -15922,7 +15922,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
                     }
 
                     }
@@ -15952,7 +15952,7 @@
     public final void rule__PrimaryExpCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4829:1: ( ( ruleNestedExpCS ) | ( ruleIfExpCS ) | ( ruleSelfExpCS ) | ( rulePrimitiveLiteralExpCS ) | ( ruleTupleLiteralExpCS ) | ( ruleMapLiteralExpCS ) | ( ruleCollectionLiteralExpCS ) | ( ruleLambdaLiteralExpCS ) | ( ruleTypeLiteralExpCS ) | ( ruleNameExpCS ) )
             int alt44=10;
@@ -15965,7 +15965,7 @@
                     // InternalOCLstdlib.g:4831:1: ruleNestedExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNestedExpCS();
@@ -15973,7 +15973,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
                     }
 
                     }
@@ -15988,7 +15988,7 @@
                     // InternalOCLstdlib.g:4837:1: ruleIfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleIfExpCS();
@@ -15996,7 +15996,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
                     }
 
                     }
@@ -16011,7 +16011,7 @@
                     // InternalOCLstdlib.g:4843:1: ruleSelfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleSelfExpCS();
@@ -16019,7 +16019,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
                     }
 
                     }
@@ -16034,7 +16034,7 @@
                     // InternalOCLstdlib.g:4849:1: rulePrimitiveLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePrimitiveLiteralExpCS();
@@ -16042,7 +16042,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
                     }
 
                     }
@@ -16057,7 +16057,7 @@
                     // InternalOCLstdlib.g:4855:1: ruleTupleLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTupleLiteralExpCS();
@@ -16065,7 +16065,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
                     }
 
                     }
@@ -16080,7 +16080,7 @@
                     // InternalOCLstdlib.g:4861:1: ruleMapLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMapLiteralExpCS();
@@ -16088,7 +16088,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
                     }
 
                     }
@@ -16103,7 +16103,7 @@
                     // InternalOCLstdlib.g:4867:1: ruleCollectionLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleCollectionLiteralExpCS();
@@ -16111,7 +16111,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
                     }
 
                     }
@@ -16126,7 +16126,7 @@
                     // InternalOCLstdlib.g:4873:1: ruleLambdaLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleLambdaLiteralExpCS();
@@ -16134,7 +16134,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
                     }
 
                     }
@@ -16149,7 +16149,7 @@
                     // InternalOCLstdlib.g:4879:1: ruleTypeLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypeLiteralExpCS();
@@ -16157,7 +16157,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
                     }
 
                     }
@@ -16172,7 +16172,7 @@
                     // InternalOCLstdlib.g:4885:1: ruleNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
+                       before(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleNameExpCS();
@@ -16180,7 +16180,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
+                       after(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
                     }
 
                     }
@@ -16210,7 +16210,7 @@
     public final void rule__CurlyBracketedClauseCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4899:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_0__0 )? ) | ( ( rule__CurlyBracketedClauseCS__ValueAssignment_2_1 ) ) )
             int alt46=2;
@@ -16237,7 +16237,7 @@
                     // InternalOCLstdlib.g:4901:1: ( rule__CurlyBracketedClauseCS__Group_2_0__0 )?
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0()); 
+                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0());
                     }
                     // InternalOCLstdlib.g:4902:1: ( rule__CurlyBracketedClauseCS__Group_2_0__0 )?
                     int alt45=2;
@@ -16262,7 +16262,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0()); 
+                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0());
                     }
 
                     }
@@ -16277,7 +16277,7 @@
                     // InternalOCLstdlib.g:4907:1: ( rule__CurlyBracketedClauseCS__ValueAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1()); 
+                       before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1());
                     }
                     // InternalOCLstdlib.g:4908:1: ( rule__CurlyBracketedClauseCS__ValueAssignment_2_1 )
                     // InternalOCLstdlib.g:4908:2: rule__CurlyBracketedClauseCS__ValueAssignment_2_1
@@ -16291,7 +16291,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1()); 
+                       after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueAssignment_2_1());
                     }
 
                     }
@@ -16321,7 +16321,7 @@
     public final void rule__NavigatingArgCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4921:1: ( ( ( rule__NavigatingArgCS__Group_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_1__0 ) ) )
             int alt47=2;
@@ -16348,7 +16348,7 @@
                     // InternalOCLstdlib.g:4923:1: ( rule__NavigatingArgCS__Group_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0());
                     }
                     // InternalOCLstdlib.g:4924:1: ( rule__NavigatingArgCS__Group_0__0 )
                     // InternalOCLstdlib.g:4924:2: rule__NavigatingArgCS__Group_0__0
@@ -16362,7 +16362,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0());
                     }
 
                     }
@@ -16377,7 +16377,7 @@
                     // InternalOCLstdlib.g:4929:1: ( rule__NavigatingArgCS__Group_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_1()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_1());
                     }
                     // InternalOCLstdlib.g:4930:1: ( rule__NavigatingArgCS__Group_1__0 )
                     // InternalOCLstdlib.g:4930:2: rule__NavigatingArgCS__Group_1__0
@@ -16391,7 +16391,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_1()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_1());
                     }
 
                     }
@@ -16421,7 +16421,7 @@
     public final void rule__NavigatingArgCS__Alternatives_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4943:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0__0 ) ) | ( ( rule__NavigatingArgCS__Group_0_1_1__0 ) ) )
             int alt48=2;
@@ -16448,7 +16448,7 @@
                     // InternalOCLstdlib.g:4945:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
                     }
                     // InternalOCLstdlib.g:4946:1: ( rule__NavigatingArgCS__Group_0_1_0__0 )
                     // InternalOCLstdlib.g:4946:2: rule__NavigatingArgCS__Group_0_1_0__0
@@ -16462,7 +16462,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0());
                     }
 
                     }
@@ -16477,7 +16477,7 @@
                     // InternalOCLstdlib.g:4951:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1()); 
+                       before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
                     }
                     // InternalOCLstdlib.g:4952:1: ( rule__NavigatingArgCS__Group_0_1_1__0 )
                     // InternalOCLstdlib.g:4952:2: rule__NavigatingArgCS__Group_0_1_1__0
@@ -16491,7 +16491,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1()); 
+                       after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_1());
                     }
 
                     }
@@ -16521,7 +16521,7 @@
     public final void rule__NavigatingCommaArgCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4965:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0__0 ) ) | ( ( rule__NavigatingCommaArgCS__Group_2_1__0 ) ) )
             int alt49=2;
@@ -16548,7 +16548,7 @@
                     // InternalOCLstdlib.g:4967:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0()); 
+                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
                     }
                     // InternalOCLstdlib.g:4968:1: ( rule__NavigatingCommaArgCS__Group_2_0__0 )
                     // InternalOCLstdlib.g:4968:2: rule__NavigatingCommaArgCS__Group_2_0__0
@@ -16562,7 +16562,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0()); 
+                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0());
                     }
 
                     }
@@ -16577,7 +16577,7 @@
                     // InternalOCLstdlib.g:4973:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1()); 
+                       before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
                     }
                     // InternalOCLstdlib.g:4974:1: ( rule__NavigatingCommaArgCS__Group_2_1__0 )
                     // InternalOCLstdlib.g:4974:2: rule__NavigatingCommaArgCS__Group_2_1__0
@@ -16591,7 +16591,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1()); 
+                       after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_1());
                     }
 
                     }
@@ -16621,7 +16621,7 @@
     public final void rule__IfExpCS__OwnedConditionAlternatives_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:4987:1: ( ( ruleExpCS ) | ( rulePatternExpCS ) )
             int alt50=2;
@@ -16634,7 +16634,7 @@
                     // InternalOCLstdlib.g:4989:1: ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
+                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleExpCS();
@@ -16642,7 +16642,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
+                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
                     }
 
                     }
@@ -16657,7 +16657,7 @@
                     // InternalOCLstdlib.g:4995:1: rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
+                       before(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     rulePatternExpCS();
@@ -16665,7 +16665,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
+                       after(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
                     }
 
                     }
@@ -16695,7 +16695,7 @@
     public final void rule__MultiplicityCS__Alternatives_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5009:1: ( ( ruleMultiplicityBoundsCS ) | ( ruleMultiplicityStringCS ) )
             int alt51=2;
@@ -16722,7 +16722,7 @@
                     // InternalOCLstdlib.g:5011:1: ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMultiplicityBoundsCS();
@@ -16730,7 +16730,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
                     }
 
                     }
@@ -16745,7 +16745,7 @@
                     // InternalOCLstdlib.g:5017:1: ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleMultiplicityStringCS();
@@ -16753,7 +16753,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
                     }
 
                     }
@@ -16783,7 +16783,7 @@
     public final void rule__MultiplicityCS__Alternatives_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5031:1: ( ( '|?' ) | ( ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 ) ) )
             int alt52=2;
@@ -16810,11 +16810,11 @@
                     // InternalOCLstdlib.g:5033:1: '|?'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
                     }
                     match(input,79,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
                     }
 
                     }
@@ -16829,7 +16829,7 @@
                     // InternalOCLstdlib.g:5041:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1()); 
+                       before(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
                     // InternalOCLstdlib.g:5042:1: ( rule__MultiplicityCS__IsNullFreeAssignment_2_1 )
                     // InternalOCLstdlib.g:5042:2: rule__MultiplicityCS__IsNullFreeAssignment_2_1
@@ -16843,7 +16843,7 @@
                     }
 
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1()); 
+                       after(grammarAccess.getMultiplicityCSAccess().getIsNullFreeAssignment_2_1());
                     }
 
                     }
@@ -16873,7 +16873,7 @@
     public final void rule__MultiplicityStringCS__StringBoundsAlternatives_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5055:1: ( ( '*' ) | ( '+' ) | ( '?' ) )
             int alt53=3;
@@ -16909,11 +16909,11 @@
                     // InternalOCLstdlib.g:5057:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
                     }
                     match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
                     }
 
                     }
@@ -16928,11 +16928,11 @@
                     // InternalOCLstdlib.g:5065:1: '+'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
                     }
                     match(input,55,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
                     }
 
                     }
@@ -16947,11 +16947,11 @@
                     // InternalOCLstdlib.g:5073:1: '?'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); 
+                       before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
                     }
                     match(input,80,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2()); 
+                       after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
                     }
 
                     }
@@ -16981,7 +16981,7 @@
     public final void rule__TypeRefCS__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5089:1: ( ( ruleTypedRefCS ) | ( ruleWildcardTypeRefCS ) )
             int alt54=2;
@@ -17008,7 +17008,7 @@
                     // InternalOCLstdlib.g:5091:1: ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+                       before(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleTypedRefCS();
@@ -17016,7 +17016,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+                       after(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
                     }
 
                     }
@@ -17031,7 +17031,7 @@
                     // InternalOCLstdlib.g:5097:1: ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+                       before(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleWildcardTypeRefCS();
@@ -17039,7 +17039,7 @@
                     state._fsp--;
                     if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+                       after(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
                     }
 
                     }
@@ -17069,7 +17069,7 @@
     public final void rule__ID__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5111:1: ( ( RULE_SIMPLE_ID ) | ( RULE_ESCAPED_ID ) )
             int alt55=2;
@@ -17096,11 +17096,11 @@
                     // InternalOCLstdlib.g:5113:1: RULE_SIMPLE_ID
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+                       before(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
                     }
                     match(input,RULE_SIMPLE_ID,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+                       after(grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
                     }
 
                     }
@@ -17115,11 +17115,11 @@
                     // InternalOCLstdlib.g:5119:1: RULE_ESCAPED_ID
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+                       before(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
                     }
                     match(input,RULE_ESCAPED_ID,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+                       after(grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
                     }
 
                     }
@@ -17149,7 +17149,7 @@
     public final void rule__UPPER__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5133:1: ( ( RULE_INT ) | ( '*' ) )
             int alt56=2;
@@ -17176,11 +17176,11 @@
                     // InternalOCLstdlib.g:5135:1: RULE_INT
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+                       before(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
                     }
                     match(input,RULE_INT,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+                       after(grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
                     }
 
                     }
@@ -17195,11 +17195,11 @@
                     // InternalOCLstdlib.g:5141:1: '*'
                     {
                     if ( state.backtracking==0 ) {
-                       before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+                       before(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
                     }
                     match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return ;
                     if ( state.backtracking==0 ) {
-                       after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+                       after(grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
                     }
 
                     }
@@ -17229,7 +17229,7 @@
     public final void rule__Library__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5159:1: ( rule__Library__Group__0__Impl rule__Library__Group__1 )
             // InternalOCLstdlib.g:5160:2: rule__Library__Group__0__Impl rule__Library__Group__1
@@ -17267,7 +17267,7 @@
     public final void rule__Library__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5171:1: ( ( ( rule__Library__Group_0__0 )* ) )
             // InternalOCLstdlib.g:5172:1: ( ( rule__Library__Group_0__0 )* )
@@ -17276,7 +17276,7 @@
             // InternalOCLstdlib.g:5173:1: ( rule__Library__Group_0__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibraryAccess().getGroup_0()); 
+               before(grammarAccess.getLibraryAccess().getGroup_0());
             }
             // InternalOCLstdlib.g:5174:1: ( rule__Library__Group_0__0 )*
             loop57:
@@ -17308,7 +17308,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibraryAccess().getGroup_0()); 
+               after(grammarAccess.getLibraryAccess().getGroup_0());
             }
 
             }
@@ -17336,7 +17336,7 @@
     public final void rule__Library__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5188:1: ( rule__Library__Group__1__Impl )
             // InternalOCLstdlib.g:5189:2: rule__Library__Group__1__Impl
@@ -17369,7 +17369,7 @@
     public final void rule__Library__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5199:1: ( ( ( rule__Library__OwnedPackagesAssignment_1 )* ) )
             // InternalOCLstdlib.g:5200:1: ( ( rule__Library__OwnedPackagesAssignment_1 )* )
@@ -17378,7 +17378,7 @@
             // InternalOCLstdlib.g:5201:1: ( rule__Library__OwnedPackagesAssignment_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibraryAccess().getOwnedPackagesAssignment_1()); 
+               before(grammarAccess.getLibraryAccess().getOwnedPackagesAssignment_1());
             }
             // InternalOCLstdlib.g:5202:1: ( rule__Library__OwnedPackagesAssignment_1 )*
             loop58:
@@ -17410,7 +17410,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibraryAccess().getOwnedPackagesAssignment_1()); 
+               after(grammarAccess.getLibraryAccess().getOwnedPackagesAssignment_1());
             }
 
             }
@@ -17438,7 +17438,7 @@
     public final void rule__Library__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5220:1: ( rule__Library__Group_0__0__Impl rule__Library__Group_0__1 )
             // InternalOCLstdlib.g:5221:2: rule__Library__Group_0__0__Impl rule__Library__Group_0__1
@@ -17476,7 +17476,7 @@
     public final void rule__Library__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5232:1: ( ( ( rule__Library__OwnedImportsAssignment_0_0 ) ) )
             // InternalOCLstdlib.g:5233:1: ( ( rule__Library__OwnedImportsAssignment_0_0 ) )
@@ -17485,7 +17485,7 @@
             // InternalOCLstdlib.g:5234:1: ( rule__Library__OwnedImportsAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibraryAccess().getOwnedImportsAssignment_0_0()); 
+               before(grammarAccess.getLibraryAccess().getOwnedImportsAssignment_0_0());
             }
             // InternalOCLstdlib.g:5235:1: ( rule__Library__OwnedImportsAssignment_0_0 )
             // InternalOCLstdlib.g:5235:2: rule__Library__OwnedImportsAssignment_0_0
@@ -17499,7 +17499,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibraryAccess().getOwnedImportsAssignment_0_0()); 
+               after(grammarAccess.getLibraryAccess().getOwnedImportsAssignment_0_0());
             }
 
             }
@@ -17527,7 +17527,7 @@
     public final void rule__Library__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5249:1: ( rule__Library__Group_0__1__Impl )
             // InternalOCLstdlib.g:5250:2: rule__Library__Group_0__1__Impl
@@ -17560,7 +17560,7 @@
     public final void rule__Library__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5260:1: ( ( ';' ) )
             // InternalOCLstdlib.g:5261:1: ( ';' )
@@ -17569,11 +17569,11 @@
             // InternalOCLstdlib.g:5262:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibraryAccess().getSemicolonKeyword_0_1()); 
+               before(grammarAccess.getLibraryAccess().getSemicolonKeyword_0_1());
             }
             match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibraryAccess().getSemicolonKeyword_0_1()); 
+               after(grammarAccess.getLibraryAccess().getSemicolonKeyword_0_1());
             }
 
             }
@@ -17601,7 +17601,7 @@
     public final void rule__LibPathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5283:1: ( rule__LibPathNameCS__Group__0__Impl rule__LibPathNameCS__Group__1 )
             // InternalOCLstdlib.g:5284:2: rule__LibPathNameCS__Group__0__Impl rule__LibPathNameCS__Group__1
@@ -17639,7 +17639,7 @@
     public final void rule__LibPathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5295:1: ( ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 ) ) )
             // InternalOCLstdlib.g:5296:1: ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 ) )
@@ -17648,7 +17648,7 @@
             // InternalOCLstdlib.g:5297:1: ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               before(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
             // InternalOCLstdlib.g:5298:1: ( rule__LibPathNameCS__OwnedPathElementsAssignment_0 )
             // InternalOCLstdlib.g:5298:2: rule__LibPathNameCS__OwnedPathElementsAssignment_0
@@ -17662,7 +17662,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               after(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
 
             }
@@ -17690,7 +17690,7 @@
     public final void rule__LibPathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5312:1: ( rule__LibPathNameCS__Group__1__Impl )
             // InternalOCLstdlib.g:5313:2: rule__LibPathNameCS__Group__1__Impl
@@ -17723,7 +17723,7 @@
     public final void rule__LibPathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5323:1: ( ( ( rule__LibPathNameCS__Group_1__0 )* ) )
             // InternalOCLstdlib.g:5324:1: ( ( rule__LibPathNameCS__Group_1__0 )* )
@@ -17732,7 +17732,7 @@
             // InternalOCLstdlib.g:5325:1: ( rule__LibPathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPathNameCSAccess().getGroup_1()); 
+               before(grammarAccess.getLibPathNameCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:5326:1: ( rule__LibPathNameCS__Group_1__0 )*
             loop59:
@@ -17764,7 +17764,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPathNameCSAccess().getGroup_1()); 
+               after(grammarAccess.getLibPathNameCSAccess().getGroup_1());
             }
 
             }
@@ -17792,7 +17792,7 @@
     public final void rule__LibPathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5344:1: ( rule__LibPathNameCS__Group_1__0__Impl rule__LibPathNameCS__Group_1__1 )
             // InternalOCLstdlib.g:5345:2: rule__LibPathNameCS__Group_1__0__Impl rule__LibPathNameCS__Group_1__1
@@ -17830,7 +17830,7 @@
     public final void rule__LibPathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5356:1: ( ( '::' ) )
             // InternalOCLstdlib.g:5357:1: ( '::' )
@@ -17839,11 +17839,11 @@
             // InternalOCLstdlib.g:5358:1: '::'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPathNameCSAccess().getColonColonKeyword_1_0()); 
+               before(grammarAccess.getLibPathNameCSAccess().getColonColonKeyword_1_0());
             }
             match(input,81,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPathNameCSAccess().getColonColonKeyword_1_0()); 
+               after(grammarAccess.getLibPathNameCSAccess().getColonColonKeyword_1_0());
             }
 
             }
@@ -17871,7 +17871,7 @@
     public final void rule__LibPathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5375:1: ( rule__LibPathNameCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:5376:2: rule__LibPathNameCS__Group_1__1__Impl
@@ -17904,7 +17904,7 @@
     public final void rule__LibPathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5386:1: ( ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
             // InternalOCLstdlib.g:5387:1: ( ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 ) )
@@ -17913,7 +17913,7 @@
             // InternalOCLstdlib.g:5388:1: ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               before(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
             // InternalOCLstdlib.g:5389:1: ( rule__LibPathNameCS__OwnedPathElementsAssignment_1_1 )
             // InternalOCLstdlib.g:5389:2: rule__LibPathNameCS__OwnedPathElementsAssignment_1_1
@@ -17927,7 +17927,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               after(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
 
             }
@@ -17955,7 +17955,7 @@
     public final void rule__AccumulatorCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5407:1: ( rule__AccumulatorCS__Group__0__Impl rule__AccumulatorCS__Group__1 )
             // InternalOCLstdlib.g:5408:2: rule__AccumulatorCS__Group__0__Impl rule__AccumulatorCS__Group__1
@@ -17993,7 +17993,7 @@
     public final void rule__AccumulatorCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5419:1: ( ( ( rule__AccumulatorCS__NameAssignment_0 ) ) )
             // InternalOCLstdlib.g:5420:1: ( ( rule__AccumulatorCS__NameAssignment_0 ) )
@@ -18002,7 +18002,7 @@
             // InternalOCLstdlib.g:5421:1: ( rule__AccumulatorCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAccumulatorCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getAccumulatorCSAccess().getNameAssignment_0());
             }
             // InternalOCLstdlib.g:5422:1: ( rule__AccumulatorCS__NameAssignment_0 )
             // InternalOCLstdlib.g:5422:2: rule__AccumulatorCS__NameAssignment_0
@@ -18016,7 +18016,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAccumulatorCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getAccumulatorCSAccess().getNameAssignment_0());
             }
 
             }
@@ -18044,7 +18044,7 @@
     public final void rule__AccumulatorCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5436:1: ( rule__AccumulatorCS__Group__1__Impl rule__AccumulatorCS__Group__2 )
             // InternalOCLstdlib.g:5437:2: rule__AccumulatorCS__Group__1__Impl rule__AccumulatorCS__Group__2
@@ -18082,7 +18082,7 @@
     public final void rule__AccumulatorCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5448:1: ( ( ':' ) )
             // InternalOCLstdlib.g:5449:1: ( ':' )
@@ -18091,11 +18091,11 @@
             // InternalOCLstdlib.g:5450:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAccumulatorCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getAccumulatorCSAccess().getColonKeyword_1());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAccumulatorCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getAccumulatorCSAccess().getColonKeyword_1());
             }
 
             }
@@ -18123,7 +18123,7 @@
     public final void rule__AccumulatorCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5467:1: ( rule__AccumulatorCS__Group__2__Impl )
             // InternalOCLstdlib.g:5468:2: rule__AccumulatorCS__Group__2__Impl
@@ -18156,7 +18156,7 @@
     public final void rule__AccumulatorCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5478:1: ( ( ( rule__AccumulatorCS__OwnedTypeAssignment_2 ) ) )
             // InternalOCLstdlib.g:5479:1: ( ( rule__AccumulatorCS__OwnedTypeAssignment_2 ) )
@@ -18165,7 +18165,7 @@
             // InternalOCLstdlib.g:5480:1: ( rule__AccumulatorCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAccumulatorCSAccess().getOwnedTypeAssignment_2()); 
+               before(grammarAccess.getAccumulatorCSAccess().getOwnedTypeAssignment_2());
             }
             // InternalOCLstdlib.g:5481:1: ( rule__AccumulatorCS__OwnedTypeAssignment_2 )
             // InternalOCLstdlib.g:5481:2: rule__AccumulatorCS__OwnedTypeAssignment_2
@@ -18179,7 +18179,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAccumulatorCSAccess().getOwnedTypeAssignment_2()); 
+               after(grammarAccess.getAccumulatorCSAccess().getOwnedTypeAssignment_2());
             }
 
             }
@@ -18207,7 +18207,7 @@
     public final void rule__AnnotationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5501:1: ( rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1 )
             // InternalOCLstdlib.g:5502:2: rule__AnnotationCS__Group__0__Impl rule__AnnotationCS__Group__1
@@ -18245,7 +18245,7 @@
     public final void rule__AnnotationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5513:1: ( ( 'annotation' ) )
             // InternalOCLstdlib.g:5514:1: ( 'annotation' )
@@ -18254,11 +18254,11 @@
             // InternalOCLstdlib.g:5515:1: 'annotation'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_0());
             }
             match(input,17,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_0());
             }
 
             }
@@ -18286,7 +18286,7 @@
     public final void rule__AnnotationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5532:1: ( rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2 )
             // InternalOCLstdlib.g:5533:2: rule__AnnotationCS__Group__1__Impl rule__AnnotationCS__Group__2
@@ -18324,7 +18324,7 @@
     public final void rule__AnnotationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5544:1: ( ( ( rule__AnnotationCS__NameAssignment_1 ) ) )
             // InternalOCLstdlib.g:5545:1: ( ( rule__AnnotationCS__NameAssignment_1 ) )
@@ -18333,7 +18333,7 @@
             // InternalOCLstdlib.g:5546:1: ( rule__AnnotationCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getNameAssignment_1()); 
+               before(grammarAccess.getAnnotationCSAccess().getNameAssignment_1());
             }
             // InternalOCLstdlib.g:5547:1: ( rule__AnnotationCS__NameAssignment_1 )
             // InternalOCLstdlib.g:5547:2: rule__AnnotationCS__NameAssignment_1
@@ -18347,7 +18347,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getNameAssignment_1()); 
+               after(grammarAccess.getAnnotationCSAccess().getNameAssignment_1());
             }
 
             }
@@ -18375,7 +18375,7 @@
     public final void rule__AnnotationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5561:1: ( rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3 )
             // InternalOCLstdlib.g:5562:2: rule__AnnotationCS__Group__2__Impl rule__AnnotationCS__Group__3
@@ -18413,7 +18413,7 @@
     public final void rule__AnnotationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5573:1: ( ( ( rule__AnnotationCS__Group_2__0 )? ) )
             // InternalOCLstdlib.g:5574:1: ( ( rule__AnnotationCS__Group_2__0 )? )
@@ -18422,7 +18422,7 @@
             // InternalOCLstdlib.g:5575:1: ( rule__AnnotationCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getGroup_2()); 
+               before(grammarAccess.getAnnotationCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:5576:1: ( rule__AnnotationCS__Group_2__0 )?
             int alt60=2;
@@ -18447,7 +18447,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getGroup_2()); 
+               after(grammarAccess.getAnnotationCSAccess().getGroup_2());
             }
 
             }
@@ -18475,7 +18475,7 @@
     public final void rule__AnnotationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5590:1: ( rule__AnnotationCS__Group__3__Impl )
             // InternalOCLstdlib.g:5591:2: rule__AnnotationCS__Group__3__Impl
@@ -18508,7 +18508,7 @@
     public final void rule__AnnotationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5601:1: ( ( ( rule__AnnotationCS__Alternatives_3 ) ) )
             // InternalOCLstdlib.g:5602:1: ( ( rule__AnnotationCS__Alternatives_3 ) )
@@ -18517,7 +18517,7 @@
             // InternalOCLstdlib.g:5603:1: ( rule__AnnotationCS__Alternatives_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getAlternatives_3()); 
+               before(grammarAccess.getAnnotationCSAccess().getAlternatives_3());
             }
             // InternalOCLstdlib.g:5604:1: ( rule__AnnotationCS__Alternatives_3 )
             // InternalOCLstdlib.g:5604:2: rule__AnnotationCS__Alternatives_3
@@ -18531,7 +18531,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getAlternatives_3()); 
+               after(grammarAccess.getAnnotationCSAccess().getAlternatives_3());
             }
 
             }
@@ -18559,7 +18559,7 @@
     public final void rule__AnnotationCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5626:1: ( rule__AnnotationCS__Group_2__0__Impl rule__AnnotationCS__Group_2__1 )
             // InternalOCLstdlib.g:5627:2: rule__AnnotationCS__Group_2__0__Impl rule__AnnotationCS__Group_2__1
@@ -18597,7 +18597,7 @@
     public final void rule__AnnotationCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5638:1: ( ( '(' ) )
             // InternalOCLstdlib.g:5639:1: ( '(' )
@@ -18606,11 +18606,11 @@
             // InternalOCLstdlib.g:5640:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_2_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_2_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_2_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_2_0());
             }
 
             }
@@ -18638,7 +18638,7 @@
     public final void rule__AnnotationCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5657:1: ( rule__AnnotationCS__Group_2__1__Impl rule__AnnotationCS__Group_2__2 )
             // InternalOCLstdlib.g:5658:2: rule__AnnotationCS__Group_2__1__Impl rule__AnnotationCS__Group_2__2
@@ -18676,7 +18676,7 @@
     public final void rule__AnnotationCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5669:1: ( ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 ) ) )
             // InternalOCLstdlib.g:5670:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 ) )
@@ -18685,7 +18685,7 @@
             // InternalOCLstdlib.g:5671:1: ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_2_1()); 
+               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_2_1());
             }
             // InternalOCLstdlib.g:5672:1: ( rule__AnnotationCS__OwnedDetailsAssignment_2_1 )
             // InternalOCLstdlib.g:5672:2: rule__AnnotationCS__OwnedDetailsAssignment_2_1
@@ -18699,7 +18699,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_2_1()); 
+               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_2_1());
             }
 
             }
@@ -18727,7 +18727,7 @@
     public final void rule__AnnotationCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5686:1: ( rule__AnnotationCS__Group_2__2__Impl rule__AnnotationCS__Group_2__3 )
             // InternalOCLstdlib.g:5687:2: rule__AnnotationCS__Group_2__2__Impl rule__AnnotationCS__Group_2__3
@@ -18765,7 +18765,7 @@
     public final void rule__AnnotationCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5698:1: ( ( ( rule__AnnotationCS__Group_2_2__0 )* ) )
             // InternalOCLstdlib.g:5699:1: ( ( rule__AnnotationCS__Group_2_2__0 )* )
@@ -18774,7 +18774,7 @@
             // InternalOCLstdlib.g:5700:1: ( rule__AnnotationCS__Group_2_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getAnnotationCSAccess().getGroup_2_2());
             }
             // InternalOCLstdlib.g:5701:1: ( rule__AnnotationCS__Group_2_2__0 )*
             loop61:
@@ -18806,7 +18806,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getAnnotationCSAccess().getGroup_2_2());
             }
 
             }
@@ -18834,7 +18834,7 @@
     public final void rule__AnnotationCS__Group_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5715:1: ( rule__AnnotationCS__Group_2__3__Impl )
             // InternalOCLstdlib.g:5716:2: rule__AnnotationCS__Group_2__3__Impl
@@ -18867,7 +18867,7 @@
     public final void rule__AnnotationCS__Group_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5726:1: ( ( ')' ) )
             // InternalOCLstdlib.g:5727:1: ( ')' )
@@ -18876,11 +18876,11 @@
             // InternalOCLstdlib.g:5728:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_2_3()); 
+               before(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_2_3());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_2_3()); 
+               after(grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_2_3());
             }
 
             }
@@ -18908,7 +18908,7 @@
     public final void rule__AnnotationCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5753:1: ( rule__AnnotationCS__Group_2_2__0__Impl rule__AnnotationCS__Group_2_2__1 )
             // InternalOCLstdlib.g:5754:2: rule__AnnotationCS__Group_2_2__0__Impl rule__AnnotationCS__Group_2_2__1
@@ -18946,7 +18946,7 @@
     public final void rule__AnnotationCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5765:1: ( ( ',' ) )
             // InternalOCLstdlib.g:5766:1: ( ',' )
@@ -18955,11 +18955,11 @@
             // InternalOCLstdlib.g:5767:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getCommaKeyword_2_2_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getCommaKeyword_2_2_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getCommaKeyword_2_2_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getCommaKeyword_2_2_0());
             }
 
             }
@@ -18987,7 +18987,7 @@
     public final void rule__AnnotationCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5784:1: ( rule__AnnotationCS__Group_2_2__1__Impl )
             // InternalOCLstdlib.g:5785:2: rule__AnnotationCS__Group_2_2__1__Impl
@@ -19020,7 +19020,7 @@
     public final void rule__AnnotationCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5795:1: ( ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 ) ) )
             // InternalOCLstdlib.g:5796:1: ( ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 ) )
@@ -19029,7 +19029,7 @@
             // InternalOCLstdlib.g:5797:1: ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_2_2_1()); 
+               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_2_2_1());
             }
             // InternalOCLstdlib.g:5798:1: ( rule__AnnotationCS__OwnedDetailsAssignment_2_2_1 )
             // InternalOCLstdlib.g:5798:2: rule__AnnotationCS__OwnedDetailsAssignment_2_2_1
@@ -19043,7 +19043,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_2_2_1()); 
+               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsAssignment_2_2_1());
             }
 
             }
@@ -19071,7 +19071,7 @@
     public final void rule__AnnotationCS__Group_3_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5816:1: ( rule__AnnotationCS__Group_3_0__0__Impl rule__AnnotationCS__Group_3_0__1 )
             // InternalOCLstdlib.g:5817:2: rule__AnnotationCS__Group_3_0__0__Impl rule__AnnotationCS__Group_3_0__1
@@ -19109,7 +19109,7 @@
     public final void rule__AnnotationCS__Group_3_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5828:1: ( ( '{' ) )
             // InternalOCLstdlib.g:5829:1: ( '{' )
@@ -19118,11 +19118,11 @@
             // InternalOCLstdlib.g:5830:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_3_0_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_3_0_0());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_3_0_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_3_0_0());
             }
 
             }
@@ -19150,7 +19150,7 @@
     public final void rule__AnnotationCS__Group_3_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5847:1: ( rule__AnnotationCS__Group_3_0__1__Impl rule__AnnotationCS__Group_3_0__2 )
             // InternalOCLstdlib.g:5848:2: rule__AnnotationCS__Group_3_0__1__Impl rule__AnnotationCS__Group_3_0__2
@@ -19188,7 +19188,7 @@
     public final void rule__AnnotationCS__Group_3_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5859:1: ( ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 ) ) )
             // InternalOCLstdlib.g:5860:1: ( ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 ) )
@@ -19197,7 +19197,7 @@
             // InternalOCLstdlib.g:5861:1: ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAssignment_3_0_1()); 
+               before(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAssignment_3_0_1());
             }
             // InternalOCLstdlib.g:5862:1: ( rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1 )
             // InternalOCLstdlib.g:5862:2: rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1
@@ -19211,7 +19211,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAssignment_3_0_1()); 
+               after(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAssignment_3_0_1());
             }
 
             }
@@ -19239,7 +19239,7 @@
     public final void rule__AnnotationCS__Group_3_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5876:1: ( rule__AnnotationCS__Group_3_0__2__Impl )
             // InternalOCLstdlib.g:5877:2: rule__AnnotationCS__Group_3_0__2__Impl
@@ -19272,7 +19272,7 @@
     public final void rule__AnnotationCS__Group_3_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5887:1: ( ( '}' ) )
             // InternalOCLstdlib.g:5888:1: ( '}' )
@@ -19281,11 +19281,11 @@
             // InternalOCLstdlib.g:5889:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_3_0_2()); 
+               before(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_3_0_2());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_3_0_2()); 
+               after(grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_3_0_2());
             }
 
             }
@@ -19313,7 +19313,7 @@
     public final void rule__LibClassCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5912:1: ( rule__LibClassCS__Group__0__Impl rule__LibClassCS__Group__1 )
             // InternalOCLstdlib.g:5913:2: rule__LibClassCS__Group__0__Impl rule__LibClassCS__Group__1
@@ -19351,7 +19351,7 @@
     public final void rule__LibClassCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5924:1: ( ( ( rule__LibClassCS__IsAbstractAssignment_0 )? ) )
             // InternalOCLstdlib.g:5925:1: ( ( rule__LibClassCS__IsAbstractAssignment_0 )? )
@@ -19360,7 +19360,7 @@
             // InternalOCLstdlib.g:5926:1: ( rule__LibClassCS__IsAbstractAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getIsAbstractAssignment_0()); 
+               before(grammarAccess.getLibClassCSAccess().getIsAbstractAssignment_0());
             }
             // InternalOCLstdlib.g:5927:1: ( rule__LibClassCS__IsAbstractAssignment_0 )?
             int alt62=2;
@@ -19385,7 +19385,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getIsAbstractAssignment_0()); 
+               after(grammarAccess.getLibClassCSAccess().getIsAbstractAssignment_0());
             }
 
             }
@@ -19413,7 +19413,7 @@
     public final void rule__LibClassCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5941:1: ( rule__LibClassCS__Group__1__Impl rule__LibClassCS__Group__2 )
             // InternalOCLstdlib.g:5942:2: rule__LibClassCS__Group__1__Impl rule__LibClassCS__Group__2
@@ -19451,7 +19451,7 @@
     public final void rule__LibClassCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5953:1: ( ( 'type' ) )
             // InternalOCLstdlib.g:5954:1: ( 'type' )
@@ -19460,11 +19460,11 @@
             // InternalOCLstdlib.g:5955:1: 'type'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getTypeKeyword_1()); 
+               before(grammarAccess.getLibClassCSAccess().getTypeKeyword_1());
             }
             match(input,35,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getTypeKeyword_1()); 
+               after(grammarAccess.getLibClassCSAccess().getTypeKeyword_1());
             }
 
             }
@@ -19492,7 +19492,7 @@
     public final void rule__LibClassCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5972:1: ( rule__LibClassCS__Group__2__Impl rule__LibClassCS__Group__3 )
             // InternalOCLstdlib.g:5973:2: rule__LibClassCS__Group__2__Impl rule__LibClassCS__Group__3
@@ -19530,7 +19530,7 @@
     public final void rule__LibClassCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:5984:1: ( ( ( rule__LibClassCS__NameAssignment_2 ) ) )
             // InternalOCLstdlib.g:5985:1: ( ( rule__LibClassCS__NameAssignment_2 ) )
@@ -19539,7 +19539,7 @@
             // InternalOCLstdlib.g:5986:1: ( rule__LibClassCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getNameAssignment_2()); 
+               before(grammarAccess.getLibClassCSAccess().getNameAssignment_2());
             }
             // InternalOCLstdlib.g:5987:1: ( rule__LibClassCS__NameAssignment_2 )
             // InternalOCLstdlib.g:5987:2: rule__LibClassCS__NameAssignment_2
@@ -19553,7 +19553,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getNameAssignment_2()); 
+               after(grammarAccess.getLibClassCSAccess().getNameAssignment_2());
             }
 
             }
@@ -19581,7 +19581,7 @@
     public final void rule__LibClassCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6001:1: ( rule__LibClassCS__Group__3__Impl rule__LibClassCS__Group__4 )
             // InternalOCLstdlib.g:6002:2: rule__LibClassCS__Group__3__Impl rule__LibClassCS__Group__4
@@ -19619,7 +19619,7 @@
     public final void rule__LibClassCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6013:1: ( ( ( rule__LibClassCS__OwnedSignatureAssignment_3 )? ) )
             // InternalOCLstdlib.g:6014:1: ( ( rule__LibClassCS__OwnedSignatureAssignment_3 )? )
@@ -19628,7 +19628,7 @@
             // InternalOCLstdlib.g:6015:1: ( rule__LibClassCS__OwnedSignatureAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getOwnedSignatureAssignment_3()); 
+               before(grammarAccess.getLibClassCSAccess().getOwnedSignatureAssignment_3());
             }
             // InternalOCLstdlib.g:6016:1: ( rule__LibClassCS__OwnedSignatureAssignment_3 )?
             int alt63=2;
@@ -19653,7 +19653,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getOwnedSignatureAssignment_3()); 
+               after(grammarAccess.getLibClassCSAccess().getOwnedSignatureAssignment_3());
             }
 
             }
@@ -19681,7 +19681,7 @@
     public final void rule__LibClassCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6030:1: ( rule__LibClassCS__Group__4__Impl rule__LibClassCS__Group__5 )
             // InternalOCLstdlib.g:6031:2: rule__LibClassCS__Group__4__Impl rule__LibClassCS__Group__5
@@ -19719,7 +19719,7 @@
     public final void rule__LibClassCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6042:1: ( ( ( rule__LibClassCS__Group_4__0 )? ) )
             // InternalOCLstdlib.g:6043:1: ( ( rule__LibClassCS__Group_4__0 )? )
@@ -19728,7 +19728,7 @@
             // InternalOCLstdlib.g:6044:1: ( rule__LibClassCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getGroup_4()); 
+               before(grammarAccess.getLibClassCSAccess().getGroup_4());
             }
             // InternalOCLstdlib.g:6045:1: ( rule__LibClassCS__Group_4__0 )?
             int alt64=2;
@@ -19753,7 +19753,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getGroup_4()); 
+               after(grammarAccess.getLibClassCSAccess().getGroup_4());
             }
 
             }
@@ -19781,7 +19781,7 @@
     public final void rule__LibClassCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6059:1: ( rule__LibClassCS__Group__5__Impl rule__LibClassCS__Group__6 )
             // InternalOCLstdlib.g:6060:2: rule__LibClassCS__Group__5__Impl rule__LibClassCS__Group__6
@@ -19819,7 +19819,7 @@
     public final void rule__LibClassCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6071:1: ( ( ( rule__LibClassCS__Group_5__0 )? ) )
             // InternalOCLstdlib.g:6072:1: ( ( rule__LibClassCS__Group_5__0 )? )
@@ -19828,7 +19828,7 @@
             // InternalOCLstdlib.g:6073:1: ( rule__LibClassCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getGroup_5()); 
+               before(grammarAccess.getLibClassCSAccess().getGroup_5());
             }
             // InternalOCLstdlib.g:6074:1: ( rule__LibClassCS__Group_5__0 )?
             int alt65=2;
@@ -19853,7 +19853,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getGroup_5()); 
+               after(grammarAccess.getLibClassCSAccess().getGroup_5());
             }
 
             }
@@ -19881,7 +19881,7 @@
     public final void rule__LibClassCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6088:1: ( rule__LibClassCS__Group__6__Impl rule__LibClassCS__Group__7 )
             // InternalOCLstdlib.g:6089:2: rule__LibClassCS__Group__6__Impl rule__LibClassCS__Group__7
@@ -19919,7 +19919,7 @@
     public final void rule__LibClassCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6100:1: ( ( '{' ) )
             // InternalOCLstdlib.g:6101:1: ( '{' )
@@ -19928,11 +19928,11 @@
             // InternalOCLstdlib.g:6102:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getLeftCurlyBracketKeyword_6()); 
+               before(grammarAccess.getLibClassCSAccess().getLeftCurlyBracketKeyword_6());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getLeftCurlyBracketKeyword_6()); 
+               after(grammarAccess.getLibClassCSAccess().getLeftCurlyBracketKeyword_6());
             }
 
             }
@@ -19960,7 +19960,7 @@
     public final void rule__LibClassCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6119:1: ( rule__LibClassCS__Group__7__Impl rule__LibClassCS__Group__8 )
             // InternalOCLstdlib.g:6120:2: rule__LibClassCS__Group__7__Impl rule__LibClassCS__Group__8
@@ -19998,7 +19998,7 @@
     public final void rule__LibClassCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6131:1: ( ( ( rule__LibClassCS__Alternatives_7 )* ) )
             // InternalOCLstdlib.g:6132:1: ( ( rule__LibClassCS__Alternatives_7 )* )
@@ -20007,7 +20007,7 @@
             // InternalOCLstdlib.g:6133:1: ( rule__LibClassCS__Alternatives_7 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getAlternatives_7()); 
+               before(grammarAccess.getLibClassCSAccess().getAlternatives_7());
             }
             // InternalOCLstdlib.g:6134:1: ( rule__LibClassCS__Alternatives_7 )*
             loop66:
@@ -20039,7 +20039,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getAlternatives_7()); 
+               after(grammarAccess.getLibClassCSAccess().getAlternatives_7());
             }
 
             }
@@ -20067,7 +20067,7 @@
     public final void rule__LibClassCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6148:1: ( rule__LibClassCS__Group__8__Impl )
             // InternalOCLstdlib.g:6149:2: rule__LibClassCS__Group__8__Impl
@@ -20100,7 +20100,7 @@
     public final void rule__LibClassCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6159:1: ( ( '}' ) )
             // InternalOCLstdlib.g:6160:1: ( '}' )
@@ -20109,11 +20109,11 @@
             // InternalOCLstdlib.g:6161:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getRightCurlyBracketKeyword_8()); 
+               before(grammarAccess.getLibClassCSAccess().getRightCurlyBracketKeyword_8());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getRightCurlyBracketKeyword_8()); 
+               after(grammarAccess.getLibClassCSAccess().getRightCurlyBracketKeyword_8());
             }
 
             }
@@ -20141,7 +20141,7 @@
     public final void rule__LibClassCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6196:1: ( rule__LibClassCS__Group_4__0__Impl rule__LibClassCS__Group_4__1 )
             // InternalOCLstdlib.g:6197:2: rule__LibClassCS__Group_4__0__Impl rule__LibClassCS__Group_4__1
@@ -20179,7 +20179,7 @@
     public final void rule__LibClassCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6208:1: ( ( ':' ) )
             // InternalOCLstdlib.g:6209:1: ( ':' )
@@ -20188,11 +20188,11 @@
             // InternalOCLstdlib.g:6210:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getColonKeyword_4_0()); 
+               before(grammarAccess.getLibClassCSAccess().getColonKeyword_4_0());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getColonKeyword_4_0()); 
+               after(grammarAccess.getLibClassCSAccess().getColonKeyword_4_0());
             }
 
             }
@@ -20220,7 +20220,7 @@
     public final void rule__LibClassCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6227:1: ( rule__LibClassCS__Group_4__1__Impl )
             // InternalOCLstdlib.g:6228:2: rule__LibClassCS__Group_4__1__Impl
@@ -20253,7 +20253,7 @@
     public final void rule__LibClassCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6238:1: ( ( ( rule__LibClassCS__MetaclassNameAssignment_4_1 ) ) )
             // InternalOCLstdlib.g:6239:1: ( ( rule__LibClassCS__MetaclassNameAssignment_4_1 ) )
@@ -20262,7 +20262,7 @@
             // InternalOCLstdlib.g:6240:1: ( rule__LibClassCS__MetaclassNameAssignment_4_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getMetaclassNameAssignment_4_1()); 
+               before(grammarAccess.getLibClassCSAccess().getMetaclassNameAssignment_4_1());
             }
             // InternalOCLstdlib.g:6241:1: ( rule__LibClassCS__MetaclassNameAssignment_4_1 )
             // InternalOCLstdlib.g:6241:2: rule__LibClassCS__MetaclassNameAssignment_4_1
@@ -20276,7 +20276,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getMetaclassNameAssignment_4_1()); 
+               after(grammarAccess.getLibClassCSAccess().getMetaclassNameAssignment_4_1());
             }
 
             }
@@ -20304,7 +20304,7 @@
     public final void rule__LibClassCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6259:1: ( rule__LibClassCS__Group_5__0__Impl rule__LibClassCS__Group_5__1 )
             // InternalOCLstdlib.g:6260:2: rule__LibClassCS__Group_5__0__Impl rule__LibClassCS__Group_5__1
@@ -20342,7 +20342,7 @@
     public final void rule__LibClassCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6271:1: ( ( 'conformsTo' ) )
             // InternalOCLstdlib.g:6272:1: ( 'conformsTo' )
@@ -20351,11 +20351,11 @@
             // InternalOCLstdlib.g:6273:1: 'conformsTo'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getConformsToKeyword_5_0()); 
+               before(grammarAccess.getLibClassCSAccess().getConformsToKeyword_5_0());
             }
             match(input,18,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getConformsToKeyword_5_0()); 
+               after(grammarAccess.getLibClassCSAccess().getConformsToKeyword_5_0());
             }
 
             }
@@ -20383,7 +20383,7 @@
     public final void rule__LibClassCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6290:1: ( rule__LibClassCS__Group_5__1__Impl rule__LibClassCS__Group_5__2 )
             // InternalOCLstdlib.g:6291:2: rule__LibClassCS__Group_5__1__Impl rule__LibClassCS__Group_5__2
@@ -20421,7 +20421,7 @@
     public final void rule__LibClassCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6302:1: ( ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 ) ) )
             // InternalOCLstdlib.g:6303:1: ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 ) )
@@ -20430,7 +20430,7 @@
             // InternalOCLstdlib.g:6304:1: ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesAssignment_5_1()); 
+               before(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesAssignment_5_1());
             }
             // InternalOCLstdlib.g:6305:1: ( rule__LibClassCS__OwnedSuperTypesAssignment_5_1 )
             // InternalOCLstdlib.g:6305:2: rule__LibClassCS__OwnedSuperTypesAssignment_5_1
@@ -20444,7 +20444,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesAssignment_5_1()); 
+               after(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesAssignment_5_1());
             }
 
             }
@@ -20472,7 +20472,7 @@
     public final void rule__LibClassCS__Group_5__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6319:1: ( rule__LibClassCS__Group_5__2__Impl )
             // InternalOCLstdlib.g:6320:2: rule__LibClassCS__Group_5__2__Impl
@@ -20505,7 +20505,7 @@
     public final void rule__LibClassCS__Group_5__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6330:1: ( ( ( rule__LibClassCS__Group_5_2__0 )* ) )
             // InternalOCLstdlib.g:6331:1: ( ( rule__LibClassCS__Group_5_2__0 )* )
@@ -20514,7 +20514,7 @@
             // InternalOCLstdlib.g:6332:1: ( rule__LibClassCS__Group_5_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getGroup_5_2()); 
+               before(grammarAccess.getLibClassCSAccess().getGroup_5_2());
             }
             // InternalOCLstdlib.g:6333:1: ( rule__LibClassCS__Group_5_2__0 )*
             loop67:
@@ -20546,7 +20546,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getGroup_5_2()); 
+               after(grammarAccess.getLibClassCSAccess().getGroup_5_2());
             }
 
             }
@@ -20574,7 +20574,7 @@
     public final void rule__LibClassCS__Group_5_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6353:1: ( rule__LibClassCS__Group_5_2__0__Impl rule__LibClassCS__Group_5_2__1 )
             // InternalOCLstdlib.g:6354:2: rule__LibClassCS__Group_5_2__0__Impl rule__LibClassCS__Group_5_2__1
@@ -20612,7 +20612,7 @@
     public final void rule__LibClassCS__Group_5_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6365:1: ( ( ',' ) )
             // InternalOCLstdlib.g:6366:1: ( ',' )
@@ -20621,11 +20621,11 @@
             // InternalOCLstdlib.g:6367:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getCommaKeyword_5_2_0()); 
+               before(grammarAccess.getLibClassCSAccess().getCommaKeyword_5_2_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getCommaKeyword_5_2_0()); 
+               after(grammarAccess.getLibClassCSAccess().getCommaKeyword_5_2_0());
             }
 
             }
@@ -20653,7 +20653,7 @@
     public final void rule__LibClassCS__Group_5_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6384:1: ( rule__LibClassCS__Group_5_2__1__Impl )
             // InternalOCLstdlib.g:6385:2: rule__LibClassCS__Group_5_2__1__Impl
@@ -20686,7 +20686,7 @@
     public final void rule__LibClassCS__Group_5_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6395:1: ( ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 ) ) )
             // InternalOCLstdlib.g:6396:1: ( ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 ) )
@@ -20695,7 +20695,7 @@
             // InternalOCLstdlib.g:6397:1: ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesAssignment_5_2_1()); 
+               before(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesAssignment_5_2_1());
             }
             // InternalOCLstdlib.g:6398:1: ( rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1 )
             // InternalOCLstdlib.g:6398:2: rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1
@@ -20709,7 +20709,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesAssignment_5_2_1()); 
+               after(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesAssignment_5_2_1());
             }
 
             }
@@ -20737,7 +20737,7 @@
     public final void rule__DetailCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6416:1: ( rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1 )
             // InternalOCLstdlib.g:6417:2: rule__DetailCS__Group__0__Impl rule__DetailCS__Group__1
@@ -20775,7 +20775,7 @@
     public final void rule__DetailCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6428:1: ( ( ( rule__DetailCS__NameAssignment_0 ) ) )
             // InternalOCLstdlib.g:6429:1: ( ( rule__DetailCS__NameAssignment_0 ) )
@@ -20784,7 +20784,7 @@
             // InternalOCLstdlib.g:6430:1: ( rule__DetailCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getDetailCSAccess().getNameAssignment_0());
             }
             // InternalOCLstdlib.g:6431:1: ( rule__DetailCS__NameAssignment_0 )
             // InternalOCLstdlib.g:6431:2: rule__DetailCS__NameAssignment_0
@@ -20798,7 +20798,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getDetailCSAccess().getNameAssignment_0());
             }
 
             }
@@ -20826,7 +20826,7 @@
     public final void rule__DetailCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6445:1: ( rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2 )
             // InternalOCLstdlib.g:6446:2: rule__DetailCS__Group__1__Impl rule__DetailCS__Group__2
@@ -20864,7 +20864,7 @@
     public final void rule__DetailCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6457:1: ( ( '=' ) )
             // InternalOCLstdlib.g:6458:1: ( '=' )
@@ -20873,11 +20873,11 @@
             // InternalOCLstdlib.g:6459:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1()); 
+               before(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1()); 
+               after(grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1());
             }
 
             }
@@ -20905,7 +20905,7 @@
     public final void rule__DetailCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6476:1: ( rule__DetailCS__Group__2__Impl )
             // InternalOCLstdlib.g:6477:2: rule__DetailCS__Group__2__Impl
@@ -20938,7 +20938,7 @@
     public final void rule__DetailCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6487:1: ( ( ( rule__DetailCS__ValuesAssignment_2 )* ) )
             // InternalOCLstdlib.g:6488:1: ( ( rule__DetailCS__ValuesAssignment_2 )* )
@@ -20947,7 +20947,7 @@
             // InternalOCLstdlib.g:6489:1: ( rule__DetailCS__ValuesAssignment_2 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSAccess().getValuesAssignment_2()); 
+               before(grammarAccess.getDetailCSAccess().getValuesAssignment_2());
             }
             // InternalOCLstdlib.g:6490:1: ( rule__DetailCS__ValuesAssignment_2 )*
             loop68:
@@ -20979,7 +20979,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSAccess().getValuesAssignment_2()); 
+               after(grammarAccess.getDetailCSAccess().getValuesAssignment_2());
             }
 
             }
@@ -21007,7 +21007,7 @@
     public final void rule__DocumentationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6510:1: ( rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1 )
             // InternalOCLstdlib.g:6511:2: rule__DocumentationCS__Group__0__Impl rule__DocumentationCS__Group__1
@@ -21045,7 +21045,7 @@
     public final void rule__DocumentationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6522:1: ( ( () ) )
             // InternalOCLstdlib.g:6523:1: ( () )
@@ -21054,15 +21054,15 @@
             // InternalOCLstdlib.g:6524:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0()); 
+               before(grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0());
             }
             // InternalOCLstdlib.g:6525:1: ()
-            // InternalOCLstdlib.g:6527:1: 
+            // InternalOCLstdlib.g:6527:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0()); 
+               after(grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0());
             }
 
             }
@@ -21086,7 +21086,7 @@
     public final void rule__DocumentationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6541:1: ( rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2 )
             // InternalOCLstdlib.g:6542:2: rule__DocumentationCS__Group__1__Impl rule__DocumentationCS__Group__2
@@ -21124,7 +21124,7 @@
     public final void rule__DocumentationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6553:1: ( ( 'documentation' ) )
             // InternalOCLstdlib.g:6554:1: ( 'documentation' )
@@ -21133,11 +21133,11 @@
             // InternalOCLstdlib.g:6555:1: 'documentation'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1()); 
+               before(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1());
             }
             match(input,19,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1()); 
+               after(grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1());
             }
 
             }
@@ -21165,7 +21165,7 @@
     public final void rule__DocumentationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6572:1: ( rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3 )
             // InternalOCLstdlib.g:6573:2: rule__DocumentationCS__Group__2__Impl rule__DocumentationCS__Group__3
@@ -21203,7 +21203,7 @@
     public final void rule__DocumentationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6584:1: ( ( ( rule__DocumentationCS__ValueAssignment_2 )? ) )
             // InternalOCLstdlib.g:6585:1: ( ( rule__DocumentationCS__ValueAssignment_2 )? )
@@ -21212,7 +21212,7 @@
             // InternalOCLstdlib.g:6586:1: ( rule__DocumentationCS__ValueAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getValueAssignment_2()); 
+               before(grammarAccess.getDocumentationCSAccess().getValueAssignment_2());
             }
             // InternalOCLstdlib.g:6587:1: ( rule__DocumentationCS__ValueAssignment_2 )?
             int alt69=2;
@@ -21237,7 +21237,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getValueAssignment_2()); 
+               after(grammarAccess.getDocumentationCSAccess().getValueAssignment_2());
             }
 
             }
@@ -21265,7 +21265,7 @@
     public final void rule__DocumentationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6601:1: ( rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4 )
             // InternalOCLstdlib.g:6602:2: rule__DocumentationCS__Group__3__Impl rule__DocumentationCS__Group__4
@@ -21303,7 +21303,7 @@
     public final void rule__DocumentationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6613:1: ( ( ( rule__DocumentationCS__Group_3__0 )? ) )
             // InternalOCLstdlib.g:6614:1: ( ( rule__DocumentationCS__Group_3__0 )? )
@@ -21312,7 +21312,7 @@
             // InternalOCLstdlib.g:6615:1: ( rule__DocumentationCS__Group_3__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getGroup_3()); 
+               before(grammarAccess.getDocumentationCSAccess().getGroup_3());
             }
             // InternalOCLstdlib.g:6616:1: ( rule__DocumentationCS__Group_3__0 )?
             int alt70=2;
@@ -21337,7 +21337,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getGroup_3()); 
+               after(grammarAccess.getDocumentationCSAccess().getGroup_3());
             }
 
             }
@@ -21365,7 +21365,7 @@
     public final void rule__DocumentationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6630:1: ( rule__DocumentationCS__Group__4__Impl )
             // InternalOCLstdlib.g:6631:2: rule__DocumentationCS__Group__4__Impl
@@ -21398,7 +21398,7 @@
     public final void rule__DocumentationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6641:1: ( ( ';' ) )
             // InternalOCLstdlib.g:6642:1: ( ';' )
@@ -21407,11 +21407,11 @@
             // InternalOCLstdlib.g:6643:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4()); 
+               before(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4());
             }
             match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4()); 
+               after(grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4());
             }
 
             }
@@ -21439,7 +21439,7 @@
     public final void rule__DocumentationCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6670:1: ( rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1 )
             // InternalOCLstdlib.g:6671:2: rule__DocumentationCS__Group_3__0__Impl rule__DocumentationCS__Group_3__1
@@ -21477,7 +21477,7 @@
     public final void rule__DocumentationCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6682:1: ( ( '(' ) )
             // InternalOCLstdlib.g:6683:1: ( '(' )
@@ -21486,11 +21486,11 @@
             // InternalOCLstdlib.g:6684:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0()); 
+               before(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0()); 
+               after(grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0());
             }
 
             }
@@ -21518,7 +21518,7 @@
     public final void rule__DocumentationCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6701:1: ( rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2 )
             // InternalOCLstdlib.g:6702:2: rule__DocumentationCS__Group_3__1__Impl rule__DocumentationCS__Group_3__2
@@ -21556,7 +21556,7 @@
     public final void rule__DocumentationCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6713:1: ( ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) ) )
             // InternalOCLstdlib.g:6714:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 ) )
@@ -21565,7 +21565,7 @@
             // InternalOCLstdlib.g:6715:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_1()); 
+               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_1());
             }
             // InternalOCLstdlib.g:6716:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_1 )
             // InternalOCLstdlib.g:6716:2: rule__DocumentationCS__OwnedDetailsAssignment_3_1
@@ -21579,7 +21579,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_1()); 
+               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_1());
             }
 
             }
@@ -21607,7 +21607,7 @@
     public final void rule__DocumentationCS__Group_3__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6730:1: ( rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3 )
             // InternalOCLstdlib.g:6731:2: rule__DocumentationCS__Group_3__2__Impl rule__DocumentationCS__Group_3__3
@@ -21645,7 +21645,7 @@
     public final void rule__DocumentationCS__Group_3__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6742:1: ( ( ( rule__DocumentationCS__Group_3_2__0 )* ) )
             // InternalOCLstdlib.g:6743:1: ( ( rule__DocumentationCS__Group_3_2__0 )* )
@@ -21654,7 +21654,7 @@
             // InternalOCLstdlib.g:6744:1: ( rule__DocumentationCS__Group_3_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getGroup_3_2()); 
+               before(grammarAccess.getDocumentationCSAccess().getGroup_3_2());
             }
             // InternalOCLstdlib.g:6745:1: ( rule__DocumentationCS__Group_3_2__0 )*
             loop71:
@@ -21686,7 +21686,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getGroup_3_2()); 
+               after(grammarAccess.getDocumentationCSAccess().getGroup_3_2());
             }
 
             }
@@ -21714,7 +21714,7 @@
     public final void rule__DocumentationCS__Group_3__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6759:1: ( rule__DocumentationCS__Group_3__3__Impl )
             // InternalOCLstdlib.g:6760:2: rule__DocumentationCS__Group_3__3__Impl
@@ -21747,7 +21747,7 @@
     public final void rule__DocumentationCS__Group_3__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6770:1: ( ( ')' ) )
             // InternalOCLstdlib.g:6771:1: ( ')' )
@@ -21756,11 +21756,11 @@
             // InternalOCLstdlib.g:6772:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3()); 
+               before(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3()); 
+               after(grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3());
             }
 
             }
@@ -21788,7 +21788,7 @@
     public final void rule__DocumentationCS__Group_3_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6797:1: ( rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1 )
             // InternalOCLstdlib.g:6798:2: rule__DocumentationCS__Group_3_2__0__Impl rule__DocumentationCS__Group_3_2__1
@@ -21826,7 +21826,7 @@
     public final void rule__DocumentationCS__Group_3_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6809:1: ( ( ',' ) )
             // InternalOCLstdlib.g:6810:1: ( ',' )
@@ -21835,11 +21835,11 @@
             // InternalOCLstdlib.g:6811:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0()); 
+               before(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0()); 
+               after(grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0());
             }
 
             }
@@ -21867,7 +21867,7 @@
     public final void rule__DocumentationCS__Group_3_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6828:1: ( rule__DocumentationCS__Group_3_2__1__Impl )
             // InternalOCLstdlib.g:6829:2: rule__DocumentationCS__Group_3_2__1__Impl
@@ -21900,7 +21900,7 @@
     public final void rule__DocumentationCS__Group_3_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6839:1: ( ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) ) )
             // InternalOCLstdlib.g:6840:1: ( ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 ) )
@@ -21909,7 +21909,7 @@
             // InternalOCLstdlib.g:6841:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_2_1()); 
+               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_2_1());
             }
             // InternalOCLstdlib.g:6842:1: ( rule__DocumentationCS__OwnedDetailsAssignment_3_2_1 )
             // InternalOCLstdlib.g:6842:2: rule__DocumentationCS__OwnedDetailsAssignment_3_2_1
@@ -21923,7 +21923,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_2_1()); 
+               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsAssignment_3_2_1());
             }
 
             }
@@ -21951,7 +21951,7 @@
     public final void rule__ImportCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6860:1: ( rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1 )
             // InternalOCLstdlib.g:6861:2: rule__ImportCS__Group__0__Impl rule__ImportCS__Group__1
@@ -21989,7 +21989,7 @@
     public final void rule__ImportCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6872:1: ( ( 'import' ) )
             // InternalOCLstdlib.g:6873:1: ( 'import' )
@@ -21998,11 +21998,11 @@
             // InternalOCLstdlib.g:6874:1: 'import'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getImportKeyword_0()); 
+               before(grammarAccess.getImportCSAccess().getImportKeyword_0());
             }
             match(input,21,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getImportKeyword_0()); 
+               after(grammarAccess.getImportCSAccess().getImportKeyword_0());
             }
 
             }
@@ -22030,7 +22030,7 @@
     public final void rule__ImportCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6891:1: ( rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2 )
             // InternalOCLstdlib.g:6892:2: rule__ImportCS__Group__1__Impl rule__ImportCS__Group__2
@@ -22068,7 +22068,7 @@
     public final void rule__ImportCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6903:1: ( ( ( rule__ImportCS__Group_1__0 )? ) )
             // InternalOCLstdlib.g:6904:1: ( ( rule__ImportCS__Group_1__0 )? )
@@ -22077,7 +22077,7 @@
             // InternalOCLstdlib.g:6905:1: ( rule__ImportCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getGroup_1()); 
+               before(grammarAccess.getImportCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:6906:1: ( rule__ImportCS__Group_1__0 )?
             int alt72=2;
@@ -22098,7 +22098,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getGroup_1()); 
+               after(grammarAccess.getImportCSAccess().getGroup_1());
             }
 
             }
@@ -22126,7 +22126,7 @@
     public final void rule__ImportCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6920:1: ( rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3 )
             // InternalOCLstdlib.g:6921:2: rule__ImportCS__Group__2__Impl rule__ImportCS__Group__3
@@ -22164,7 +22164,7 @@
     public final void rule__ImportCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6932:1: ( ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) ) )
             // InternalOCLstdlib.g:6933:1: ( ( rule__ImportCS__OwnedPathNameAssignment_2 ) )
@@ -22173,7 +22173,7 @@
             // InternalOCLstdlib.g:6934:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2()); 
+               before(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2());
             }
             // InternalOCLstdlib.g:6935:1: ( rule__ImportCS__OwnedPathNameAssignment_2 )
             // InternalOCLstdlib.g:6935:2: rule__ImportCS__OwnedPathNameAssignment_2
@@ -22187,7 +22187,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2()); 
+               after(grammarAccess.getImportCSAccess().getOwnedPathNameAssignment_2());
             }
 
             }
@@ -22215,7 +22215,7 @@
     public final void rule__ImportCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6949:1: ( rule__ImportCS__Group__3__Impl )
             // InternalOCLstdlib.g:6950:2: rule__ImportCS__Group__3__Impl
@@ -22248,7 +22248,7 @@
     public final void rule__ImportCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6960:1: ( ( ( rule__ImportCS__IsAllAssignment_3 )? ) )
             // InternalOCLstdlib.g:6961:1: ( ( rule__ImportCS__IsAllAssignment_3 )? )
@@ -22257,7 +22257,7 @@
             // InternalOCLstdlib.g:6962:1: ( rule__ImportCS__IsAllAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getIsAllAssignment_3()); 
+               before(grammarAccess.getImportCSAccess().getIsAllAssignment_3());
             }
             // InternalOCLstdlib.g:6963:1: ( rule__ImportCS__IsAllAssignment_3 )?
             int alt73=2;
@@ -22282,7 +22282,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getIsAllAssignment_3()); 
+               after(grammarAccess.getImportCSAccess().getIsAllAssignment_3());
             }
 
             }
@@ -22310,7 +22310,7 @@
     public final void rule__ImportCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6985:1: ( rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1 )
             // InternalOCLstdlib.g:6986:2: rule__ImportCS__Group_1__0__Impl rule__ImportCS__Group_1__1
@@ -22348,7 +22348,7 @@
     public final void rule__ImportCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:6997:1: ( ( ( rule__ImportCS__NameAssignment_1_0 ) ) )
             // InternalOCLstdlib.g:6998:1: ( ( rule__ImportCS__NameAssignment_1_0 ) )
@@ -22357,7 +22357,7 @@
             // InternalOCLstdlib.g:6999:1: ( rule__ImportCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getNameAssignment_1_0()); 
+               before(grammarAccess.getImportCSAccess().getNameAssignment_1_0());
             }
             // InternalOCLstdlib.g:7000:1: ( rule__ImportCS__NameAssignment_1_0 )
             // InternalOCLstdlib.g:7000:2: rule__ImportCS__NameAssignment_1_0
@@ -22371,7 +22371,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getNameAssignment_1_0()); 
+               after(grammarAccess.getImportCSAccess().getNameAssignment_1_0());
             }
 
             }
@@ -22399,7 +22399,7 @@
     public final void rule__ImportCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7014:1: ( rule__ImportCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:7015:2: rule__ImportCS__Group_1__1__Impl
@@ -22432,7 +22432,7 @@
     public final void rule__ImportCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7025:1: ( ( ':' ) )
             // InternalOCLstdlib.g:7026:1: ( ':' )
@@ -22441,11 +22441,11 @@
             // InternalOCLstdlib.g:7027:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getColonKeyword_1_1()); 
+               before(grammarAccess.getImportCSAccess().getColonKeyword_1_1());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getColonKeyword_1_1()); 
+               after(grammarAccess.getImportCSAccess().getColonKeyword_1_1());
             }
 
             }
@@ -22473,7 +22473,7 @@
     public final void rule__InvCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7048:1: ( rule__InvCS__Group__0__Impl rule__InvCS__Group__1 )
             // InternalOCLstdlib.g:7049:2: rule__InvCS__Group__0__Impl rule__InvCS__Group__1
@@ -22511,7 +22511,7 @@
     public final void rule__InvCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7060:1: ( ( ( rule__InvCS__StereotypeAssignment_0 ) ) )
             // InternalOCLstdlib.g:7061:1: ( ( rule__InvCS__StereotypeAssignment_0 ) )
@@ -22520,7 +22520,7 @@
             // InternalOCLstdlib.g:7062:1: ( rule__InvCS__StereotypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getStereotypeAssignment_0()); 
+               before(grammarAccess.getInvCSAccess().getStereotypeAssignment_0());
             }
             // InternalOCLstdlib.g:7063:1: ( rule__InvCS__StereotypeAssignment_0 )
             // InternalOCLstdlib.g:7063:2: rule__InvCS__StereotypeAssignment_0
@@ -22534,7 +22534,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getStereotypeAssignment_0()); 
+               after(grammarAccess.getInvCSAccess().getStereotypeAssignment_0());
             }
 
             }
@@ -22562,7 +22562,7 @@
     public final void rule__InvCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7077:1: ( rule__InvCS__Group__1__Impl rule__InvCS__Group__2 )
             // InternalOCLstdlib.g:7078:2: rule__InvCS__Group__1__Impl rule__InvCS__Group__2
@@ -22600,7 +22600,7 @@
     public final void rule__InvCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7089:1: ( ( ( rule__InvCS__Group_1__0 )? ) )
             // InternalOCLstdlib.g:7090:1: ( ( rule__InvCS__Group_1__0 )? )
@@ -22609,7 +22609,7 @@
             // InternalOCLstdlib.g:7091:1: ( rule__InvCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getGroup_1()); 
+               before(grammarAccess.getInvCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:7092:1: ( rule__InvCS__Group_1__0 )?
             int alt74=2;
@@ -22634,7 +22634,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getGroup_1()); 
+               after(grammarAccess.getInvCSAccess().getGroup_1());
             }
 
             }
@@ -22662,7 +22662,7 @@
     public final void rule__InvCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7106:1: ( rule__InvCS__Group__2__Impl rule__InvCS__Group__3 )
             // InternalOCLstdlib.g:7107:2: rule__InvCS__Group__2__Impl rule__InvCS__Group__3
@@ -22700,7 +22700,7 @@
     public final void rule__InvCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7118:1: ( ( ':' ) )
             // InternalOCLstdlib.g:7119:1: ( ':' )
@@ -22709,11 +22709,11 @@
             // InternalOCLstdlib.g:7120:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getColonKeyword_2()); 
+               before(grammarAccess.getInvCSAccess().getColonKeyword_2());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getColonKeyword_2()); 
+               after(grammarAccess.getInvCSAccess().getColonKeyword_2());
             }
 
             }
@@ -22741,7 +22741,7 @@
     public final void rule__InvCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7137:1: ( rule__InvCS__Group__3__Impl rule__InvCS__Group__4 )
             // InternalOCLstdlib.g:7138:2: rule__InvCS__Group__3__Impl rule__InvCS__Group__4
@@ -22779,7 +22779,7 @@
     public final void rule__InvCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7149:1: ( ( ( rule__InvCS__OwnedSpecificationAssignment_3 ) ) )
             // InternalOCLstdlib.g:7150:1: ( ( rule__InvCS__OwnedSpecificationAssignment_3 ) )
@@ -22788,7 +22788,7 @@
             // InternalOCLstdlib.g:7151:1: ( rule__InvCS__OwnedSpecificationAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getOwnedSpecificationAssignment_3()); 
+               before(grammarAccess.getInvCSAccess().getOwnedSpecificationAssignment_3());
             }
             // InternalOCLstdlib.g:7152:1: ( rule__InvCS__OwnedSpecificationAssignment_3 )
             // InternalOCLstdlib.g:7152:2: rule__InvCS__OwnedSpecificationAssignment_3
@@ -22802,7 +22802,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getOwnedSpecificationAssignment_3()); 
+               after(grammarAccess.getInvCSAccess().getOwnedSpecificationAssignment_3());
             }
 
             }
@@ -22830,7 +22830,7 @@
     public final void rule__InvCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7166:1: ( rule__InvCS__Group__4__Impl )
             // InternalOCLstdlib.g:7167:2: rule__InvCS__Group__4__Impl
@@ -22863,7 +22863,7 @@
     public final void rule__InvCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7177:1: ( ( ';' ) )
             // InternalOCLstdlib.g:7178:1: ( ';' )
@@ -22872,11 +22872,11 @@
             // InternalOCLstdlib.g:7179:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getSemicolonKeyword_4()); 
+               before(grammarAccess.getInvCSAccess().getSemicolonKeyword_4());
             }
             match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getSemicolonKeyword_4()); 
+               after(grammarAccess.getInvCSAccess().getSemicolonKeyword_4());
             }
 
             }
@@ -22904,7 +22904,7 @@
     public final void rule__InvCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7206:1: ( rule__InvCS__Group_1__0__Impl rule__InvCS__Group_1__1 )
             // InternalOCLstdlib.g:7207:2: rule__InvCS__Group_1__0__Impl rule__InvCS__Group_1__1
@@ -22942,7 +22942,7 @@
     public final void rule__InvCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7218:1: ( ( ( rule__InvCS__NameAssignment_1_0 ) ) )
             // InternalOCLstdlib.g:7219:1: ( ( rule__InvCS__NameAssignment_1_0 ) )
@@ -22951,7 +22951,7 @@
             // InternalOCLstdlib.g:7220:1: ( rule__InvCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getNameAssignment_1_0()); 
+               before(grammarAccess.getInvCSAccess().getNameAssignment_1_0());
             }
             // InternalOCLstdlib.g:7221:1: ( rule__InvCS__NameAssignment_1_0 )
             // InternalOCLstdlib.g:7221:2: rule__InvCS__NameAssignment_1_0
@@ -22965,7 +22965,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getNameAssignment_1_0()); 
+               after(grammarAccess.getInvCSAccess().getNameAssignment_1_0());
             }
 
             }
@@ -22993,7 +22993,7 @@
     public final void rule__InvCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7235:1: ( rule__InvCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:7236:2: rule__InvCS__Group_1__1__Impl
@@ -23026,7 +23026,7 @@
     public final void rule__InvCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7246:1: ( ( ( rule__InvCS__Group_1_1__0 )? ) )
             // InternalOCLstdlib.g:7247:1: ( ( rule__InvCS__Group_1_1__0 )? )
@@ -23035,7 +23035,7 @@
             // InternalOCLstdlib.g:7248:1: ( rule__InvCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getInvCSAccess().getGroup_1_1());
             }
             // InternalOCLstdlib.g:7249:1: ( rule__InvCS__Group_1_1__0 )?
             int alt75=2;
@@ -23060,7 +23060,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getInvCSAccess().getGroup_1_1());
             }
 
             }
@@ -23088,7 +23088,7 @@
     public final void rule__InvCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7267:1: ( rule__InvCS__Group_1_1__0__Impl rule__InvCS__Group_1_1__1 )
             // InternalOCLstdlib.g:7268:2: rule__InvCS__Group_1_1__0__Impl rule__InvCS__Group_1_1__1
@@ -23126,7 +23126,7 @@
     public final void rule__InvCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7279:1: ( ( '(' ) )
             // InternalOCLstdlib.g:7280:1: ( '(' )
@@ -23135,11 +23135,11 @@
             // InternalOCLstdlib.g:7281:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getLeftParenthesisKeyword_1_1_0()); 
+               before(grammarAccess.getInvCSAccess().getLeftParenthesisKeyword_1_1_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getLeftParenthesisKeyword_1_1_0()); 
+               after(grammarAccess.getInvCSAccess().getLeftParenthesisKeyword_1_1_0());
             }
 
             }
@@ -23167,7 +23167,7 @@
     public final void rule__InvCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7298:1: ( rule__InvCS__Group_1_1__1__Impl rule__InvCS__Group_1_1__2 )
             // InternalOCLstdlib.g:7299:2: rule__InvCS__Group_1_1__1__Impl rule__InvCS__Group_1_1__2
@@ -23205,7 +23205,7 @@
     public final void rule__InvCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7310:1: ( ( ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
             // InternalOCLstdlib.g:7311:1: ( ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
@@ -23214,7 +23214,7 @@
             // InternalOCLstdlib.g:7312:1: ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationAssignment_1_1_1()); 
+               before(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
             // InternalOCLstdlib.g:7313:1: ( rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1 )
             // InternalOCLstdlib.g:7313:2: rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1
@@ -23228,7 +23228,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationAssignment_1_1_1()); 
+               after(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
 
             }
@@ -23256,7 +23256,7 @@
     public final void rule__InvCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7327:1: ( rule__InvCS__Group_1_1__2__Impl )
             // InternalOCLstdlib.g:7328:2: rule__InvCS__Group_1_1__2__Impl
@@ -23289,7 +23289,7 @@
     public final void rule__InvCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7338:1: ( ( ')' ) )
             // InternalOCLstdlib.g:7339:1: ( ')' )
@@ -23298,11 +23298,11 @@
             // InternalOCLstdlib.g:7340:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getRightParenthesisKeyword_1_1_2()); 
+               before(grammarAccess.getInvCSAccess().getRightParenthesisKeyword_1_1_2());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getRightParenthesisKeyword_1_1_2()); 
+               after(grammarAccess.getInvCSAccess().getRightParenthesisKeyword_1_1_2());
             }
 
             }
@@ -23330,7 +23330,7 @@
     public final void rule__LibCoercionCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7363:1: ( rule__LibCoercionCS__Group__0__Impl rule__LibCoercionCS__Group__1 )
             // InternalOCLstdlib.g:7364:2: rule__LibCoercionCS__Group__0__Impl rule__LibCoercionCS__Group__1
@@ -23368,7 +23368,7 @@
     public final void rule__LibCoercionCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7375:1: ( ( 'coercion' ) )
             // InternalOCLstdlib.g:7376:1: ( 'coercion' )
@@ -23377,11 +23377,11 @@
             // InternalOCLstdlib.g:7377:1: 'coercion'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getCoercionKeyword_0()); 
+               before(grammarAccess.getLibCoercionCSAccess().getCoercionKeyword_0());
             }
             match(input,88,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getCoercionKeyword_0()); 
+               after(grammarAccess.getLibCoercionCSAccess().getCoercionKeyword_0());
             }
 
             }
@@ -23409,7 +23409,7 @@
     public final void rule__LibCoercionCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7394:1: ( rule__LibCoercionCS__Group__1__Impl rule__LibCoercionCS__Group__2 )
             // InternalOCLstdlib.g:7395:2: rule__LibCoercionCS__Group__1__Impl rule__LibCoercionCS__Group__2
@@ -23447,7 +23447,7 @@
     public final void rule__LibCoercionCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7406:1: ( ( ( rule__LibCoercionCS__NameAssignment_1 ) ) )
             // InternalOCLstdlib.g:7407:1: ( ( rule__LibCoercionCS__NameAssignment_1 ) )
@@ -23456,7 +23456,7 @@
             // InternalOCLstdlib.g:7408:1: ( rule__LibCoercionCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getNameAssignment_1()); 
+               before(grammarAccess.getLibCoercionCSAccess().getNameAssignment_1());
             }
             // InternalOCLstdlib.g:7409:1: ( rule__LibCoercionCS__NameAssignment_1 )
             // InternalOCLstdlib.g:7409:2: rule__LibCoercionCS__NameAssignment_1
@@ -23470,7 +23470,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getNameAssignment_1()); 
+               after(grammarAccess.getLibCoercionCSAccess().getNameAssignment_1());
             }
 
             }
@@ -23498,7 +23498,7 @@
     public final void rule__LibCoercionCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7423:1: ( rule__LibCoercionCS__Group__2__Impl rule__LibCoercionCS__Group__3 )
             // InternalOCLstdlib.g:7424:2: rule__LibCoercionCS__Group__2__Impl rule__LibCoercionCS__Group__3
@@ -23536,7 +23536,7 @@
     public final void rule__LibCoercionCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7435:1: ( ( '(' ) )
             // InternalOCLstdlib.g:7436:1: ( '(' )
@@ -23545,11 +23545,11 @@
             // InternalOCLstdlib.g:7437:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getLeftParenthesisKeyword_2()); 
+               before(grammarAccess.getLibCoercionCSAccess().getLeftParenthesisKeyword_2());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getLeftParenthesisKeyword_2()); 
+               after(grammarAccess.getLibCoercionCSAccess().getLeftParenthesisKeyword_2());
             }
 
             }
@@ -23577,7 +23577,7 @@
     public final void rule__LibCoercionCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7454:1: ( rule__LibCoercionCS__Group__3__Impl rule__LibCoercionCS__Group__4 )
             // InternalOCLstdlib.g:7455:2: rule__LibCoercionCS__Group__3__Impl rule__LibCoercionCS__Group__4
@@ -23615,7 +23615,7 @@
     public final void rule__LibCoercionCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7466:1: ( ( ')' ) )
             // InternalOCLstdlib.g:7467:1: ( ')' )
@@ -23624,11 +23624,11 @@
             // InternalOCLstdlib.g:7468:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getRightParenthesisKeyword_3()); 
+               before(grammarAccess.getLibCoercionCSAccess().getRightParenthesisKeyword_3());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getRightParenthesisKeyword_3()); 
+               after(grammarAccess.getLibCoercionCSAccess().getRightParenthesisKeyword_3());
             }
 
             }
@@ -23656,7 +23656,7 @@
     public final void rule__LibCoercionCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7485:1: ( rule__LibCoercionCS__Group__4__Impl rule__LibCoercionCS__Group__5 )
             // InternalOCLstdlib.g:7486:2: rule__LibCoercionCS__Group__4__Impl rule__LibCoercionCS__Group__5
@@ -23694,7 +23694,7 @@
     public final void rule__LibCoercionCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7497:1: ( ( ':' ) )
             // InternalOCLstdlib.g:7498:1: ( ':' )
@@ -23703,11 +23703,11 @@
             // InternalOCLstdlib.g:7499:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getColonKeyword_4()); 
+               before(grammarAccess.getLibCoercionCSAccess().getColonKeyword_4());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getColonKeyword_4()); 
+               after(grammarAccess.getLibCoercionCSAccess().getColonKeyword_4());
             }
 
             }
@@ -23735,7 +23735,7 @@
     public final void rule__LibCoercionCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7516:1: ( rule__LibCoercionCS__Group__5__Impl rule__LibCoercionCS__Group__6 )
             // InternalOCLstdlib.g:7517:2: rule__LibCoercionCS__Group__5__Impl rule__LibCoercionCS__Group__6
@@ -23773,7 +23773,7 @@
     public final void rule__LibCoercionCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7528:1: ( ( ( rule__LibCoercionCS__OwnedTypeAssignment_5 ) ) )
             // InternalOCLstdlib.g:7529:1: ( ( rule__LibCoercionCS__OwnedTypeAssignment_5 ) )
@@ -23782,7 +23782,7 @@
             // InternalOCLstdlib.g:7530:1: ( rule__LibCoercionCS__OwnedTypeAssignment_5 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getOwnedTypeAssignment_5()); 
+               before(grammarAccess.getLibCoercionCSAccess().getOwnedTypeAssignment_5());
             }
             // InternalOCLstdlib.g:7531:1: ( rule__LibCoercionCS__OwnedTypeAssignment_5 )
             // InternalOCLstdlib.g:7531:2: rule__LibCoercionCS__OwnedTypeAssignment_5
@@ -23796,7 +23796,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getOwnedTypeAssignment_5()); 
+               after(grammarAccess.getLibCoercionCSAccess().getOwnedTypeAssignment_5());
             }
 
             }
@@ -23824,7 +23824,7 @@
     public final void rule__LibCoercionCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7545:1: ( rule__LibCoercionCS__Group__6__Impl rule__LibCoercionCS__Group__7 )
             // InternalOCLstdlib.g:7546:2: rule__LibCoercionCS__Group__6__Impl rule__LibCoercionCS__Group__7
@@ -23862,7 +23862,7 @@
     public final void rule__LibCoercionCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7557:1: ( ( ( rule__LibCoercionCS__Group_6__0 )? ) )
             // InternalOCLstdlib.g:7558:1: ( ( rule__LibCoercionCS__Group_6__0 )? )
@@ -23871,7 +23871,7 @@
             // InternalOCLstdlib.g:7559:1: ( rule__LibCoercionCS__Group_6__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getGroup_6()); 
+               before(grammarAccess.getLibCoercionCSAccess().getGroup_6());
             }
             // InternalOCLstdlib.g:7560:1: ( rule__LibCoercionCS__Group_6__0 )?
             int alt76=2;
@@ -23896,7 +23896,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getGroup_6()); 
+               after(grammarAccess.getLibCoercionCSAccess().getGroup_6());
             }
 
             }
@@ -23924,7 +23924,7 @@
     public final void rule__LibCoercionCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7574:1: ( rule__LibCoercionCS__Group__7__Impl )
             // InternalOCLstdlib.g:7575:2: rule__LibCoercionCS__Group__7__Impl
@@ -23957,7 +23957,7 @@
     public final void rule__LibCoercionCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7585:1: ( ( ( rule__LibCoercionCS__Alternatives_7 ) ) )
             // InternalOCLstdlib.g:7586:1: ( ( rule__LibCoercionCS__Alternatives_7 ) )
@@ -23966,7 +23966,7 @@
             // InternalOCLstdlib.g:7587:1: ( rule__LibCoercionCS__Alternatives_7 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getAlternatives_7()); 
+               before(grammarAccess.getLibCoercionCSAccess().getAlternatives_7());
             }
             // InternalOCLstdlib.g:7588:1: ( rule__LibCoercionCS__Alternatives_7 )
             // InternalOCLstdlib.g:7588:2: rule__LibCoercionCS__Alternatives_7
@@ -23980,7 +23980,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getAlternatives_7()); 
+               after(grammarAccess.getLibCoercionCSAccess().getAlternatives_7());
             }
 
             }
@@ -24008,7 +24008,7 @@
     public final void rule__LibCoercionCS__Group_6__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7618:1: ( rule__LibCoercionCS__Group_6__0__Impl rule__LibCoercionCS__Group_6__1 )
             // InternalOCLstdlib.g:7619:2: rule__LibCoercionCS__Group_6__0__Impl rule__LibCoercionCS__Group_6__1
@@ -24046,7 +24046,7 @@
     public final void rule__LibCoercionCS__Group_6__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7630:1: ( ( '=>' ) )
             // InternalOCLstdlib.g:7631:1: ( '=>' )
@@ -24055,11 +24055,11 @@
             // InternalOCLstdlib.g:7632:1: '=>'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getEqualsSignGreaterThanSignKeyword_6_0()); 
+               before(grammarAccess.getLibCoercionCSAccess().getEqualsSignGreaterThanSignKeyword_6_0());
             }
             match(input,89,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getEqualsSignGreaterThanSignKeyword_6_0()); 
+               after(grammarAccess.getLibCoercionCSAccess().getEqualsSignGreaterThanSignKeyword_6_0());
             }
 
             }
@@ -24087,7 +24087,7 @@
     public final void rule__LibCoercionCS__Group_6__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7649:1: ( rule__LibCoercionCS__Group_6__1__Impl )
             // InternalOCLstdlib.g:7650:2: rule__LibCoercionCS__Group_6__1__Impl
@@ -24120,7 +24120,7 @@
     public final void rule__LibCoercionCS__Group_6__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7660:1: ( ( ( rule__LibCoercionCS__ImplementationAssignment_6_1 ) ) )
             // InternalOCLstdlib.g:7661:1: ( ( rule__LibCoercionCS__ImplementationAssignment_6_1 ) )
@@ -24129,7 +24129,7 @@
             // InternalOCLstdlib.g:7662:1: ( rule__LibCoercionCS__ImplementationAssignment_6_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getImplementationAssignment_6_1()); 
+               before(grammarAccess.getLibCoercionCSAccess().getImplementationAssignment_6_1());
             }
             // InternalOCLstdlib.g:7663:1: ( rule__LibCoercionCS__ImplementationAssignment_6_1 )
             // InternalOCLstdlib.g:7663:2: rule__LibCoercionCS__ImplementationAssignment_6_1
@@ -24143,7 +24143,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getImplementationAssignment_6_1()); 
+               after(grammarAccess.getLibCoercionCSAccess().getImplementationAssignment_6_1());
             }
 
             }
@@ -24171,7 +24171,7 @@
     public final void rule__LibCoercionCS__Group_7_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7681:1: ( rule__LibCoercionCS__Group_7_0__0__Impl rule__LibCoercionCS__Group_7_0__1 )
             // InternalOCLstdlib.g:7682:2: rule__LibCoercionCS__Group_7_0__0__Impl rule__LibCoercionCS__Group_7_0__1
@@ -24209,7 +24209,7 @@
     public final void rule__LibCoercionCS__Group_7_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7693:1: ( ( '{' ) )
             // InternalOCLstdlib.g:7694:1: ( '{' )
@@ -24218,11 +24218,11 @@
             // InternalOCLstdlib.g:7695:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getLeftCurlyBracketKeyword_7_0_0()); 
+               before(grammarAccess.getLibCoercionCSAccess().getLeftCurlyBracketKeyword_7_0_0());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getLeftCurlyBracketKeyword_7_0_0()); 
+               after(grammarAccess.getLibCoercionCSAccess().getLeftCurlyBracketKeyword_7_0_0());
             }
 
             }
@@ -24250,7 +24250,7 @@
     public final void rule__LibCoercionCS__Group_7_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7712:1: ( rule__LibCoercionCS__Group_7_0__1__Impl rule__LibCoercionCS__Group_7_0__2 )
             // InternalOCLstdlib.g:7713:2: rule__LibCoercionCS__Group_7_0__1__Impl rule__LibCoercionCS__Group_7_0__2
@@ -24288,7 +24288,7 @@
     public final void rule__LibCoercionCS__Group_7_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7724:1: ( ( ( rule__LibCoercionCS__Alternatives_7_0_1 )* ) )
             // InternalOCLstdlib.g:7725:1: ( ( rule__LibCoercionCS__Alternatives_7_0_1 )* )
@@ -24297,7 +24297,7 @@
             // InternalOCLstdlib.g:7726:1: ( rule__LibCoercionCS__Alternatives_7_0_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getAlternatives_7_0_1()); 
+               before(grammarAccess.getLibCoercionCSAccess().getAlternatives_7_0_1());
             }
             // InternalOCLstdlib.g:7727:1: ( rule__LibCoercionCS__Alternatives_7_0_1 )*
             loop77:
@@ -24329,7 +24329,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getAlternatives_7_0_1()); 
+               after(grammarAccess.getLibCoercionCSAccess().getAlternatives_7_0_1());
             }
 
             }
@@ -24357,7 +24357,7 @@
     public final void rule__LibCoercionCS__Group_7_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7741:1: ( rule__LibCoercionCS__Group_7_0__2__Impl )
             // InternalOCLstdlib.g:7742:2: rule__LibCoercionCS__Group_7_0__2__Impl
@@ -24390,7 +24390,7 @@
     public final void rule__LibCoercionCS__Group_7_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7752:1: ( ( '}' ) )
             // InternalOCLstdlib.g:7753:1: ( '}' )
@@ -24399,11 +24399,11 @@
             // InternalOCLstdlib.g:7754:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getRightCurlyBracketKeyword_7_0_2()); 
+               before(grammarAccess.getLibCoercionCSAccess().getRightCurlyBracketKeyword_7_0_2());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getRightCurlyBracketKeyword_7_0_2()); 
+               after(grammarAccess.getLibCoercionCSAccess().getRightCurlyBracketKeyword_7_0_2());
             }
 
             }
@@ -24431,7 +24431,7 @@
     public final void rule__LibIterationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7777:1: ( rule__LibIterationCS__Group__0__Impl rule__LibIterationCS__Group__1 )
             // InternalOCLstdlib.g:7778:2: rule__LibIterationCS__Group__0__Impl rule__LibIterationCS__Group__1
@@ -24469,7 +24469,7 @@
     public final void rule__LibIterationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7789:1: ( ( 'iteration' ) )
             // InternalOCLstdlib.g:7790:1: ( 'iteration' )
@@ -24478,11 +24478,11 @@
             // InternalOCLstdlib.g:7791:1: 'iteration'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getIterationKeyword_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getIterationKeyword_0());
             }
             match(input,24,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getIterationKeyword_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getIterationKeyword_0());
             }
 
             }
@@ -24510,7 +24510,7 @@
     public final void rule__LibIterationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7808:1: ( rule__LibIterationCS__Group__1__Impl rule__LibIterationCS__Group__2 )
             // InternalOCLstdlib.g:7809:2: rule__LibIterationCS__Group__1__Impl rule__LibIterationCS__Group__2
@@ -24548,7 +24548,7 @@
     public final void rule__LibIterationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7820:1: ( ( ( rule__LibIterationCS__NameAssignment_1 ) ) )
             // InternalOCLstdlib.g:7821:1: ( ( rule__LibIterationCS__NameAssignment_1 ) )
@@ -24557,7 +24557,7 @@
             // InternalOCLstdlib.g:7822:1: ( rule__LibIterationCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getNameAssignment_1()); 
+               before(grammarAccess.getLibIterationCSAccess().getNameAssignment_1());
             }
             // InternalOCLstdlib.g:7823:1: ( rule__LibIterationCS__NameAssignment_1 )
             // InternalOCLstdlib.g:7823:2: rule__LibIterationCS__NameAssignment_1
@@ -24571,7 +24571,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getNameAssignment_1()); 
+               after(grammarAccess.getLibIterationCSAccess().getNameAssignment_1());
             }
 
             }
@@ -24599,7 +24599,7 @@
     public final void rule__LibIterationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7837:1: ( rule__LibIterationCS__Group__2__Impl rule__LibIterationCS__Group__3 )
             // InternalOCLstdlib.g:7838:2: rule__LibIterationCS__Group__2__Impl rule__LibIterationCS__Group__3
@@ -24637,7 +24637,7 @@
     public final void rule__LibIterationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7849:1: ( ( ( rule__LibIterationCS__OwnedSignatureAssignment_2 )? ) )
             // InternalOCLstdlib.g:7850:1: ( ( rule__LibIterationCS__OwnedSignatureAssignment_2 )? )
@@ -24646,7 +24646,7 @@
             // InternalOCLstdlib.g:7851:1: ( rule__LibIterationCS__OwnedSignatureAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedSignatureAssignment_2()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedSignatureAssignment_2());
             }
             // InternalOCLstdlib.g:7852:1: ( rule__LibIterationCS__OwnedSignatureAssignment_2 )?
             int alt78=2;
@@ -24667,7 +24667,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedSignatureAssignment_2()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedSignatureAssignment_2());
             }
 
             }
@@ -24695,7 +24695,7 @@
     public final void rule__LibIterationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7866:1: ( rule__LibIterationCS__Group__3__Impl rule__LibIterationCS__Group__4 )
             // InternalOCLstdlib.g:7867:2: rule__LibIterationCS__Group__3__Impl rule__LibIterationCS__Group__4
@@ -24733,7 +24733,7 @@
     public final void rule__LibIterationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7878:1: ( ( '(' ) )
             // InternalOCLstdlib.g:7879:1: ( '(' )
@@ -24742,11 +24742,11 @@
             // InternalOCLstdlib.g:7880:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getLeftParenthesisKeyword_3()); 
+               before(grammarAccess.getLibIterationCSAccess().getLeftParenthesisKeyword_3());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getLeftParenthesisKeyword_3()); 
+               after(grammarAccess.getLibIterationCSAccess().getLeftParenthesisKeyword_3());
             }
 
             }
@@ -24774,7 +24774,7 @@
     public final void rule__LibIterationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7897:1: ( rule__LibIterationCS__Group__4__Impl rule__LibIterationCS__Group__5 )
             // InternalOCLstdlib.g:7898:2: rule__LibIterationCS__Group__4__Impl rule__LibIterationCS__Group__5
@@ -24812,7 +24812,7 @@
     public final void rule__LibIterationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7909:1: ( ( ( rule__LibIterationCS__OwnedIteratorsAssignment_4 ) ) )
             // InternalOCLstdlib.g:7910:1: ( ( rule__LibIterationCS__OwnedIteratorsAssignment_4 ) )
@@ -24821,7 +24821,7 @@
             // InternalOCLstdlib.g:7911:1: ( rule__LibIterationCS__OwnedIteratorsAssignment_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsAssignment_4()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsAssignment_4());
             }
             // InternalOCLstdlib.g:7912:1: ( rule__LibIterationCS__OwnedIteratorsAssignment_4 )
             // InternalOCLstdlib.g:7912:2: rule__LibIterationCS__OwnedIteratorsAssignment_4
@@ -24835,7 +24835,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsAssignment_4()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsAssignment_4());
             }
 
             }
@@ -24863,7 +24863,7 @@
     public final void rule__LibIterationCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7926:1: ( rule__LibIterationCS__Group__5__Impl rule__LibIterationCS__Group__6 )
             // InternalOCLstdlib.g:7927:2: rule__LibIterationCS__Group__5__Impl rule__LibIterationCS__Group__6
@@ -24901,7 +24901,7 @@
     public final void rule__LibIterationCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7938:1: ( ( ( rule__LibIterationCS__Group_5__0 )* ) )
             // InternalOCLstdlib.g:7939:1: ( ( rule__LibIterationCS__Group_5__0 )* )
@@ -24910,7 +24910,7 @@
             // InternalOCLstdlib.g:7940:1: ( rule__LibIterationCS__Group_5__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getGroup_5()); 
+               before(grammarAccess.getLibIterationCSAccess().getGroup_5());
             }
             // InternalOCLstdlib.g:7941:1: ( rule__LibIterationCS__Group_5__0 )*
             loop79:
@@ -24942,7 +24942,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getGroup_5()); 
+               after(grammarAccess.getLibIterationCSAccess().getGroup_5());
             }
 
             }
@@ -24970,7 +24970,7 @@
     public final void rule__LibIterationCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7955:1: ( rule__LibIterationCS__Group__6__Impl rule__LibIterationCS__Group__7 )
             // InternalOCLstdlib.g:7956:2: rule__LibIterationCS__Group__6__Impl rule__LibIterationCS__Group__7
@@ -25008,7 +25008,7 @@
     public final void rule__LibIterationCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7967:1: ( ( ( rule__LibIterationCS__Group_6__0 )? ) )
             // InternalOCLstdlib.g:7968:1: ( ( rule__LibIterationCS__Group_6__0 )? )
@@ -25017,7 +25017,7 @@
             // InternalOCLstdlib.g:7969:1: ( rule__LibIterationCS__Group_6__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getGroup_6()); 
+               before(grammarAccess.getLibIterationCSAccess().getGroup_6());
             }
             // InternalOCLstdlib.g:7970:1: ( rule__LibIterationCS__Group_6__0 )?
             int alt80=2;
@@ -25042,7 +25042,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getGroup_6()); 
+               after(grammarAccess.getLibIterationCSAccess().getGroup_6());
             }
 
             }
@@ -25070,7 +25070,7 @@
     public final void rule__LibIterationCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7984:1: ( rule__LibIterationCS__Group__7__Impl rule__LibIterationCS__Group__8 )
             // InternalOCLstdlib.g:7985:2: rule__LibIterationCS__Group__7__Impl rule__LibIterationCS__Group__8
@@ -25108,7 +25108,7 @@
     public final void rule__LibIterationCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:7996:1: ( ( ( rule__LibIterationCS__Group_7__0 )? ) )
             // InternalOCLstdlib.g:7997:1: ( ( rule__LibIterationCS__Group_7__0 )? )
@@ -25117,7 +25117,7 @@
             // InternalOCLstdlib.g:7998:1: ( rule__LibIterationCS__Group_7__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getGroup_7()); 
+               before(grammarAccess.getLibIterationCSAccess().getGroup_7());
             }
             // InternalOCLstdlib.g:7999:1: ( rule__LibIterationCS__Group_7__0 )?
             int alt81=2;
@@ -25142,7 +25142,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getGroup_7()); 
+               after(grammarAccess.getLibIterationCSAccess().getGroup_7());
             }
 
             }
@@ -25170,7 +25170,7 @@
     public final void rule__LibIterationCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8013:1: ( rule__LibIterationCS__Group__8__Impl rule__LibIterationCS__Group__9 )
             // InternalOCLstdlib.g:8014:2: rule__LibIterationCS__Group__8__Impl rule__LibIterationCS__Group__9
@@ -25208,7 +25208,7 @@
     public final void rule__LibIterationCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8025:1: ( ( ')' ) )
             // InternalOCLstdlib.g:8026:1: ( ')' )
@@ -25217,11 +25217,11 @@
             // InternalOCLstdlib.g:8027:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getRightParenthesisKeyword_8()); 
+               before(grammarAccess.getLibIterationCSAccess().getRightParenthesisKeyword_8());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getRightParenthesisKeyword_8()); 
+               after(grammarAccess.getLibIterationCSAccess().getRightParenthesisKeyword_8());
             }
 
             }
@@ -25249,7 +25249,7 @@
     public final void rule__LibIterationCS__Group__9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8044:1: ( rule__LibIterationCS__Group__9__Impl rule__LibIterationCS__Group__10 )
             // InternalOCLstdlib.g:8045:2: rule__LibIterationCS__Group__9__Impl rule__LibIterationCS__Group__10
@@ -25287,7 +25287,7 @@
     public final void rule__LibIterationCS__Group__9__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8056:1: ( ( ':' ) )
             // InternalOCLstdlib.g:8057:1: ( ':' )
@@ -25296,11 +25296,11 @@
             // InternalOCLstdlib.g:8058:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getColonKeyword_9()); 
+               before(grammarAccess.getLibIterationCSAccess().getColonKeyword_9());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getColonKeyword_9()); 
+               after(grammarAccess.getLibIterationCSAccess().getColonKeyword_9());
             }
 
             }
@@ -25328,7 +25328,7 @@
     public final void rule__LibIterationCS__Group__10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8075:1: ( rule__LibIterationCS__Group__10__Impl rule__LibIterationCS__Group__11 )
             // InternalOCLstdlib.g:8076:2: rule__LibIterationCS__Group__10__Impl rule__LibIterationCS__Group__11
@@ -25366,7 +25366,7 @@
     public final void rule__LibIterationCS__Group__10__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8087:1: ( ( ( rule__LibIterationCS__OwnedTypeAssignment_10 ) ) )
             // InternalOCLstdlib.g:8088:1: ( ( rule__LibIterationCS__OwnedTypeAssignment_10 ) )
@@ -25375,7 +25375,7 @@
             // InternalOCLstdlib.g:8089:1: ( rule__LibIterationCS__OwnedTypeAssignment_10 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedTypeAssignment_10()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedTypeAssignment_10());
             }
             // InternalOCLstdlib.g:8090:1: ( rule__LibIterationCS__OwnedTypeAssignment_10 )
             // InternalOCLstdlib.g:8090:2: rule__LibIterationCS__OwnedTypeAssignment_10
@@ -25389,7 +25389,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedTypeAssignment_10()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedTypeAssignment_10());
             }
 
             }
@@ -25417,7 +25417,7 @@
     public final void rule__LibIterationCS__Group__11() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8104:1: ( rule__LibIterationCS__Group__11__Impl rule__LibIterationCS__Group__12 )
             // InternalOCLstdlib.g:8105:2: rule__LibIterationCS__Group__11__Impl rule__LibIterationCS__Group__12
@@ -25455,7 +25455,7 @@
     public final void rule__LibIterationCS__Group__11__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8116:1: ( ( ( rule__LibIterationCS__IsInvalidatingAssignment_11 )? ) )
             // InternalOCLstdlib.g:8117:1: ( ( rule__LibIterationCS__IsInvalidatingAssignment_11 )? )
@@ -25464,7 +25464,7 @@
             // InternalOCLstdlib.g:8118:1: ( rule__LibIterationCS__IsInvalidatingAssignment_11 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getIsInvalidatingAssignment_11()); 
+               before(grammarAccess.getLibIterationCSAccess().getIsInvalidatingAssignment_11());
             }
             // InternalOCLstdlib.g:8119:1: ( rule__LibIterationCS__IsInvalidatingAssignment_11 )?
             int alt82=2;
@@ -25489,7 +25489,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getIsInvalidatingAssignment_11()); 
+               after(grammarAccess.getLibIterationCSAccess().getIsInvalidatingAssignment_11());
             }
 
             }
@@ -25517,7 +25517,7 @@
     public final void rule__LibIterationCS__Group__12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8133:1: ( rule__LibIterationCS__Group__12__Impl rule__LibIterationCS__Group__13 )
             // InternalOCLstdlib.g:8134:2: rule__LibIterationCS__Group__12__Impl rule__LibIterationCS__Group__13
@@ -25555,7 +25555,7 @@
     public final void rule__LibIterationCS__Group__12__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8145:1: ( ( ( rule__LibIterationCS__IsValidatingAssignment_12 )? ) )
             // InternalOCLstdlib.g:8146:1: ( ( rule__LibIterationCS__IsValidatingAssignment_12 )? )
@@ -25564,7 +25564,7 @@
             // InternalOCLstdlib.g:8147:1: ( rule__LibIterationCS__IsValidatingAssignment_12 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getIsValidatingAssignment_12()); 
+               before(grammarAccess.getLibIterationCSAccess().getIsValidatingAssignment_12());
             }
             // InternalOCLstdlib.g:8148:1: ( rule__LibIterationCS__IsValidatingAssignment_12 )?
             int alt83=2;
@@ -25589,7 +25589,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getIsValidatingAssignment_12()); 
+               after(grammarAccess.getLibIterationCSAccess().getIsValidatingAssignment_12());
             }
 
             }
@@ -25617,7 +25617,7 @@
     public final void rule__LibIterationCS__Group__13() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8162:1: ( rule__LibIterationCS__Group__13__Impl rule__LibIterationCS__Group__14 )
             // InternalOCLstdlib.g:8163:2: rule__LibIterationCS__Group__13__Impl rule__LibIterationCS__Group__14
@@ -25655,7 +25655,7 @@
     public final void rule__LibIterationCS__Group__13__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8174:1: ( ( ( rule__LibIterationCS__Group_13__0 )? ) )
             // InternalOCLstdlib.g:8175:1: ( ( rule__LibIterationCS__Group_13__0 )? )
@@ -25664,7 +25664,7 @@
             // InternalOCLstdlib.g:8176:1: ( rule__LibIterationCS__Group_13__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getGroup_13()); 
+               before(grammarAccess.getLibIterationCSAccess().getGroup_13());
             }
             // InternalOCLstdlib.g:8177:1: ( rule__LibIterationCS__Group_13__0 )?
             int alt84=2;
@@ -25689,7 +25689,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getGroup_13()); 
+               after(grammarAccess.getLibIterationCSAccess().getGroup_13());
             }
 
             }
@@ -25717,7 +25717,7 @@
     public final void rule__LibIterationCS__Group__14() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8191:1: ( rule__LibIterationCS__Group__14__Impl )
             // InternalOCLstdlib.g:8192:2: rule__LibIterationCS__Group__14__Impl
@@ -25750,7 +25750,7 @@
     public final void rule__LibIterationCS__Group__14__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8202:1: ( ( ( rule__LibIterationCS__Alternatives_14 ) ) )
             // InternalOCLstdlib.g:8203:1: ( ( rule__LibIterationCS__Alternatives_14 ) )
@@ -25759,7 +25759,7 @@
             // InternalOCLstdlib.g:8204:1: ( rule__LibIterationCS__Alternatives_14 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getAlternatives_14()); 
+               before(grammarAccess.getLibIterationCSAccess().getAlternatives_14());
             }
             // InternalOCLstdlib.g:8205:1: ( rule__LibIterationCS__Alternatives_14 )
             // InternalOCLstdlib.g:8205:2: rule__LibIterationCS__Alternatives_14
@@ -25773,7 +25773,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getAlternatives_14()); 
+               after(grammarAccess.getLibIterationCSAccess().getAlternatives_14());
             }
 
             }
@@ -25801,7 +25801,7 @@
     public final void rule__LibIterationCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8249:1: ( rule__LibIterationCS__Group_5__0__Impl rule__LibIterationCS__Group_5__1 )
             // InternalOCLstdlib.g:8250:2: rule__LibIterationCS__Group_5__0__Impl rule__LibIterationCS__Group_5__1
@@ -25839,7 +25839,7 @@
     public final void rule__LibIterationCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8261:1: ( ( ',' ) )
             // InternalOCLstdlib.g:8262:1: ( ',' )
@@ -25848,11 +25848,11 @@
             // InternalOCLstdlib.g:8263:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getCommaKeyword_5_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getCommaKeyword_5_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getCommaKeyword_5_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getCommaKeyword_5_0());
             }
 
             }
@@ -25880,7 +25880,7 @@
     public final void rule__LibIterationCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8280:1: ( rule__LibIterationCS__Group_5__1__Impl )
             // InternalOCLstdlib.g:8281:2: rule__LibIterationCS__Group_5__1__Impl
@@ -25913,7 +25913,7 @@
     public final void rule__LibIterationCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8291:1: ( ( ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 ) ) )
             // InternalOCLstdlib.g:8292:1: ( ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 ) )
@@ -25922,7 +25922,7 @@
             // InternalOCLstdlib.g:8293:1: ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsAssignment_5_1()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsAssignment_5_1());
             }
             // InternalOCLstdlib.g:8294:1: ( rule__LibIterationCS__OwnedIteratorsAssignment_5_1 )
             // InternalOCLstdlib.g:8294:2: rule__LibIterationCS__OwnedIteratorsAssignment_5_1
@@ -25936,7 +25936,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsAssignment_5_1()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsAssignment_5_1());
             }
 
             }
@@ -25964,7 +25964,7 @@
     public final void rule__LibIterationCS__Group_6__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8312:1: ( rule__LibIterationCS__Group_6__0__Impl rule__LibIterationCS__Group_6__1 )
             // InternalOCLstdlib.g:8313:2: rule__LibIterationCS__Group_6__0__Impl rule__LibIterationCS__Group_6__1
@@ -26002,7 +26002,7 @@
     public final void rule__LibIterationCS__Group_6__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8324:1: ( ( ';' ) )
             // InternalOCLstdlib.g:8325:1: ( ';' )
@@ -26011,11 +26011,11 @@
             // InternalOCLstdlib.g:8326:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_6_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_6_0());
             }
             match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_6_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_6_0());
             }
 
             }
@@ -26043,7 +26043,7 @@
     public final void rule__LibIterationCS__Group_6__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8343:1: ( rule__LibIterationCS__Group_6__1__Impl rule__LibIterationCS__Group_6__2 )
             // InternalOCLstdlib.g:8344:2: rule__LibIterationCS__Group_6__1__Impl rule__LibIterationCS__Group_6__2
@@ -26081,7 +26081,7 @@
     public final void rule__LibIterationCS__Group_6__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8355:1: ( ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 ) ) )
             // InternalOCLstdlib.g:8356:1: ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 ) )
@@ -26090,7 +26090,7 @@
             // InternalOCLstdlib.g:8357:1: ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAssignment_6_1()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAssignment_6_1());
             }
             // InternalOCLstdlib.g:8358:1: ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1 )
             // InternalOCLstdlib.g:8358:2: rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1
@@ -26104,7 +26104,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAssignment_6_1()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAssignment_6_1());
             }
 
             }
@@ -26132,7 +26132,7 @@
     public final void rule__LibIterationCS__Group_6__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8372:1: ( rule__LibIterationCS__Group_6__2__Impl )
             // InternalOCLstdlib.g:8373:2: rule__LibIterationCS__Group_6__2__Impl
@@ -26165,7 +26165,7 @@
     public final void rule__LibIterationCS__Group_6__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8383:1: ( ( ( rule__LibIterationCS__Group_6_2__0 )* ) )
             // InternalOCLstdlib.g:8384:1: ( ( rule__LibIterationCS__Group_6_2__0 )* )
@@ -26174,7 +26174,7 @@
             // InternalOCLstdlib.g:8385:1: ( rule__LibIterationCS__Group_6_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getGroup_6_2()); 
+               before(grammarAccess.getLibIterationCSAccess().getGroup_6_2());
             }
             // InternalOCLstdlib.g:8386:1: ( rule__LibIterationCS__Group_6_2__0 )*
             loop85:
@@ -26206,7 +26206,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getGroup_6_2()); 
+               after(grammarAccess.getLibIterationCSAccess().getGroup_6_2());
             }
 
             }
@@ -26234,7 +26234,7 @@
     public final void rule__LibIterationCS__Group_6_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8406:1: ( rule__LibIterationCS__Group_6_2__0__Impl rule__LibIterationCS__Group_6_2__1 )
             // InternalOCLstdlib.g:8407:2: rule__LibIterationCS__Group_6_2__0__Impl rule__LibIterationCS__Group_6_2__1
@@ -26272,7 +26272,7 @@
     public final void rule__LibIterationCS__Group_6_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8418:1: ( ( ',' ) )
             // InternalOCLstdlib.g:8419:1: ( ',' )
@@ -26281,11 +26281,11 @@
             // InternalOCLstdlib.g:8420:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getCommaKeyword_6_2_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getCommaKeyword_6_2_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getCommaKeyword_6_2_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getCommaKeyword_6_2_0());
             }
 
             }
@@ -26313,7 +26313,7 @@
     public final void rule__LibIterationCS__Group_6_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8437:1: ( rule__LibIterationCS__Group_6_2__1__Impl )
             // InternalOCLstdlib.g:8438:2: rule__LibIterationCS__Group_6_2__1__Impl
@@ -26346,7 +26346,7 @@
     public final void rule__LibIterationCS__Group_6_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8448:1: ( ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 ) ) )
             // InternalOCLstdlib.g:8449:1: ( ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 ) )
@@ -26355,7 +26355,7 @@
             // InternalOCLstdlib.g:8450:1: ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAssignment_6_2_1()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAssignment_6_2_1());
             }
             // InternalOCLstdlib.g:8451:1: ( rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1 )
             // InternalOCLstdlib.g:8451:2: rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1
@@ -26369,7 +26369,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAssignment_6_2_1()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAssignment_6_2_1());
             }
 
             }
@@ -26397,7 +26397,7 @@
     public final void rule__LibIterationCS__Group_7__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8469:1: ( rule__LibIterationCS__Group_7__0__Impl rule__LibIterationCS__Group_7__1 )
             // InternalOCLstdlib.g:8470:2: rule__LibIterationCS__Group_7__0__Impl rule__LibIterationCS__Group_7__1
@@ -26435,7 +26435,7 @@
     public final void rule__LibIterationCS__Group_7__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8481:1: ( ( '|' ) )
             // InternalOCLstdlib.g:8482:1: ( '|' )
@@ -26444,11 +26444,11 @@
             // InternalOCLstdlib.g:8483:1: '|'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getVerticalLineKeyword_7_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getVerticalLineKeyword_7_0());
             }
             match(input,90,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getVerticalLineKeyword_7_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getVerticalLineKeyword_7_0());
             }
 
             }
@@ -26476,7 +26476,7 @@
     public final void rule__LibIterationCS__Group_7__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8500:1: ( rule__LibIterationCS__Group_7__1__Impl rule__LibIterationCS__Group_7__2 )
             // InternalOCLstdlib.g:8501:2: rule__LibIterationCS__Group_7__1__Impl rule__LibIterationCS__Group_7__2
@@ -26514,7 +26514,7 @@
     public final void rule__LibIterationCS__Group_7__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8512:1: ( ( ( rule__LibIterationCS__OwnedParametersAssignment_7_1 ) ) )
             // InternalOCLstdlib.g:8513:1: ( ( rule__LibIterationCS__OwnedParametersAssignment_7_1 ) )
@@ -26523,7 +26523,7 @@
             // InternalOCLstdlib.g:8514:1: ( rule__LibIterationCS__OwnedParametersAssignment_7_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedParametersAssignment_7_1()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedParametersAssignment_7_1());
             }
             // InternalOCLstdlib.g:8515:1: ( rule__LibIterationCS__OwnedParametersAssignment_7_1 )
             // InternalOCLstdlib.g:8515:2: rule__LibIterationCS__OwnedParametersAssignment_7_1
@@ -26537,7 +26537,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedParametersAssignment_7_1()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedParametersAssignment_7_1());
             }
 
             }
@@ -26565,7 +26565,7 @@
     public final void rule__LibIterationCS__Group_7__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8529:1: ( rule__LibIterationCS__Group_7__2__Impl )
             // InternalOCLstdlib.g:8530:2: rule__LibIterationCS__Group_7__2__Impl
@@ -26598,7 +26598,7 @@
     public final void rule__LibIterationCS__Group_7__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8540:1: ( ( ( rule__LibIterationCS__Group_7_2__0 )* ) )
             // InternalOCLstdlib.g:8541:1: ( ( rule__LibIterationCS__Group_7_2__0 )* )
@@ -26607,7 +26607,7 @@
             // InternalOCLstdlib.g:8542:1: ( rule__LibIterationCS__Group_7_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getGroup_7_2()); 
+               before(grammarAccess.getLibIterationCSAccess().getGroup_7_2());
             }
             // InternalOCLstdlib.g:8543:1: ( rule__LibIterationCS__Group_7_2__0 )*
             loop86:
@@ -26639,7 +26639,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getGroup_7_2()); 
+               after(grammarAccess.getLibIterationCSAccess().getGroup_7_2());
             }
 
             }
@@ -26667,7 +26667,7 @@
     public final void rule__LibIterationCS__Group_7_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8563:1: ( rule__LibIterationCS__Group_7_2__0__Impl rule__LibIterationCS__Group_7_2__1 )
             // InternalOCLstdlib.g:8564:2: rule__LibIterationCS__Group_7_2__0__Impl rule__LibIterationCS__Group_7_2__1
@@ -26705,7 +26705,7 @@
     public final void rule__LibIterationCS__Group_7_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8575:1: ( ( ',' ) )
             // InternalOCLstdlib.g:8576:1: ( ',' )
@@ -26714,11 +26714,11 @@
             // InternalOCLstdlib.g:8577:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getCommaKeyword_7_2_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getCommaKeyword_7_2_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getCommaKeyword_7_2_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getCommaKeyword_7_2_0());
             }
 
             }
@@ -26746,7 +26746,7 @@
     public final void rule__LibIterationCS__Group_7_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8594:1: ( rule__LibIterationCS__Group_7_2__1__Impl )
             // InternalOCLstdlib.g:8595:2: rule__LibIterationCS__Group_7_2__1__Impl
@@ -26779,7 +26779,7 @@
     public final void rule__LibIterationCS__Group_7_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8605:1: ( ( ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 ) ) )
             // InternalOCLstdlib.g:8606:1: ( ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 ) )
@@ -26788,7 +26788,7 @@
             // InternalOCLstdlib.g:8607:1: ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedParametersAssignment_7_2_1()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedParametersAssignment_7_2_1());
             }
             // InternalOCLstdlib.g:8608:1: ( rule__LibIterationCS__OwnedParametersAssignment_7_2_1 )
             // InternalOCLstdlib.g:8608:2: rule__LibIterationCS__OwnedParametersAssignment_7_2_1
@@ -26802,7 +26802,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedParametersAssignment_7_2_1()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedParametersAssignment_7_2_1());
             }
 
             }
@@ -26830,7 +26830,7 @@
     public final void rule__LibIterationCS__Group_13__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8626:1: ( rule__LibIterationCS__Group_13__0__Impl rule__LibIterationCS__Group_13__1 )
             // InternalOCLstdlib.g:8627:2: rule__LibIterationCS__Group_13__0__Impl rule__LibIterationCS__Group_13__1
@@ -26868,7 +26868,7 @@
     public final void rule__LibIterationCS__Group_13__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8638:1: ( ( '=>' ) )
             // InternalOCLstdlib.g:8639:1: ( '=>' )
@@ -26877,11 +26877,11 @@
             // InternalOCLstdlib.g:8640:1: '=>'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getEqualsSignGreaterThanSignKeyword_13_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getEqualsSignGreaterThanSignKeyword_13_0());
             }
             match(input,89,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getEqualsSignGreaterThanSignKeyword_13_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getEqualsSignGreaterThanSignKeyword_13_0());
             }
 
             }
@@ -26909,7 +26909,7 @@
     public final void rule__LibIterationCS__Group_13__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8657:1: ( rule__LibIterationCS__Group_13__1__Impl )
             // InternalOCLstdlib.g:8658:2: rule__LibIterationCS__Group_13__1__Impl
@@ -26942,7 +26942,7 @@
     public final void rule__LibIterationCS__Group_13__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8668:1: ( ( ( rule__LibIterationCS__ImplementationAssignment_13_1 ) ) )
             // InternalOCLstdlib.g:8669:1: ( ( rule__LibIterationCS__ImplementationAssignment_13_1 ) )
@@ -26951,7 +26951,7 @@
             // InternalOCLstdlib.g:8670:1: ( rule__LibIterationCS__ImplementationAssignment_13_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getImplementationAssignment_13_1()); 
+               before(grammarAccess.getLibIterationCSAccess().getImplementationAssignment_13_1());
             }
             // InternalOCLstdlib.g:8671:1: ( rule__LibIterationCS__ImplementationAssignment_13_1 )
             // InternalOCLstdlib.g:8671:2: rule__LibIterationCS__ImplementationAssignment_13_1
@@ -26965,7 +26965,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getImplementationAssignment_13_1()); 
+               after(grammarAccess.getLibIterationCSAccess().getImplementationAssignment_13_1());
             }
 
             }
@@ -26993,7 +26993,7 @@
     public final void rule__LibIterationCS__Group_14_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8689:1: ( rule__LibIterationCS__Group_14_0__0__Impl rule__LibIterationCS__Group_14_0__1 )
             // InternalOCLstdlib.g:8690:2: rule__LibIterationCS__Group_14_0__0__Impl rule__LibIterationCS__Group_14_0__1
@@ -27031,7 +27031,7 @@
     public final void rule__LibIterationCS__Group_14_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8701:1: ( ( '{' ) )
             // InternalOCLstdlib.g:8702:1: ( '{' )
@@ -27040,11 +27040,11 @@
             // InternalOCLstdlib.g:8703:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getLeftCurlyBracketKeyword_14_0_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getLeftCurlyBracketKeyword_14_0_0());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getLeftCurlyBracketKeyword_14_0_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getLeftCurlyBracketKeyword_14_0_0());
             }
 
             }
@@ -27072,7 +27072,7 @@
     public final void rule__LibIterationCS__Group_14_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8720:1: ( rule__LibIterationCS__Group_14_0__1__Impl rule__LibIterationCS__Group_14_0__2 )
             // InternalOCLstdlib.g:8721:2: rule__LibIterationCS__Group_14_0__1__Impl rule__LibIterationCS__Group_14_0__2
@@ -27110,7 +27110,7 @@
     public final void rule__LibIterationCS__Group_14_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8732:1: ( ( ( rule__LibIterationCS__Alternatives_14_0_1 )* ) )
             // InternalOCLstdlib.g:8733:1: ( ( rule__LibIterationCS__Alternatives_14_0_1 )* )
@@ -27119,7 +27119,7 @@
             // InternalOCLstdlib.g:8734:1: ( rule__LibIterationCS__Alternatives_14_0_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getAlternatives_14_0_1()); 
+               before(grammarAccess.getLibIterationCSAccess().getAlternatives_14_0_1());
             }
             // InternalOCLstdlib.g:8735:1: ( rule__LibIterationCS__Alternatives_14_0_1 )*
             loop87:
@@ -27151,7 +27151,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getAlternatives_14_0_1()); 
+               after(grammarAccess.getLibIterationCSAccess().getAlternatives_14_0_1());
             }
 
             }
@@ -27179,7 +27179,7 @@
     public final void rule__LibIterationCS__Group_14_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8749:1: ( rule__LibIterationCS__Group_14_0__2__Impl )
             // InternalOCLstdlib.g:8750:2: rule__LibIterationCS__Group_14_0__2__Impl
@@ -27212,7 +27212,7 @@
     public final void rule__LibIterationCS__Group_14_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8760:1: ( ( '}' ) )
             // InternalOCLstdlib.g:8761:1: ( '}' )
@@ -27221,11 +27221,11 @@
             // InternalOCLstdlib.g:8762:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getRightCurlyBracketKeyword_14_0_2()); 
+               before(grammarAccess.getLibIterationCSAccess().getRightCurlyBracketKeyword_14_0_2());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getRightCurlyBracketKeyword_14_0_2()); 
+               after(grammarAccess.getLibIterationCSAccess().getRightCurlyBracketKeyword_14_0_2());
             }
 
             }
@@ -27253,7 +27253,7 @@
     public final void rule__IteratorCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8785:1: ( rule__IteratorCS__Group__0__Impl rule__IteratorCS__Group__1 )
             // InternalOCLstdlib.g:8786:2: rule__IteratorCS__Group__0__Impl rule__IteratorCS__Group__1
@@ -27291,7 +27291,7 @@
     public final void rule__IteratorCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8797:1: ( ( ( rule__IteratorCS__NameAssignment_0 ) ) )
             // InternalOCLstdlib.g:8798:1: ( ( rule__IteratorCS__NameAssignment_0 ) )
@@ -27300,7 +27300,7 @@
             // InternalOCLstdlib.g:8799:1: ( rule__IteratorCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIteratorCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getIteratorCSAccess().getNameAssignment_0());
             }
             // InternalOCLstdlib.g:8800:1: ( rule__IteratorCS__NameAssignment_0 )
             // InternalOCLstdlib.g:8800:2: rule__IteratorCS__NameAssignment_0
@@ -27314,7 +27314,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIteratorCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getIteratorCSAccess().getNameAssignment_0());
             }
 
             }
@@ -27342,7 +27342,7 @@
     public final void rule__IteratorCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8814:1: ( rule__IteratorCS__Group__1__Impl rule__IteratorCS__Group__2 )
             // InternalOCLstdlib.g:8815:2: rule__IteratorCS__Group__1__Impl rule__IteratorCS__Group__2
@@ -27380,7 +27380,7 @@
     public final void rule__IteratorCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8826:1: ( ( ':' ) )
             // InternalOCLstdlib.g:8827:1: ( ':' )
@@ -27389,11 +27389,11 @@
             // InternalOCLstdlib.g:8828:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIteratorCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getIteratorCSAccess().getColonKeyword_1());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIteratorCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getIteratorCSAccess().getColonKeyword_1());
             }
 
             }
@@ -27421,7 +27421,7 @@
     public final void rule__IteratorCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8845:1: ( rule__IteratorCS__Group__2__Impl )
             // InternalOCLstdlib.g:8846:2: rule__IteratorCS__Group__2__Impl
@@ -27454,7 +27454,7 @@
     public final void rule__IteratorCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8856:1: ( ( ( rule__IteratorCS__OwnedTypeAssignment_2 ) ) )
             // InternalOCLstdlib.g:8857:1: ( ( rule__IteratorCS__OwnedTypeAssignment_2 ) )
@@ -27463,7 +27463,7 @@
             // InternalOCLstdlib.g:8858:1: ( rule__IteratorCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIteratorCSAccess().getOwnedTypeAssignment_2()); 
+               before(grammarAccess.getIteratorCSAccess().getOwnedTypeAssignment_2());
             }
             // InternalOCLstdlib.g:8859:1: ( rule__IteratorCS__OwnedTypeAssignment_2 )
             // InternalOCLstdlib.g:8859:2: rule__IteratorCS__OwnedTypeAssignment_2
@@ -27477,7 +27477,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIteratorCSAccess().getOwnedTypeAssignment_2()); 
+               after(grammarAccess.getIteratorCSAccess().getOwnedTypeAssignment_2());
             }
 
             }
@@ -27505,7 +27505,7 @@
     public final void rule__LambdaTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8879:1: ( rule__LambdaTypeCS__Group__0__Impl rule__LambdaTypeCS__Group__1 )
             // InternalOCLstdlib.g:8880:2: rule__LambdaTypeCS__Group__0__Impl rule__LambdaTypeCS__Group__1
@@ -27543,7 +27543,7 @@
     public final void rule__LambdaTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8891:1: ( ( ( rule__LambdaTypeCS__NameAssignment_0 ) ) )
             // InternalOCLstdlib.g:8892:1: ( ( rule__LambdaTypeCS__NameAssignment_0 ) )
@@ -27552,7 +27552,7 @@
             // InternalOCLstdlib.g:8893:1: ( rule__LambdaTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getNameAssignment_0());
             }
             // InternalOCLstdlib.g:8894:1: ( rule__LambdaTypeCS__NameAssignment_0 )
             // InternalOCLstdlib.g:8894:2: rule__LambdaTypeCS__NameAssignment_0
@@ -27566,7 +27566,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getNameAssignment_0());
             }
 
             }
@@ -27594,7 +27594,7 @@
     public final void rule__LambdaTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8908:1: ( rule__LambdaTypeCS__Group__1__Impl rule__LambdaTypeCS__Group__2 )
             // InternalOCLstdlib.g:8909:2: rule__LambdaTypeCS__Group__1__Impl rule__LambdaTypeCS__Group__2
@@ -27632,7 +27632,7 @@
     public final void rule__LambdaTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8920:1: ( ( ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )? ) )
             // InternalOCLstdlib.g:8921:1: ( ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )? )
@@ -27641,7 +27641,7 @@
             // InternalOCLstdlib.g:8922:1: ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureAssignment_1()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureAssignment_1());
             }
             // InternalOCLstdlib.g:8923:1: ( rule__LambdaTypeCS__OwnedSignatureAssignment_1 )?
             int alt88=2;
@@ -27666,7 +27666,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureAssignment_1()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureAssignment_1());
             }
 
             }
@@ -27694,7 +27694,7 @@
     public final void rule__LambdaTypeCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8937:1: ( rule__LambdaTypeCS__Group__2__Impl rule__LambdaTypeCS__Group__3 )
             // InternalOCLstdlib.g:8938:2: rule__LambdaTypeCS__Group__2__Impl rule__LambdaTypeCS__Group__3
@@ -27732,7 +27732,7 @@
     public final void rule__LambdaTypeCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8949:1: ( ( ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 ) ) )
             // InternalOCLstdlib.g:8950:1: ( ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 ) )
@@ -27741,7 +27741,7 @@
             // InternalOCLstdlib.g:8951:1: ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeAssignment_2()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeAssignment_2());
             }
             // InternalOCLstdlib.g:8952:1: ( rule__LambdaTypeCS__OwnedContextTypeAssignment_2 )
             // InternalOCLstdlib.g:8952:2: rule__LambdaTypeCS__OwnedContextTypeAssignment_2
@@ -27755,7 +27755,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeAssignment_2()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeAssignment_2());
             }
 
             }
@@ -27783,7 +27783,7 @@
     public final void rule__LambdaTypeCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8966:1: ( rule__LambdaTypeCS__Group__3__Impl rule__LambdaTypeCS__Group__4 )
             // InternalOCLstdlib.g:8967:2: rule__LambdaTypeCS__Group__3__Impl rule__LambdaTypeCS__Group__4
@@ -27821,7 +27821,7 @@
     public final void rule__LambdaTypeCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8978:1: ( ( '(' ) )
             // InternalOCLstdlib.g:8979:1: ( '(' )
@@ -27830,11 +27830,11 @@
             // InternalOCLstdlib.g:8980:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getLeftParenthesisKeyword_3()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getLeftParenthesisKeyword_3());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getLeftParenthesisKeyword_3()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getLeftParenthesisKeyword_3());
             }
 
             }
@@ -27862,7 +27862,7 @@
     public final void rule__LambdaTypeCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:8997:1: ( rule__LambdaTypeCS__Group__4__Impl rule__LambdaTypeCS__Group__5 )
             // InternalOCLstdlib.g:8998:2: rule__LambdaTypeCS__Group__4__Impl rule__LambdaTypeCS__Group__5
@@ -27900,7 +27900,7 @@
     public final void rule__LambdaTypeCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9009:1: ( ( ( rule__LambdaTypeCS__Group_4__0 )? ) )
             // InternalOCLstdlib.g:9010:1: ( ( rule__LambdaTypeCS__Group_4__0 )? )
@@ -27909,7 +27909,7 @@
             // InternalOCLstdlib.g:9011:1: ( rule__LambdaTypeCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getGroup_4()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getGroup_4());
             }
             // InternalOCLstdlib.g:9012:1: ( rule__LambdaTypeCS__Group_4__0 )?
             int alt89=2;
@@ -27934,7 +27934,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getGroup_4()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getGroup_4());
             }
 
             }
@@ -27962,7 +27962,7 @@
     public final void rule__LambdaTypeCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9026:1: ( rule__LambdaTypeCS__Group__5__Impl rule__LambdaTypeCS__Group__6 )
             // InternalOCLstdlib.g:9027:2: rule__LambdaTypeCS__Group__5__Impl rule__LambdaTypeCS__Group__6
@@ -28000,7 +28000,7 @@
     public final void rule__LambdaTypeCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9038:1: ( ( ')' ) )
             // InternalOCLstdlib.g:9039:1: ( ')' )
@@ -28009,11 +28009,11 @@
             // InternalOCLstdlib.g:9040:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getRightParenthesisKeyword_5()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getRightParenthesisKeyword_5());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getRightParenthesisKeyword_5()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getRightParenthesisKeyword_5());
             }
 
             }
@@ -28041,7 +28041,7 @@
     public final void rule__LambdaTypeCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9057:1: ( rule__LambdaTypeCS__Group__6__Impl rule__LambdaTypeCS__Group__7 )
             // InternalOCLstdlib.g:9058:2: rule__LambdaTypeCS__Group__6__Impl rule__LambdaTypeCS__Group__7
@@ -28079,7 +28079,7 @@
     public final void rule__LambdaTypeCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9069:1: ( ( ':' ) )
             // InternalOCLstdlib.g:9070:1: ( ':' )
@@ -28088,11 +28088,11 @@
             // InternalOCLstdlib.g:9071:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getColonKeyword_6()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getColonKeyword_6());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getColonKeyword_6()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getColonKeyword_6());
             }
 
             }
@@ -28120,7 +28120,7 @@
     public final void rule__LambdaTypeCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9088:1: ( rule__LambdaTypeCS__Group__7__Impl )
             // InternalOCLstdlib.g:9089:2: rule__LambdaTypeCS__Group__7__Impl
@@ -28153,7 +28153,7 @@
     public final void rule__LambdaTypeCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9099:1: ( ( ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 ) ) )
             // InternalOCLstdlib.g:9100:1: ( ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 ) )
@@ -28162,7 +28162,7 @@
             // InternalOCLstdlib.g:9101:1: ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeAssignment_7()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeAssignment_7());
             }
             // InternalOCLstdlib.g:9102:1: ( rule__LambdaTypeCS__OwnedResultTypeAssignment_7 )
             // InternalOCLstdlib.g:9102:2: rule__LambdaTypeCS__OwnedResultTypeAssignment_7
@@ -28176,7 +28176,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeAssignment_7()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeAssignment_7());
             }
 
             }
@@ -28204,7 +28204,7 @@
     public final void rule__LambdaTypeCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9132:1: ( rule__LambdaTypeCS__Group_4__0__Impl rule__LambdaTypeCS__Group_4__1 )
             // InternalOCLstdlib.g:9133:2: rule__LambdaTypeCS__Group_4__0__Impl rule__LambdaTypeCS__Group_4__1
@@ -28242,7 +28242,7 @@
     public final void rule__LambdaTypeCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9144:1: ( ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 ) ) )
             // InternalOCLstdlib.g:9145:1: ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 ) )
@@ -28251,7 +28251,7 @@
             // InternalOCLstdlib.g:9146:1: ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesAssignment_4_0()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesAssignment_4_0());
             }
             // InternalOCLstdlib.g:9147:1: ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0 )
             // InternalOCLstdlib.g:9147:2: rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0
@@ -28265,7 +28265,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesAssignment_4_0()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesAssignment_4_0());
             }
 
             }
@@ -28293,7 +28293,7 @@
     public final void rule__LambdaTypeCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9161:1: ( rule__LambdaTypeCS__Group_4__1__Impl )
             // InternalOCLstdlib.g:9162:2: rule__LambdaTypeCS__Group_4__1__Impl
@@ -28326,7 +28326,7 @@
     public final void rule__LambdaTypeCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9172:1: ( ( ( rule__LambdaTypeCS__Group_4_1__0 )* ) )
             // InternalOCLstdlib.g:9173:1: ( ( rule__LambdaTypeCS__Group_4_1__0 )* )
@@ -28335,7 +28335,7 @@
             // InternalOCLstdlib.g:9174:1: ( rule__LambdaTypeCS__Group_4_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getGroup_4_1()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getGroup_4_1());
             }
             // InternalOCLstdlib.g:9175:1: ( rule__LambdaTypeCS__Group_4_1__0 )*
             loop90:
@@ -28367,7 +28367,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getGroup_4_1()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getGroup_4_1());
             }
 
             }
@@ -28395,7 +28395,7 @@
     public final void rule__LambdaTypeCS__Group_4_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9193:1: ( rule__LambdaTypeCS__Group_4_1__0__Impl rule__LambdaTypeCS__Group_4_1__1 )
             // InternalOCLstdlib.g:9194:2: rule__LambdaTypeCS__Group_4_1__0__Impl rule__LambdaTypeCS__Group_4_1__1
@@ -28433,7 +28433,7 @@
     public final void rule__LambdaTypeCS__Group_4_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9205:1: ( ( ',' ) )
             // InternalOCLstdlib.g:9206:1: ( ',' )
@@ -28442,11 +28442,11 @@
             // InternalOCLstdlib.g:9207:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getCommaKeyword_4_1_0()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getCommaKeyword_4_1_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getCommaKeyword_4_1_0()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getCommaKeyword_4_1_0());
             }
 
             }
@@ -28474,7 +28474,7 @@
     public final void rule__LambdaTypeCS__Group_4_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9224:1: ( rule__LambdaTypeCS__Group_4_1__1__Impl )
             // InternalOCLstdlib.g:9225:2: rule__LambdaTypeCS__Group_4_1__1__Impl
@@ -28507,7 +28507,7 @@
     public final void rule__LambdaTypeCS__Group_4_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9235:1: ( ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 ) ) )
             // InternalOCLstdlib.g:9236:1: ( ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 ) )
@@ -28516,7 +28516,7 @@
             // InternalOCLstdlib.g:9237:1: ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesAssignment_4_1_1()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesAssignment_4_1_1());
             }
             // InternalOCLstdlib.g:9238:1: ( rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1 )
             // InternalOCLstdlib.g:9238:2: rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1
@@ -28530,7 +28530,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesAssignment_4_1_1()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesAssignment_4_1_1());
             }
 
             }
@@ -28558,7 +28558,7 @@
     public final void rule__LibOperationCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9256:1: ( rule__LibOperationCS__Group__0__Impl rule__LibOperationCS__Group__1 )
             // InternalOCLstdlib.g:9257:2: rule__LibOperationCS__Group__0__Impl rule__LibOperationCS__Group__1
@@ -28596,7 +28596,7 @@
     public final void rule__LibOperationCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9268:1: ( ( ( rule__LibOperationCS__IsStaticAssignment_0 )? ) )
             // InternalOCLstdlib.g:9269:1: ( ( rule__LibOperationCS__IsStaticAssignment_0 )? )
@@ -28605,7 +28605,7 @@
             // InternalOCLstdlib.g:9270:1: ( rule__LibOperationCS__IsStaticAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getIsStaticAssignment_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getIsStaticAssignment_0());
             }
             // InternalOCLstdlib.g:9271:1: ( rule__LibOperationCS__IsStaticAssignment_0 )?
             int alt91=2;
@@ -28630,7 +28630,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getIsStaticAssignment_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getIsStaticAssignment_0());
             }
 
             }
@@ -28658,7 +28658,7 @@
     public final void rule__LibOperationCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9285:1: ( rule__LibOperationCS__Group__1__Impl rule__LibOperationCS__Group__2 )
             // InternalOCLstdlib.g:9286:2: rule__LibOperationCS__Group__1__Impl rule__LibOperationCS__Group__2
@@ -28696,7 +28696,7 @@
     public final void rule__LibOperationCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9297:1: ( ( 'operation' ) )
             // InternalOCLstdlib.g:9298:1: ( 'operation' )
@@ -28705,11 +28705,11 @@
             // InternalOCLstdlib.g:9299:1: 'operation'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOperationKeyword_1()); 
+               before(grammarAccess.getLibOperationCSAccess().getOperationKeyword_1());
             }
             match(input,27,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOperationKeyword_1()); 
+               after(grammarAccess.getLibOperationCSAccess().getOperationKeyword_1());
             }
 
             }
@@ -28737,7 +28737,7 @@
     public final void rule__LibOperationCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9316:1: ( rule__LibOperationCS__Group__2__Impl rule__LibOperationCS__Group__3 )
             // InternalOCLstdlib.g:9317:2: rule__LibOperationCS__Group__2__Impl rule__LibOperationCS__Group__3
@@ -28775,7 +28775,7 @@
     public final void rule__LibOperationCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9328:1: ( ( ( rule__LibOperationCS__NameAssignment_2 ) ) )
             // InternalOCLstdlib.g:9329:1: ( ( rule__LibOperationCS__NameAssignment_2 ) )
@@ -28784,7 +28784,7 @@
             // InternalOCLstdlib.g:9330:1: ( rule__LibOperationCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getNameAssignment_2()); 
+               before(grammarAccess.getLibOperationCSAccess().getNameAssignment_2());
             }
             // InternalOCLstdlib.g:9331:1: ( rule__LibOperationCS__NameAssignment_2 )
             // InternalOCLstdlib.g:9331:2: rule__LibOperationCS__NameAssignment_2
@@ -28798,7 +28798,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getNameAssignment_2()); 
+               after(grammarAccess.getLibOperationCSAccess().getNameAssignment_2());
             }
 
             }
@@ -28826,7 +28826,7 @@
     public final void rule__LibOperationCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9345:1: ( rule__LibOperationCS__Group__3__Impl rule__LibOperationCS__Group__4 )
             // InternalOCLstdlib.g:9346:2: rule__LibOperationCS__Group__3__Impl rule__LibOperationCS__Group__4
@@ -28864,7 +28864,7 @@
     public final void rule__LibOperationCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9357:1: ( ( ( rule__LibOperationCS__OwnedSignatureAssignment_3 )? ) )
             // InternalOCLstdlib.g:9358:1: ( ( rule__LibOperationCS__OwnedSignatureAssignment_3 )? )
@@ -28873,7 +28873,7 @@
             // InternalOCLstdlib.g:9359:1: ( rule__LibOperationCS__OwnedSignatureAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOwnedSignatureAssignment_3()); 
+               before(grammarAccess.getLibOperationCSAccess().getOwnedSignatureAssignment_3());
             }
             // InternalOCLstdlib.g:9360:1: ( rule__LibOperationCS__OwnedSignatureAssignment_3 )?
             int alt92=2;
@@ -28894,7 +28894,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOwnedSignatureAssignment_3()); 
+               after(grammarAccess.getLibOperationCSAccess().getOwnedSignatureAssignment_3());
             }
 
             }
@@ -28922,7 +28922,7 @@
     public final void rule__LibOperationCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9374:1: ( rule__LibOperationCS__Group__4__Impl rule__LibOperationCS__Group__5 )
             // InternalOCLstdlib.g:9375:2: rule__LibOperationCS__Group__4__Impl rule__LibOperationCS__Group__5
@@ -28960,7 +28960,7 @@
     public final void rule__LibOperationCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9386:1: ( ( '(' ) )
             // InternalOCLstdlib.g:9387:1: ( '(' )
@@ -28969,11 +28969,11 @@
             // InternalOCLstdlib.g:9388:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getLeftParenthesisKeyword_4()); 
+               before(grammarAccess.getLibOperationCSAccess().getLeftParenthesisKeyword_4());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getLeftParenthesisKeyword_4()); 
+               after(grammarAccess.getLibOperationCSAccess().getLeftParenthesisKeyword_4());
             }
 
             }
@@ -29001,7 +29001,7 @@
     public final void rule__LibOperationCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9405:1: ( rule__LibOperationCS__Group__5__Impl rule__LibOperationCS__Group__6 )
             // InternalOCLstdlib.g:9406:2: rule__LibOperationCS__Group__5__Impl rule__LibOperationCS__Group__6
@@ -29039,7 +29039,7 @@
     public final void rule__LibOperationCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9417:1: ( ( ( rule__LibOperationCS__Group_5__0 )? ) )
             // InternalOCLstdlib.g:9418:1: ( ( rule__LibOperationCS__Group_5__0 )? )
@@ -29048,7 +29048,7 @@
             // InternalOCLstdlib.g:9419:1: ( rule__LibOperationCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getGroup_5()); 
+               before(grammarAccess.getLibOperationCSAccess().getGroup_5());
             }
             // InternalOCLstdlib.g:9420:1: ( rule__LibOperationCS__Group_5__0 )?
             int alt93=2;
@@ -29073,7 +29073,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getGroup_5()); 
+               after(grammarAccess.getLibOperationCSAccess().getGroup_5());
             }
 
             }
@@ -29101,7 +29101,7 @@
     public final void rule__LibOperationCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9434:1: ( rule__LibOperationCS__Group__6__Impl rule__LibOperationCS__Group__7 )
             // InternalOCLstdlib.g:9435:2: rule__LibOperationCS__Group__6__Impl rule__LibOperationCS__Group__7
@@ -29139,7 +29139,7 @@
     public final void rule__LibOperationCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9446:1: ( ( ')' ) )
             // InternalOCLstdlib.g:9447:1: ( ')' )
@@ -29148,11 +29148,11 @@
             // InternalOCLstdlib.g:9448:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getRightParenthesisKeyword_6()); 
+               before(grammarAccess.getLibOperationCSAccess().getRightParenthesisKeyword_6());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getRightParenthesisKeyword_6()); 
+               after(grammarAccess.getLibOperationCSAccess().getRightParenthesisKeyword_6());
             }
 
             }
@@ -29180,7 +29180,7 @@
     public final void rule__LibOperationCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9465:1: ( rule__LibOperationCS__Group__7__Impl rule__LibOperationCS__Group__8 )
             // InternalOCLstdlib.g:9466:2: rule__LibOperationCS__Group__7__Impl rule__LibOperationCS__Group__8
@@ -29218,7 +29218,7 @@
     public final void rule__LibOperationCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9477:1: ( ( ':' ) )
             // InternalOCLstdlib.g:9478:1: ( ':' )
@@ -29227,11 +29227,11 @@
             // InternalOCLstdlib.g:9479:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getColonKeyword_7()); 
+               before(grammarAccess.getLibOperationCSAccess().getColonKeyword_7());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getColonKeyword_7()); 
+               after(grammarAccess.getLibOperationCSAccess().getColonKeyword_7());
             }
 
             }
@@ -29259,7 +29259,7 @@
     public final void rule__LibOperationCS__Group__8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9496:1: ( rule__LibOperationCS__Group__8__Impl rule__LibOperationCS__Group__9 )
             // InternalOCLstdlib.g:9497:2: rule__LibOperationCS__Group__8__Impl rule__LibOperationCS__Group__9
@@ -29297,7 +29297,7 @@
     public final void rule__LibOperationCS__Group__8__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9508:1: ( ( ( rule__LibOperationCS__OwnedTypeAssignment_8 ) ) )
             // InternalOCLstdlib.g:9509:1: ( ( rule__LibOperationCS__OwnedTypeAssignment_8 ) )
@@ -29306,7 +29306,7 @@
             // InternalOCLstdlib.g:9510:1: ( rule__LibOperationCS__OwnedTypeAssignment_8 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOwnedTypeAssignment_8()); 
+               before(grammarAccess.getLibOperationCSAccess().getOwnedTypeAssignment_8());
             }
             // InternalOCLstdlib.g:9511:1: ( rule__LibOperationCS__OwnedTypeAssignment_8 )
             // InternalOCLstdlib.g:9511:2: rule__LibOperationCS__OwnedTypeAssignment_8
@@ -29320,7 +29320,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOwnedTypeAssignment_8()); 
+               after(grammarAccess.getLibOperationCSAccess().getOwnedTypeAssignment_8());
             }
 
             }
@@ -29348,7 +29348,7 @@
     public final void rule__LibOperationCS__Group__9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9525:1: ( rule__LibOperationCS__Group__9__Impl rule__LibOperationCS__Group__10 )
             // InternalOCLstdlib.g:9526:2: rule__LibOperationCS__Group__9__Impl rule__LibOperationCS__Group__10
@@ -29386,7 +29386,7 @@
     public final void rule__LibOperationCS__Group__9__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9537:1: ( ( ( rule__LibOperationCS__IsValidatingAssignment_9 )? ) )
             // InternalOCLstdlib.g:9538:1: ( ( rule__LibOperationCS__IsValidatingAssignment_9 )? )
@@ -29395,7 +29395,7 @@
             // InternalOCLstdlib.g:9539:1: ( rule__LibOperationCS__IsValidatingAssignment_9 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getIsValidatingAssignment_9()); 
+               before(grammarAccess.getLibOperationCSAccess().getIsValidatingAssignment_9());
             }
             // InternalOCLstdlib.g:9540:1: ( rule__LibOperationCS__IsValidatingAssignment_9 )?
             int alt94=2;
@@ -29420,7 +29420,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getIsValidatingAssignment_9()); 
+               after(grammarAccess.getLibOperationCSAccess().getIsValidatingAssignment_9());
             }
 
             }
@@ -29448,7 +29448,7 @@
     public final void rule__LibOperationCS__Group__10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9554:1: ( rule__LibOperationCS__Group__10__Impl rule__LibOperationCS__Group__11 )
             // InternalOCLstdlib.g:9555:2: rule__LibOperationCS__Group__10__Impl rule__LibOperationCS__Group__11
@@ -29486,7 +29486,7 @@
     public final void rule__LibOperationCS__Group__10__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9566:1: ( ( ( rule__LibOperationCS__IsInvalidatingAssignment_10 )? ) )
             // InternalOCLstdlib.g:9567:1: ( ( rule__LibOperationCS__IsInvalidatingAssignment_10 )? )
@@ -29495,7 +29495,7 @@
             // InternalOCLstdlib.g:9568:1: ( rule__LibOperationCS__IsInvalidatingAssignment_10 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getIsInvalidatingAssignment_10()); 
+               before(grammarAccess.getLibOperationCSAccess().getIsInvalidatingAssignment_10());
             }
             // InternalOCLstdlib.g:9569:1: ( rule__LibOperationCS__IsInvalidatingAssignment_10 )?
             int alt95=2;
@@ -29520,7 +29520,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getIsInvalidatingAssignment_10()); 
+               after(grammarAccess.getLibOperationCSAccess().getIsInvalidatingAssignment_10());
             }
 
             }
@@ -29548,7 +29548,7 @@
     public final void rule__LibOperationCS__Group__11() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9583:1: ( rule__LibOperationCS__Group__11__Impl rule__LibOperationCS__Group__12 )
             // InternalOCLstdlib.g:9584:2: rule__LibOperationCS__Group__11__Impl rule__LibOperationCS__Group__12
@@ -29586,7 +29586,7 @@
     public final void rule__LibOperationCS__Group__11__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9595:1: ( ( ( rule__LibOperationCS__Group_11__0 )? ) )
             // InternalOCLstdlib.g:9596:1: ( ( rule__LibOperationCS__Group_11__0 )? )
@@ -29595,7 +29595,7 @@
             // InternalOCLstdlib.g:9597:1: ( rule__LibOperationCS__Group_11__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getGroup_11()); 
+               before(grammarAccess.getLibOperationCSAccess().getGroup_11());
             }
             // InternalOCLstdlib.g:9598:1: ( rule__LibOperationCS__Group_11__0 )?
             int alt96=2;
@@ -29620,7 +29620,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getGroup_11()); 
+               after(grammarAccess.getLibOperationCSAccess().getGroup_11());
             }
 
             }
@@ -29648,7 +29648,7 @@
     public final void rule__LibOperationCS__Group__12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9612:1: ( rule__LibOperationCS__Group__12__Impl rule__LibOperationCS__Group__13 )
             // InternalOCLstdlib.g:9613:2: rule__LibOperationCS__Group__12__Impl rule__LibOperationCS__Group__13
@@ -29686,7 +29686,7 @@
     public final void rule__LibOperationCS__Group__12__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9624:1: ( ( ( rule__LibOperationCS__Group_12__0 )? ) )
             // InternalOCLstdlib.g:9625:1: ( ( rule__LibOperationCS__Group_12__0 )? )
@@ -29695,7 +29695,7 @@
             // InternalOCLstdlib.g:9626:1: ( rule__LibOperationCS__Group_12__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getGroup_12()); 
+               before(grammarAccess.getLibOperationCSAccess().getGroup_12());
             }
             // InternalOCLstdlib.g:9627:1: ( rule__LibOperationCS__Group_12__0 )?
             int alt97=2;
@@ -29720,7 +29720,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getGroup_12()); 
+               after(grammarAccess.getLibOperationCSAccess().getGroup_12());
             }
 
             }
@@ -29748,7 +29748,7 @@
     public final void rule__LibOperationCS__Group__13() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9641:1: ( rule__LibOperationCS__Group__13__Impl )
             // InternalOCLstdlib.g:9642:2: rule__LibOperationCS__Group__13__Impl
@@ -29781,7 +29781,7 @@
     public final void rule__LibOperationCS__Group__13__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9652:1: ( ( ( rule__LibOperationCS__Alternatives_13 ) ) )
             // InternalOCLstdlib.g:9653:1: ( ( rule__LibOperationCS__Alternatives_13 ) )
@@ -29790,7 +29790,7 @@
             // InternalOCLstdlib.g:9654:1: ( rule__LibOperationCS__Alternatives_13 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getAlternatives_13()); 
+               before(grammarAccess.getLibOperationCSAccess().getAlternatives_13());
             }
             // InternalOCLstdlib.g:9655:1: ( rule__LibOperationCS__Alternatives_13 )
             // InternalOCLstdlib.g:9655:2: rule__LibOperationCS__Alternatives_13
@@ -29804,7 +29804,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getAlternatives_13()); 
+               after(grammarAccess.getLibOperationCSAccess().getAlternatives_13());
             }
 
             }
@@ -29832,7 +29832,7 @@
     public final void rule__LibOperationCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9697:1: ( rule__LibOperationCS__Group_5__0__Impl rule__LibOperationCS__Group_5__1 )
             // InternalOCLstdlib.g:9698:2: rule__LibOperationCS__Group_5__0__Impl rule__LibOperationCS__Group_5__1
@@ -29870,7 +29870,7 @@
     public final void rule__LibOperationCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9709:1: ( ( ( rule__LibOperationCS__OwnedParametersAssignment_5_0 ) ) )
             // InternalOCLstdlib.g:9710:1: ( ( rule__LibOperationCS__OwnedParametersAssignment_5_0 ) )
@@ -29879,7 +29879,7 @@
             // InternalOCLstdlib.g:9711:1: ( rule__LibOperationCS__OwnedParametersAssignment_5_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOwnedParametersAssignment_5_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getOwnedParametersAssignment_5_0());
             }
             // InternalOCLstdlib.g:9712:1: ( rule__LibOperationCS__OwnedParametersAssignment_5_0 )
             // InternalOCLstdlib.g:9712:2: rule__LibOperationCS__OwnedParametersAssignment_5_0
@@ -29893,7 +29893,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOwnedParametersAssignment_5_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getOwnedParametersAssignment_5_0());
             }
 
             }
@@ -29921,7 +29921,7 @@
     public final void rule__LibOperationCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9726:1: ( rule__LibOperationCS__Group_5__1__Impl )
             // InternalOCLstdlib.g:9727:2: rule__LibOperationCS__Group_5__1__Impl
@@ -29954,7 +29954,7 @@
     public final void rule__LibOperationCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9737:1: ( ( ( rule__LibOperationCS__Group_5_1__0 )* ) )
             // InternalOCLstdlib.g:9738:1: ( ( rule__LibOperationCS__Group_5_1__0 )* )
@@ -29963,7 +29963,7 @@
             // InternalOCLstdlib.g:9739:1: ( rule__LibOperationCS__Group_5_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getGroup_5_1()); 
+               before(grammarAccess.getLibOperationCSAccess().getGroup_5_1());
             }
             // InternalOCLstdlib.g:9740:1: ( rule__LibOperationCS__Group_5_1__0 )*
             loop98:
@@ -29995,7 +29995,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getGroup_5_1()); 
+               after(grammarAccess.getLibOperationCSAccess().getGroup_5_1());
             }
 
             }
@@ -30023,7 +30023,7 @@
     public final void rule__LibOperationCS__Group_5_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9758:1: ( rule__LibOperationCS__Group_5_1__0__Impl rule__LibOperationCS__Group_5_1__1 )
             // InternalOCLstdlib.g:9759:2: rule__LibOperationCS__Group_5_1__0__Impl rule__LibOperationCS__Group_5_1__1
@@ -30061,7 +30061,7 @@
     public final void rule__LibOperationCS__Group_5_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9770:1: ( ( ',' ) )
             // InternalOCLstdlib.g:9771:1: ( ',' )
@@ -30070,11 +30070,11 @@
             // InternalOCLstdlib.g:9772:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getCommaKeyword_5_1_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getCommaKeyword_5_1_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getCommaKeyword_5_1_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getCommaKeyword_5_1_0());
             }
 
             }
@@ -30102,7 +30102,7 @@
     public final void rule__LibOperationCS__Group_5_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9789:1: ( rule__LibOperationCS__Group_5_1__1__Impl )
             // InternalOCLstdlib.g:9790:2: rule__LibOperationCS__Group_5_1__1__Impl
@@ -30135,7 +30135,7 @@
     public final void rule__LibOperationCS__Group_5_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9800:1: ( ( ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 ) ) )
             // InternalOCLstdlib.g:9801:1: ( ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 ) )
@@ -30144,7 +30144,7 @@
             // InternalOCLstdlib.g:9802:1: ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOwnedParametersAssignment_5_1_1()); 
+               before(grammarAccess.getLibOperationCSAccess().getOwnedParametersAssignment_5_1_1());
             }
             // InternalOCLstdlib.g:9803:1: ( rule__LibOperationCS__OwnedParametersAssignment_5_1_1 )
             // InternalOCLstdlib.g:9803:2: rule__LibOperationCS__OwnedParametersAssignment_5_1_1
@@ -30158,7 +30158,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOwnedParametersAssignment_5_1_1()); 
+               after(grammarAccess.getLibOperationCSAccess().getOwnedParametersAssignment_5_1_1());
             }
 
             }
@@ -30186,7 +30186,7 @@
     public final void rule__LibOperationCS__Group_11__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9821:1: ( rule__LibOperationCS__Group_11__0__Impl rule__LibOperationCS__Group_11__1 )
             // InternalOCLstdlib.g:9822:2: rule__LibOperationCS__Group_11__0__Impl rule__LibOperationCS__Group_11__1
@@ -30224,7 +30224,7 @@
     public final void rule__LibOperationCS__Group_11__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9833:1: ( ( 'precedence' ) )
             // InternalOCLstdlib.g:9834:1: ( 'precedence' )
@@ -30233,11 +30233,11 @@
             // InternalOCLstdlib.g:9835:1: 'precedence'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getPrecedenceKeyword_11_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getPrecedenceKeyword_11_0());
             }
             match(input,31,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getPrecedenceKeyword_11_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getPrecedenceKeyword_11_0());
             }
 
             }
@@ -30265,7 +30265,7 @@
     public final void rule__LibOperationCS__Group_11__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9852:1: ( rule__LibOperationCS__Group_11__1__Impl rule__LibOperationCS__Group_11__2 )
             // InternalOCLstdlib.g:9853:2: rule__LibOperationCS__Group_11__1__Impl rule__LibOperationCS__Group_11__2
@@ -30303,7 +30303,7 @@
     public final void rule__LibOperationCS__Group_11__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9864:1: ( ( '=' ) )
             // InternalOCLstdlib.g:9865:1: ( '=' )
@@ -30312,11 +30312,11 @@
             // InternalOCLstdlib.g:9866:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getEqualsSignKeyword_11_1()); 
+               before(grammarAccess.getLibOperationCSAccess().getEqualsSignKeyword_11_1());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getEqualsSignKeyword_11_1()); 
+               after(grammarAccess.getLibOperationCSAccess().getEqualsSignKeyword_11_1());
             }
 
             }
@@ -30344,7 +30344,7 @@
     public final void rule__LibOperationCS__Group_11__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9883:1: ( rule__LibOperationCS__Group_11__2__Impl )
             // InternalOCLstdlib.g:9884:2: rule__LibOperationCS__Group_11__2__Impl
@@ -30377,7 +30377,7 @@
     public final void rule__LibOperationCS__Group_11__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9894:1: ( ( ( rule__LibOperationCS__PrecedenceAssignment_11_2 ) ) )
             // InternalOCLstdlib.g:9895:1: ( ( rule__LibOperationCS__PrecedenceAssignment_11_2 ) )
@@ -30386,7 +30386,7 @@
             // InternalOCLstdlib.g:9896:1: ( rule__LibOperationCS__PrecedenceAssignment_11_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getPrecedenceAssignment_11_2()); 
+               before(grammarAccess.getLibOperationCSAccess().getPrecedenceAssignment_11_2());
             }
             // InternalOCLstdlib.g:9897:1: ( rule__LibOperationCS__PrecedenceAssignment_11_2 )
             // InternalOCLstdlib.g:9897:2: rule__LibOperationCS__PrecedenceAssignment_11_2
@@ -30400,7 +30400,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getPrecedenceAssignment_11_2()); 
+               after(grammarAccess.getLibOperationCSAccess().getPrecedenceAssignment_11_2());
             }
 
             }
@@ -30428,7 +30428,7 @@
     public final void rule__LibOperationCS__Group_12__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9917:1: ( rule__LibOperationCS__Group_12__0__Impl rule__LibOperationCS__Group_12__1 )
             // InternalOCLstdlib.g:9918:2: rule__LibOperationCS__Group_12__0__Impl rule__LibOperationCS__Group_12__1
@@ -30466,7 +30466,7 @@
     public final void rule__LibOperationCS__Group_12__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9929:1: ( ( '=>' ) )
             // InternalOCLstdlib.g:9930:1: ( '=>' )
@@ -30475,11 +30475,11 @@
             // InternalOCLstdlib.g:9931:1: '=>'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getEqualsSignGreaterThanSignKeyword_12_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getEqualsSignGreaterThanSignKeyword_12_0());
             }
             match(input,89,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getEqualsSignGreaterThanSignKeyword_12_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getEqualsSignGreaterThanSignKeyword_12_0());
             }
 
             }
@@ -30507,7 +30507,7 @@
     public final void rule__LibOperationCS__Group_12__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9948:1: ( rule__LibOperationCS__Group_12__1__Impl )
             // InternalOCLstdlib.g:9949:2: rule__LibOperationCS__Group_12__1__Impl
@@ -30540,7 +30540,7 @@
     public final void rule__LibOperationCS__Group_12__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9959:1: ( ( ( rule__LibOperationCS__ImplementationAssignment_12_1 ) ) )
             // InternalOCLstdlib.g:9960:1: ( ( rule__LibOperationCS__ImplementationAssignment_12_1 ) )
@@ -30549,7 +30549,7 @@
             // InternalOCLstdlib.g:9961:1: ( rule__LibOperationCS__ImplementationAssignment_12_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getImplementationAssignment_12_1()); 
+               before(grammarAccess.getLibOperationCSAccess().getImplementationAssignment_12_1());
             }
             // InternalOCLstdlib.g:9962:1: ( rule__LibOperationCS__ImplementationAssignment_12_1 )
             // InternalOCLstdlib.g:9962:2: rule__LibOperationCS__ImplementationAssignment_12_1
@@ -30563,7 +30563,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getImplementationAssignment_12_1()); 
+               after(grammarAccess.getLibOperationCSAccess().getImplementationAssignment_12_1());
             }
 
             }
@@ -30591,7 +30591,7 @@
     public final void rule__LibOperationCS__Group_13_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9980:1: ( rule__LibOperationCS__Group_13_0__0__Impl rule__LibOperationCS__Group_13_0__1 )
             // InternalOCLstdlib.g:9981:2: rule__LibOperationCS__Group_13_0__0__Impl rule__LibOperationCS__Group_13_0__1
@@ -30629,7 +30629,7 @@
     public final void rule__LibOperationCS__Group_13_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:9992:1: ( ( '{' ) )
             // InternalOCLstdlib.g:9993:1: ( '{' )
@@ -30638,11 +30638,11 @@
             // InternalOCLstdlib.g:9994:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getLeftCurlyBracketKeyword_13_0_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getLeftCurlyBracketKeyword_13_0_0());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getLeftCurlyBracketKeyword_13_0_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getLeftCurlyBracketKeyword_13_0_0());
             }
 
             }
@@ -30670,7 +30670,7 @@
     public final void rule__LibOperationCS__Group_13_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10011:1: ( rule__LibOperationCS__Group_13_0__1__Impl rule__LibOperationCS__Group_13_0__2 )
             // InternalOCLstdlib.g:10012:2: rule__LibOperationCS__Group_13_0__1__Impl rule__LibOperationCS__Group_13_0__2
@@ -30708,7 +30708,7 @@
     public final void rule__LibOperationCS__Group_13_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10023:1: ( ( ( rule__LibOperationCS__Alternatives_13_0_1 )* ) )
             // InternalOCLstdlib.g:10024:1: ( ( rule__LibOperationCS__Alternatives_13_0_1 )* )
@@ -30717,7 +30717,7 @@
             // InternalOCLstdlib.g:10025:1: ( rule__LibOperationCS__Alternatives_13_0_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getAlternatives_13_0_1()); 
+               before(grammarAccess.getLibOperationCSAccess().getAlternatives_13_0_1());
             }
             // InternalOCLstdlib.g:10026:1: ( rule__LibOperationCS__Alternatives_13_0_1 )*
             loop99:
@@ -30749,7 +30749,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getAlternatives_13_0_1()); 
+               after(grammarAccess.getLibOperationCSAccess().getAlternatives_13_0_1());
             }
 
             }
@@ -30777,7 +30777,7 @@
     public final void rule__LibOperationCS__Group_13_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10040:1: ( rule__LibOperationCS__Group_13_0__2__Impl )
             // InternalOCLstdlib.g:10041:2: rule__LibOperationCS__Group_13_0__2__Impl
@@ -30810,7 +30810,7 @@
     public final void rule__LibOperationCS__Group_13_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10051:1: ( ( '}' ) )
             // InternalOCLstdlib.g:10052:1: ( '}' )
@@ -30819,11 +30819,11 @@
             // InternalOCLstdlib.g:10053:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getRightCurlyBracketKeyword_13_0_2()); 
+               before(grammarAccess.getLibOperationCSAccess().getRightCurlyBracketKeyword_13_0_2());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getRightCurlyBracketKeyword_13_0_2()); 
+               after(grammarAccess.getLibOperationCSAccess().getRightCurlyBracketKeyword_13_0_2());
             }
 
             }
@@ -30851,7 +30851,7 @@
     public final void rule__LibOperationCS__Group_13_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10076:1: ( rule__LibOperationCS__Group_13_0_1_1__0__Impl rule__LibOperationCS__Group_13_0_1_1__1 )
             // InternalOCLstdlib.g:10077:2: rule__LibOperationCS__Group_13_0_1_1__0__Impl rule__LibOperationCS__Group_13_0_1_1__1
@@ -30889,7 +30889,7 @@
     public final void rule__LibOperationCS__Group_13_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10088:1: ( ( 'body' ) )
             // InternalOCLstdlib.g:10089:1: ( 'body' )
@@ -30898,11 +30898,11 @@
             // InternalOCLstdlib.g:10090:1: 'body'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getBodyKeyword_13_0_1_1_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getBodyKeyword_13_0_1_1_0());
             }
             match(input,91,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getBodyKeyword_13_0_1_1_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getBodyKeyword_13_0_1_1_0());
             }
 
             }
@@ -30930,7 +30930,7 @@
     public final void rule__LibOperationCS__Group_13_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10107:1: ( rule__LibOperationCS__Group_13_0_1_1__1__Impl rule__LibOperationCS__Group_13_0_1_1__2 )
             // InternalOCLstdlib.g:10108:2: rule__LibOperationCS__Group_13_0_1_1__1__Impl rule__LibOperationCS__Group_13_0_1_1__2
@@ -30968,7 +30968,7 @@
     public final void rule__LibOperationCS__Group_13_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10119:1: ( ( ( ruleUnrestrictedName )? ) )
             // InternalOCLstdlib.g:10120:1: ( ( ruleUnrestrictedName )? )
@@ -30977,7 +30977,7 @@
             // InternalOCLstdlib.g:10121:1: ( ruleUnrestrictedName )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getUnrestrictedNameParserRuleCall_13_0_1_1_1()); 
+               before(grammarAccess.getLibOperationCSAccess().getUnrestrictedNameParserRuleCall_13_0_1_1_1());
             }
             // InternalOCLstdlib.g:10122:1: ( ruleUnrestrictedName )?
             int alt100=2;
@@ -31002,7 +31002,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getUnrestrictedNameParserRuleCall_13_0_1_1_1()); 
+               after(grammarAccess.getLibOperationCSAccess().getUnrestrictedNameParserRuleCall_13_0_1_1_1());
             }
 
             }
@@ -31030,7 +31030,7 @@
     public final void rule__LibOperationCS__Group_13_0_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10136:1: ( rule__LibOperationCS__Group_13_0_1_1__2__Impl rule__LibOperationCS__Group_13_0_1_1__3 )
             // InternalOCLstdlib.g:10137:2: rule__LibOperationCS__Group_13_0_1_1__2__Impl rule__LibOperationCS__Group_13_0_1_1__3
@@ -31068,7 +31068,7 @@
     public final void rule__LibOperationCS__Group_13_0_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10148:1: ( ( ':' ) )
             // InternalOCLstdlib.g:10149:1: ( ':' )
@@ -31077,11 +31077,11 @@
             // InternalOCLstdlib.g:10150:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getColonKeyword_13_0_1_1_2()); 
+               before(grammarAccess.getLibOperationCSAccess().getColonKeyword_13_0_1_1_2());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getColonKeyword_13_0_1_1_2()); 
+               after(grammarAccess.getLibOperationCSAccess().getColonKeyword_13_0_1_1_2());
             }
 
             }
@@ -31109,7 +31109,7 @@
     public final void rule__LibOperationCS__Group_13_0_1_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10167:1: ( rule__LibOperationCS__Group_13_0_1_1__3__Impl rule__LibOperationCS__Group_13_0_1_1__4 )
             // InternalOCLstdlib.g:10168:2: rule__LibOperationCS__Group_13_0_1_1__3__Impl rule__LibOperationCS__Group_13_0_1_1__4
@@ -31147,7 +31147,7 @@
     public final void rule__LibOperationCS__Group_13_0_1_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10179:1: ( ( ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 ) ) )
             // InternalOCLstdlib.g:10180:1: ( ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 ) )
@@ -31156,7 +31156,7 @@
             // InternalOCLstdlib.g:10181:1: ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsAssignment_13_0_1_1_3()); 
+               before(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsAssignment_13_0_1_1_3());
             }
             // InternalOCLstdlib.g:10182:1: ( rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3 )
             // InternalOCLstdlib.g:10182:2: rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3
@@ -31170,7 +31170,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsAssignment_13_0_1_1_3()); 
+               after(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsAssignment_13_0_1_1_3());
             }
 
             }
@@ -31198,7 +31198,7 @@
     public final void rule__LibOperationCS__Group_13_0_1_1__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10196:1: ( rule__LibOperationCS__Group_13_0_1_1__4__Impl )
             // InternalOCLstdlib.g:10197:2: rule__LibOperationCS__Group_13_0_1_1__4__Impl
@@ -31231,7 +31231,7 @@
     public final void rule__LibOperationCS__Group_13_0_1_1__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10207:1: ( ( ';' ) )
             // InternalOCLstdlib.g:10208:1: ( ';' )
@@ -31240,11 +31240,11 @@
             // InternalOCLstdlib.g:10209:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_0_1_1_4()); 
+               before(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_0_1_1_4());
             }
             match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_0_1_1_4()); 
+               after(grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_0_1_1_4());
             }
 
             }
@@ -31272,7 +31272,7 @@
     public final void rule__LibPackageCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10236:1: ( rule__LibPackageCS__Group__0__Impl rule__LibPackageCS__Group__1 )
             // InternalOCLstdlib.g:10237:2: rule__LibPackageCS__Group__0__Impl rule__LibPackageCS__Group__1
@@ -31310,7 +31310,7 @@
     public final void rule__LibPackageCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10248:1: ( ( 'library' ) )
             // InternalOCLstdlib.g:10249:1: ( 'library' )
@@ -31319,11 +31319,11 @@
             // InternalOCLstdlib.g:10250:1: 'library'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getLibraryKeyword_0()); 
+               before(grammarAccess.getLibPackageCSAccess().getLibraryKeyword_0());
             }
             match(input,26,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getLibraryKeyword_0()); 
+               after(grammarAccess.getLibPackageCSAccess().getLibraryKeyword_0());
             }
 
             }
@@ -31351,7 +31351,7 @@
     public final void rule__LibPackageCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10267:1: ( rule__LibPackageCS__Group__1__Impl rule__LibPackageCS__Group__2 )
             // InternalOCLstdlib.g:10268:2: rule__LibPackageCS__Group__1__Impl rule__LibPackageCS__Group__2
@@ -31389,7 +31389,7 @@
     public final void rule__LibPackageCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10279:1: ( ( ( rule__LibPackageCS__NameAssignment_1 ) ) )
             // InternalOCLstdlib.g:10280:1: ( ( rule__LibPackageCS__NameAssignment_1 ) )
@@ -31398,7 +31398,7 @@
             // InternalOCLstdlib.g:10281:1: ( rule__LibPackageCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getNameAssignment_1()); 
+               before(grammarAccess.getLibPackageCSAccess().getNameAssignment_1());
             }
             // InternalOCLstdlib.g:10282:1: ( rule__LibPackageCS__NameAssignment_1 )
             // InternalOCLstdlib.g:10282:2: rule__LibPackageCS__NameAssignment_1
@@ -31412,7 +31412,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getNameAssignment_1()); 
+               after(grammarAccess.getLibPackageCSAccess().getNameAssignment_1());
             }
 
             }
@@ -31440,7 +31440,7 @@
     public final void rule__LibPackageCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10296:1: ( rule__LibPackageCS__Group__2__Impl rule__LibPackageCS__Group__3 )
             // InternalOCLstdlib.g:10297:2: rule__LibPackageCS__Group__2__Impl rule__LibPackageCS__Group__3
@@ -31478,7 +31478,7 @@
     public final void rule__LibPackageCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10308:1: ( ( ( rule__LibPackageCS__Group_2__0 )? ) )
             // InternalOCLstdlib.g:10309:1: ( ( rule__LibPackageCS__Group_2__0 )? )
@@ -31487,7 +31487,7 @@
             // InternalOCLstdlib.g:10310:1: ( rule__LibPackageCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getGroup_2()); 
+               before(grammarAccess.getLibPackageCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:10311:1: ( rule__LibPackageCS__Group_2__0 )?
             int alt101=2;
@@ -31512,7 +31512,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getGroup_2()); 
+               after(grammarAccess.getLibPackageCSAccess().getGroup_2());
             }
 
             }
@@ -31540,7 +31540,7 @@
     public final void rule__LibPackageCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10325:1: ( rule__LibPackageCS__Group__3__Impl rule__LibPackageCS__Group__4 )
             // InternalOCLstdlib.g:10326:2: rule__LibPackageCS__Group__3__Impl rule__LibPackageCS__Group__4
@@ -31578,7 +31578,7 @@
     public final void rule__LibPackageCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10337:1: ( ( '{' ) )
             // InternalOCLstdlib.g:10338:1: ( '{' )
@@ -31587,11 +31587,11 @@
             // InternalOCLstdlib.g:10339:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getLeftCurlyBracketKeyword_3()); 
+               before(grammarAccess.getLibPackageCSAccess().getLeftCurlyBracketKeyword_3());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getLeftCurlyBracketKeyword_3()); 
+               after(grammarAccess.getLibPackageCSAccess().getLeftCurlyBracketKeyword_3());
             }
 
             }
@@ -31619,7 +31619,7 @@
     public final void rule__LibPackageCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10356:1: ( rule__LibPackageCS__Group__4__Impl rule__LibPackageCS__Group__5 )
             // InternalOCLstdlib.g:10357:2: rule__LibPackageCS__Group__4__Impl rule__LibPackageCS__Group__5
@@ -31657,7 +31657,7 @@
     public final void rule__LibPackageCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10368:1: ( ( ( rule__LibPackageCS__Alternatives_4 )* ) )
             // InternalOCLstdlib.g:10369:1: ( ( rule__LibPackageCS__Alternatives_4 )* )
@@ -31666,7 +31666,7 @@
             // InternalOCLstdlib.g:10370:1: ( rule__LibPackageCS__Alternatives_4 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getAlternatives_4()); 
+               before(grammarAccess.getLibPackageCSAccess().getAlternatives_4());
             }
             // InternalOCLstdlib.g:10371:1: ( rule__LibPackageCS__Alternatives_4 )*
             loop102:
@@ -31698,7 +31698,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getAlternatives_4()); 
+               after(grammarAccess.getLibPackageCSAccess().getAlternatives_4());
             }
 
             }
@@ -31726,7 +31726,7 @@
     public final void rule__LibPackageCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10385:1: ( rule__LibPackageCS__Group__5__Impl )
             // InternalOCLstdlib.g:10386:2: rule__LibPackageCS__Group__5__Impl
@@ -31759,7 +31759,7 @@
     public final void rule__LibPackageCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10396:1: ( ( '}' ) )
             // InternalOCLstdlib.g:10397:1: ( '}' )
@@ -31768,11 +31768,11 @@
             // InternalOCLstdlib.g:10398:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getRightCurlyBracketKeyword_5()); 
+               before(grammarAccess.getLibPackageCSAccess().getRightCurlyBracketKeyword_5());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getRightCurlyBracketKeyword_5()); 
+               after(grammarAccess.getLibPackageCSAccess().getRightCurlyBracketKeyword_5());
             }
 
             }
@@ -31800,7 +31800,7 @@
     public final void rule__LibPackageCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10427:1: ( rule__LibPackageCS__Group_2__0__Impl rule__LibPackageCS__Group_2__1 )
             // InternalOCLstdlib.g:10428:2: rule__LibPackageCS__Group_2__0__Impl rule__LibPackageCS__Group_2__1
@@ -31838,7 +31838,7 @@
     public final void rule__LibPackageCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10439:1: ( ( ':' ) )
             // InternalOCLstdlib.g:10440:1: ( ':' )
@@ -31847,11 +31847,11 @@
             // InternalOCLstdlib.g:10441:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getLibPackageCSAccess().getColonKeyword_2_0());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getLibPackageCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -31879,7 +31879,7 @@
     public final void rule__LibPackageCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10458:1: ( rule__LibPackageCS__Group_2__1__Impl rule__LibPackageCS__Group_2__2 )
             // InternalOCLstdlib.g:10459:2: rule__LibPackageCS__Group_2__1__Impl rule__LibPackageCS__Group_2__2
@@ -31917,7 +31917,7 @@
     public final void rule__LibPackageCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10470:1: ( ( ( rule__LibPackageCS__NsPrefixAssignment_2_1 ) ) )
             // InternalOCLstdlib.g:10471:1: ( ( rule__LibPackageCS__NsPrefixAssignment_2_1 ) )
@@ -31926,7 +31926,7 @@
             // InternalOCLstdlib.g:10472:1: ( rule__LibPackageCS__NsPrefixAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getNsPrefixAssignment_2_1()); 
+               before(grammarAccess.getLibPackageCSAccess().getNsPrefixAssignment_2_1());
             }
             // InternalOCLstdlib.g:10473:1: ( rule__LibPackageCS__NsPrefixAssignment_2_1 )
             // InternalOCLstdlib.g:10473:2: rule__LibPackageCS__NsPrefixAssignment_2_1
@@ -31940,7 +31940,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getNsPrefixAssignment_2_1()); 
+               after(grammarAccess.getLibPackageCSAccess().getNsPrefixAssignment_2_1());
             }
 
             }
@@ -31968,7 +31968,7 @@
     public final void rule__LibPackageCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10487:1: ( rule__LibPackageCS__Group_2__2__Impl rule__LibPackageCS__Group_2__3 )
             // InternalOCLstdlib.g:10488:2: rule__LibPackageCS__Group_2__2__Impl rule__LibPackageCS__Group_2__3
@@ -32006,7 +32006,7 @@
     public final void rule__LibPackageCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10499:1: ( ( '=' ) )
             // InternalOCLstdlib.g:10500:1: ( '=' )
@@ -32015,11 +32015,11 @@
             // InternalOCLstdlib.g:10501:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getEqualsSignKeyword_2_2()); 
+               before(grammarAccess.getLibPackageCSAccess().getEqualsSignKeyword_2_2());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getEqualsSignKeyword_2_2()); 
+               after(grammarAccess.getLibPackageCSAccess().getEqualsSignKeyword_2_2());
             }
 
             }
@@ -32047,7 +32047,7 @@
     public final void rule__LibPackageCS__Group_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10518:1: ( rule__LibPackageCS__Group_2__3__Impl )
             // InternalOCLstdlib.g:10519:2: rule__LibPackageCS__Group_2__3__Impl
@@ -32080,7 +32080,7 @@
     public final void rule__LibPackageCS__Group_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10529:1: ( ( ( rule__LibPackageCS__NsURIAssignment_2_3 ) ) )
             // InternalOCLstdlib.g:10530:1: ( ( rule__LibPackageCS__NsURIAssignment_2_3 ) )
@@ -32089,7 +32089,7 @@
             // InternalOCLstdlib.g:10531:1: ( rule__LibPackageCS__NsURIAssignment_2_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getNsURIAssignment_2_3()); 
+               before(grammarAccess.getLibPackageCSAccess().getNsURIAssignment_2_3());
             }
             // InternalOCLstdlib.g:10532:1: ( rule__LibPackageCS__NsURIAssignment_2_3 )
             // InternalOCLstdlib.g:10532:2: rule__LibPackageCS__NsURIAssignment_2_3
@@ -32103,7 +32103,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getNsURIAssignment_2_3()); 
+               after(grammarAccess.getLibPackageCSAccess().getNsURIAssignment_2_3());
             }
 
             }
@@ -32131,7 +32131,7 @@
     public final void rule__LibPackageCS__Group_4_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10554:1: ( rule__LibPackageCS__Group_4_1__0__Impl rule__LibPackageCS__Group_4_1__1 )
             // InternalOCLstdlib.g:10555:2: rule__LibPackageCS__Group_4_1__0__Impl rule__LibPackageCS__Group_4_1__1
@@ -32169,7 +32169,7 @@
     public final void rule__LibPackageCS__Group_4_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10566:1: ( ( 'precedence' ) )
             // InternalOCLstdlib.g:10567:1: ( 'precedence' )
@@ -32178,11 +32178,11 @@
             // InternalOCLstdlib.g:10568:1: 'precedence'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getPrecedenceKeyword_4_1_0()); 
+               before(grammarAccess.getLibPackageCSAccess().getPrecedenceKeyword_4_1_0());
             }
             match(input,31,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getPrecedenceKeyword_4_1_0()); 
+               after(grammarAccess.getLibPackageCSAccess().getPrecedenceKeyword_4_1_0());
             }
 
             }
@@ -32210,7 +32210,7 @@
     public final void rule__LibPackageCS__Group_4_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10585:1: ( rule__LibPackageCS__Group_4_1__1__Impl rule__LibPackageCS__Group_4_1__2 )
             // InternalOCLstdlib.g:10586:2: rule__LibPackageCS__Group_4_1__1__Impl rule__LibPackageCS__Group_4_1__2
@@ -32248,7 +32248,7 @@
     public final void rule__LibPackageCS__Group_4_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10597:1: ( ( ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) ) ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* ) ) )
             // InternalOCLstdlib.g:10598:1: ( ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 ) ) ( ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )* ) )
@@ -32260,7 +32260,7 @@
             // InternalOCLstdlib.g:10600:1: ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesAssignment_4_1_1()); 
+               before(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesAssignment_4_1_1());
             }
             // InternalOCLstdlib.g:10601:1: ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )
             // InternalOCLstdlib.g:10601:2: rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1
@@ -32274,7 +32274,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesAssignment_4_1_1()); 
+               after(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesAssignment_4_1_1());
             }
 
             }
@@ -32283,7 +32283,7 @@
             // InternalOCLstdlib.g:10605:1: ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesAssignment_4_1_1()); 
+               before(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesAssignment_4_1_1());
             }
             // InternalOCLstdlib.g:10606:1: ( rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1 )*
             loop103:
@@ -32315,7 +32315,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesAssignment_4_1_1()); 
+               after(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesAssignment_4_1_1());
             }
 
             }
@@ -32346,7 +32346,7 @@
     public final void rule__LibPackageCS__Group_4_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10621:1: ( rule__LibPackageCS__Group_4_1__2__Impl )
             // InternalOCLstdlib.g:10622:2: rule__LibPackageCS__Group_4_1__2__Impl
@@ -32379,7 +32379,7 @@
     public final void rule__LibPackageCS__Group_4_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10632:1: ( ( ';' ) )
             // InternalOCLstdlib.g:10633:1: ( ';' )
@@ -32388,11 +32388,11 @@
             // InternalOCLstdlib.g:10634:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getSemicolonKeyword_4_1_2()); 
+               before(grammarAccess.getLibPackageCSAccess().getSemicolonKeyword_4_1_2());
             }
             match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getSemicolonKeyword_4_1_2()); 
+               after(grammarAccess.getLibPackageCSAccess().getSemicolonKeyword_4_1_2());
             }
 
             }
@@ -32420,7 +32420,7 @@
     public final void rule__PackageCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10657:1: ( rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1 )
             // InternalOCLstdlib.g:10658:2: rule__PackageCS__Group__0__Impl rule__PackageCS__Group__1
@@ -32458,7 +32458,7 @@
     public final void rule__PackageCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10669:1: ( ( 'package' ) )
             // InternalOCLstdlib.g:10670:1: ( 'package' )
@@ -32467,11 +32467,11 @@
             // InternalOCLstdlib.g:10671:1: 'package'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getPackageKeyword_0()); 
+               before(grammarAccess.getPackageCSAccess().getPackageKeyword_0());
             }
             match(input,28,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getPackageKeyword_0()); 
+               after(grammarAccess.getPackageCSAccess().getPackageKeyword_0());
             }
 
             }
@@ -32499,7 +32499,7 @@
     public final void rule__PackageCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10688:1: ( rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2 )
             // InternalOCLstdlib.g:10689:2: rule__PackageCS__Group__1__Impl rule__PackageCS__Group__2
@@ -32537,7 +32537,7 @@
     public final void rule__PackageCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10700:1: ( ( ( rule__PackageCS__NameAssignment_1 ) ) )
             // InternalOCLstdlib.g:10701:1: ( ( rule__PackageCS__NameAssignment_1 ) )
@@ -32546,7 +32546,7 @@
             // InternalOCLstdlib.g:10702:1: ( rule__PackageCS__NameAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getNameAssignment_1()); 
+               before(grammarAccess.getPackageCSAccess().getNameAssignment_1());
             }
             // InternalOCLstdlib.g:10703:1: ( rule__PackageCS__NameAssignment_1 )
             // InternalOCLstdlib.g:10703:2: rule__PackageCS__NameAssignment_1
@@ -32560,7 +32560,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getNameAssignment_1()); 
+               after(grammarAccess.getPackageCSAccess().getNameAssignment_1());
             }
 
             }
@@ -32588,7 +32588,7 @@
     public final void rule__PackageCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10717:1: ( rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3 )
             // InternalOCLstdlib.g:10718:2: rule__PackageCS__Group__2__Impl rule__PackageCS__Group__3
@@ -32626,7 +32626,7 @@
     public final void rule__PackageCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10729:1: ( ( ( rule__PackageCS__Group_2__0 )? ) )
             // InternalOCLstdlib.g:10730:1: ( ( rule__PackageCS__Group_2__0 )? )
@@ -32635,7 +32635,7 @@
             // InternalOCLstdlib.g:10731:1: ( rule__PackageCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getGroup_2()); 
+               before(grammarAccess.getPackageCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:10732:1: ( rule__PackageCS__Group_2__0 )?
             int alt104=2;
@@ -32660,7 +32660,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getGroup_2()); 
+               after(grammarAccess.getPackageCSAccess().getGroup_2());
             }
 
             }
@@ -32688,7 +32688,7 @@
     public final void rule__PackageCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10746:1: ( rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4 )
             // InternalOCLstdlib.g:10747:2: rule__PackageCS__Group__3__Impl rule__PackageCS__Group__4
@@ -32726,7 +32726,7 @@
     public final void rule__PackageCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10758:1: ( ( '{' ) )
             // InternalOCLstdlib.g:10759:1: ( '{' )
@@ -32735,11 +32735,11 @@
             // InternalOCLstdlib.g:10760:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_3()); 
+               before(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_3());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_3()); 
+               after(grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_3());
             }
 
             }
@@ -32767,7 +32767,7 @@
     public final void rule__PackageCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10777:1: ( rule__PackageCS__Group__4__Impl rule__PackageCS__Group__5 )
             // InternalOCLstdlib.g:10778:2: rule__PackageCS__Group__4__Impl rule__PackageCS__Group__5
@@ -32805,7 +32805,7 @@
     public final void rule__PackageCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10789:1: ( ( ( rule__PackageCS__Alternatives_4 )* ) )
             // InternalOCLstdlib.g:10790:1: ( ( rule__PackageCS__Alternatives_4 )* )
@@ -32814,7 +32814,7 @@
             // InternalOCLstdlib.g:10791:1: ( rule__PackageCS__Alternatives_4 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getAlternatives_4()); 
+               before(grammarAccess.getPackageCSAccess().getAlternatives_4());
             }
             // InternalOCLstdlib.g:10792:1: ( rule__PackageCS__Alternatives_4 )*
             loop105:
@@ -32846,7 +32846,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getAlternatives_4()); 
+               after(grammarAccess.getPackageCSAccess().getAlternatives_4());
             }
 
             }
@@ -32874,7 +32874,7 @@
     public final void rule__PackageCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10806:1: ( rule__PackageCS__Group__5__Impl )
             // InternalOCLstdlib.g:10807:2: rule__PackageCS__Group__5__Impl
@@ -32907,7 +32907,7 @@
     public final void rule__PackageCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10817:1: ( ( '}' ) )
             // InternalOCLstdlib.g:10818:1: ( '}' )
@@ -32916,11 +32916,11 @@
             // InternalOCLstdlib.g:10819:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_5()); 
+               before(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_5());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_5()); 
+               after(grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_5());
             }
 
             }
@@ -32948,7 +32948,7 @@
     public final void rule__PackageCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10848:1: ( rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1 )
             // InternalOCLstdlib.g:10849:2: rule__PackageCS__Group_2__0__Impl rule__PackageCS__Group_2__1
@@ -32986,7 +32986,7 @@
     public final void rule__PackageCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10860:1: ( ( ':' ) )
             // InternalOCLstdlib.g:10861:1: ( ':' )
@@ -32995,11 +32995,11 @@
             // InternalOCLstdlib.g:10862:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getPackageCSAccess().getColonKeyword_2_0());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getPackageCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -33027,7 +33027,7 @@
     public final void rule__PackageCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10879:1: ( rule__PackageCS__Group_2__1__Impl rule__PackageCS__Group_2__2 )
             // InternalOCLstdlib.g:10880:2: rule__PackageCS__Group_2__1__Impl rule__PackageCS__Group_2__2
@@ -33065,7 +33065,7 @@
     public final void rule__PackageCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10891:1: ( ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) ) )
             // InternalOCLstdlib.g:10892:1: ( ( rule__PackageCS__NsPrefixAssignment_2_1 ) )
@@ -33074,7 +33074,7 @@
             // InternalOCLstdlib.g:10893:1: ( rule__PackageCS__NsPrefixAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getNsPrefixAssignment_2_1()); 
+               before(grammarAccess.getPackageCSAccess().getNsPrefixAssignment_2_1());
             }
             // InternalOCLstdlib.g:10894:1: ( rule__PackageCS__NsPrefixAssignment_2_1 )
             // InternalOCLstdlib.g:10894:2: rule__PackageCS__NsPrefixAssignment_2_1
@@ -33088,7 +33088,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getNsPrefixAssignment_2_1()); 
+               after(grammarAccess.getPackageCSAccess().getNsPrefixAssignment_2_1());
             }
 
             }
@@ -33116,7 +33116,7 @@
     public final void rule__PackageCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10908:1: ( rule__PackageCS__Group_2__2__Impl rule__PackageCS__Group_2__3 )
             // InternalOCLstdlib.g:10909:2: rule__PackageCS__Group_2__2__Impl rule__PackageCS__Group_2__3
@@ -33154,7 +33154,7 @@
     public final void rule__PackageCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10920:1: ( ( '=' ) )
             // InternalOCLstdlib.g:10921:1: ( '=' )
@@ -33163,11 +33163,11 @@
             // InternalOCLstdlib.g:10922:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_2_2()); 
+               before(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_2_2());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_2_2()); 
+               after(grammarAccess.getPackageCSAccess().getEqualsSignKeyword_2_2());
             }
 
             }
@@ -33195,7 +33195,7 @@
     public final void rule__PackageCS__Group_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10939:1: ( rule__PackageCS__Group_2__3__Impl )
             // InternalOCLstdlib.g:10940:2: rule__PackageCS__Group_2__3__Impl
@@ -33228,7 +33228,7 @@
     public final void rule__PackageCS__Group_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10950:1: ( ( ( rule__PackageCS__NsURIAssignment_2_3 ) ) )
             // InternalOCLstdlib.g:10951:1: ( ( rule__PackageCS__NsURIAssignment_2_3 ) )
@@ -33237,7 +33237,7 @@
             // InternalOCLstdlib.g:10952:1: ( rule__PackageCS__NsURIAssignment_2_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getNsURIAssignment_2_3()); 
+               before(grammarAccess.getPackageCSAccess().getNsURIAssignment_2_3());
             }
             // InternalOCLstdlib.g:10953:1: ( rule__PackageCS__NsURIAssignment_2_3 )
             // InternalOCLstdlib.g:10953:2: rule__PackageCS__NsURIAssignment_2_3
@@ -33251,7 +33251,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getNsURIAssignment_2_3()); 
+               after(grammarAccess.getPackageCSAccess().getNsURIAssignment_2_3());
             }
 
             }
@@ -33279,7 +33279,7 @@
     public final void rule__ParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10975:1: ( rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1 )
             // InternalOCLstdlib.g:10976:2: rule__ParameterCS__Group__0__Impl rule__ParameterCS__Group__1
@@ -33317,7 +33317,7 @@
     public final void rule__ParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:10987:1: ( ( ( rule__ParameterCS__NameAssignment_0 ) ) )
             // InternalOCLstdlib.g:10988:1: ( ( rule__ParameterCS__NameAssignment_0 ) )
@@ -33326,7 +33326,7 @@
             // InternalOCLstdlib.g:10989:1: ( rule__ParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getParameterCSAccess().getNameAssignment_0());
             }
             // InternalOCLstdlib.g:10990:1: ( rule__ParameterCS__NameAssignment_0 )
             // InternalOCLstdlib.g:10990:2: rule__ParameterCS__NameAssignment_0
@@ -33340,7 +33340,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getParameterCSAccess().getNameAssignment_0());
             }
 
             }
@@ -33368,7 +33368,7 @@
     public final void rule__ParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11004:1: ( rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2 )
             // InternalOCLstdlib.g:11005:2: rule__ParameterCS__Group__1__Impl rule__ParameterCS__Group__2
@@ -33406,7 +33406,7 @@
     public final void rule__ParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11016:1: ( ( ':' ) )
             // InternalOCLstdlib.g:11017:1: ( ':' )
@@ -33415,11 +33415,11 @@
             // InternalOCLstdlib.g:11018:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getParameterCSAccess().getColonKeyword_1());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getParameterCSAccess().getColonKeyword_1());
             }
 
             }
@@ -33447,7 +33447,7 @@
     public final void rule__ParameterCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11035:1: ( rule__ParameterCS__Group__2__Impl )
             // InternalOCLstdlib.g:11036:2: rule__ParameterCS__Group__2__Impl
@@ -33480,7 +33480,7 @@
     public final void rule__ParameterCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11046:1: ( ( ( rule__ParameterCS__OwnedTypeAssignment_2 ) ) )
             // InternalOCLstdlib.g:11047:1: ( ( rule__ParameterCS__OwnedTypeAssignment_2 ) )
@@ -33489,7 +33489,7 @@
             // InternalOCLstdlib.g:11048:1: ( rule__ParameterCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_2()); 
+               before(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_2());
             }
             // InternalOCLstdlib.g:11049:1: ( rule__ParameterCS__OwnedTypeAssignment_2 )
             // InternalOCLstdlib.g:11049:2: rule__ParameterCS__OwnedTypeAssignment_2
@@ -33503,7 +33503,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_2()); 
+               after(grammarAccess.getParameterCSAccess().getOwnedTypeAssignment_2());
             }
 
             }
@@ -33531,7 +33531,7 @@
     public final void rule__LibPropertyCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11069:1: ( rule__LibPropertyCS__Group__0__Impl rule__LibPropertyCS__Group__1 )
             // InternalOCLstdlib.g:11070:2: rule__LibPropertyCS__Group__0__Impl rule__LibPropertyCS__Group__1
@@ -33569,7 +33569,7 @@
     public final void rule__LibPropertyCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11081:1: ( ( ( rule__LibPropertyCS__IsStaticAssignment_0 )? ) )
             // InternalOCLstdlib.g:11082:1: ( ( rule__LibPropertyCS__IsStaticAssignment_0 )? )
@@ -33578,7 +33578,7 @@
             // InternalOCLstdlib.g:11083:1: ( rule__LibPropertyCS__IsStaticAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getIsStaticAssignment_0()); 
+               before(grammarAccess.getLibPropertyCSAccess().getIsStaticAssignment_0());
             }
             // InternalOCLstdlib.g:11084:1: ( rule__LibPropertyCS__IsStaticAssignment_0 )?
             int alt106=2;
@@ -33603,7 +33603,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getIsStaticAssignment_0()); 
+               after(grammarAccess.getLibPropertyCSAccess().getIsStaticAssignment_0());
             }
 
             }
@@ -33631,7 +33631,7 @@
     public final void rule__LibPropertyCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11098:1: ( rule__LibPropertyCS__Group__1__Impl rule__LibPropertyCS__Group__2 )
             // InternalOCLstdlib.g:11099:2: rule__LibPropertyCS__Group__1__Impl rule__LibPropertyCS__Group__2
@@ -33669,7 +33669,7 @@
     public final void rule__LibPropertyCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11110:1: ( ( 'property' ) )
             // InternalOCLstdlib.g:11111:1: ( 'property' )
@@ -33678,11 +33678,11 @@
             // InternalOCLstdlib.g:11112:1: 'property'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getPropertyKeyword_1()); 
+               before(grammarAccess.getLibPropertyCSAccess().getPropertyKeyword_1());
             }
             match(input,32,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getPropertyKeyword_1()); 
+               after(grammarAccess.getLibPropertyCSAccess().getPropertyKeyword_1());
             }
 
             }
@@ -33710,7 +33710,7 @@
     public final void rule__LibPropertyCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11129:1: ( rule__LibPropertyCS__Group__2__Impl rule__LibPropertyCS__Group__3 )
             // InternalOCLstdlib.g:11130:2: rule__LibPropertyCS__Group__2__Impl rule__LibPropertyCS__Group__3
@@ -33748,7 +33748,7 @@
     public final void rule__LibPropertyCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11141:1: ( ( ( rule__LibPropertyCS__NameAssignment_2 ) ) )
             // InternalOCLstdlib.g:11142:1: ( ( rule__LibPropertyCS__NameAssignment_2 ) )
@@ -33757,7 +33757,7 @@
             // InternalOCLstdlib.g:11143:1: ( rule__LibPropertyCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getNameAssignment_2()); 
+               before(grammarAccess.getLibPropertyCSAccess().getNameAssignment_2());
             }
             // InternalOCLstdlib.g:11144:1: ( rule__LibPropertyCS__NameAssignment_2 )
             // InternalOCLstdlib.g:11144:2: rule__LibPropertyCS__NameAssignment_2
@@ -33771,7 +33771,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getNameAssignment_2()); 
+               after(grammarAccess.getLibPropertyCSAccess().getNameAssignment_2());
             }
 
             }
@@ -33799,7 +33799,7 @@
     public final void rule__LibPropertyCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11158:1: ( rule__LibPropertyCS__Group__3__Impl rule__LibPropertyCS__Group__4 )
             // InternalOCLstdlib.g:11159:2: rule__LibPropertyCS__Group__3__Impl rule__LibPropertyCS__Group__4
@@ -33837,7 +33837,7 @@
     public final void rule__LibPropertyCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11170:1: ( ( ':' ) )
             // InternalOCLstdlib.g:11171:1: ( ':' )
@@ -33846,11 +33846,11 @@
             // InternalOCLstdlib.g:11172:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getColonKeyword_3()); 
+               before(grammarAccess.getLibPropertyCSAccess().getColonKeyword_3());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getColonKeyword_3()); 
+               after(grammarAccess.getLibPropertyCSAccess().getColonKeyword_3());
             }
 
             }
@@ -33878,7 +33878,7 @@
     public final void rule__LibPropertyCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11189:1: ( rule__LibPropertyCS__Group__4__Impl rule__LibPropertyCS__Group__5 )
             // InternalOCLstdlib.g:11190:2: rule__LibPropertyCS__Group__4__Impl rule__LibPropertyCS__Group__5
@@ -33916,7 +33916,7 @@
     public final void rule__LibPropertyCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11201:1: ( ( ( rule__LibPropertyCS__OwnedTypeAssignment_4 ) ) )
             // InternalOCLstdlib.g:11202:1: ( ( rule__LibPropertyCS__OwnedTypeAssignment_4 ) )
@@ -33925,7 +33925,7 @@
             // InternalOCLstdlib.g:11203:1: ( rule__LibPropertyCS__OwnedTypeAssignment_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getOwnedTypeAssignment_4()); 
+               before(grammarAccess.getLibPropertyCSAccess().getOwnedTypeAssignment_4());
             }
             // InternalOCLstdlib.g:11204:1: ( rule__LibPropertyCS__OwnedTypeAssignment_4 )
             // InternalOCLstdlib.g:11204:2: rule__LibPropertyCS__OwnedTypeAssignment_4
@@ -33939,7 +33939,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getOwnedTypeAssignment_4()); 
+               after(grammarAccess.getLibPropertyCSAccess().getOwnedTypeAssignment_4());
             }
 
             }
@@ -33967,7 +33967,7 @@
     public final void rule__LibPropertyCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11218:1: ( rule__LibPropertyCS__Group__5__Impl rule__LibPropertyCS__Group__6 )
             // InternalOCLstdlib.g:11219:2: rule__LibPropertyCS__Group__5__Impl rule__LibPropertyCS__Group__6
@@ -34005,7 +34005,7 @@
     public final void rule__LibPropertyCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11230:1: ( ( ( rule__LibPropertyCS__Group_5__0 )? ) )
             // InternalOCLstdlib.g:11231:1: ( ( rule__LibPropertyCS__Group_5__0 )? )
@@ -34014,7 +34014,7 @@
             // InternalOCLstdlib.g:11232:1: ( rule__LibPropertyCS__Group_5__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getGroup_5()); 
+               before(grammarAccess.getLibPropertyCSAccess().getGroup_5());
             }
             // InternalOCLstdlib.g:11233:1: ( rule__LibPropertyCS__Group_5__0 )?
             int alt107=2;
@@ -34039,7 +34039,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getGroup_5()); 
+               after(grammarAccess.getLibPropertyCSAccess().getGroup_5());
             }
 
             }
@@ -34067,7 +34067,7 @@
     public final void rule__LibPropertyCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11247:1: ( rule__LibPropertyCS__Group__6__Impl )
             // InternalOCLstdlib.g:11248:2: rule__LibPropertyCS__Group__6__Impl
@@ -34100,7 +34100,7 @@
     public final void rule__LibPropertyCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11258:1: ( ( ( rule__LibPropertyCS__Alternatives_6 ) ) )
             // InternalOCLstdlib.g:11259:1: ( ( rule__LibPropertyCS__Alternatives_6 ) )
@@ -34109,7 +34109,7 @@
             // InternalOCLstdlib.g:11260:1: ( rule__LibPropertyCS__Alternatives_6 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getAlternatives_6()); 
+               before(grammarAccess.getLibPropertyCSAccess().getAlternatives_6());
             }
             // InternalOCLstdlib.g:11261:1: ( rule__LibPropertyCS__Alternatives_6 )
             // InternalOCLstdlib.g:11261:2: rule__LibPropertyCS__Alternatives_6
@@ -34123,7 +34123,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getAlternatives_6()); 
+               after(grammarAccess.getLibPropertyCSAccess().getAlternatives_6());
             }
 
             }
@@ -34151,7 +34151,7 @@
     public final void rule__LibPropertyCS__Group_5__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11289:1: ( rule__LibPropertyCS__Group_5__0__Impl rule__LibPropertyCS__Group_5__1 )
             // InternalOCLstdlib.g:11290:2: rule__LibPropertyCS__Group_5__0__Impl rule__LibPropertyCS__Group_5__1
@@ -34189,7 +34189,7 @@
     public final void rule__LibPropertyCS__Group_5__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11301:1: ( ( '=>' ) )
             // InternalOCLstdlib.g:11302:1: ( '=>' )
@@ -34198,11 +34198,11 @@
             // InternalOCLstdlib.g:11303:1: '=>'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getEqualsSignGreaterThanSignKeyword_5_0()); 
+               before(grammarAccess.getLibPropertyCSAccess().getEqualsSignGreaterThanSignKeyword_5_0());
             }
             match(input,89,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getEqualsSignGreaterThanSignKeyword_5_0()); 
+               after(grammarAccess.getLibPropertyCSAccess().getEqualsSignGreaterThanSignKeyword_5_0());
             }
 
             }
@@ -34230,7 +34230,7 @@
     public final void rule__LibPropertyCS__Group_5__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11320:1: ( rule__LibPropertyCS__Group_5__1__Impl )
             // InternalOCLstdlib.g:11321:2: rule__LibPropertyCS__Group_5__1__Impl
@@ -34263,7 +34263,7 @@
     public final void rule__LibPropertyCS__Group_5__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11331:1: ( ( ( rule__LibPropertyCS__ImplementationAssignment_5_1 ) ) )
             // InternalOCLstdlib.g:11332:1: ( ( rule__LibPropertyCS__ImplementationAssignment_5_1 ) )
@@ -34272,7 +34272,7 @@
             // InternalOCLstdlib.g:11333:1: ( rule__LibPropertyCS__ImplementationAssignment_5_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getImplementationAssignment_5_1()); 
+               before(grammarAccess.getLibPropertyCSAccess().getImplementationAssignment_5_1());
             }
             // InternalOCLstdlib.g:11334:1: ( rule__LibPropertyCS__ImplementationAssignment_5_1 )
             // InternalOCLstdlib.g:11334:2: rule__LibPropertyCS__ImplementationAssignment_5_1
@@ -34286,7 +34286,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getImplementationAssignment_5_1()); 
+               after(grammarAccess.getLibPropertyCSAccess().getImplementationAssignment_5_1());
             }
 
             }
@@ -34314,7 +34314,7 @@
     public final void rule__LibPropertyCS__Group_6_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11352:1: ( rule__LibPropertyCS__Group_6_0__0__Impl rule__LibPropertyCS__Group_6_0__1 )
             // InternalOCLstdlib.g:11353:2: rule__LibPropertyCS__Group_6_0__0__Impl rule__LibPropertyCS__Group_6_0__1
@@ -34352,7 +34352,7 @@
     public final void rule__LibPropertyCS__Group_6_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11364:1: ( ( '{' ) )
             // InternalOCLstdlib.g:11365:1: ( '{' )
@@ -34361,11 +34361,11 @@
             // InternalOCLstdlib.g:11366:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getLeftCurlyBracketKeyword_6_0_0()); 
+               before(grammarAccess.getLibPropertyCSAccess().getLeftCurlyBracketKeyword_6_0_0());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getLeftCurlyBracketKeyword_6_0_0()); 
+               after(grammarAccess.getLibPropertyCSAccess().getLeftCurlyBracketKeyword_6_0_0());
             }
 
             }
@@ -34393,7 +34393,7 @@
     public final void rule__LibPropertyCS__Group_6_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11383:1: ( rule__LibPropertyCS__Group_6_0__1__Impl rule__LibPropertyCS__Group_6_0__2 )
             // InternalOCLstdlib.g:11384:2: rule__LibPropertyCS__Group_6_0__1__Impl rule__LibPropertyCS__Group_6_0__2
@@ -34431,7 +34431,7 @@
     public final void rule__LibPropertyCS__Group_6_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11395:1: ( ( ( rule__LibPropertyCS__OwnedAnnotationsAssignment_6_0_1 )* ) )
             // InternalOCLstdlib.g:11396:1: ( ( rule__LibPropertyCS__OwnedAnnotationsAssignment_6_0_1 )* )
@@ -34440,7 +34440,7 @@
             // InternalOCLstdlib.g:11397:1: ( rule__LibPropertyCS__OwnedAnnotationsAssignment_6_0_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAssignment_6_0_1()); 
+               before(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAssignment_6_0_1());
             }
             // InternalOCLstdlib.g:11398:1: ( rule__LibPropertyCS__OwnedAnnotationsAssignment_6_0_1 )*
             loop108:
@@ -34472,7 +34472,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAssignment_6_0_1()); 
+               after(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAssignment_6_0_1());
             }
 
             }
@@ -34500,7 +34500,7 @@
     public final void rule__LibPropertyCS__Group_6_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11412:1: ( rule__LibPropertyCS__Group_6_0__2__Impl )
             // InternalOCLstdlib.g:11413:2: rule__LibPropertyCS__Group_6_0__2__Impl
@@ -34533,7 +34533,7 @@
     public final void rule__LibPropertyCS__Group_6_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11423:1: ( ( '}' ) )
             // InternalOCLstdlib.g:11424:1: ( '}' )
@@ -34542,11 +34542,11 @@
             // InternalOCLstdlib.g:11425:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getRightCurlyBracketKeyword_6_0_2()); 
+               before(grammarAccess.getLibPropertyCSAccess().getRightCurlyBracketKeyword_6_0_2());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getRightCurlyBracketKeyword_6_0_2()); 
+               after(grammarAccess.getLibPropertyCSAccess().getRightCurlyBracketKeyword_6_0_2());
             }
 
             }
@@ -34574,7 +34574,7 @@
     public final void rule__PostCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11448:1: ( rule__PostCS__Group__0__Impl rule__PostCS__Group__1 )
             // InternalOCLstdlib.g:11449:2: rule__PostCS__Group__0__Impl rule__PostCS__Group__1
@@ -34612,7 +34612,7 @@
     public final void rule__PostCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11460:1: ( ( ( rule__PostCS__StereotypeAssignment_0 ) ) )
             // InternalOCLstdlib.g:11461:1: ( ( rule__PostCS__StereotypeAssignment_0 ) )
@@ -34621,7 +34621,7 @@
             // InternalOCLstdlib.g:11462:1: ( rule__PostCS__StereotypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getStereotypeAssignment_0()); 
+               before(grammarAccess.getPostCSAccess().getStereotypeAssignment_0());
             }
             // InternalOCLstdlib.g:11463:1: ( rule__PostCS__StereotypeAssignment_0 )
             // InternalOCLstdlib.g:11463:2: rule__PostCS__StereotypeAssignment_0
@@ -34635,7 +34635,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getStereotypeAssignment_0()); 
+               after(grammarAccess.getPostCSAccess().getStereotypeAssignment_0());
             }
 
             }
@@ -34663,7 +34663,7 @@
     public final void rule__PostCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11477:1: ( rule__PostCS__Group__1__Impl rule__PostCS__Group__2 )
             // InternalOCLstdlib.g:11478:2: rule__PostCS__Group__1__Impl rule__PostCS__Group__2
@@ -34701,7 +34701,7 @@
     public final void rule__PostCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11489:1: ( ( ( rule__PostCS__Group_1__0 )? ) )
             // InternalOCLstdlib.g:11490:1: ( ( rule__PostCS__Group_1__0 )? )
@@ -34710,7 +34710,7 @@
             // InternalOCLstdlib.g:11491:1: ( rule__PostCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getGroup_1()); 
+               before(grammarAccess.getPostCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:11492:1: ( rule__PostCS__Group_1__0 )?
             int alt109=2;
@@ -34735,7 +34735,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getGroup_1()); 
+               after(grammarAccess.getPostCSAccess().getGroup_1());
             }
 
             }
@@ -34763,7 +34763,7 @@
     public final void rule__PostCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11506:1: ( rule__PostCS__Group__2__Impl rule__PostCS__Group__3 )
             // InternalOCLstdlib.g:11507:2: rule__PostCS__Group__2__Impl rule__PostCS__Group__3
@@ -34801,7 +34801,7 @@
     public final void rule__PostCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11518:1: ( ( ':' ) )
             // InternalOCLstdlib.g:11519:1: ( ':' )
@@ -34810,11 +34810,11 @@
             // InternalOCLstdlib.g:11520:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getColonKeyword_2()); 
+               before(grammarAccess.getPostCSAccess().getColonKeyword_2());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getColonKeyword_2()); 
+               after(grammarAccess.getPostCSAccess().getColonKeyword_2());
             }
 
             }
@@ -34842,7 +34842,7 @@
     public final void rule__PostCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11537:1: ( rule__PostCS__Group__3__Impl rule__PostCS__Group__4 )
             // InternalOCLstdlib.g:11538:2: rule__PostCS__Group__3__Impl rule__PostCS__Group__4
@@ -34880,7 +34880,7 @@
     public final void rule__PostCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11549:1: ( ( ( rule__PostCS__OwnedSpecificationAssignment_3 ) ) )
             // InternalOCLstdlib.g:11550:1: ( ( rule__PostCS__OwnedSpecificationAssignment_3 ) )
@@ -34889,7 +34889,7 @@
             // InternalOCLstdlib.g:11551:1: ( rule__PostCS__OwnedSpecificationAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getOwnedSpecificationAssignment_3()); 
+               before(grammarAccess.getPostCSAccess().getOwnedSpecificationAssignment_3());
             }
             // InternalOCLstdlib.g:11552:1: ( rule__PostCS__OwnedSpecificationAssignment_3 )
             // InternalOCLstdlib.g:11552:2: rule__PostCS__OwnedSpecificationAssignment_3
@@ -34903,7 +34903,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getOwnedSpecificationAssignment_3()); 
+               after(grammarAccess.getPostCSAccess().getOwnedSpecificationAssignment_3());
             }
 
             }
@@ -34931,7 +34931,7 @@
     public final void rule__PostCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11566:1: ( rule__PostCS__Group__4__Impl )
             // InternalOCLstdlib.g:11567:2: rule__PostCS__Group__4__Impl
@@ -34964,7 +34964,7 @@
     public final void rule__PostCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11577:1: ( ( ';' ) )
             // InternalOCLstdlib.g:11578:1: ( ';' )
@@ -34973,11 +34973,11 @@
             // InternalOCLstdlib.g:11579:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getSemicolonKeyword_4()); 
+               before(grammarAccess.getPostCSAccess().getSemicolonKeyword_4());
             }
             match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getSemicolonKeyword_4()); 
+               after(grammarAccess.getPostCSAccess().getSemicolonKeyword_4());
             }
 
             }
@@ -35005,7 +35005,7 @@
     public final void rule__PostCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11606:1: ( rule__PostCS__Group_1__0__Impl rule__PostCS__Group_1__1 )
             // InternalOCLstdlib.g:11607:2: rule__PostCS__Group_1__0__Impl rule__PostCS__Group_1__1
@@ -35043,7 +35043,7 @@
     public final void rule__PostCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11618:1: ( ( ( rule__PostCS__NameAssignment_1_0 ) ) )
             // InternalOCLstdlib.g:11619:1: ( ( rule__PostCS__NameAssignment_1_0 ) )
@@ -35052,7 +35052,7 @@
             // InternalOCLstdlib.g:11620:1: ( rule__PostCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getNameAssignment_1_0()); 
+               before(grammarAccess.getPostCSAccess().getNameAssignment_1_0());
             }
             // InternalOCLstdlib.g:11621:1: ( rule__PostCS__NameAssignment_1_0 )
             // InternalOCLstdlib.g:11621:2: rule__PostCS__NameAssignment_1_0
@@ -35066,7 +35066,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getNameAssignment_1_0()); 
+               after(grammarAccess.getPostCSAccess().getNameAssignment_1_0());
             }
 
             }
@@ -35094,7 +35094,7 @@
     public final void rule__PostCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11635:1: ( rule__PostCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:11636:2: rule__PostCS__Group_1__1__Impl
@@ -35127,7 +35127,7 @@
     public final void rule__PostCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11646:1: ( ( ( rule__PostCS__Group_1_1__0 )? ) )
             // InternalOCLstdlib.g:11647:1: ( ( rule__PostCS__Group_1_1__0 )? )
@@ -35136,7 +35136,7 @@
             // InternalOCLstdlib.g:11648:1: ( rule__PostCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getPostCSAccess().getGroup_1_1());
             }
             // InternalOCLstdlib.g:11649:1: ( rule__PostCS__Group_1_1__0 )?
             int alt110=2;
@@ -35161,7 +35161,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getPostCSAccess().getGroup_1_1());
             }
 
             }
@@ -35189,7 +35189,7 @@
     public final void rule__PostCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11667:1: ( rule__PostCS__Group_1_1__0__Impl rule__PostCS__Group_1_1__1 )
             // InternalOCLstdlib.g:11668:2: rule__PostCS__Group_1_1__0__Impl rule__PostCS__Group_1_1__1
@@ -35227,7 +35227,7 @@
     public final void rule__PostCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11679:1: ( ( '(' ) )
             // InternalOCLstdlib.g:11680:1: ( '(' )
@@ -35236,11 +35236,11 @@
             // InternalOCLstdlib.g:11681:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getLeftParenthesisKeyword_1_1_0()); 
+               before(grammarAccess.getPostCSAccess().getLeftParenthesisKeyword_1_1_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getLeftParenthesisKeyword_1_1_0()); 
+               after(grammarAccess.getPostCSAccess().getLeftParenthesisKeyword_1_1_0());
             }
 
             }
@@ -35268,7 +35268,7 @@
     public final void rule__PostCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11698:1: ( rule__PostCS__Group_1_1__1__Impl rule__PostCS__Group_1_1__2 )
             // InternalOCLstdlib.g:11699:2: rule__PostCS__Group_1_1__1__Impl rule__PostCS__Group_1_1__2
@@ -35306,7 +35306,7 @@
     public final void rule__PostCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11710:1: ( ( ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
             // InternalOCLstdlib.g:11711:1: ( ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
@@ -35315,7 +35315,7 @@
             // InternalOCLstdlib.g:11712:1: ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationAssignment_1_1_1()); 
+               before(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
             // InternalOCLstdlib.g:11713:1: ( rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1 )
             // InternalOCLstdlib.g:11713:2: rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1
@@ -35329,7 +35329,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationAssignment_1_1_1()); 
+               after(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
 
             }
@@ -35357,7 +35357,7 @@
     public final void rule__PostCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11727:1: ( rule__PostCS__Group_1_1__2__Impl )
             // InternalOCLstdlib.g:11728:2: rule__PostCS__Group_1_1__2__Impl
@@ -35390,7 +35390,7 @@
     public final void rule__PostCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11738:1: ( ( ')' ) )
             // InternalOCLstdlib.g:11739:1: ( ')' )
@@ -35399,11 +35399,11 @@
             // InternalOCLstdlib.g:11740:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getRightParenthesisKeyword_1_1_2()); 
+               before(grammarAccess.getPostCSAccess().getRightParenthesisKeyword_1_1_2());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getRightParenthesisKeyword_1_1_2()); 
+               after(grammarAccess.getPostCSAccess().getRightParenthesisKeyword_1_1_2());
             }
 
             }
@@ -35431,7 +35431,7 @@
     public final void rule__PreCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11763:1: ( rule__PreCS__Group__0__Impl rule__PreCS__Group__1 )
             // InternalOCLstdlib.g:11764:2: rule__PreCS__Group__0__Impl rule__PreCS__Group__1
@@ -35469,7 +35469,7 @@
     public final void rule__PreCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11775:1: ( ( ( rule__PreCS__StereotypeAssignment_0 ) ) )
             // InternalOCLstdlib.g:11776:1: ( ( rule__PreCS__StereotypeAssignment_0 ) )
@@ -35478,7 +35478,7 @@
             // InternalOCLstdlib.g:11777:1: ( rule__PreCS__StereotypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getStereotypeAssignment_0()); 
+               before(grammarAccess.getPreCSAccess().getStereotypeAssignment_0());
             }
             // InternalOCLstdlib.g:11778:1: ( rule__PreCS__StereotypeAssignment_0 )
             // InternalOCLstdlib.g:11778:2: rule__PreCS__StereotypeAssignment_0
@@ -35492,7 +35492,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getStereotypeAssignment_0()); 
+               after(grammarAccess.getPreCSAccess().getStereotypeAssignment_0());
             }
 
             }
@@ -35520,7 +35520,7 @@
     public final void rule__PreCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11792:1: ( rule__PreCS__Group__1__Impl rule__PreCS__Group__2 )
             // InternalOCLstdlib.g:11793:2: rule__PreCS__Group__1__Impl rule__PreCS__Group__2
@@ -35558,7 +35558,7 @@
     public final void rule__PreCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11804:1: ( ( ( rule__PreCS__Group_1__0 )? ) )
             // InternalOCLstdlib.g:11805:1: ( ( rule__PreCS__Group_1__0 )? )
@@ -35567,7 +35567,7 @@
             // InternalOCLstdlib.g:11806:1: ( rule__PreCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getGroup_1()); 
+               before(grammarAccess.getPreCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:11807:1: ( rule__PreCS__Group_1__0 )?
             int alt111=2;
@@ -35592,7 +35592,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getGroup_1()); 
+               after(grammarAccess.getPreCSAccess().getGroup_1());
             }
 
             }
@@ -35620,7 +35620,7 @@
     public final void rule__PreCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11821:1: ( rule__PreCS__Group__2__Impl rule__PreCS__Group__3 )
             // InternalOCLstdlib.g:11822:2: rule__PreCS__Group__2__Impl rule__PreCS__Group__3
@@ -35658,7 +35658,7 @@
     public final void rule__PreCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11833:1: ( ( ':' ) )
             // InternalOCLstdlib.g:11834:1: ( ':' )
@@ -35667,11 +35667,11 @@
             // InternalOCLstdlib.g:11835:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getColonKeyword_2()); 
+               before(grammarAccess.getPreCSAccess().getColonKeyword_2());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getColonKeyword_2()); 
+               after(grammarAccess.getPreCSAccess().getColonKeyword_2());
             }
 
             }
@@ -35699,7 +35699,7 @@
     public final void rule__PreCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11852:1: ( rule__PreCS__Group__3__Impl rule__PreCS__Group__4 )
             // InternalOCLstdlib.g:11853:2: rule__PreCS__Group__3__Impl rule__PreCS__Group__4
@@ -35737,7 +35737,7 @@
     public final void rule__PreCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11864:1: ( ( ( rule__PreCS__OwnedSpecificationAssignment_3 ) ) )
             // InternalOCLstdlib.g:11865:1: ( ( rule__PreCS__OwnedSpecificationAssignment_3 ) )
@@ -35746,7 +35746,7 @@
             // InternalOCLstdlib.g:11866:1: ( rule__PreCS__OwnedSpecificationAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getOwnedSpecificationAssignment_3()); 
+               before(grammarAccess.getPreCSAccess().getOwnedSpecificationAssignment_3());
             }
             // InternalOCLstdlib.g:11867:1: ( rule__PreCS__OwnedSpecificationAssignment_3 )
             // InternalOCLstdlib.g:11867:2: rule__PreCS__OwnedSpecificationAssignment_3
@@ -35760,7 +35760,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getOwnedSpecificationAssignment_3()); 
+               after(grammarAccess.getPreCSAccess().getOwnedSpecificationAssignment_3());
             }
 
             }
@@ -35788,7 +35788,7 @@
     public final void rule__PreCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11881:1: ( rule__PreCS__Group__4__Impl )
             // InternalOCLstdlib.g:11882:2: rule__PreCS__Group__4__Impl
@@ -35821,7 +35821,7 @@
     public final void rule__PreCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11892:1: ( ( ';' ) )
             // InternalOCLstdlib.g:11893:1: ( ';' )
@@ -35830,11 +35830,11 @@
             // InternalOCLstdlib.g:11894:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getSemicolonKeyword_4()); 
+               before(grammarAccess.getPreCSAccess().getSemicolonKeyword_4());
             }
             match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getSemicolonKeyword_4()); 
+               after(grammarAccess.getPreCSAccess().getSemicolonKeyword_4());
             }
 
             }
@@ -35862,7 +35862,7 @@
     public final void rule__PreCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11921:1: ( rule__PreCS__Group_1__0__Impl rule__PreCS__Group_1__1 )
             // InternalOCLstdlib.g:11922:2: rule__PreCS__Group_1__0__Impl rule__PreCS__Group_1__1
@@ -35900,7 +35900,7 @@
     public final void rule__PreCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11933:1: ( ( ( rule__PreCS__NameAssignment_1_0 ) ) )
             // InternalOCLstdlib.g:11934:1: ( ( rule__PreCS__NameAssignment_1_0 ) )
@@ -35909,7 +35909,7 @@
             // InternalOCLstdlib.g:11935:1: ( rule__PreCS__NameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getNameAssignment_1_0()); 
+               before(grammarAccess.getPreCSAccess().getNameAssignment_1_0());
             }
             // InternalOCLstdlib.g:11936:1: ( rule__PreCS__NameAssignment_1_0 )
             // InternalOCLstdlib.g:11936:2: rule__PreCS__NameAssignment_1_0
@@ -35923,7 +35923,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getNameAssignment_1_0()); 
+               after(grammarAccess.getPreCSAccess().getNameAssignment_1_0());
             }
 
             }
@@ -35951,7 +35951,7 @@
     public final void rule__PreCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11950:1: ( rule__PreCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:11951:2: rule__PreCS__Group_1__1__Impl
@@ -35984,7 +35984,7 @@
     public final void rule__PreCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11961:1: ( ( ( rule__PreCS__Group_1_1__0 )? ) )
             // InternalOCLstdlib.g:11962:1: ( ( rule__PreCS__Group_1_1__0 )? )
@@ -35993,7 +35993,7 @@
             // InternalOCLstdlib.g:11963:1: ( rule__PreCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getPreCSAccess().getGroup_1_1());
             }
             // InternalOCLstdlib.g:11964:1: ( rule__PreCS__Group_1_1__0 )?
             int alt112=2;
@@ -36018,7 +36018,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getPreCSAccess().getGroup_1_1());
             }
 
             }
@@ -36046,7 +36046,7 @@
     public final void rule__PreCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11982:1: ( rule__PreCS__Group_1_1__0__Impl rule__PreCS__Group_1_1__1 )
             // InternalOCLstdlib.g:11983:2: rule__PreCS__Group_1_1__0__Impl rule__PreCS__Group_1_1__1
@@ -36084,7 +36084,7 @@
     public final void rule__PreCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:11994:1: ( ( '(' ) )
             // InternalOCLstdlib.g:11995:1: ( '(' )
@@ -36093,11 +36093,11 @@
             // InternalOCLstdlib.g:11996:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getLeftParenthesisKeyword_1_1_0()); 
+               before(grammarAccess.getPreCSAccess().getLeftParenthesisKeyword_1_1_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getLeftParenthesisKeyword_1_1_0()); 
+               after(grammarAccess.getPreCSAccess().getLeftParenthesisKeyword_1_1_0());
             }
 
             }
@@ -36125,7 +36125,7 @@
     public final void rule__PreCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12013:1: ( rule__PreCS__Group_1_1__1__Impl rule__PreCS__Group_1_1__2 )
             // InternalOCLstdlib.g:12014:2: rule__PreCS__Group_1_1__1__Impl rule__PreCS__Group_1_1__2
@@ -36163,7 +36163,7 @@
     public final void rule__PreCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12025:1: ( ( ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 ) ) )
             // InternalOCLstdlib.g:12026:1: ( ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 ) )
@@ -36172,7 +36172,7 @@
             // InternalOCLstdlib.g:12027:1: ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationAssignment_1_1_1()); 
+               before(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
             // InternalOCLstdlib.g:12028:1: ( rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1 )
             // InternalOCLstdlib.g:12028:2: rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1
@@ -36186,7 +36186,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationAssignment_1_1_1()); 
+               after(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationAssignment_1_1_1());
             }
 
             }
@@ -36214,7 +36214,7 @@
     public final void rule__PreCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12042:1: ( rule__PreCS__Group_1_1__2__Impl )
             // InternalOCLstdlib.g:12043:2: rule__PreCS__Group_1_1__2__Impl
@@ -36247,7 +36247,7 @@
     public final void rule__PreCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12053:1: ( ( ')' ) )
             // InternalOCLstdlib.g:12054:1: ( ')' )
@@ -36256,11 +36256,11 @@
             // InternalOCLstdlib.g:12055:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getRightParenthesisKeyword_1_1_2()); 
+               before(grammarAccess.getPreCSAccess().getRightParenthesisKeyword_1_1_2());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getRightParenthesisKeyword_1_1_2()); 
+               after(grammarAccess.getPreCSAccess().getRightParenthesisKeyword_1_1_2());
             }
 
             }
@@ -36288,7 +36288,7 @@
     public final void rule__PrecedenceCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12078:1: ( rule__PrecedenceCS__Group__0__Impl rule__PrecedenceCS__Group__1 )
             // InternalOCLstdlib.g:12079:2: rule__PrecedenceCS__Group__0__Impl rule__PrecedenceCS__Group__1
@@ -36326,7 +36326,7 @@
     public final void rule__PrecedenceCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12090:1: ( ( ( rule__PrecedenceCS__Alternatives_0 ) ) )
             // InternalOCLstdlib.g:12091:1: ( ( rule__PrecedenceCS__Alternatives_0 ) )
@@ -36335,7 +36335,7 @@
             // InternalOCLstdlib.g:12092:1: ( rule__PrecedenceCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrecedenceCSAccess().getAlternatives_0()); 
+               before(grammarAccess.getPrecedenceCSAccess().getAlternatives_0());
             }
             // InternalOCLstdlib.g:12093:1: ( rule__PrecedenceCS__Alternatives_0 )
             // InternalOCLstdlib.g:12093:2: rule__PrecedenceCS__Alternatives_0
@@ -36349,7 +36349,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrecedenceCSAccess().getAlternatives_0()); 
+               after(grammarAccess.getPrecedenceCSAccess().getAlternatives_0());
             }
 
             }
@@ -36377,7 +36377,7 @@
     public final void rule__PrecedenceCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12107:1: ( rule__PrecedenceCS__Group__1__Impl rule__PrecedenceCS__Group__2 )
             // InternalOCLstdlib.g:12108:2: rule__PrecedenceCS__Group__1__Impl rule__PrecedenceCS__Group__2
@@ -36415,7 +36415,7 @@
     public final void rule__PrecedenceCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12119:1: ( ( ':' ) )
             // InternalOCLstdlib.g:12120:1: ( ':' )
@@ -36424,11 +36424,11 @@
             // InternalOCLstdlib.g:12121:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrecedenceCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getPrecedenceCSAccess().getColonKeyword_1());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrecedenceCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getPrecedenceCSAccess().getColonKeyword_1());
             }
 
             }
@@ -36456,7 +36456,7 @@
     public final void rule__PrecedenceCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12138:1: ( rule__PrecedenceCS__Group__2__Impl )
             // InternalOCLstdlib.g:12139:2: rule__PrecedenceCS__Group__2__Impl
@@ -36489,7 +36489,7 @@
     public final void rule__PrecedenceCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12149:1: ( ( ( rule__PrecedenceCS__NameAssignment_2 ) ) )
             // InternalOCLstdlib.g:12150:1: ( ( rule__PrecedenceCS__NameAssignment_2 ) )
@@ -36498,7 +36498,7 @@
             // InternalOCLstdlib.g:12151:1: ( rule__PrecedenceCS__NameAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrecedenceCSAccess().getNameAssignment_2()); 
+               before(grammarAccess.getPrecedenceCSAccess().getNameAssignment_2());
             }
             // InternalOCLstdlib.g:12152:1: ( rule__PrecedenceCS__NameAssignment_2 )
             // InternalOCLstdlib.g:12152:2: rule__PrecedenceCS__NameAssignment_2
@@ -36512,7 +36512,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrecedenceCSAccess().getNameAssignment_2()); 
+               after(grammarAccess.getPrecedenceCSAccess().getNameAssignment_2());
             }
 
             }
@@ -36540,7 +36540,7 @@
     public final void rule__TypedMultiplicityRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12172:1: ( rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1 )
             // InternalOCLstdlib.g:12173:2: rule__TypedMultiplicityRefCS__Group__0__Impl rule__TypedMultiplicityRefCS__Group__1
@@ -36578,7 +36578,7 @@
     public final void rule__TypedMultiplicityRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12184:1: ( ( ( rule__TypedMultiplicityRefCS__Alternatives_0 ) ) )
             // InternalOCLstdlib.g:12185:1: ( ( rule__TypedMultiplicityRefCS__Alternatives_0 ) )
@@ -36587,7 +36587,7 @@
             // InternalOCLstdlib.g:12186:1: ( rule__TypedMultiplicityRefCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedMultiplicityRefCSAccess().getAlternatives_0()); 
+               before(grammarAccess.getTypedMultiplicityRefCSAccess().getAlternatives_0());
             }
             // InternalOCLstdlib.g:12187:1: ( rule__TypedMultiplicityRefCS__Alternatives_0 )
             // InternalOCLstdlib.g:12187:2: rule__TypedMultiplicityRefCS__Alternatives_0
@@ -36601,7 +36601,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedMultiplicityRefCSAccess().getAlternatives_0()); 
+               after(grammarAccess.getTypedMultiplicityRefCSAccess().getAlternatives_0());
             }
 
             }
@@ -36629,7 +36629,7 @@
     public final void rule__TypedMultiplicityRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12201:1: ( rule__TypedMultiplicityRefCS__Group__1__Impl )
             // InternalOCLstdlib.g:12202:2: rule__TypedMultiplicityRefCS__Group__1__Impl
@@ -36662,7 +36662,7 @@
     public final void rule__TypedMultiplicityRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12212:1: ( ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? ) )
             // InternalOCLstdlib.g:12213:1: ( ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )? )
@@ -36671,7 +36671,7 @@
             // InternalOCLstdlib.g:12214:1: ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityAssignment_1()); 
+               before(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityAssignment_1());
             }
             // InternalOCLstdlib.g:12215:1: ( rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1 )?
             int alt113=2;
@@ -36696,7 +36696,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityAssignment_1()); 
+               after(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityAssignment_1());
             }
 
             }
@@ -36724,7 +36724,7 @@
     public final void rule__TypedTypeRefCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12233:1: ( rule__TypedTypeRefCS__Group_0__0__Impl rule__TypedTypeRefCS__Group_0__1 )
             // InternalOCLstdlib.g:12234:2: rule__TypedTypeRefCS__Group_0__0__Impl rule__TypedTypeRefCS__Group_0__1
@@ -36762,7 +36762,7 @@
     public final void rule__TypedTypeRefCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12245:1: ( ( ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 ) ) )
             // InternalOCLstdlib.g:12246:1: ( ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 ) )
@@ -36771,7 +36771,7 @@
             // InternalOCLstdlib.g:12247:1: ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofAssignment_0_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofAssignment_0_0());
             }
             // InternalOCLstdlib.g:12248:1: ( rule__TypedTypeRefCS__IsTypeofAssignment_0_0 )
             // InternalOCLstdlib.g:12248:2: rule__TypedTypeRefCS__IsTypeofAssignment_0_0
@@ -36785,7 +36785,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofAssignment_0_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofAssignment_0_0());
             }
 
             }
@@ -36813,7 +36813,7 @@
     public final void rule__TypedTypeRefCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12262:1: ( rule__TypedTypeRefCS__Group_0__1__Impl rule__TypedTypeRefCS__Group_0__2 )
             // InternalOCLstdlib.g:12263:2: rule__TypedTypeRefCS__Group_0__1__Impl rule__TypedTypeRefCS__Group_0__2
@@ -36851,7 +36851,7 @@
     public final void rule__TypedTypeRefCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12274:1: ( ( '(' ) )
             // InternalOCLstdlib.g:12275:1: ( '(' )
@@ -36860,11 +36860,11 @@
             // InternalOCLstdlib.g:12276:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_0_1()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_0_1());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_0_1()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_0_1());
             }
 
             }
@@ -36892,7 +36892,7 @@
     public final void rule__TypedTypeRefCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12293:1: ( rule__TypedTypeRefCS__Group_0__2__Impl rule__TypedTypeRefCS__Group_0__3 )
             // InternalOCLstdlib.g:12294:2: rule__TypedTypeRefCS__Group_0__2__Impl rule__TypedTypeRefCS__Group_0__3
@@ -36930,7 +36930,7 @@
     public final void rule__TypedTypeRefCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12305:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 ) ) )
             // InternalOCLstdlib.g:12306:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 ) )
@@ -36939,7 +36939,7 @@
             // InternalOCLstdlib.g:12307:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0_2()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0_2());
             }
             // InternalOCLstdlib.g:12308:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2 )
             // InternalOCLstdlib.g:12308:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2
@@ -36953,7 +36953,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0_2()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_0_2());
             }
 
             }
@@ -36981,7 +36981,7 @@
     public final void rule__TypedTypeRefCS__Group_0__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12322:1: ( rule__TypedTypeRefCS__Group_0__3__Impl )
             // InternalOCLstdlib.g:12323:2: rule__TypedTypeRefCS__Group_0__3__Impl
@@ -37014,7 +37014,7 @@
     public final void rule__TypedTypeRefCS__Group_0__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12333:1: ( ( ')' ) )
             // InternalOCLstdlib.g:12334:1: ( ')' )
@@ -37023,11 +37023,11 @@
             // InternalOCLstdlib.g:12335:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_0_3()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_0_3());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_0_3()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_0_3());
             }
 
             }
@@ -37055,7 +37055,7 @@
     public final void rule__TypedTypeRefCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12360:1: ( rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1 )
             // InternalOCLstdlib.g:12361:2: rule__TypedTypeRefCS__Group_1__0__Impl rule__TypedTypeRefCS__Group_1__1
@@ -37093,7 +37093,7 @@
     public final void rule__TypedTypeRefCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12372:1: ( ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 ) ) )
             // InternalOCLstdlib.g:12373:1: ( ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 ) )
@@ -37102,7 +37102,7 @@
             // InternalOCLstdlib.g:12374:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_1_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_1_0());
             }
             // InternalOCLstdlib.g:12375:1: ( rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0 )
             // InternalOCLstdlib.g:12375:2: rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0
@@ -37116,7 +37116,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_1_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameAssignment_1_0());
             }
 
             }
@@ -37144,7 +37144,7 @@
     public final void rule__TypedTypeRefCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12389:1: ( rule__TypedTypeRefCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:12390:2: rule__TypedTypeRefCS__Group_1__1__Impl
@@ -37177,7 +37177,7 @@
     public final void rule__TypedTypeRefCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12400:1: ( ( ( rule__TypedTypeRefCS__Group_1_1__0 )? ) )
             // InternalOCLstdlib.g:12401:1: ( ( rule__TypedTypeRefCS__Group_1_1__0 )? )
@@ -37186,7 +37186,7 @@
             // InternalOCLstdlib.g:12402:1: ( rule__TypedTypeRefCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_1());
             }
             // InternalOCLstdlib.g:12403:1: ( rule__TypedTypeRefCS__Group_1_1__0 )?
             int alt114=2;
@@ -37211,7 +37211,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getGroup_1_1());
             }
 
             }
@@ -37239,7 +37239,7 @@
     public final void rule__TypedTypeRefCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12421:1: ( rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1 )
             // InternalOCLstdlib.g:12422:2: rule__TypedTypeRefCS__Group_1_1__0__Impl rule__TypedTypeRefCS__Group_1_1__1
@@ -37277,7 +37277,7 @@
     public final void rule__TypedTypeRefCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12433:1: ( ( '(' ) )
             // InternalOCLstdlib.g:12434:1: ( '(' )
@@ -37286,11 +37286,11 @@
             // InternalOCLstdlib.g:12435:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_1_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_1_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_1_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_1_0());
             }
 
             }
@@ -37318,7 +37318,7 @@
     public final void rule__TypedTypeRefCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12452:1: ( rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2 )
             // InternalOCLstdlib.g:12453:2: rule__TypedTypeRefCS__Group_1_1__1__Impl rule__TypedTypeRefCS__Group_1_1__2
@@ -37356,7 +37356,7 @@
     public final void rule__TypedTypeRefCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12464:1: ( ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) ) )
             // InternalOCLstdlib.g:12465:1: ( ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 ) )
@@ -37365,7 +37365,7 @@
             // InternalOCLstdlib.g:12466:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1_1()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1_1());
             }
             // InternalOCLstdlib.g:12467:1: ( rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1 )
             // InternalOCLstdlib.g:12467:2: rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1
@@ -37379,7 +37379,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1_1()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingAssignment_1_1_1());
             }
 
             }
@@ -37407,7 +37407,7 @@
     public final void rule__TypedTypeRefCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12481:1: ( rule__TypedTypeRefCS__Group_1_1__2__Impl )
             // InternalOCLstdlib.g:12482:2: rule__TypedTypeRefCS__Group_1_1__2__Impl
@@ -37440,7 +37440,7 @@
     public final void rule__TypedTypeRefCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12492:1: ( ( ')' ) )
             // InternalOCLstdlib.g:12493:1: ( ')' )
@@ -37449,11 +37449,11 @@
             // InternalOCLstdlib.g:12494:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_1_2()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_1_2());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_1_2()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_1_2());
             }
 
             }
@@ -37481,7 +37481,7 @@
     public final void rule__TuplePartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12517:1: ( rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1 )
             // InternalOCLstdlib.g:12518:2: rule__TuplePartCS__Group__0__Impl rule__TuplePartCS__Group__1
@@ -37519,7 +37519,7 @@
     public final void rule__TuplePartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12529:1: ( ( ( rule__TuplePartCS__NameAssignment_0 ) ) )
             // InternalOCLstdlib.g:12530:1: ( ( rule__TuplePartCS__NameAssignment_0 ) )
@@ -37528,7 +37528,7 @@
             // InternalOCLstdlib.g:12531:1: ( rule__TuplePartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTuplePartCSAccess().getNameAssignment_0());
             }
             // InternalOCLstdlib.g:12532:1: ( rule__TuplePartCS__NameAssignment_0 )
             // InternalOCLstdlib.g:12532:2: rule__TuplePartCS__NameAssignment_0
@@ -37542,7 +37542,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTuplePartCSAccess().getNameAssignment_0());
             }
 
             }
@@ -37570,7 +37570,7 @@
     public final void rule__TuplePartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12546:1: ( rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2 )
             // InternalOCLstdlib.g:12547:2: rule__TuplePartCS__Group__1__Impl rule__TuplePartCS__Group__2
@@ -37608,7 +37608,7 @@
     public final void rule__TuplePartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12558:1: ( ( ':' ) )
             // InternalOCLstdlib.g:12559:1: ( ':' )
@@ -37617,11 +37617,11 @@
             // InternalOCLstdlib.g:12560:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
             }
 
             }
@@ -37649,7 +37649,7 @@
     public final void rule__TuplePartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12577:1: ( rule__TuplePartCS__Group__2__Impl )
             // InternalOCLstdlib.g:12578:2: rule__TuplePartCS__Group__2__Impl
@@ -37682,7 +37682,7 @@
     public final void rule__TuplePartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12588:1: ( ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) ) )
             // InternalOCLstdlib.g:12589:1: ( ( rule__TuplePartCS__OwnedTypeAssignment_2 ) )
@@ -37691,7 +37691,7 @@
             // InternalOCLstdlib.g:12590:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2()); 
+               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2());
             }
             // InternalOCLstdlib.g:12591:1: ( rule__TuplePartCS__OwnedTypeAssignment_2 )
             // InternalOCLstdlib.g:12591:2: rule__TuplePartCS__OwnedTypeAssignment_2
@@ -37705,7 +37705,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2()); 
+               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeAssignment_2());
             }
 
             }
@@ -37733,7 +37733,7 @@
     public final void rule__URIPathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12611:1: ( rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1 )
             // InternalOCLstdlib.g:12612:2: rule__URIPathNameCS__Group__0__Impl rule__URIPathNameCS__Group__1
@@ -37771,7 +37771,7 @@
     public final void rule__URIPathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12623:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) ) )
             // InternalOCLstdlib.g:12624:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 ) )
@@ -37780,7 +37780,7 @@
             // InternalOCLstdlib.g:12625:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
             // InternalOCLstdlib.g:12626:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_0 )
             // InternalOCLstdlib.g:12626:2: rule__URIPathNameCS__OwnedPathElementsAssignment_0
@@ -37794,7 +37794,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
 
             }
@@ -37822,7 +37822,7 @@
     public final void rule__URIPathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12640:1: ( rule__URIPathNameCS__Group__1__Impl )
             // InternalOCLstdlib.g:12641:2: rule__URIPathNameCS__Group__1__Impl
@@ -37855,7 +37855,7 @@
     public final void rule__URIPathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12651:1: ( ( ( rule__URIPathNameCS__Group_1__0 )* ) )
             // InternalOCLstdlib.g:12652:1: ( ( rule__URIPathNameCS__Group_1__0 )* )
@@ -37864,7 +37864,7 @@
             // InternalOCLstdlib.g:12653:1: ( rule__URIPathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getGroup_1()); 
+               before(grammarAccess.getURIPathNameCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:12654:1: ( rule__URIPathNameCS__Group_1__0 )*
             loop115:
@@ -37896,7 +37896,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getGroup_1()); 
+               after(grammarAccess.getURIPathNameCSAccess().getGroup_1());
             }
 
             }
@@ -37924,7 +37924,7 @@
     public final void rule__URIPathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12672:1: ( rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1 )
             // InternalOCLstdlib.g:12673:2: rule__URIPathNameCS__Group_1__0__Impl rule__URIPathNameCS__Group_1__1
@@ -37962,7 +37962,7 @@
     public final void rule__URIPathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12684:1: ( ( '::' ) )
             // InternalOCLstdlib.g:12685:1: ( '::' )
@@ -37971,11 +37971,11 @@
             // InternalOCLstdlib.g:12686:1: '::'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0()); 
+               before(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
             }
             match(input,81,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0()); 
+               after(grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
             }
 
             }
@@ -38003,7 +38003,7 @@
     public final void rule__URIPathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12703:1: ( rule__URIPathNameCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:12704:2: rule__URIPathNameCS__Group_1__1__Impl
@@ -38036,7 +38036,7 @@
     public final void rule__URIPathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12714:1: ( ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
             // InternalOCLstdlib.g:12715:1: ( ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 ) )
@@ -38045,7 +38045,7 @@
             // InternalOCLstdlib.g:12716:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
             // InternalOCLstdlib.g:12717:1: ( rule__URIPathNameCS__OwnedPathElementsAssignment_1_1 )
             // InternalOCLstdlib.g:12717:2: rule__URIPathNameCS__OwnedPathElementsAssignment_1_1
@@ -38059,7 +38059,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
 
             }
@@ -38087,7 +38087,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12735:1: ( rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1 )
             // InternalOCLstdlib.g:12736:2: rule__URIFirstPathElementCS__Group_1__0__Impl rule__URIFirstPathElementCS__Group_1__1
@@ -38125,7 +38125,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12747:1: ( ( () ) )
             // InternalOCLstdlib.g:12748:1: ( () )
@@ -38134,15 +38134,15 @@
             // InternalOCLstdlib.g:12749:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0());
             }
             // InternalOCLstdlib.g:12750:1: ()
-            // InternalOCLstdlib.g:12752:1: 
+            // InternalOCLstdlib.g:12752:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0());
             }
 
             }
@@ -38166,7 +38166,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12766:1: ( rule__URIFirstPathElementCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:12767:2: rule__URIFirstPathElementCS__Group_1__1__Impl
@@ -38199,7 +38199,7 @@
     public final void rule__URIFirstPathElementCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12777:1: ( ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) ) )
             // InternalOCLstdlib.g:12778:1: ( ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 ) )
@@ -38208,7 +38208,7 @@
             // InternalOCLstdlib.g:12779:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1());
             }
             // InternalOCLstdlib.g:12780:1: ( rule__URIFirstPathElementCS__ReferredElementAssignment_1_1 )
             // InternalOCLstdlib.g:12780:2: rule__URIFirstPathElementCS__ReferredElementAssignment_1_1
@@ -38222,7 +38222,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementAssignment_1_1());
             }
 
             }
@@ -38250,7 +38250,7 @@
     public final void rule__CollectionTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12798:1: ( rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1 )
             // InternalOCLstdlib.g:12799:2: rule__CollectionTypeCS__Group__0__Impl rule__CollectionTypeCS__Group__1
@@ -38288,7 +38288,7 @@
     public final void rule__CollectionTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12810:1: ( ( ( rule__CollectionTypeCS__NameAssignment_0 ) ) )
             // InternalOCLstdlib.g:12811:1: ( ( rule__CollectionTypeCS__NameAssignment_0 ) )
@@ -38297,7 +38297,7 @@
             // InternalOCLstdlib.g:12812:1: ( rule__CollectionTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0());
             }
             // InternalOCLstdlib.g:12813:1: ( rule__CollectionTypeCS__NameAssignment_0 )
             // InternalOCLstdlib.g:12813:2: rule__CollectionTypeCS__NameAssignment_0
@@ -38311,7 +38311,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getNameAssignment_0());
             }
 
             }
@@ -38339,7 +38339,7 @@
     public final void rule__CollectionTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12827:1: ( rule__CollectionTypeCS__Group__1__Impl )
             // InternalOCLstdlib.g:12828:2: rule__CollectionTypeCS__Group__1__Impl
@@ -38372,7 +38372,7 @@
     public final void rule__CollectionTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12838:1: ( ( ( rule__CollectionTypeCS__Group_1__0 )? ) )
             // InternalOCLstdlib.g:12839:1: ( ( rule__CollectionTypeCS__Group_1__0 )? )
@@ -38381,7 +38381,7 @@
             // InternalOCLstdlib.g:12840:1: ( rule__CollectionTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getGroup_1()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:12841:1: ( rule__CollectionTypeCS__Group_1__0 )?
             int alt116=2;
@@ -38406,7 +38406,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getGroup_1()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getGroup_1());
             }
 
             }
@@ -38434,7 +38434,7 @@
     public final void rule__CollectionTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12859:1: ( rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1 )
             // InternalOCLstdlib.g:12860:2: rule__CollectionTypeCS__Group_1__0__Impl rule__CollectionTypeCS__Group_1__1
@@ -38472,7 +38472,7 @@
     public final void rule__CollectionTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12871:1: ( ( '(' ) )
             // InternalOCLstdlib.g:12872:1: ( '(' )
@@ -38481,11 +38481,11 @@
             // InternalOCLstdlib.g:12873:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -38513,7 +38513,7 @@
     public final void rule__CollectionTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12890:1: ( rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2 )
             // InternalOCLstdlib.g:12891:2: rule__CollectionTypeCS__Group_1__1__Impl rule__CollectionTypeCS__Group_1__2
@@ -38551,7 +38551,7 @@
     public final void rule__CollectionTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12902:1: ( ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) ) )
             // InternalOCLstdlib.g:12903:1: ( ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 ) )
@@ -38560,7 +38560,7 @@
             // InternalOCLstdlib.g:12904:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1());
             }
             // InternalOCLstdlib.g:12905:1: ( rule__CollectionTypeCS__OwnedTypeAssignment_1_1 )
             // InternalOCLstdlib.g:12905:2: rule__CollectionTypeCS__OwnedTypeAssignment_1_1
@@ -38574,7 +38574,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeAssignment_1_1());
             }
 
             }
@@ -38602,7 +38602,7 @@
     public final void rule__CollectionTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12919:1: ( rule__CollectionTypeCS__Group_1__2__Impl )
             // InternalOCLstdlib.g:12920:2: rule__CollectionTypeCS__Group_1__2__Impl
@@ -38635,7 +38635,7 @@
     public final void rule__CollectionTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12930:1: ( ( ')' ) )
             // InternalOCLstdlib.g:12931:1: ( ')' )
@@ -38644,11 +38644,11 @@
             // InternalOCLstdlib.g:12932:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
 
             }
@@ -38676,7 +38676,7 @@
     public final void rule__MapTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12955:1: ( rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1 )
             // InternalOCLstdlib.g:12956:2: rule__MapTypeCS__Group__0__Impl rule__MapTypeCS__Group__1
@@ -38714,7 +38714,7 @@
     public final void rule__MapTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12967:1: ( ( ( rule__MapTypeCS__NameAssignment_0 ) ) )
             // InternalOCLstdlib.g:12968:1: ( ( rule__MapTypeCS__NameAssignment_0 ) )
@@ -38723,7 +38723,7 @@
             // InternalOCLstdlib.g:12969:1: ( rule__MapTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getNameAssignment_0());
             }
             // InternalOCLstdlib.g:12970:1: ( rule__MapTypeCS__NameAssignment_0 )
             // InternalOCLstdlib.g:12970:2: rule__MapTypeCS__NameAssignment_0
@@ -38737,7 +38737,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getNameAssignment_0());
             }
 
             }
@@ -38765,7 +38765,7 @@
     public final void rule__MapTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12984:1: ( rule__MapTypeCS__Group__1__Impl )
             // InternalOCLstdlib.g:12985:2: rule__MapTypeCS__Group__1__Impl
@@ -38798,7 +38798,7 @@
     public final void rule__MapTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:12995:1: ( ( ( rule__MapTypeCS__Group_1__0 )? ) )
             // InternalOCLstdlib.g:12996:1: ( ( rule__MapTypeCS__Group_1__0 )? )
@@ -38807,7 +38807,7 @@
             // InternalOCLstdlib.g:12997:1: ( rule__MapTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getGroup_1()); 
+               before(grammarAccess.getMapTypeCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:12998:1: ( rule__MapTypeCS__Group_1__0 )?
             int alt117=2;
@@ -38832,7 +38832,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getGroup_1()); 
+               after(grammarAccess.getMapTypeCSAccess().getGroup_1());
             }
 
             }
@@ -38860,7 +38860,7 @@
     public final void rule__MapTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13016:1: ( rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1 )
             // InternalOCLstdlib.g:13017:2: rule__MapTypeCS__Group_1__0__Impl rule__MapTypeCS__Group_1__1
@@ -38898,7 +38898,7 @@
     public final void rule__MapTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13028:1: ( ( '(' ) )
             // InternalOCLstdlib.g:13029:1: ( '(' )
@@ -38907,11 +38907,11 @@
             // InternalOCLstdlib.g:13030:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -38939,7 +38939,7 @@
     public final void rule__MapTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13047:1: ( rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2 )
             // InternalOCLstdlib.g:13048:2: rule__MapTypeCS__Group_1__1__Impl rule__MapTypeCS__Group_1__2
@@ -38977,7 +38977,7 @@
     public final void rule__MapTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13059:1: ( ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) ) )
             // InternalOCLstdlib.g:13060:1: ( ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 ) )
@@ -38986,7 +38986,7 @@
             // InternalOCLstdlib.g:13061:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1());
             }
             // InternalOCLstdlib.g:13062:1: ( rule__MapTypeCS__OwnedKeyTypeAssignment_1_1 )
             // InternalOCLstdlib.g:13062:2: rule__MapTypeCS__OwnedKeyTypeAssignment_1_1
@@ -39000,7 +39000,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeAssignment_1_1());
             }
 
             }
@@ -39028,7 +39028,7 @@
     public final void rule__MapTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13076:1: ( rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3 )
             // InternalOCLstdlib.g:13077:2: rule__MapTypeCS__Group_1__2__Impl rule__MapTypeCS__Group_1__3
@@ -39066,7 +39066,7 @@
     public final void rule__MapTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13088:1: ( ( ',' ) )
             // InternalOCLstdlib.g:13089:1: ( ',' )
@@ -39075,11 +39075,11 @@
             // InternalOCLstdlib.g:13090:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); 
+               before(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2()); 
+               after(grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
             }
 
             }
@@ -39107,7 +39107,7 @@
     public final void rule__MapTypeCS__Group_1__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13107:1: ( rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4 )
             // InternalOCLstdlib.g:13108:2: rule__MapTypeCS__Group_1__3__Impl rule__MapTypeCS__Group_1__4
@@ -39145,7 +39145,7 @@
     public final void rule__MapTypeCS__Group_1__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13119:1: ( ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) ) )
             // InternalOCLstdlib.g:13120:1: ( ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 ) )
@@ -39154,7 +39154,7 @@
             // InternalOCLstdlib.g:13121:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3());
             }
             // InternalOCLstdlib.g:13122:1: ( rule__MapTypeCS__OwnedValueTypeAssignment_1_3 )
             // InternalOCLstdlib.g:13122:2: rule__MapTypeCS__OwnedValueTypeAssignment_1_3
@@ -39168,7 +39168,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeAssignment_1_3());
             }
 
             }
@@ -39196,7 +39196,7 @@
     public final void rule__MapTypeCS__Group_1__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13136:1: ( rule__MapTypeCS__Group_1__4__Impl )
             // InternalOCLstdlib.g:13137:2: rule__MapTypeCS__Group_1__4__Impl
@@ -39229,7 +39229,7 @@
     public final void rule__MapTypeCS__Group_1__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13147:1: ( ( ')' ) )
             // InternalOCLstdlib.g:13148:1: ( ')' )
@@ -39238,11 +39238,11 @@
             // InternalOCLstdlib.g:13149:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); 
+               before(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4()); 
+               after(grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
             }
 
             }
@@ -39270,7 +39270,7 @@
     public final void rule__TupleTypeCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13176:1: ( rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1 )
             // InternalOCLstdlib.g:13177:2: rule__TupleTypeCS__Group__0__Impl rule__TupleTypeCS__Group__1
@@ -39308,7 +39308,7 @@
     public final void rule__TupleTypeCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13188:1: ( ( ( rule__TupleTypeCS__NameAssignment_0 ) ) )
             // InternalOCLstdlib.g:13189:1: ( ( rule__TupleTypeCS__NameAssignment_0 ) )
@@ -39317,7 +39317,7 @@
             // InternalOCLstdlib.g:13190:1: ( rule__TupleTypeCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0());
             }
             // InternalOCLstdlib.g:13191:1: ( rule__TupleTypeCS__NameAssignment_0 )
             // InternalOCLstdlib.g:13191:2: rule__TupleTypeCS__NameAssignment_0
@@ -39331,7 +39331,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getNameAssignment_0());
             }
 
             }
@@ -39359,7 +39359,7 @@
     public final void rule__TupleTypeCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13205:1: ( rule__TupleTypeCS__Group__1__Impl )
             // InternalOCLstdlib.g:13206:2: rule__TupleTypeCS__Group__1__Impl
@@ -39392,7 +39392,7 @@
     public final void rule__TupleTypeCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13216:1: ( ( ( rule__TupleTypeCS__Group_1__0 )? ) )
             // InternalOCLstdlib.g:13217:1: ( ( rule__TupleTypeCS__Group_1__0 )? )
@@ -39401,7 +39401,7 @@
             // InternalOCLstdlib.g:13218:1: ( rule__TupleTypeCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:13219:1: ( rule__TupleTypeCS__Group_1__0 )?
             int alt118=2;
@@ -39426,7 +39426,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup_1());
             }
 
             }
@@ -39454,7 +39454,7 @@
     public final void rule__TupleTypeCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13237:1: ( rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1 )
             // InternalOCLstdlib.g:13238:2: rule__TupleTypeCS__Group_1__0__Impl rule__TupleTypeCS__Group_1__1
@@ -39492,7 +39492,7 @@
     public final void rule__TupleTypeCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13249:1: ( ( '(' ) )
             // InternalOCLstdlib.g:13250:1: ( '(' )
@@ -39501,11 +39501,11 @@
             // InternalOCLstdlib.g:13251:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
             }
 
             }
@@ -39533,7 +39533,7 @@
     public final void rule__TupleTypeCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13268:1: ( rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2 )
             // InternalOCLstdlib.g:13269:2: rule__TupleTypeCS__Group_1__1__Impl rule__TupleTypeCS__Group_1__2
@@ -39571,7 +39571,7 @@
     public final void rule__TupleTypeCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13280:1: ( ( ( rule__TupleTypeCS__Group_1_1__0 )? ) )
             // InternalOCLstdlib.g:13281:1: ( ( rule__TupleTypeCS__Group_1_1__0 )? )
@@ -39580,7 +39580,7 @@
             // InternalOCLstdlib.g:13282:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1());
             }
             // InternalOCLstdlib.g:13283:1: ( rule__TupleTypeCS__Group_1_1__0 )?
             int alt119=2;
@@ -39605,7 +39605,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1());
             }
 
             }
@@ -39633,7 +39633,7 @@
     public final void rule__TupleTypeCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13297:1: ( rule__TupleTypeCS__Group_1__2__Impl )
             // InternalOCLstdlib.g:13298:2: rule__TupleTypeCS__Group_1__2__Impl
@@ -39666,7 +39666,7 @@
     public final void rule__TupleTypeCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13308:1: ( ( ')' ) )
             // InternalOCLstdlib.g:13309:1: ( ')' )
@@ -39675,11 +39675,11 @@
             // InternalOCLstdlib.g:13310:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               before(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()); 
+               after(grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
             }
 
             }
@@ -39707,7 +39707,7 @@
     public final void rule__TupleTypeCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13333:1: ( rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1 )
             // InternalOCLstdlib.g:13334:2: rule__TupleTypeCS__Group_1_1__0__Impl rule__TupleTypeCS__Group_1_1__1
@@ -39745,7 +39745,7 @@
     public final void rule__TupleTypeCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13345:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) ) )
             // InternalOCLstdlib.g:13346:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 ) )
@@ -39754,7 +39754,7 @@
             // InternalOCLstdlib.g:13347:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0());
             }
             // InternalOCLstdlib.g:13348:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_0 )
             // InternalOCLstdlib.g:13348:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_0
@@ -39768,7 +39768,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_0());
             }
 
             }
@@ -39796,7 +39796,7 @@
     public final void rule__TupleTypeCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13362:1: ( rule__TupleTypeCS__Group_1_1__1__Impl )
             // InternalOCLstdlib.g:13363:2: rule__TupleTypeCS__Group_1_1__1__Impl
@@ -39829,7 +39829,7 @@
     public final void rule__TupleTypeCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13373:1: ( ( ( rule__TupleTypeCS__Group_1_1_1__0 )* ) )
             // InternalOCLstdlib.g:13374:1: ( ( rule__TupleTypeCS__Group_1_1_1__0 )* )
@@ -39838,7 +39838,7 @@
             // InternalOCLstdlib.g:13375:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1());
             }
             // InternalOCLstdlib.g:13376:1: ( rule__TupleTypeCS__Group_1_1_1__0 )*
             loop120:
@@ -39870,7 +39870,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getGroup_1_1_1());
             }
 
             }
@@ -39898,7 +39898,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13394:1: ( rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1 )
             // InternalOCLstdlib.g:13395:2: rule__TupleTypeCS__Group_1_1_1__0__Impl rule__TupleTypeCS__Group_1_1_1__1
@@ -39936,7 +39936,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13406:1: ( ( ',' ) )
             // InternalOCLstdlib.g:13407:1: ( ',' )
@@ -39945,11 +39945,11 @@
             // InternalOCLstdlib.g:13408:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
             }
 
             }
@@ -39977,7 +39977,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13425:1: ( rule__TupleTypeCS__Group_1_1_1__1__Impl )
             // InternalOCLstdlib.g:13426:2: rule__TupleTypeCS__Group_1_1_1__1__Impl
@@ -40010,7 +40010,7 @@
     public final void rule__TupleTypeCS__Group_1_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13436:1: ( ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) ) )
             // InternalOCLstdlib.g:13437:1: ( ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 ) )
@@ -40019,7 +40019,7 @@
             // InternalOCLstdlib.g:13438:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1());
             }
             // InternalOCLstdlib.g:13439:1: ( rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1 )
             // InternalOCLstdlib.g:13439:2: rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1
@@ -40033,7 +40033,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsAssignment_1_1_1_1());
             }
 
             }
@@ -40061,7 +40061,7 @@
     public final void rule__CollectionLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13457:1: ( rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1 )
             // InternalOCLstdlib.g:13458:2: rule__CollectionLiteralExpCS__Group__0__Impl rule__CollectionLiteralExpCS__Group__1
@@ -40099,7 +40099,7 @@
     public final void rule__CollectionLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13469:1: ( ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) ) )
             // InternalOCLstdlib.g:13470:1: ( ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 ) )
@@ -40108,7 +40108,7 @@
             // InternalOCLstdlib.g:13471:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
             // InternalOCLstdlib.g:13472:1: ( rule__CollectionLiteralExpCS__OwnedTypeAssignment_0 )
             // InternalOCLstdlib.g:13472:2: rule__CollectionLiteralExpCS__OwnedTypeAssignment_0
@@ -40122,7 +40122,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
 
             }
@@ -40150,7 +40150,7 @@
     public final void rule__CollectionLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13486:1: ( rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2 )
             // InternalOCLstdlib.g:13487:2: rule__CollectionLiteralExpCS__Group__1__Impl rule__CollectionLiteralExpCS__Group__2
@@ -40188,7 +40188,7 @@
     public final void rule__CollectionLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13498:1: ( ( '{' ) )
             // InternalOCLstdlib.g:13499:1: ( '{' )
@@ -40197,11 +40197,11 @@
             // InternalOCLstdlib.g:13500:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -40229,7 +40229,7 @@
     public final void rule__CollectionLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13517:1: ( rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3 )
             // InternalOCLstdlib.g:13518:2: rule__CollectionLiteralExpCS__Group__2__Impl rule__CollectionLiteralExpCS__Group__3
@@ -40267,7 +40267,7 @@
     public final void rule__CollectionLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13529:1: ( ( ( rule__CollectionLiteralExpCS__Group_2__0 )? ) )
             // InternalOCLstdlib.g:13530:1: ( ( rule__CollectionLiteralExpCS__Group_2__0 )? )
@@ -40276,7 +40276,7 @@
             // InternalOCLstdlib.g:13531:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:13532:1: ( rule__CollectionLiteralExpCS__Group_2__0 )?
             int alt121=2;
@@ -40301,7 +40301,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2());
             }
 
             }
@@ -40329,7 +40329,7 @@
     public final void rule__CollectionLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13546:1: ( rule__CollectionLiteralExpCS__Group__3__Impl )
             // InternalOCLstdlib.g:13547:2: rule__CollectionLiteralExpCS__Group__3__Impl
@@ -40362,7 +40362,7 @@
     public final void rule__CollectionLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13557:1: ( ( '}' ) )
             // InternalOCLstdlib.g:13558:1: ( '}' )
@@ -40371,11 +40371,11 @@
             // InternalOCLstdlib.g:13559:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -40403,7 +40403,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13584:1: ( rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1 )
             // InternalOCLstdlib.g:13585:2: rule__CollectionLiteralExpCS__Group_2__0__Impl rule__CollectionLiteralExpCS__Group_2__1
@@ -40441,7 +40441,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13596:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
             // InternalOCLstdlib.g:13597:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 ) )
@@ -40450,7 +40450,7 @@
             // InternalOCLstdlib.g:13598:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
             // InternalOCLstdlib.g:13599:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0 )
             // InternalOCLstdlib.g:13599:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0
@@ -40464,7 +40464,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
 
             }
@@ -40492,7 +40492,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13613:1: ( rule__CollectionLiteralExpCS__Group_2__1__Impl )
             // InternalOCLstdlib.g:13614:2: rule__CollectionLiteralExpCS__Group_2__1__Impl
@@ -40525,7 +40525,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13624:1: ( ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* ) )
             // InternalOCLstdlib.g:13625:1: ( ( rule__CollectionLiteralExpCS__Group_2_1__0 )* )
@@ -40534,7 +40534,7 @@
             // InternalOCLstdlib.g:13626:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1());
             }
             // InternalOCLstdlib.g:13627:1: ( rule__CollectionLiteralExpCS__Group_2_1__0 )*
             loop122:
@@ -40566,7 +40566,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getGroup_2_1());
             }
 
             }
@@ -40594,7 +40594,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13645:1: ( rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1 )
             // InternalOCLstdlib.g:13646:2: rule__CollectionLiteralExpCS__Group_2_1__0__Impl rule__CollectionLiteralExpCS__Group_2_1__1
@@ -40632,7 +40632,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13657:1: ( ( ',' ) )
             // InternalOCLstdlib.g:13658:1: ( ',' )
@@ -40641,11 +40641,11 @@
             // InternalOCLstdlib.g:13659:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
 
             }
@@ -40673,7 +40673,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13676:1: ( rule__CollectionLiteralExpCS__Group_2_1__1__Impl )
             // InternalOCLstdlib.g:13677:2: rule__CollectionLiteralExpCS__Group_2_1__1__Impl
@@ -40706,7 +40706,7 @@
     public final void rule__CollectionLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13687:1: ( ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
             // InternalOCLstdlib.g:13688:1: ( ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
@@ -40715,7 +40715,7 @@
             // InternalOCLstdlib.g:13689:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
             // InternalOCLstdlib.g:13690:1: ( rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             // InternalOCLstdlib.g:13690:2: rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1
@@ -40729,7 +40729,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
 
             }
@@ -40757,7 +40757,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13708:1: ( rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1 )
             // InternalOCLstdlib.g:13709:2: rule__CollectionLiteralPartCS__Group_0__0__Impl rule__CollectionLiteralPartCS__Group_0__1
@@ -40795,7 +40795,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13720:1: ( ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) ) )
             // InternalOCLstdlib.g:13721:1: ( ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 ) )
@@ -40804,7 +40804,7 @@
             // InternalOCLstdlib.g:13722:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0());
             }
             // InternalOCLstdlib.g:13723:1: ( rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0 )
             // InternalOCLstdlib.g:13723:2: rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0
@@ -40818,7 +40818,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionAssignment_0_0());
             }
 
             }
@@ -40846,7 +40846,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13737:1: ( rule__CollectionLiteralPartCS__Group_0__1__Impl )
             // InternalOCLstdlib.g:13738:2: rule__CollectionLiteralPartCS__Group_0__1__Impl
@@ -40879,7 +40879,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13748:1: ( ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? ) )
             // InternalOCLstdlib.g:13749:1: ( ( rule__CollectionLiteralPartCS__Group_0_1__0 )? )
@@ -40888,7 +40888,7 @@
             // InternalOCLstdlib.g:13750:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1());
             }
             // InternalOCLstdlib.g:13751:1: ( rule__CollectionLiteralPartCS__Group_0_1__0 )?
             int alt123=2;
@@ -40913,7 +40913,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getGroup_0_1());
             }
 
             }
@@ -40941,7 +40941,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13769:1: ( rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1 )
             // InternalOCLstdlib.g:13770:2: rule__CollectionLiteralPartCS__Group_0_1__0__Impl rule__CollectionLiteralPartCS__Group_0_1__1
@@ -40979,7 +40979,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13781:1: ( ( '..' ) )
             // InternalOCLstdlib.g:13782:1: ( '..' )
@@ -40988,11 +40988,11 @@
             // InternalOCLstdlib.g:13783:1: '..'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
             }
             match(input,92,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
             }
 
             }
@@ -41020,7 +41020,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13800:1: ( rule__CollectionLiteralPartCS__Group_0_1__1__Impl )
             // InternalOCLstdlib.g:13801:2: rule__CollectionLiteralPartCS__Group_0_1__1__Impl
@@ -41053,7 +41053,7 @@
     public final void rule__CollectionLiteralPartCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13811:1: ( ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) ) )
             // InternalOCLstdlib.g:13812:1: ( ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 ) )
@@ -41062,7 +41062,7 @@
             // InternalOCLstdlib.g:13813:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1());
             }
             // InternalOCLstdlib.g:13814:1: ( rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1 )
             // InternalOCLstdlib.g:13814:2: rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1
@@ -41076,7 +41076,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionAssignment_0_1_1());
             }
 
             }
@@ -41104,7 +41104,7 @@
     public final void rule__CollectionPatternCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13832:1: ( rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1 )
             // InternalOCLstdlib.g:13833:2: rule__CollectionPatternCS__Group__0__Impl rule__CollectionPatternCS__Group__1
@@ -41142,7 +41142,7 @@
     public final void rule__CollectionPatternCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13844:1: ( ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) ) )
             // InternalOCLstdlib.g:13845:1: ( ( rule__CollectionPatternCS__OwnedTypeAssignment_0 ) )
@@ -41151,7 +41151,7 @@
             // InternalOCLstdlib.g:13846:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0());
             }
             // InternalOCLstdlib.g:13847:1: ( rule__CollectionPatternCS__OwnedTypeAssignment_0 )
             // InternalOCLstdlib.g:13847:2: rule__CollectionPatternCS__OwnedTypeAssignment_0
@@ -41165,7 +41165,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeAssignment_0());
             }
 
             }
@@ -41193,7 +41193,7 @@
     public final void rule__CollectionPatternCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13861:1: ( rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2 )
             // InternalOCLstdlib.g:13862:2: rule__CollectionPatternCS__Group__1__Impl rule__CollectionPatternCS__Group__2
@@ -41231,7 +41231,7 @@
     public final void rule__CollectionPatternCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13873:1: ( ( '{' ) )
             // InternalOCLstdlib.g:13874:1: ( '{' )
@@ -41240,11 +41240,11 @@
             // InternalOCLstdlib.g:13875:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -41272,7 +41272,7 @@
     public final void rule__CollectionPatternCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13892:1: ( rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3 )
             // InternalOCLstdlib.g:13893:2: rule__CollectionPatternCS__Group__2__Impl rule__CollectionPatternCS__Group__3
@@ -41310,7 +41310,7 @@
     public final void rule__CollectionPatternCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13904:1: ( ( ( rule__CollectionPatternCS__Group_2__0 )? ) )
             // InternalOCLstdlib.g:13905:1: ( ( rule__CollectionPatternCS__Group_2__0 )? )
@@ -41319,7 +41319,7 @@
             // InternalOCLstdlib.g:13906:1: ( rule__CollectionPatternCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:13907:1: ( rule__CollectionPatternCS__Group_2__0 )?
             int alt124=2;
@@ -41344,7 +41344,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2());
             }
 
             }
@@ -41372,7 +41372,7 @@
     public final void rule__CollectionPatternCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13921:1: ( rule__CollectionPatternCS__Group__3__Impl )
             // InternalOCLstdlib.g:13922:2: rule__CollectionPatternCS__Group__3__Impl
@@ -41405,7 +41405,7 @@
     public final void rule__CollectionPatternCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13932:1: ( ( '}' ) )
             // InternalOCLstdlib.g:13933:1: ( '}' )
@@ -41414,11 +41414,11 @@
             // InternalOCLstdlib.g:13934:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -41446,7 +41446,7 @@
     public final void rule__CollectionPatternCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13959:1: ( rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1 )
             // InternalOCLstdlib.g:13960:2: rule__CollectionPatternCS__Group_2__0__Impl rule__CollectionPatternCS__Group_2__1
@@ -41484,7 +41484,7 @@
     public final void rule__CollectionPatternCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13971:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) ) )
             // InternalOCLstdlib.g:13972:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 ) )
@@ -41493,7 +41493,7 @@
             // InternalOCLstdlib.g:13973:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0());
             }
             // InternalOCLstdlib.g:13974:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_0 )
             // InternalOCLstdlib.g:13974:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_0
@@ -41507,7 +41507,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_0());
             }
 
             }
@@ -41535,7 +41535,7 @@
     public final void rule__CollectionPatternCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:13988:1: ( rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2 )
             // InternalOCLstdlib.g:13989:2: rule__CollectionPatternCS__Group_2__1__Impl rule__CollectionPatternCS__Group_2__2
@@ -41573,7 +41573,7 @@
     public final void rule__CollectionPatternCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14000:1: ( ( ( rule__CollectionPatternCS__Group_2_1__0 )* ) )
             // InternalOCLstdlib.g:14001:1: ( ( rule__CollectionPatternCS__Group_2_1__0 )* )
@@ -41582,7 +41582,7 @@
             // InternalOCLstdlib.g:14002:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1());
             }
             // InternalOCLstdlib.g:14003:1: ( rule__CollectionPatternCS__Group_2_1__0 )*
             loop125:
@@ -41614,7 +41614,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_1());
             }
 
             }
@@ -41642,7 +41642,7 @@
     public final void rule__CollectionPatternCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14017:1: ( rule__CollectionPatternCS__Group_2__2__Impl )
             // InternalOCLstdlib.g:14018:2: rule__CollectionPatternCS__Group_2__2__Impl
@@ -41675,7 +41675,7 @@
     public final void rule__CollectionPatternCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14028:1: ( ( ( rule__CollectionPatternCS__Group_2_2__0 ) ) )
             // InternalOCLstdlib.g:14029:1: ( ( rule__CollectionPatternCS__Group_2_2__0 ) )
@@ -41684,7 +41684,7 @@
             // InternalOCLstdlib.g:14030:1: ( rule__CollectionPatternCS__Group_2_2__0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2());
             }
             // InternalOCLstdlib.g:14031:1: ( rule__CollectionPatternCS__Group_2_2__0 )
             // InternalOCLstdlib.g:14031:2: rule__CollectionPatternCS__Group_2_2__0
@@ -41698,7 +41698,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getGroup_2_2());
             }
 
             }
@@ -41726,7 +41726,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14051:1: ( rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1 )
             // InternalOCLstdlib.g:14052:2: rule__CollectionPatternCS__Group_2_1__0__Impl rule__CollectionPatternCS__Group_2_1__1
@@ -41764,7 +41764,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14063:1: ( ( ',' ) )
             // InternalOCLstdlib.g:14064:1: ( ',' )
@@ -41773,11 +41773,11 @@
             // InternalOCLstdlib.g:14065:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
             }
 
             }
@@ -41805,7 +41805,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14082:1: ( rule__CollectionPatternCS__Group_2_1__1__Impl )
             // InternalOCLstdlib.g:14083:2: rule__CollectionPatternCS__Group_2_1__1__Impl
@@ -41838,7 +41838,7 @@
     public final void rule__CollectionPatternCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14093:1: ( ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) ) )
             // InternalOCLstdlib.g:14094:1: ( ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 ) )
@@ -41847,7 +41847,7 @@
             // InternalOCLstdlib.g:14095:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1());
             }
             // InternalOCLstdlib.g:14096:1: ( rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1 )
             // InternalOCLstdlib.g:14096:2: rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1
@@ -41861,7 +41861,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsAssignment_2_1_1());
             }
 
             }
@@ -41889,7 +41889,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14114:1: ( rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1 )
             // InternalOCLstdlib.g:14115:2: rule__CollectionPatternCS__Group_2_2__0__Impl rule__CollectionPatternCS__Group_2_2__1
@@ -41927,7 +41927,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14126:1: ( ( '++' ) )
             // InternalOCLstdlib.g:14127:1: ( '++' )
@@ -41936,11 +41936,11 @@
             // InternalOCLstdlib.g:14128:1: '++'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
             }
             match(input,93,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
             }
 
             }
@@ -41968,7 +41968,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14145:1: ( rule__CollectionPatternCS__Group_2_2__1__Impl )
             // InternalOCLstdlib.g:14146:2: rule__CollectionPatternCS__Group_2_2__1__Impl
@@ -42001,7 +42001,7 @@
     public final void rule__CollectionPatternCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14156:1: ( ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) ) )
             // InternalOCLstdlib.g:14157:1: ( ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 ) )
@@ -42010,7 +42010,7 @@
             // InternalOCLstdlib.g:14158:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1());
             }
             // InternalOCLstdlib.g:14159:1: ( rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1 )
             // InternalOCLstdlib.g:14159:2: rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1
@@ -42024,7 +42024,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameAssignment_2_2_1());
             }
 
             }
@@ -42052,7 +42052,7 @@
     public final void rule__ShadowPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14177:1: ( rule__ShadowPartCS__Group__0__Impl rule__ShadowPartCS__Group__1 )
             // InternalOCLstdlib.g:14178:2: rule__ShadowPartCS__Group__0__Impl rule__ShadowPartCS__Group__1
@@ -42090,7 +42090,7 @@
     public final void rule__ShadowPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14189:1: ( ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0 ) ) )
             // InternalOCLstdlib.g:14190:1: ( ( rule__ShadowPartCS__ReferredPropertyAssignment_0 ) )
@@ -42099,7 +42099,7 @@
             // InternalOCLstdlib.g:14191:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0()); 
+               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0());
             }
             // InternalOCLstdlib.g:14192:1: ( rule__ShadowPartCS__ReferredPropertyAssignment_0 )
             // InternalOCLstdlib.g:14192:2: rule__ShadowPartCS__ReferredPropertyAssignment_0
@@ -42113,7 +42113,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0()); 
+               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyAssignment_0());
             }
 
             }
@@ -42141,7 +42141,7 @@
     public final void rule__ShadowPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14206:1: ( rule__ShadowPartCS__Group__1__Impl rule__ShadowPartCS__Group__2 )
             // InternalOCLstdlib.g:14207:2: rule__ShadowPartCS__Group__1__Impl rule__ShadowPartCS__Group__2
@@ -42179,7 +42179,7 @@
     public final void rule__ShadowPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14218:1: ( ( '=' ) )
             // InternalOCLstdlib.g:14219:1: ( '=' )
@@ -42188,11 +42188,11 @@
             // InternalOCLstdlib.g:14220:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); 
+               before(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1()); 
+               after(grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
             }
 
             }
@@ -42220,7 +42220,7 @@
     public final void rule__ShadowPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14237:1: ( rule__ShadowPartCS__Group__2__Impl )
             // InternalOCLstdlib.g:14238:2: rule__ShadowPartCS__Group__2__Impl
@@ -42253,7 +42253,7 @@
     public final void rule__ShadowPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14248:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 ) ) )
             // InternalOCLstdlib.g:14249:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 ) )
@@ -42262,7 +42262,7 @@
             // InternalOCLstdlib.g:14250:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2()); 
+               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2());
             }
             // InternalOCLstdlib.g:14251:1: ( rule__ShadowPartCS__OwnedInitExpressionAssignment_2 )
             // InternalOCLstdlib.g:14251:2: rule__ShadowPartCS__OwnedInitExpressionAssignment_2
@@ -42276,7 +42276,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2()); 
+               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAssignment_2());
             }
 
             }
@@ -42304,7 +42304,7 @@
     public final void rule__PatternExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14271:1: ( rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1 )
             // InternalOCLstdlib.g:14272:2: rule__PatternExpCS__Group__0__Impl rule__PatternExpCS__Group__1
@@ -42342,7 +42342,7 @@
     public final void rule__PatternExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14283:1: ( ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? ) )
             // InternalOCLstdlib.g:14284:1: ( ( rule__PatternExpCS__PatternVariableNameAssignment_0 )? )
@@ -42351,7 +42351,7 @@
             // InternalOCLstdlib.g:14285:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0()); 
+               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0());
             }
             // InternalOCLstdlib.g:14286:1: ( rule__PatternExpCS__PatternVariableNameAssignment_0 )?
             int alt126=2;
@@ -42376,7 +42376,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0()); 
+               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameAssignment_0());
             }
 
             }
@@ -42404,7 +42404,7 @@
     public final void rule__PatternExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14300:1: ( rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2 )
             // InternalOCLstdlib.g:14301:2: rule__PatternExpCS__Group__1__Impl rule__PatternExpCS__Group__2
@@ -42442,7 +42442,7 @@
     public final void rule__PatternExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14312:1: ( ( ':' ) )
             // InternalOCLstdlib.g:14313:1: ( ':' )
@@ -42451,11 +42451,11 @@
             // InternalOCLstdlib.g:14314:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); 
+               before(grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getColonKeyword_1()); 
+               after(grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
             }
 
             }
@@ -42483,7 +42483,7 @@
     public final void rule__PatternExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14331:1: ( rule__PatternExpCS__Group__2__Impl )
             // InternalOCLstdlib.g:14332:2: rule__PatternExpCS__Group__2__Impl
@@ -42516,7 +42516,7 @@
     public final void rule__PatternExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14342:1: ( ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) ) )
             // InternalOCLstdlib.g:14343:1: ( ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 ) )
@@ -42525,7 +42525,7 @@
             // InternalOCLstdlib.g:14344:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2()); 
+               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2());
             }
             // InternalOCLstdlib.g:14345:1: ( rule__PatternExpCS__OwnedPatternTypeAssignment_2 )
             // InternalOCLstdlib.g:14345:2: rule__PatternExpCS__OwnedPatternTypeAssignment_2
@@ -42539,7 +42539,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2()); 
+               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeAssignment_2());
             }
 
             }
@@ -42567,7 +42567,7 @@
     public final void rule__LambdaLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14365:1: ( rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1 )
             // InternalOCLstdlib.g:14366:2: rule__LambdaLiteralExpCS__Group__0__Impl rule__LambdaLiteralExpCS__Group__1
@@ -42605,7 +42605,7 @@
     public final void rule__LambdaLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14377:1: ( ( 'Lambda' ) )
             // InternalOCLstdlib.g:14378:1: ( 'Lambda' )
@@ -42614,11 +42614,11 @@
             // InternalOCLstdlib.g:14379:1: 'Lambda'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
             }
             match(input,37,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
             }
 
             }
@@ -42646,7 +42646,7 @@
     public final void rule__LambdaLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14396:1: ( rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2 )
             // InternalOCLstdlib.g:14397:2: rule__LambdaLiteralExpCS__Group__1__Impl rule__LambdaLiteralExpCS__Group__2
@@ -42684,7 +42684,7 @@
     public final void rule__LambdaLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14408:1: ( ( '{' ) )
             // InternalOCLstdlib.g:14409:1: ( '{' )
@@ -42693,11 +42693,11 @@
             // InternalOCLstdlib.g:14410:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -42725,7 +42725,7 @@
     public final void rule__LambdaLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14427:1: ( rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3 )
             // InternalOCLstdlib.g:14428:2: rule__LambdaLiteralExpCS__Group__2__Impl rule__LambdaLiteralExpCS__Group__3
@@ -42763,7 +42763,7 @@
     public final void rule__LambdaLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14439:1: ( ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) ) )
             // InternalOCLstdlib.g:14440:1: ( ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 ) )
@@ -42772,7 +42772,7 @@
             // InternalOCLstdlib.g:14441:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2());
             }
             // InternalOCLstdlib.g:14442:1: ( rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2 )
             // InternalOCLstdlib.g:14442:2: rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2
@@ -42786,7 +42786,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSAssignment_2());
             }
 
             }
@@ -42814,7 +42814,7 @@
     public final void rule__LambdaLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14456:1: ( rule__LambdaLiteralExpCS__Group__3__Impl )
             // InternalOCLstdlib.g:14457:2: rule__LambdaLiteralExpCS__Group__3__Impl
@@ -42847,7 +42847,7 @@
     public final void rule__LambdaLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14467:1: ( ( '}' ) )
             // InternalOCLstdlib.g:14468:1: ( '}' )
@@ -42856,11 +42856,11 @@
             // InternalOCLstdlib.g:14469:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -42888,7 +42888,7 @@
     public final void rule__MapLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14494:1: ( rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1 )
             // InternalOCLstdlib.g:14495:2: rule__MapLiteralExpCS__Group__0__Impl rule__MapLiteralExpCS__Group__1
@@ -42926,7 +42926,7 @@
     public final void rule__MapLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14506:1: ( ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) ) )
             // InternalOCLstdlib.g:14507:1: ( ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 ) )
@@ -42935,7 +42935,7 @@
             // InternalOCLstdlib.g:14508:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
             // InternalOCLstdlib.g:14509:1: ( rule__MapLiteralExpCS__OwnedTypeAssignment_0 )
             // InternalOCLstdlib.g:14509:2: rule__MapLiteralExpCS__OwnedTypeAssignment_0
@@ -42949,7 +42949,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeAssignment_0());
             }
 
             }
@@ -42977,7 +42977,7 @@
     public final void rule__MapLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14523:1: ( rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2 )
             // InternalOCLstdlib.g:14524:2: rule__MapLiteralExpCS__Group__1__Impl rule__MapLiteralExpCS__Group__2
@@ -43015,7 +43015,7 @@
     public final void rule__MapLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14535:1: ( ( '{' ) )
             // InternalOCLstdlib.g:14536:1: ( '{' )
@@ -43024,11 +43024,11 @@
             // InternalOCLstdlib.g:14537:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -43056,7 +43056,7 @@
     public final void rule__MapLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14554:1: ( rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3 )
             // InternalOCLstdlib.g:14555:2: rule__MapLiteralExpCS__Group__2__Impl rule__MapLiteralExpCS__Group__3
@@ -43094,7 +43094,7 @@
     public final void rule__MapLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14566:1: ( ( ( rule__MapLiteralExpCS__Group_2__0 )? ) )
             // InternalOCLstdlib.g:14567:1: ( ( rule__MapLiteralExpCS__Group_2__0 )? )
@@ -43103,7 +43103,7 @@
             // InternalOCLstdlib.g:14568:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:14569:1: ( rule__MapLiteralExpCS__Group_2__0 )?
             int alt127=2;
@@ -43128,7 +43128,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2());
             }
 
             }
@@ -43156,7 +43156,7 @@
     public final void rule__MapLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14583:1: ( rule__MapLiteralExpCS__Group__3__Impl )
             // InternalOCLstdlib.g:14584:2: rule__MapLiteralExpCS__Group__3__Impl
@@ -43189,7 +43189,7 @@
     public final void rule__MapLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14594:1: ( ( '}' ) )
             // InternalOCLstdlib.g:14595:1: ( '}' )
@@ -43198,11 +43198,11 @@
             // InternalOCLstdlib.g:14596:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -43230,7 +43230,7 @@
     public final void rule__MapLiteralExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14621:1: ( rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1 )
             // InternalOCLstdlib.g:14622:2: rule__MapLiteralExpCS__Group_2__0__Impl rule__MapLiteralExpCS__Group_2__1
@@ -43268,7 +43268,7 @@
     public final void rule__MapLiteralExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14633:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) ) )
             // InternalOCLstdlib.g:14634:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 ) )
@@ -43277,7 +43277,7 @@
             // InternalOCLstdlib.g:14635:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
             // InternalOCLstdlib.g:14636:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_0 )
             // InternalOCLstdlib.g:14636:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_0
@@ -43291,7 +43291,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_0());
             }
 
             }
@@ -43319,7 +43319,7 @@
     public final void rule__MapLiteralExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14650:1: ( rule__MapLiteralExpCS__Group_2__1__Impl )
             // InternalOCLstdlib.g:14651:2: rule__MapLiteralExpCS__Group_2__1__Impl
@@ -43352,7 +43352,7 @@
     public final void rule__MapLiteralExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14661:1: ( ( ( rule__MapLiteralExpCS__Group_2_1__0 )* ) )
             // InternalOCLstdlib.g:14662:1: ( ( rule__MapLiteralExpCS__Group_2_1__0 )* )
@@ -43361,7 +43361,7 @@
             // InternalOCLstdlib.g:14663:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1());
             }
             // InternalOCLstdlib.g:14664:1: ( rule__MapLiteralExpCS__Group_2_1__0 )*
             loop128:
@@ -43393,7 +43393,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getGroup_2_1());
             }
 
             }
@@ -43421,7 +43421,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14682:1: ( rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1 )
             // InternalOCLstdlib.g:14683:2: rule__MapLiteralExpCS__Group_2_1__0__Impl rule__MapLiteralExpCS__Group_2_1__1
@@ -43459,7 +43459,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14694:1: ( ( ',' ) )
             // InternalOCLstdlib.g:14695:1: ( ',' )
@@ -43468,11 +43468,11 @@
             // InternalOCLstdlib.g:14696:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
             }
 
             }
@@ -43500,7 +43500,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14713:1: ( rule__MapLiteralExpCS__Group_2_1__1__Impl )
             // InternalOCLstdlib.g:14714:2: rule__MapLiteralExpCS__Group_2_1__1__Impl
@@ -43533,7 +43533,7 @@
     public final void rule__MapLiteralExpCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14724:1: ( ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) ) )
             // InternalOCLstdlib.g:14725:1: ( ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 ) )
@@ -43542,7 +43542,7 @@
             // InternalOCLstdlib.g:14726:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
             // InternalOCLstdlib.g:14727:1: ( rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1 )
             // InternalOCLstdlib.g:14727:2: rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1
@@ -43556,7 +43556,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsAssignment_2_1_1());
             }
 
             }
@@ -43584,7 +43584,7 @@
     public final void rule__MapLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14745:1: ( rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1 )
             // InternalOCLstdlib.g:14746:2: rule__MapLiteralPartCS__Group__0__Impl rule__MapLiteralPartCS__Group__1
@@ -43622,7 +43622,7 @@
     public final void rule__MapLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14757:1: ( ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) ) )
             // InternalOCLstdlib.g:14758:1: ( ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 ) )
@@ -43631,7 +43631,7 @@
             // InternalOCLstdlib.g:14759:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0());
             }
             // InternalOCLstdlib.g:14760:1: ( rule__MapLiteralPartCS__OwnedKeyAssignment_0 )
             // InternalOCLstdlib.g:14760:2: rule__MapLiteralPartCS__OwnedKeyAssignment_0
@@ -43645,7 +43645,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyAssignment_0());
             }
 
             }
@@ -43673,7 +43673,7 @@
     public final void rule__MapLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14774:1: ( rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2 )
             // InternalOCLstdlib.g:14775:2: rule__MapLiteralPartCS__Group__1__Impl rule__MapLiteralPartCS__Group__2
@@ -43711,7 +43711,7 @@
     public final void rule__MapLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14786:1: ( ( '<-' ) )
             // InternalOCLstdlib.g:14787:1: ( '<-' )
@@ -43720,11 +43720,11 @@
             // InternalOCLstdlib.g:14788:1: '<-'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
             }
             match(input,94,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
             }
 
             }
@@ -43752,7 +43752,7 @@
     public final void rule__MapLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14805:1: ( rule__MapLiteralPartCS__Group__2__Impl )
             // InternalOCLstdlib.g:14806:2: rule__MapLiteralPartCS__Group__2__Impl
@@ -43785,7 +43785,7 @@
     public final void rule__MapLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14816:1: ( ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) ) )
             // InternalOCLstdlib.g:14817:1: ( ( rule__MapLiteralPartCS__OwnedValueAssignment_2 ) )
@@ -43794,7 +43794,7 @@
             // InternalOCLstdlib.g:14818:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2());
             }
             // InternalOCLstdlib.g:14819:1: ( rule__MapLiteralPartCS__OwnedValueAssignment_2 )
             // InternalOCLstdlib.g:14819:2: rule__MapLiteralPartCS__OwnedValueAssignment_2
@@ -43808,7 +43808,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueAssignment_2());
             }
 
             }
@@ -43836,7 +43836,7 @@
     public final void rule__TupleLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14839:1: ( rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1 )
             // InternalOCLstdlib.g:14840:2: rule__TupleLiteralExpCS__Group__0__Impl rule__TupleLiteralExpCS__Group__1
@@ -43874,7 +43874,7 @@
     public final void rule__TupleLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14851:1: ( ( 'Tuple' ) )
             // InternalOCLstdlib.g:14852:1: ( 'Tuple' )
@@ -43883,11 +43883,11 @@
             // InternalOCLstdlib.g:14853:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
             }
             match(input,39,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
             }
 
             }
@@ -43915,7 +43915,7 @@
     public final void rule__TupleLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14870:1: ( rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2 )
             // InternalOCLstdlib.g:14871:2: rule__TupleLiteralExpCS__Group__1__Impl rule__TupleLiteralExpCS__Group__2
@@ -43953,7 +43953,7 @@
     public final void rule__TupleLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14882:1: ( ( '{' ) )
             // InternalOCLstdlib.g:14883:1: ( '{' )
@@ -43962,11 +43962,11 @@
             // InternalOCLstdlib.g:14884:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -43994,7 +43994,7 @@
     public final void rule__TupleLiteralExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14901:1: ( rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3 )
             // InternalOCLstdlib.g:14902:2: rule__TupleLiteralExpCS__Group__2__Impl rule__TupleLiteralExpCS__Group__3
@@ -44032,7 +44032,7 @@
     public final void rule__TupleLiteralExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14913:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) ) )
             // InternalOCLstdlib.g:14914:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 ) )
@@ -44041,7 +44041,7 @@
             // InternalOCLstdlib.g:14915:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2());
             }
             // InternalOCLstdlib.g:14916:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_2 )
             // InternalOCLstdlib.g:14916:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_2
@@ -44055,7 +44055,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_2());
             }
 
             }
@@ -44083,7 +44083,7 @@
     public final void rule__TupleLiteralExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14930:1: ( rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4 )
             // InternalOCLstdlib.g:14931:2: rule__TupleLiteralExpCS__Group__3__Impl rule__TupleLiteralExpCS__Group__4
@@ -44121,7 +44121,7 @@
     public final void rule__TupleLiteralExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14942:1: ( ( ( rule__TupleLiteralExpCS__Group_3__0 )* ) )
             // InternalOCLstdlib.g:14943:1: ( ( rule__TupleLiteralExpCS__Group_3__0 )* )
@@ -44130,7 +44130,7 @@
             // InternalOCLstdlib.g:14944:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3());
             }
             // InternalOCLstdlib.g:14945:1: ( rule__TupleLiteralExpCS__Group_3__0 )*
             loop129:
@@ -44162,7 +44162,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getGroup_3());
             }
 
             }
@@ -44190,7 +44190,7 @@
     public final void rule__TupleLiteralExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14959:1: ( rule__TupleLiteralExpCS__Group__4__Impl )
             // InternalOCLstdlib.g:14960:2: rule__TupleLiteralExpCS__Group__4__Impl
@@ -44223,7 +44223,7 @@
     public final void rule__TupleLiteralExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14970:1: ( ( '}' ) )
             // InternalOCLstdlib.g:14971:1: ( '}' )
@@ -44232,11 +44232,11 @@
             // InternalOCLstdlib.g:14972:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
             }
 
             }
@@ -44264,7 +44264,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:14999:1: ( rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1 )
             // InternalOCLstdlib.g:15000:2: rule__TupleLiteralExpCS__Group_3__0__Impl rule__TupleLiteralExpCS__Group_3__1
@@ -44302,7 +44302,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15011:1: ( ( ',' ) )
             // InternalOCLstdlib.g:15012:1: ( ',' )
@@ -44311,11 +44311,11 @@
             // InternalOCLstdlib.g:15013:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
             }
 
             }
@@ -44343,7 +44343,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15030:1: ( rule__TupleLiteralExpCS__Group_3__1__Impl )
             // InternalOCLstdlib.g:15031:2: rule__TupleLiteralExpCS__Group_3__1__Impl
@@ -44376,7 +44376,7 @@
     public final void rule__TupleLiteralExpCS__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15041:1: ( ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) ) )
             // InternalOCLstdlib.g:15042:1: ( ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 ) )
@@ -44385,7 +44385,7 @@
             // InternalOCLstdlib.g:15043:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1());
             }
             // InternalOCLstdlib.g:15044:1: ( rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1 )
             // InternalOCLstdlib.g:15044:2: rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1
@@ -44399,7 +44399,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsAssignment_3_1());
             }
 
             }
@@ -44427,7 +44427,7 @@
     public final void rule__TupleLiteralPartCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15062:1: ( rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1 )
             // InternalOCLstdlib.g:15063:2: rule__TupleLiteralPartCS__Group__0__Impl rule__TupleLiteralPartCS__Group__1
@@ -44465,7 +44465,7 @@
     public final void rule__TupleLiteralPartCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15074:1: ( ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) ) )
             // InternalOCLstdlib.g:15075:1: ( ( rule__TupleLiteralPartCS__NameAssignment_0 ) )
@@ -44474,7 +44474,7 @@
             // InternalOCLstdlib.g:15076:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0());
             }
             // InternalOCLstdlib.g:15077:1: ( rule__TupleLiteralPartCS__NameAssignment_0 )
             // InternalOCLstdlib.g:15077:2: rule__TupleLiteralPartCS__NameAssignment_0
@@ -44488,7 +44488,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getNameAssignment_0());
             }
 
             }
@@ -44516,7 +44516,7 @@
     public final void rule__TupleLiteralPartCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15091:1: ( rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2 )
             // InternalOCLstdlib.g:15092:2: rule__TupleLiteralPartCS__Group__1__Impl rule__TupleLiteralPartCS__Group__2
@@ -44554,7 +44554,7 @@
     public final void rule__TupleLiteralPartCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15103:1: ( ( ( rule__TupleLiteralPartCS__Group_1__0 )? ) )
             // InternalOCLstdlib.g:15104:1: ( ( rule__TupleLiteralPartCS__Group_1__0 )? )
@@ -44563,7 +44563,7 @@
             // InternalOCLstdlib.g:15105:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:15106:1: ( rule__TupleLiteralPartCS__Group_1__0 )?
             int alt130=2;
@@ -44588,7 +44588,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getGroup_1());
             }
 
             }
@@ -44616,7 +44616,7 @@
     public final void rule__TupleLiteralPartCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15120:1: ( rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3 )
             // InternalOCLstdlib.g:15121:2: rule__TupleLiteralPartCS__Group__2__Impl rule__TupleLiteralPartCS__Group__3
@@ -44654,7 +44654,7 @@
     public final void rule__TupleLiteralPartCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15132:1: ( ( '=' ) )
             // InternalOCLstdlib.g:15133:1: ( '=' )
@@ -44663,11 +44663,11 @@
             // InternalOCLstdlib.g:15134:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
             }
 
             }
@@ -44695,7 +44695,7 @@
     public final void rule__TupleLiteralPartCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15151:1: ( rule__TupleLiteralPartCS__Group__3__Impl )
             // InternalOCLstdlib.g:15152:2: rule__TupleLiteralPartCS__Group__3__Impl
@@ -44728,7 +44728,7 @@
     public final void rule__TupleLiteralPartCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15162:1: ( ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) ) )
             // InternalOCLstdlib.g:15163:1: ( ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 ) )
@@ -44737,7 +44737,7 @@
             // InternalOCLstdlib.g:15164:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3());
             }
             // InternalOCLstdlib.g:15165:1: ( rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3 )
             // InternalOCLstdlib.g:15165:2: rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3
@@ -44751,7 +44751,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionAssignment_3());
             }
 
             }
@@ -44779,7 +44779,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15187:1: ( rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1 )
             // InternalOCLstdlib.g:15188:2: rule__TupleLiteralPartCS__Group_1__0__Impl rule__TupleLiteralPartCS__Group_1__1
@@ -44817,7 +44817,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15199:1: ( ( ':' ) )
             // InternalOCLstdlib.g:15200:1: ( ':' )
@@ -44826,11 +44826,11 @@
             // InternalOCLstdlib.g:15201:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
             }
 
             }
@@ -44858,7 +44858,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15218:1: ( rule__TupleLiteralPartCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:15219:2: rule__TupleLiteralPartCS__Group_1__1__Impl
@@ -44891,7 +44891,7 @@
     public final void rule__TupleLiteralPartCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15229:1: ( ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) ) )
             // InternalOCLstdlib.g:15230:1: ( ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 ) )
@@ -44900,7 +44900,7 @@
             // InternalOCLstdlib.g:15231:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1());
             }
             // InternalOCLstdlib.g:15232:1: ( rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1 )
             // InternalOCLstdlib.g:15232:2: rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1
@@ -44914,7 +44914,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeAssignment_1_1());
             }
 
             }
@@ -44942,7 +44942,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15250:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1 )
             // InternalOCLstdlib.g:15251:2: rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl rule__UnlimitedNaturalLiteralExpCS__Group__1
@@ -44980,7 +44980,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15262:1: ( ( () ) )
             // InternalOCLstdlib.g:15263:1: ( () )
@@ -44989,15 +44989,15 @@
             // InternalOCLstdlib.g:15264:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0());
             }
             // InternalOCLstdlib.g:15265:1: ()
-            // InternalOCLstdlib.g:15267:1: 
+            // InternalOCLstdlib.g:15267:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0());
             }
 
             }
@@ -45021,7 +45021,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15281:1: ( rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl )
             // InternalOCLstdlib.g:15282:2: rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl
@@ -45054,7 +45054,7 @@
     public final void rule__UnlimitedNaturalLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15292:1: ( ( '*' ) )
             // InternalOCLstdlib.g:15293:1: ( '*' )
@@ -45063,11 +45063,11 @@
             // InternalOCLstdlib.g:15294:1: '*'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); 
+               before(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
             }
             match(input,53,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1()); 
+               after(grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
             }
 
             }
@@ -45095,7 +45095,7 @@
     public final void rule__InvalidLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15315:1: ( rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1 )
             // InternalOCLstdlib.g:15316:2: rule__InvalidLiteralExpCS__Group__0__Impl rule__InvalidLiteralExpCS__Group__1
@@ -45133,7 +45133,7 @@
     public final void rule__InvalidLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15327:1: ( ( () ) )
             // InternalOCLstdlib.g:15328:1: ( () )
@@ -45142,15 +45142,15 @@
             // InternalOCLstdlib.g:15329:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0()); 
+               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0());
             }
             // InternalOCLstdlib.g:15330:1: ()
-            // InternalOCLstdlib.g:15332:1: 
+            // InternalOCLstdlib.g:15332:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0()); 
+               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0());
             }
 
             }
@@ -45174,7 +45174,7 @@
     public final void rule__InvalidLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15346:1: ( rule__InvalidLiteralExpCS__Group__1__Impl )
             // InternalOCLstdlib.g:15347:2: rule__InvalidLiteralExpCS__Group__1__Impl
@@ -45207,7 +45207,7 @@
     public final void rule__InvalidLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15357:1: ( ( 'invalid' ) )
             // InternalOCLstdlib.g:15358:1: ( 'invalid' )
@@ -45216,11 +45216,11 @@
             // InternalOCLstdlib.g:15359:1: 'invalid'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); 
+               before(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
             }
             match(input,95,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1()); 
+               after(grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
             }
 
             }
@@ -45248,7 +45248,7 @@
     public final void rule__NullLiteralExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15380:1: ( rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1 )
             // InternalOCLstdlib.g:15381:2: rule__NullLiteralExpCS__Group__0__Impl rule__NullLiteralExpCS__Group__1
@@ -45286,7 +45286,7 @@
     public final void rule__NullLiteralExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15392:1: ( ( () ) )
             // InternalOCLstdlib.g:15393:1: ( () )
@@ -45295,15 +45295,15 @@
             // InternalOCLstdlib.g:15394:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0()); 
+               before(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0());
             }
             // InternalOCLstdlib.g:15395:1: ()
-            // InternalOCLstdlib.g:15397:1: 
+            // InternalOCLstdlib.g:15397:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0()); 
+               after(grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0());
             }
 
             }
@@ -45327,7 +45327,7 @@
     public final void rule__NullLiteralExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15411:1: ( rule__NullLiteralExpCS__Group__1__Impl )
             // InternalOCLstdlib.g:15412:2: rule__NullLiteralExpCS__Group__1__Impl
@@ -45360,7 +45360,7 @@
     public final void rule__NullLiteralExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15422:1: ( ( 'null' ) )
             // InternalOCLstdlib.g:15423:1: ( 'null' )
@@ -45369,11 +45369,11 @@
             // InternalOCLstdlib.g:15424:1: 'null'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); 
+               before(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
             }
             match(input,96,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1()); 
+               after(grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
             }
 
             }
@@ -45401,7 +45401,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15445:1: ( rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1 )
             // InternalOCLstdlib.g:15446:2: rule__TypeLiteralWithMultiplicityCS__Group__0__Impl rule__TypeLiteralWithMultiplicityCS__Group__1
@@ -45439,7 +45439,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15457:1: ( ( ruleTypeLiteralCS ) )
             // InternalOCLstdlib.g:15458:1: ( ruleTypeLiteralCS )
@@ -45448,7 +45448,7 @@
             // InternalOCLstdlib.g:15459:1: ruleTypeLiteralCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeLiteralCS();
@@ -45456,7 +45456,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
             }
 
             }
@@ -45484,7 +45484,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15474:1: ( rule__TypeLiteralWithMultiplicityCS__Group__1__Impl )
             // InternalOCLstdlib.g:15475:2: rule__TypeLiteralWithMultiplicityCS__Group__1__Impl
@@ -45517,7 +45517,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15485:1: ( ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? ) )
             // InternalOCLstdlib.g:15486:1: ( ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )? )
@@ -45526,7 +45526,7 @@
             // InternalOCLstdlib.g:15487:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1());
             }
             // InternalOCLstdlib.g:15488:1: ( rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1 )?
             int alt131=2;
@@ -45551,7 +45551,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityAssignment_1());
             }
 
             }
@@ -45579,7 +45579,7 @@
     public final void rule__TypeNameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15506:1: ( rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1 )
             // InternalOCLstdlib.g:15507:2: rule__TypeNameExpCS__Group__0__Impl rule__TypeNameExpCS__Group__1
@@ -45617,7 +45617,7 @@
     public final void rule__TypeNameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15518:1: ( ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) ) )
             // InternalOCLstdlib.g:15519:1: ( ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 ) )
@@ -45626,7 +45626,7 @@
             // InternalOCLstdlib.g:15520:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
             // InternalOCLstdlib.g:15521:1: ( rule__TypeNameExpCS__OwnedPathNameAssignment_0 )
             // InternalOCLstdlib.g:15521:2: rule__TypeNameExpCS__OwnedPathNameAssignment_0
@@ -45640,7 +45640,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
 
             }
@@ -45668,7 +45668,7 @@
     public final void rule__TypeNameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15535:1: ( rule__TypeNameExpCS__Group__1__Impl )
             // InternalOCLstdlib.g:15536:2: rule__TypeNameExpCS__Group__1__Impl
@@ -45701,7 +45701,7 @@
     public final void rule__TypeNameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15546:1: ( ( ( rule__TypeNameExpCS__Group_1__0 )? ) )
             // InternalOCLstdlib.g:15547:1: ( ( rule__TypeNameExpCS__Group_1__0 )? )
@@ -45710,7 +45710,7 @@
             // InternalOCLstdlib.g:15548:1: ( rule__TypeNameExpCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:15549:1: ( rule__TypeNameExpCS__Group_1__0 )?
             int alt132=2;
@@ -45735,7 +45735,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1());
             }
 
             }
@@ -45763,7 +45763,7 @@
     public final void rule__TypeNameExpCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15567:1: ( rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1 )
             // InternalOCLstdlib.g:15568:2: rule__TypeNameExpCS__Group_1__0__Impl rule__TypeNameExpCS__Group_1__1
@@ -45801,7 +45801,7 @@
     public final void rule__TypeNameExpCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15579:1: ( ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) ) )
             // InternalOCLstdlib.g:15580:1: ( ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 ) )
@@ -45810,7 +45810,7 @@
             // InternalOCLstdlib.g:15581:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0());
             }
             // InternalOCLstdlib.g:15582:1: ( rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0 )
             // InternalOCLstdlib.g:15582:2: rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0
@@ -45824,7 +45824,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_1_0());
             }
 
             }
@@ -45852,7 +45852,7 @@
     public final void rule__TypeNameExpCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15596:1: ( rule__TypeNameExpCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:15597:2: rule__TypeNameExpCS__Group_1__1__Impl
@@ -45885,7 +45885,7 @@
     public final void rule__TypeNameExpCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15607:1: ( ( ( rule__TypeNameExpCS__Group_1_1__0 )? ) )
             // InternalOCLstdlib.g:15608:1: ( ( rule__TypeNameExpCS__Group_1_1__0 )? )
@@ -45894,7 +45894,7 @@
             // InternalOCLstdlib.g:15609:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1());
             }
             // InternalOCLstdlib.g:15610:1: ( rule__TypeNameExpCS__Group_1_1__0 )?
             int alt133=2;
@@ -45919,7 +45919,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getGroup_1_1());
             }
 
             }
@@ -45947,7 +45947,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15628:1: ( rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1 )
             // InternalOCLstdlib.g:15629:2: rule__TypeNameExpCS__Group_1_1__0__Impl rule__TypeNameExpCS__Group_1_1__1
@@ -45985,7 +45985,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15640:1: ( ( '{' ) )
             // InternalOCLstdlib.g:15641:1: ( '{' )
@@ -45994,11 +45994,11 @@
             // InternalOCLstdlib.g:15642:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
             }
 
             }
@@ -46026,7 +46026,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15659:1: ( rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2 )
             // InternalOCLstdlib.g:15660:2: rule__TypeNameExpCS__Group_1_1__1__Impl rule__TypeNameExpCS__Group_1_1__2
@@ -46064,7 +46064,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15671:1: ( ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) ) )
             // InternalOCLstdlib.g:15672:1: ( ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 ) )
@@ -46073,7 +46073,7 @@
             // InternalOCLstdlib.g:15673:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1());
             }
             // InternalOCLstdlib.g:15674:1: ( rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1 )
             // InternalOCLstdlib.g:15674:2: rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1
@@ -46087,7 +46087,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardAssignment_1_1_1());
             }
 
             }
@@ -46115,7 +46115,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15688:1: ( rule__TypeNameExpCS__Group_1_1__2__Impl )
             // InternalOCLstdlib.g:15689:2: rule__TypeNameExpCS__Group_1_1__2__Impl
@@ -46148,7 +46148,7 @@
     public final void rule__TypeNameExpCS__Group_1_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15699:1: ( ( '}' ) )
             // InternalOCLstdlib.g:15700:1: ( '}' )
@@ -46157,11 +46157,11 @@
             // InternalOCLstdlib.g:15701:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
             }
 
             }
@@ -46189,7 +46189,7 @@
     public final void rule__TypeExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15724:1: ( rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1 )
             // InternalOCLstdlib.g:15725:2: rule__TypeExpCS__Group__0__Impl rule__TypeExpCS__Group__1
@@ -46227,7 +46227,7 @@
     public final void rule__TypeExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15736:1: ( ( ( rule__TypeExpCS__Alternatives_0 ) ) )
             // InternalOCLstdlib.g:15737:1: ( ( rule__TypeExpCS__Alternatives_0 ) )
@@ -46236,7 +46236,7 @@
             // InternalOCLstdlib.g:15738:1: ( rule__TypeExpCS__Alternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getAlternatives_0()); 
+               before(grammarAccess.getTypeExpCSAccess().getAlternatives_0());
             }
             // InternalOCLstdlib.g:15739:1: ( rule__TypeExpCS__Alternatives_0 )
             // InternalOCLstdlib.g:15739:2: rule__TypeExpCS__Alternatives_0
@@ -46250,7 +46250,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getAlternatives_0()); 
+               after(grammarAccess.getTypeExpCSAccess().getAlternatives_0());
             }
 
             }
@@ -46278,7 +46278,7 @@
     public final void rule__TypeExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15753:1: ( rule__TypeExpCS__Group__1__Impl )
             // InternalOCLstdlib.g:15754:2: rule__TypeExpCS__Group__1__Impl
@@ -46311,7 +46311,7 @@
     public final void rule__TypeExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15764:1: ( ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? ) )
             // InternalOCLstdlib.g:15765:1: ( ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )? )
@@ -46320,7 +46320,7 @@
             // InternalOCLstdlib.g:15766:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1()); 
+               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1());
             }
             // InternalOCLstdlib.g:15767:1: ( rule__TypeExpCS__OwnedMultiplicityAssignment_1 )?
             int alt134=2;
@@ -46345,7 +46345,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1()); 
+               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityAssignment_1());
             }
 
             }
@@ -46373,7 +46373,7 @@
     public final void rule__ExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15785:1: ( rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1 )
             // InternalOCLstdlib.g:15786:2: rule__ExpCS__Group_0__0__Impl rule__ExpCS__Group_0__1
@@ -46411,7 +46411,7 @@
     public final void rule__ExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15797:1: ( ( rulePrefixedPrimaryExpCS ) )
             // InternalOCLstdlib.g:15798:1: ( rulePrefixedPrimaryExpCS )
@@ -46420,7 +46420,7 @@
             // InternalOCLstdlib.g:15799:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
+               before(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrefixedPrimaryExpCS();
@@ -46428,7 +46428,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
+               after(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
             }
 
             }
@@ -46456,7 +46456,7 @@
     public final void rule__ExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15814:1: ( rule__ExpCS__Group_0__1__Impl )
             // InternalOCLstdlib.g:15815:2: rule__ExpCS__Group_0__1__Impl
@@ -46489,7 +46489,7 @@
     public final void rule__ExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15825:1: ( ( ( rule__ExpCS__Group_0_1__0 )? ) )
             // InternalOCLstdlib.g:15826:1: ( ( rule__ExpCS__Group_0_1__0 )? )
@@ -46498,7 +46498,7 @@
             // InternalOCLstdlib.g:15827:1: ( rule__ExpCS__Group_0_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getGroup_0_1()); 
+               before(grammarAccess.getExpCSAccess().getGroup_0_1());
             }
             // InternalOCLstdlib.g:15828:1: ( rule__ExpCS__Group_0_1__0 )?
             int alt135=2;
@@ -46523,7 +46523,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getGroup_0_1()); 
+               after(grammarAccess.getExpCSAccess().getGroup_0_1());
             }
 
             }
@@ -46551,7 +46551,7 @@
     public final void rule__ExpCS__Group_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15846:1: ( rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1 )
             // InternalOCLstdlib.g:15847:2: rule__ExpCS__Group_0_1__0__Impl rule__ExpCS__Group_0_1__1
@@ -46589,7 +46589,7 @@
     public final void rule__ExpCS__Group_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15858:1: ( ( () ) )
             // InternalOCLstdlib.g:15859:1: ( () )
@@ -46598,15 +46598,15 @@
             // InternalOCLstdlib.g:15860:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0()); 
+               before(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0());
             }
             // InternalOCLstdlib.g:15861:1: ()
-            // InternalOCLstdlib.g:15863:1: 
+            // InternalOCLstdlib.g:15863:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0()); 
+               after(grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0());
             }
 
             }
@@ -46630,7 +46630,7 @@
     public final void rule__ExpCS__Group_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15877:1: ( rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2 )
             // InternalOCLstdlib.g:15878:2: rule__ExpCS__Group_0_1__1__Impl rule__ExpCS__Group_0_1__2
@@ -46668,7 +46668,7 @@
     public final void rule__ExpCS__Group_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15889:1: ( ( ( rule__ExpCS__NameAssignment_0_1_1 ) ) )
             // InternalOCLstdlib.g:15890:1: ( ( rule__ExpCS__NameAssignment_0_1_1 ) )
@@ -46677,7 +46677,7 @@
             // InternalOCLstdlib.g:15891:1: ( rule__ExpCS__NameAssignment_0_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1()); 
+               before(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1());
             }
             // InternalOCLstdlib.g:15892:1: ( rule__ExpCS__NameAssignment_0_1_1 )
             // InternalOCLstdlib.g:15892:2: rule__ExpCS__NameAssignment_0_1_1
@@ -46691,7 +46691,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1()); 
+               after(grammarAccess.getExpCSAccess().getNameAssignment_0_1_1());
             }
 
             }
@@ -46719,7 +46719,7 @@
     public final void rule__ExpCS__Group_0_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15906:1: ( rule__ExpCS__Group_0_1__2__Impl )
             // InternalOCLstdlib.g:15907:2: rule__ExpCS__Group_0_1__2__Impl
@@ -46752,7 +46752,7 @@
     public final void rule__ExpCS__Group_0_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15917:1: ( ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) ) )
             // InternalOCLstdlib.g:15918:1: ( ( rule__ExpCS__OwnedRightAssignment_0_1_2 ) )
@@ -46761,7 +46761,7 @@
             // InternalOCLstdlib.g:15919:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2()); 
+               before(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2());
             }
             // InternalOCLstdlib.g:15920:1: ( rule__ExpCS__OwnedRightAssignment_0_1_2 )
             // InternalOCLstdlib.g:15920:2: rule__ExpCS__OwnedRightAssignment_0_1_2
@@ -46775,7 +46775,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2()); 
+               after(grammarAccess.getExpCSAccess().getOwnedRightAssignment_0_1_2());
             }
 
             }
@@ -46803,7 +46803,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15940:1: ( rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1 )
             // InternalOCLstdlib.g:15941:2: rule__PrefixedLetExpCS__Group_0__0__Impl rule__PrefixedLetExpCS__Group_0__1
@@ -46841,7 +46841,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15952:1: ( ( () ) )
             // InternalOCLstdlib.g:15953:1: ( () )
@@ -46850,15 +46850,15 @@
             // InternalOCLstdlib.g:15954:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0());
             }
             // InternalOCLstdlib.g:15955:1: ()
-            // InternalOCLstdlib.g:15957:1: 
+            // InternalOCLstdlib.g:15957:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0());
             }
 
             }
@@ -46882,7 +46882,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15971:1: ( rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2 )
             // InternalOCLstdlib.g:15972:2: rule__PrefixedLetExpCS__Group_0__1__Impl rule__PrefixedLetExpCS__Group_0__2
@@ -46920,7 +46920,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:15983:1: ( ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) ) )
             // InternalOCLstdlib.g:15984:1: ( ( rule__PrefixedLetExpCS__NameAssignment_0_1 ) )
@@ -46929,7 +46929,7 @@
             // InternalOCLstdlib.g:15985:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1());
             }
             // InternalOCLstdlib.g:15986:1: ( rule__PrefixedLetExpCS__NameAssignment_0_1 )
             // InternalOCLstdlib.g:15986:2: rule__PrefixedLetExpCS__NameAssignment_0_1
@@ -46943,7 +46943,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getNameAssignment_0_1());
             }
 
             }
@@ -46971,7 +46971,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16000:1: ( rule__PrefixedLetExpCS__Group_0__2__Impl )
             // InternalOCLstdlib.g:16001:2: rule__PrefixedLetExpCS__Group_0__2__Impl
@@ -47004,7 +47004,7 @@
     public final void rule__PrefixedLetExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16011:1: ( ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) ) )
             // InternalOCLstdlib.g:16012:1: ( ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 ) )
@@ -47013,7 +47013,7 @@
             // InternalOCLstdlib.g:16013:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2());
             }
             // InternalOCLstdlib.g:16014:1: ( rule__PrefixedLetExpCS__OwnedRightAssignment_0_2 )
             // InternalOCLstdlib.g:16014:2: rule__PrefixedLetExpCS__OwnedRightAssignment_0_2
@@ -47027,7 +47027,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightAssignment_0_2());
             }
 
             }
@@ -47055,7 +47055,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16034:1: ( rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1 )
             // InternalOCLstdlib.g:16035:2: rule__PrefixedPrimaryExpCS__Group_0__0__Impl rule__PrefixedPrimaryExpCS__Group_0__1
@@ -47093,7 +47093,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16046:1: ( ( () ) )
             // InternalOCLstdlib.g:16047:1: ( () )
@@ -47102,15 +47102,15 @@
             // InternalOCLstdlib.g:16048:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0());
             }
             // InternalOCLstdlib.g:16049:1: ()
-            // InternalOCLstdlib.g:16051:1: 
+            // InternalOCLstdlib.g:16051:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0());
             }
 
             }
@@ -47134,7 +47134,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16065:1: ( rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2 )
             // InternalOCLstdlib.g:16066:2: rule__PrefixedPrimaryExpCS__Group_0__1__Impl rule__PrefixedPrimaryExpCS__Group_0__2
@@ -47172,7 +47172,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16077:1: ( ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) ) )
             // InternalOCLstdlib.g:16078:1: ( ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 ) )
@@ -47181,7 +47181,7 @@
             // InternalOCLstdlib.g:16079:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1());
             }
             // InternalOCLstdlib.g:16080:1: ( rule__PrefixedPrimaryExpCS__NameAssignment_0_1 )
             // InternalOCLstdlib.g:16080:2: rule__PrefixedPrimaryExpCS__NameAssignment_0_1
@@ -47195,7 +47195,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameAssignment_0_1());
             }
 
             }
@@ -47223,7 +47223,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16094:1: ( rule__PrefixedPrimaryExpCS__Group_0__2__Impl )
             // InternalOCLstdlib.g:16095:2: rule__PrefixedPrimaryExpCS__Group_0__2__Impl
@@ -47256,7 +47256,7 @@
     public final void rule__PrefixedPrimaryExpCS__Group_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16105:1: ( ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) ) )
             // InternalOCLstdlib.g:16106:1: ( ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 ) )
@@ -47265,7 +47265,7 @@
             // InternalOCLstdlib.g:16107:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2());
             }
             // InternalOCLstdlib.g:16108:1: ( rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2 )
             // InternalOCLstdlib.g:16108:2: rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2
@@ -47279,7 +47279,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightAssignment_0_2());
             }
 
             }
@@ -47307,7 +47307,7 @@
     public final void rule__NameExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16128:1: ( rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1 )
             // InternalOCLstdlib.g:16129:2: rule__NameExpCS__Group__0__Impl rule__NameExpCS__Group__1
@@ -47345,7 +47345,7 @@
     public final void rule__NameExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16140:1: ( ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) ) )
             // InternalOCLstdlib.g:16141:1: ( ( rule__NameExpCS__OwnedPathNameAssignment_0 ) )
@@ -47354,7 +47354,7 @@
             // InternalOCLstdlib.g:16142:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
             // InternalOCLstdlib.g:16143:1: ( rule__NameExpCS__OwnedPathNameAssignment_0 )
             // InternalOCLstdlib.g:16143:2: rule__NameExpCS__OwnedPathNameAssignment_0
@@ -47368,7 +47368,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedPathNameAssignment_0());
             }
 
             }
@@ -47396,7 +47396,7 @@
     public final void rule__NameExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16157:1: ( rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2 )
             // InternalOCLstdlib.g:16158:2: rule__NameExpCS__Group__1__Impl rule__NameExpCS__Group__2
@@ -47434,7 +47434,7 @@
     public final void rule__NameExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16169:1: ( ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* ) )
             // InternalOCLstdlib.g:16170:1: ( ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )* )
@@ -47443,7 +47443,7 @@
             // InternalOCLstdlib.g:16171:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1());
             }
             // InternalOCLstdlib.g:16172:1: ( rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1 )*
             loop136:
@@ -47475,7 +47475,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesAssignment_1());
             }
 
             }
@@ -47503,7 +47503,7 @@
     public final void rule__NameExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16186:1: ( rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3 )
             // InternalOCLstdlib.g:16187:2: rule__NameExpCS__Group__2__Impl rule__NameExpCS__Group__3
@@ -47541,7 +47541,7 @@
     public final void rule__NameExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16198:1: ( ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? ) )
             // InternalOCLstdlib.g:16199:1: ( ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )? )
@@ -47550,7 +47550,7 @@
             // InternalOCLstdlib.g:16200:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2());
             }
             // InternalOCLstdlib.g:16201:1: ( rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2 )?
             int alt137=2;
@@ -47575,7 +47575,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseAssignment_2());
             }
 
             }
@@ -47603,7 +47603,7 @@
     public final void rule__NameExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16215:1: ( rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4 )
             // InternalOCLstdlib.g:16216:2: rule__NameExpCS__Group__3__Impl rule__NameExpCS__Group__4
@@ -47641,7 +47641,7 @@
     public final void rule__NameExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16227:1: ( ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? ) )
             // InternalOCLstdlib.g:16228:1: ( ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )? )
@@ -47650,7 +47650,7 @@
             // InternalOCLstdlib.g:16229:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3());
             }
             // InternalOCLstdlib.g:16230:1: ( rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3 )?
             int alt138=2;
@@ -47675,7 +47675,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseAssignment_3());
             }
 
             }
@@ -47703,7 +47703,7 @@
     public final void rule__NameExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16244:1: ( rule__NameExpCS__Group__4__Impl )
             // InternalOCLstdlib.g:16245:2: rule__NameExpCS__Group__4__Impl
@@ -47736,7 +47736,7 @@
     public final void rule__NameExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16255:1: ( ( ( rule__NameExpCS__Group_4__0 )? ) )
             // InternalOCLstdlib.g:16256:1: ( ( rule__NameExpCS__Group_4__0 )? )
@@ -47745,7 +47745,7 @@
             // InternalOCLstdlib.g:16257:1: ( rule__NameExpCS__Group_4__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getGroup_4()); 
+               before(grammarAccess.getNameExpCSAccess().getGroup_4());
             }
             // InternalOCLstdlib.g:16258:1: ( rule__NameExpCS__Group_4__0 )?
             int alt139=2;
@@ -47770,7 +47770,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getGroup_4()); 
+               after(grammarAccess.getNameExpCSAccess().getGroup_4());
             }
 
             }
@@ -47798,7 +47798,7 @@
     public final void rule__NameExpCS__Group_4__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16282:1: ( rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1 )
             // InternalOCLstdlib.g:16283:2: rule__NameExpCS__Group_4__0__Impl rule__NameExpCS__Group_4__1
@@ -47836,7 +47836,7 @@
     public final void rule__NameExpCS__Group_4__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16294:1: ( ( ( rule__NameExpCS__IsPreAssignment_4_0 ) ) )
             // InternalOCLstdlib.g:16295:1: ( ( rule__NameExpCS__IsPreAssignment_4_0 ) )
@@ -47845,7 +47845,7 @@
             // InternalOCLstdlib.g:16296:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0()); 
+               before(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0());
             }
             // InternalOCLstdlib.g:16297:1: ( rule__NameExpCS__IsPreAssignment_4_0 )
             // InternalOCLstdlib.g:16297:2: rule__NameExpCS__IsPreAssignment_4_0
@@ -47859,7 +47859,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0()); 
+               after(grammarAccess.getNameExpCSAccess().getIsPreAssignment_4_0());
             }
 
             }
@@ -47887,7 +47887,7 @@
     public final void rule__NameExpCS__Group_4__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16311:1: ( rule__NameExpCS__Group_4__1__Impl )
             // InternalOCLstdlib.g:16312:2: rule__NameExpCS__Group_4__1__Impl
@@ -47920,7 +47920,7 @@
     public final void rule__NameExpCS__Group_4__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16322:1: ( ( 'pre' ) )
             // InternalOCLstdlib.g:16323:1: ( 'pre' )
@@ -47929,11 +47929,11 @@
             // InternalOCLstdlib.g:16324:1: 'pre'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); 
+               before(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
             }
             match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1()); 
+               after(grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
             }
 
             }
@@ -47961,7 +47961,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16345:1: ( rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1 )
             // InternalOCLstdlib.g:16346:2: rule__CurlyBracketedClauseCS__Group__0__Impl rule__CurlyBracketedClauseCS__Group__1
@@ -47999,7 +47999,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16357:1: ( ( () ) )
             // InternalOCLstdlib.g:16358:1: ( () )
@@ -48008,15 +48008,15 @@
             // InternalOCLstdlib.g:16359:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0());
             }
             // InternalOCLstdlib.g:16360:1: ()
-            // InternalOCLstdlib.g:16362:1: 
+            // InternalOCLstdlib.g:16362:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0());
             }
 
             }
@@ -48040,7 +48040,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16376:1: ( rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2 )
             // InternalOCLstdlib.g:16377:2: rule__CurlyBracketedClauseCS__Group__1__Impl rule__CurlyBracketedClauseCS__Group__2
@@ -48078,7 +48078,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16388:1: ( ( '{' ) )
             // InternalOCLstdlib.g:16389:1: ( '{' )
@@ -48087,11 +48087,11 @@
             // InternalOCLstdlib.g:16390:1: '{'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
             }
             match(input,86,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
             }
 
             }
@@ -48119,7 +48119,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16407:1: ( rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3 )
             // InternalOCLstdlib.g:16408:2: rule__CurlyBracketedClauseCS__Group__2__Impl rule__CurlyBracketedClauseCS__Group__3
@@ -48157,7 +48157,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16419:1: ( ( ( rule__CurlyBracketedClauseCS__Alternatives_2 ) ) )
             // InternalOCLstdlib.g:16420:1: ( ( rule__CurlyBracketedClauseCS__Alternatives_2 ) )
@@ -48166,7 +48166,7 @@
             // InternalOCLstdlib.g:16421:1: ( rule__CurlyBracketedClauseCS__Alternatives_2 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2());
             }
             // InternalOCLstdlib.g:16422:1: ( rule__CurlyBracketedClauseCS__Alternatives_2 )
             // InternalOCLstdlib.g:16422:2: rule__CurlyBracketedClauseCS__Alternatives_2
@@ -48180,7 +48180,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getAlternatives_2());
             }
 
             }
@@ -48208,7 +48208,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16436:1: ( rule__CurlyBracketedClauseCS__Group__3__Impl )
             // InternalOCLstdlib.g:16437:2: rule__CurlyBracketedClauseCS__Group__3__Impl
@@ -48241,7 +48241,7 @@
     public final void rule__CurlyBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16447:1: ( ( '}' ) )
             // InternalOCLstdlib.g:16448:1: ( '}' )
@@ -48250,11 +48250,11 @@
             // InternalOCLstdlib.g:16449:1: '}'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
             }
             match(input,87,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
             }
 
             }
@@ -48282,7 +48282,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16474:1: ( rule__CurlyBracketedClauseCS__Group_2_0__0__Impl rule__CurlyBracketedClauseCS__Group_2_0__1 )
             // InternalOCLstdlib.g:16475:2: rule__CurlyBracketedClauseCS__Group_2_0__0__Impl rule__CurlyBracketedClauseCS__Group_2_0__1
@@ -48320,7 +48320,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16486:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 ) ) )
             // InternalOCLstdlib.g:16487:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 ) )
@@ -48329,7 +48329,7 @@
             // InternalOCLstdlib.g:16488:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0());
             }
             // InternalOCLstdlib.g:16489:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0 )
             // InternalOCLstdlib.g:16489:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0
@@ -48343,7 +48343,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_0());
             }
 
             }
@@ -48371,7 +48371,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16503:1: ( rule__CurlyBracketedClauseCS__Group_2_0__1__Impl )
             // InternalOCLstdlib.g:16504:2: rule__CurlyBracketedClauseCS__Group_2_0__1__Impl
@@ -48404,7 +48404,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16514:1: ( ( ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )* ) )
             // InternalOCLstdlib.g:16515:1: ( ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )* )
@@ -48413,7 +48413,7 @@
             // InternalOCLstdlib.g:16516:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1());
             }
             // InternalOCLstdlib.g:16517:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__0 )*
             loop140:
@@ -48445,7 +48445,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getGroup_2_0_1());
             }
 
             }
@@ -48473,7 +48473,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16535:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_0_1__1 )
             // InternalOCLstdlib.g:16536:2: rule__CurlyBracketedClauseCS__Group_2_0_1__0__Impl rule__CurlyBracketedClauseCS__Group_2_0_1__1
@@ -48511,7 +48511,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16547:1: ( ( ',' ) )
             // InternalOCLstdlib.g:16548:1: ( ',' )
@@ -48520,11 +48520,11 @@
             // InternalOCLstdlib.g:16549:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
             }
 
             }
@@ -48552,7 +48552,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16566:1: ( rule__CurlyBracketedClauseCS__Group_2_0_1__1__Impl )
             // InternalOCLstdlib.g:16567:2: rule__CurlyBracketedClauseCS__Group_2_0_1__1__Impl
@@ -48585,7 +48585,7 @@
     public final void rule__CurlyBracketedClauseCS__Group_2_0_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16577:1: ( ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 ) ) )
             // InternalOCLstdlib.g:16578:1: ( ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 ) )
@@ -48594,7 +48594,7 @@
             // InternalOCLstdlib.g:16579:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1());
             }
             // InternalOCLstdlib.g:16580:1: ( rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1 )
             // InternalOCLstdlib.g:16580:2: rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1
@@ -48608,7 +48608,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsAssignment_2_0_1_1());
             }
 
             }
@@ -48636,7 +48636,7 @@
     public final void rule__RoundBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16598:1: ( rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1 )
             // InternalOCLstdlib.g:16599:2: rule__RoundBracketedClauseCS__Group__0__Impl rule__RoundBracketedClauseCS__Group__1
@@ -48674,7 +48674,7 @@
     public final void rule__RoundBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16610:1: ( ( () ) )
             // InternalOCLstdlib.g:16611:1: ( () )
@@ -48683,15 +48683,15 @@
             // InternalOCLstdlib.g:16612:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0());
             }
             // InternalOCLstdlib.g:16613:1: ()
-            // InternalOCLstdlib.g:16615:1: 
+            // InternalOCLstdlib.g:16615:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0());
             }
 
             }
@@ -48715,7 +48715,7 @@
     public final void rule__RoundBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16629:1: ( rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2 )
             // InternalOCLstdlib.g:16630:2: rule__RoundBracketedClauseCS__Group__1__Impl rule__RoundBracketedClauseCS__Group__2
@@ -48753,7 +48753,7 @@
     public final void rule__RoundBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16641:1: ( ( '(' ) )
             // InternalOCLstdlib.g:16642:1: ( '(' )
@@ -48762,11 +48762,11 @@
             // InternalOCLstdlib.g:16643:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
             }
 
             }
@@ -48794,7 +48794,7 @@
     public final void rule__RoundBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16660:1: ( rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3 )
             // InternalOCLstdlib.g:16661:2: rule__RoundBracketedClauseCS__Group__2__Impl rule__RoundBracketedClauseCS__Group__3
@@ -48832,7 +48832,7 @@
     public final void rule__RoundBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16672:1: ( ( ( rule__RoundBracketedClauseCS__Group_2__0 )? ) )
             // InternalOCLstdlib.g:16673:1: ( ( rule__RoundBracketedClauseCS__Group_2__0 )? )
@@ -48841,7 +48841,7 @@
             // InternalOCLstdlib.g:16674:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:16675:1: ( rule__RoundBracketedClauseCS__Group_2__0 )?
             int alt141=2;
@@ -48866,7 +48866,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2());
             }
 
             }
@@ -48894,7 +48894,7 @@
     public final void rule__RoundBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16689:1: ( rule__RoundBracketedClauseCS__Group__3__Impl )
             // InternalOCLstdlib.g:16690:2: rule__RoundBracketedClauseCS__Group__3__Impl
@@ -48927,7 +48927,7 @@
     public final void rule__RoundBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16700:1: ( ( ')' ) )
             // InternalOCLstdlib.g:16701:1: ( ')' )
@@ -48936,11 +48936,11 @@
             // InternalOCLstdlib.g:16702:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
             }
 
             }
@@ -48968,7 +48968,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16727:1: ( rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1 )
             // InternalOCLstdlib.g:16728:2: rule__RoundBracketedClauseCS__Group_2__0__Impl rule__RoundBracketedClauseCS__Group_2__1
@@ -49006,7 +49006,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16739:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) ) )
             // InternalOCLstdlib.g:16740:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 ) )
@@ -49015,7 +49015,7 @@
             // InternalOCLstdlib.g:16741:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0());
             }
             // InternalOCLstdlib.g:16742:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0 )
             // InternalOCLstdlib.g:16742:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0
@@ -49029,7 +49029,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_0());
             }
 
             }
@@ -49057,7 +49057,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16756:1: ( rule__RoundBracketedClauseCS__Group_2__1__Impl rule__RoundBracketedClauseCS__Group_2__2 )
             // InternalOCLstdlib.g:16757:2: rule__RoundBracketedClauseCS__Group_2__1__Impl rule__RoundBracketedClauseCS__Group_2__2
@@ -49095,7 +49095,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16768:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* ) )
             // InternalOCLstdlib.g:16769:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )* )
@@ -49104,7 +49104,7 @@
             // InternalOCLstdlib.g:16770:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1());
             }
             // InternalOCLstdlib.g:16771:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1 )*
             loop142:
@@ -49136,7 +49136,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_1());
             }
 
             }
@@ -49164,7 +49164,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16785:1: ( rule__RoundBracketedClauseCS__Group_2__2__Impl rule__RoundBracketedClauseCS__Group_2__3 )
             // InternalOCLstdlib.g:16786:2: rule__RoundBracketedClauseCS__Group_2__2__Impl rule__RoundBracketedClauseCS__Group_2__3
@@ -49202,7 +49202,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16797:1: ( ( ( rule__RoundBracketedClauseCS__Group_2_2__0 )? ) )
             // InternalOCLstdlib.g:16798:1: ( ( rule__RoundBracketedClauseCS__Group_2_2__0 )? )
@@ -49211,7 +49211,7 @@
             // InternalOCLstdlib.g:16799:1: ( rule__RoundBracketedClauseCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2());
             }
             // InternalOCLstdlib.g:16800:1: ( rule__RoundBracketedClauseCS__Group_2_2__0 )?
             int alt143=2;
@@ -49236,7 +49236,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_2());
             }
 
             }
@@ -49264,7 +49264,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16814:1: ( rule__RoundBracketedClauseCS__Group_2__3__Impl )
             // InternalOCLstdlib.g:16815:2: rule__RoundBracketedClauseCS__Group_2__3__Impl
@@ -49297,7 +49297,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16825:1: ( ( ( rule__RoundBracketedClauseCS__Group_2_3__0 )* ) )
             // InternalOCLstdlib.g:16826:1: ( ( rule__RoundBracketedClauseCS__Group_2_3__0 )* )
@@ -49306,7 +49306,7 @@
             // InternalOCLstdlib.g:16827:1: ( rule__RoundBracketedClauseCS__Group_2_3__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3());
             }
             // InternalOCLstdlib.g:16828:1: ( rule__RoundBracketedClauseCS__Group_2_3__0 )*
             loop144:
@@ -49338,7 +49338,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getGroup_2_3());
             }
 
             }
@@ -49366,7 +49366,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16850:1: ( rule__RoundBracketedClauseCS__Group_2_2__0__Impl rule__RoundBracketedClauseCS__Group_2_2__1 )
             // InternalOCLstdlib.g:16851:2: rule__RoundBracketedClauseCS__Group_2_2__0__Impl rule__RoundBracketedClauseCS__Group_2_2__1
@@ -49404,7 +49404,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16862:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 ) ) )
             // InternalOCLstdlib.g:16863:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 ) )
@@ -49413,7 +49413,7 @@
             // InternalOCLstdlib.g:16864:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0());
             }
             // InternalOCLstdlib.g:16865:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0 )
             // InternalOCLstdlib.g:16865:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0
@@ -49427,7 +49427,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_0());
             }
 
             }
@@ -49455,7 +49455,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16879:1: ( rule__RoundBracketedClauseCS__Group_2_2__1__Impl )
             // InternalOCLstdlib.g:16880:2: rule__RoundBracketedClauseCS__Group_2_2__1__Impl
@@ -49488,7 +49488,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16890:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )* ) )
             // InternalOCLstdlib.g:16891:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )* )
@@ -49497,7 +49497,7 @@
             // InternalOCLstdlib.g:16892:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1());
             }
             // InternalOCLstdlib.g:16893:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1 )*
             loop145:
@@ -49529,7 +49529,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_2_1());
             }
 
             }
@@ -49557,7 +49557,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16911:1: ( rule__RoundBracketedClauseCS__Group_2_3__0__Impl rule__RoundBracketedClauseCS__Group_2_3__1 )
             // InternalOCLstdlib.g:16912:2: rule__RoundBracketedClauseCS__Group_2_3__0__Impl rule__RoundBracketedClauseCS__Group_2_3__1
@@ -49595,7 +49595,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16923:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 ) ) )
             // InternalOCLstdlib.g:16924:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 ) )
@@ -49604,7 +49604,7 @@
             // InternalOCLstdlib.g:16925:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0());
             }
             // InternalOCLstdlib.g:16926:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0 )
             // InternalOCLstdlib.g:16926:2: rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0
@@ -49618,7 +49618,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_0());
             }
 
             }
@@ -49646,7 +49646,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16940:1: ( rule__RoundBracketedClauseCS__Group_2_3__1__Impl )
             // InternalOCLstdlib.g:16941:2: rule__RoundBracketedClauseCS__Group_2_3__1__Impl
@@ -49679,7 +49679,7 @@
     public final void rule__RoundBracketedClauseCS__Group_2_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16951:1: ( ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )* ) )
             // InternalOCLstdlib.g:16952:1: ( ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )* )
@@ -49688,7 +49688,7 @@
             // InternalOCLstdlib.g:16953:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1());
             }
             // InternalOCLstdlib.g:16954:1: ( rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1 )*
             loop146:
@@ -49720,7 +49720,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsAssignment_2_3_1());
             }
 
             }
@@ -49748,7 +49748,7 @@
     public final void rule__SquareBracketedClauseCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16972:1: ( rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1 )
             // InternalOCLstdlib.g:16973:2: rule__SquareBracketedClauseCS__Group__0__Impl rule__SquareBracketedClauseCS__Group__1
@@ -49786,7 +49786,7 @@
     public final void rule__SquareBracketedClauseCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:16984:1: ( ( '[' ) )
             // InternalOCLstdlib.g:16985:1: ( '[' )
@@ -49795,11 +49795,11 @@
             // InternalOCLstdlib.g:16986:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
             }
 
             }
@@ -49827,7 +49827,7 @@
     public final void rule__SquareBracketedClauseCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17003:1: ( rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2 )
             // InternalOCLstdlib.g:17004:2: rule__SquareBracketedClauseCS__Group__1__Impl rule__SquareBracketedClauseCS__Group__2
@@ -49865,7 +49865,7 @@
     public final void rule__SquareBracketedClauseCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17015:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) ) )
             // InternalOCLstdlib.g:17016:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 ) )
@@ -49874,7 +49874,7 @@
             // InternalOCLstdlib.g:17017:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1());
             }
             // InternalOCLstdlib.g:17018:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_1 )
             // InternalOCLstdlib.g:17018:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_1
@@ -49888,7 +49888,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_1());
             }
 
             }
@@ -49916,7 +49916,7 @@
     public final void rule__SquareBracketedClauseCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17032:1: ( rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3 )
             // InternalOCLstdlib.g:17033:2: rule__SquareBracketedClauseCS__Group__2__Impl rule__SquareBracketedClauseCS__Group__3
@@ -49954,7 +49954,7 @@
     public final void rule__SquareBracketedClauseCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17044:1: ( ( ( rule__SquareBracketedClauseCS__Group_2__0 )* ) )
             // InternalOCLstdlib.g:17045:1: ( ( rule__SquareBracketedClauseCS__Group_2__0 )* )
@@ -49963,7 +49963,7 @@
             // InternalOCLstdlib.g:17046:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:17047:1: ( rule__SquareBracketedClauseCS__Group_2__0 )*
             loop147:
@@ -49995,7 +49995,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getGroup_2());
             }
 
             }
@@ -50023,7 +50023,7 @@
     public final void rule__SquareBracketedClauseCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17061:1: ( rule__SquareBracketedClauseCS__Group__3__Impl )
             // InternalOCLstdlib.g:17062:2: rule__SquareBracketedClauseCS__Group__3__Impl
@@ -50056,7 +50056,7 @@
     public final void rule__SquareBracketedClauseCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17072:1: ( ( ']' ) )
             // InternalOCLstdlib.g:17073:1: ( ']' )
@@ -50065,11 +50065,11 @@
             // InternalOCLstdlib.g:17074:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
             }
 
             }
@@ -50097,7 +50097,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17099:1: ( rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1 )
             // InternalOCLstdlib.g:17100:2: rule__SquareBracketedClauseCS__Group_2__0__Impl rule__SquareBracketedClauseCS__Group_2__1
@@ -50135,7 +50135,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17111:1: ( ( ',' ) )
             // InternalOCLstdlib.g:17112:1: ( ',' )
@@ -50144,11 +50144,11 @@
             // InternalOCLstdlib.g:17113:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
             }
 
             }
@@ -50176,7 +50176,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17130:1: ( rule__SquareBracketedClauseCS__Group_2__1__Impl )
             // InternalOCLstdlib.g:17131:2: rule__SquareBracketedClauseCS__Group_2__1__Impl
@@ -50209,7 +50209,7 @@
     public final void rule__SquareBracketedClauseCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17141:1: ( ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) ) )
             // InternalOCLstdlib.g:17142:1: ( ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 ) )
@@ -50218,7 +50218,7 @@
             // InternalOCLstdlib.g:17143:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1());
             }
             // InternalOCLstdlib.g:17144:1: ( rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1 )
             // InternalOCLstdlib.g:17144:2: rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1
@@ -50232,7 +50232,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsAssignment_2_1());
             }
 
             }
@@ -50260,7 +50260,7 @@
     public final void rule__NavigatingArgCS__Group_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17162:1: ( rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1 )
             // InternalOCLstdlib.g:17163:2: rule__NavigatingArgCS__Group_0__0__Impl rule__NavigatingArgCS__Group_0__1
@@ -50298,7 +50298,7 @@
     public final void rule__NavigatingArgCS__Group_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17174:1: ( ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) ) )
             // InternalOCLstdlib.g:17175:1: ( ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 ) )
@@ -50307,7 +50307,7 @@
             // InternalOCLstdlib.g:17176:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0());
             }
             // InternalOCLstdlib.g:17177:1: ( rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0 )
             // InternalOCLstdlib.g:17177:2: rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0
@@ -50321,7 +50321,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionAssignment_0_0());
             }
 
             }
@@ -50349,7 +50349,7 @@
     public final void rule__NavigatingArgCS__Group_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17191:1: ( rule__NavigatingArgCS__Group_0__1__Impl )
             // InternalOCLstdlib.g:17192:2: rule__NavigatingArgCS__Group_0__1__Impl
@@ -50382,7 +50382,7 @@
     public final void rule__NavigatingArgCS__Group_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17202:1: ( ( ( rule__NavigatingArgCS__Alternatives_0_1 )? ) )
             // InternalOCLstdlib.g:17203:1: ( ( rule__NavigatingArgCS__Alternatives_0_1 )? )
@@ -50391,7 +50391,7 @@
             // InternalOCLstdlib.g:17204:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1());
             }
             // InternalOCLstdlib.g:17205:1: ( rule__NavigatingArgCS__Alternatives_0_1 )?
             int alt148=2;
@@ -50416,7 +50416,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getAlternatives_0_1());
             }
 
             }
@@ -50444,7 +50444,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17223:1: ( rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1 )
             // InternalOCLstdlib.g:17224:2: rule__NavigatingArgCS__Group_0_1_0__0__Impl rule__NavigatingArgCS__Group_0_1_0__1
@@ -50482,7 +50482,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17235:1: ( ( ':' ) )
             // InternalOCLstdlib.g:17236:1: ( ':' )
@@ -50491,11 +50491,11 @@
             // InternalOCLstdlib.g:17237:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
             }
 
             }
@@ -50523,7 +50523,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17254:1: ( rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2 )
             // InternalOCLstdlib.g:17255:2: rule__NavigatingArgCS__Group_0_1_0__1__Impl rule__NavigatingArgCS__Group_0_1_0__2
@@ -50561,7 +50561,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17266:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 ) ) )
             // InternalOCLstdlib.g:17267:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 ) )
@@ -50570,7 +50570,7 @@
             // InternalOCLstdlib.g:17268:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1());
             }
             // InternalOCLstdlib.g:17269:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1 )
             // InternalOCLstdlib.g:17269:2: rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1
@@ -50584,7 +50584,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_0_1_0_1());
             }
 
             }
@@ -50612,7 +50612,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17283:1: ( rule__NavigatingArgCS__Group_0_1_0__2__Impl )
             // InternalOCLstdlib.g:17284:2: rule__NavigatingArgCS__Group_0_1_0__2__Impl
@@ -50645,7 +50645,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17294:1: ( ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? ) )
             // InternalOCLstdlib.g:17295:1: ( ( rule__NavigatingArgCS__Group_0_1_0_2__0 )? )
@@ -50654,7 +50654,7 @@
             // InternalOCLstdlib.g:17296:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2());
             }
             // InternalOCLstdlib.g:17297:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0 )?
             int alt149=2;
@@ -50679,7 +50679,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getGroup_0_1_0_2());
             }
 
             }
@@ -50707,7 +50707,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17317:1: ( rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1 )
             // InternalOCLstdlib.g:17318:2: rule__NavigatingArgCS__Group_0_1_0_2__0__Impl rule__NavigatingArgCS__Group_0_1_0_2__1
@@ -50745,7 +50745,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17329:1: ( ( '=' ) )
             // InternalOCLstdlib.g:17330:1: ( '=' )
@@ -50754,11 +50754,11 @@
             // InternalOCLstdlib.g:17331:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
             }
 
             }
@@ -50786,7 +50786,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17348:1: ( rule__NavigatingArgCS__Group_0_1_0_2__1__Impl )
             // InternalOCLstdlib.g:17349:2: rule__NavigatingArgCS__Group_0_1_0_2__1__Impl
@@ -50819,7 +50819,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17359:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) ) )
             // InternalOCLstdlib.g:17360:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 ) )
@@ -50828,7 +50828,7 @@
             // InternalOCLstdlib.g:17361:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1());
             }
             // InternalOCLstdlib.g:17362:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1 )
             // InternalOCLstdlib.g:17362:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1
@@ -50842,7 +50842,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_0_2_1());
             }
 
             }
@@ -50870,7 +50870,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17380:1: ( rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1 )
             // InternalOCLstdlib.g:17381:2: rule__NavigatingArgCS__Group_0_1_1__0__Impl rule__NavigatingArgCS__Group_0_1_1__1
@@ -50908,7 +50908,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17392:1: ( ( 'in' ) )
             // InternalOCLstdlib.g:17393:1: ( 'in' )
@@ -50917,11 +50917,11 @@
             // InternalOCLstdlib.g:17394:1: 'in'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
             }
             match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
             }
 
             }
@@ -50949,7 +50949,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17411:1: ( rule__NavigatingArgCS__Group_0_1_1__1__Impl )
             // InternalOCLstdlib.g:17412:2: rule__NavigatingArgCS__Group_0_1_1__1__Impl
@@ -50982,7 +50982,7 @@
     public final void rule__NavigatingArgCS__Group_0_1_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17422:1: ( ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 ) ) )
             // InternalOCLstdlib.g:17423:1: ( ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 ) )
@@ -50991,7 +50991,7 @@
             // InternalOCLstdlib.g:17424:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1());
             }
             // InternalOCLstdlib.g:17425:1: ( rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1 )
             // InternalOCLstdlib.g:17425:2: rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1
@@ -51005,7 +51005,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionAssignment_0_1_1_1());
             }
 
             }
@@ -51033,7 +51033,7 @@
     public final void rule__NavigatingArgCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17443:1: ( rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1 )
             // InternalOCLstdlib.g:17444:2: rule__NavigatingArgCS__Group_1__0__Impl rule__NavigatingArgCS__Group_1__1
@@ -51071,7 +51071,7 @@
     public final void rule__NavigatingArgCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17455:1: ( ( ':' ) )
             // InternalOCLstdlib.g:17456:1: ( ':' )
@@ -51080,11 +51080,11 @@
             // InternalOCLstdlib.g:17457:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
             }
 
             }
@@ -51112,7 +51112,7 @@
     public final void rule__NavigatingArgCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17474:1: ( rule__NavigatingArgCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:17475:2: rule__NavigatingArgCS__Group_1__1__Impl
@@ -51145,7 +51145,7 @@
     public final void rule__NavigatingArgCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17485:1: ( ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) ) )
             // InternalOCLstdlib.g:17486:1: ( ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 ) )
@@ -51154,7 +51154,7 @@
             // InternalOCLstdlib.g:17487:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1());
             }
             // InternalOCLstdlib.g:17488:1: ( rule__NavigatingArgCS__OwnedTypeAssignment_1_1 )
             // InternalOCLstdlib.g:17488:2: rule__NavigatingArgCS__OwnedTypeAssignment_1_1
@@ -51168,7 +51168,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeAssignment_1_1());
             }
 
             }
@@ -51196,7 +51196,7 @@
     public final void rule__NavigatingBarArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17506:1: ( rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1 )
             // InternalOCLstdlib.g:17507:2: rule__NavigatingBarArgCS__Group__0__Impl rule__NavigatingBarArgCS__Group__1
@@ -51234,7 +51234,7 @@
     public final void rule__NavigatingBarArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17518:1: ( ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) ) )
             // InternalOCLstdlib.g:17519:1: ( ( rule__NavigatingBarArgCS__PrefixAssignment_0 ) )
@@ -51243,7 +51243,7 @@
             // InternalOCLstdlib.g:17520:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0());
             }
             // InternalOCLstdlib.g:17521:1: ( rule__NavigatingBarArgCS__PrefixAssignment_0 )
             // InternalOCLstdlib.g:17521:2: rule__NavigatingBarArgCS__PrefixAssignment_0
@@ -51257,7 +51257,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixAssignment_0());
             }
 
             }
@@ -51285,7 +51285,7 @@
     public final void rule__NavigatingBarArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17535:1: ( rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2 )
             // InternalOCLstdlib.g:17536:2: rule__NavigatingBarArgCS__Group__1__Impl rule__NavigatingBarArgCS__Group__2
@@ -51323,7 +51323,7 @@
     public final void rule__NavigatingBarArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17547:1: ( ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) ) )
             // InternalOCLstdlib.g:17548:1: ( ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 ) )
@@ -51332,7 +51332,7 @@
             // InternalOCLstdlib.g:17549:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
             // InternalOCLstdlib.g:17550:1: ( rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1 )
             // InternalOCLstdlib.g:17550:2: rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1
@@ -51346,7 +51346,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
 
             }
@@ -51374,7 +51374,7 @@
     public final void rule__NavigatingBarArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17564:1: ( rule__NavigatingBarArgCS__Group__2__Impl )
             // InternalOCLstdlib.g:17565:2: rule__NavigatingBarArgCS__Group__2__Impl
@@ -51407,7 +51407,7 @@
     public final void rule__NavigatingBarArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17575:1: ( ( ( rule__NavigatingBarArgCS__Group_2__0 )? ) )
             // InternalOCLstdlib.g:17576:1: ( ( rule__NavigatingBarArgCS__Group_2__0 )? )
@@ -51416,7 +51416,7 @@
             // InternalOCLstdlib.g:17577:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:17578:1: ( rule__NavigatingBarArgCS__Group_2__0 )?
             int alt150=2;
@@ -51441,7 +51441,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2());
             }
 
             }
@@ -51469,7 +51469,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17598:1: ( rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1 )
             // InternalOCLstdlib.g:17599:2: rule__NavigatingBarArgCS__Group_2__0__Impl rule__NavigatingBarArgCS__Group_2__1
@@ -51507,7 +51507,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17610:1: ( ( ':' ) )
             // InternalOCLstdlib.g:17611:1: ( ':' )
@@ -51516,11 +51516,11 @@
             // InternalOCLstdlib.g:17612:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -51548,7 +51548,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17629:1: ( rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2 )
             // InternalOCLstdlib.g:17630:2: rule__NavigatingBarArgCS__Group_2__1__Impl rule__NavigatingBarArgCS__Group_2__2
@@ -51586,7 +51586,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17641:1: ( ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) ) )
             // InternalOCLstdlib.g:17642:1: ( ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 ) )
@@ -51595,7 +51595,7 @@
             // InternalOCLstdlib.g:17643:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1());
             }
             // InternalOCLstdlib.g:17644:1: ( rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1 )
             // InternalOCLstdlib.g:17644:2: rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1
@@ -51609,7 +51609,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeAssignment_2_1());
             }
 
             }
@@ -51637,7 +51637,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17658:1: ( rule__NavigatingBarArgCS__Group_2__2__Impl )
             // InternalOCLstdlib.g:17659:2: rule__NavigatingBarArgCS__Group_2__2__Impl
@@ -51670,7 +51670,7 @@
     public final void rule__NavigatingBarArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17669:1: ( ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? ) )
             // InternalOCLstdlib.g:17670:1: ( ( rule__NavigatingBarArgCS__Group_2_2__0 )? )
@@ -51679,7 +51679,7 @@
             // InternalOCLstdlib.g:17671:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2());
             }
             // InternalOCLstdlib.g:17672:1: ( rule__NavigatingBarArgCS__Group_2_2__0 )?
             int alt151=2;
@@ -51704,7 +51704,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getGroup_2_2());
             }
 
             }
@@ -51732,7 +51732,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17692:1: ( rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1 )
             // InternalOCLstdlib.g:17693:2: rule__NavigatingBarArgCS__Group_2_2__0__Impl rule__NavigatingBarArgCS__Group_2_2__1
@@ -51770,7 +51770,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17704:1: ( ( '=' ) )
             // InternalOCLstdlib.g:17705:1: ( '=' )
@@ -51779,11 +51779,11 @@
             // InternalOCLstdlib.g:17706:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
 
             }
@@ -51811,7 +51811,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17723:1: ( rule__NavigatingBarArgCS__Group_2_2__1__Impl )
             // InternalOCLstdlib.g:17724:2: rule__NavigatingBarArgCS__Group_2_2__1__Impl
@@ -51844,7 +51844,7 @@
     public final void rule__NavigatingBarArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17734:1: ( ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
             // InternalOCLstdlib.g:17735:1: ( ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
@@ -51853,7 +51853,7 @@
             // InternalOCLstdlib.g:17736:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
             // InternalOCLstdlib.g:17737:1: ( rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1 )
             // InternalOCLstdlib.g:17737:2: rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1
@@ -51867,7 +51867,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
 
             }
@@ -51895,7 +51895,7 @@
     public final void rule__NavigatingCommaArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17755:1: ( rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1 )
             // InternalOCLstdlib.g:17756:2: rule__NavigatingCommaArgCS__Group__0__Impl rule__NavigatingCommaArgCS__Group__1
@@ -51933,7 +51933,7 @@
     public final void rule__NavigatingCommaArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17767:1: ( ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) ) )
             // InternalOCLstdlib.g:17768:1: ( ( rule__NavigatingCommaArgCS__PrefixAssignment_0 ) )
@@ -51942,7 +51942,7 @@
             // InternalOCLstdlib.g:17769:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0());
             }
             // InternalOCLstdlib.g:17770:1: ( rule__NavigatingCommaArgCS__PrefixAssignment_0 )
             // InternalOCLstdlib.g:17770:2: rule__NavigatingCommaArgCS__PrefixAssignment_0
@@ -51956,7 +51956,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixAssignment_0());
             }
 
             }
@@ -51984,7 +51984,7 @@
     public final void rule__NavigatingCommaArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17784:1: ( rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2 )
             // InternalOCLstdlib.g:17785:2: rule__NavigatingCommaArgCS__Group__1__Impl rule__NavigatingCommaArgCS__Group__2
@@ -52022,7 +52022,7 @@
     public final void rule__NavigatingCommaArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17796:1: ( ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) ) )
             // InternalOCLstdlib.g:17797:1: ( ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 ) )
@@ -52031,7 +52031,7 @@
             // InternalOCLstdlib.g:17798:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
             // InternalOCLstdlib.g:17799:1: ( rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1 )
             // InternalOCLstdlib.g:17799:2: rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1
@@ -52045,7 +52045,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
 
             }
@@ -52073,7 +52073,7 @@
     public final void rule__NavigatingCommaArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17813:1: ( rule__NavigatingCommaArgCS__Group__2__Impl )
             // InternalOCLstdlib.g:17814:2: rule__NavigatingCommaArgCS__Group__2__Impl
@@ -52106,7 +52106,7 @@
     public final void rule__NavigatingCommaArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17824:1: ( ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? ) )
             // InternalOCLstdlib.g:17825:1: ( ( rule__NavigatingCommaArgCS__Alternatives_2 )? )
@@ -52115,7 +52115,7 @@
             // InternalOCLstdlib.g:17826:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2());
             }
             // InternalOCLstdlib.g:17827:1: ( rule__NavigatingCommaArgCS__Alternatives_2 )?
             int alt152=2;
@@ -52140,7 +52140,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getAlternatives_2());
             }
 
             }
@@ -52168,7 +52168,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17847:1: ( rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1 )
             // InternalOCLstdlib.g:17848:2: rule__NavigatingCommaArgCS__Group_2_0__0__Impl rule__NavigatingCommaArgCS__Group_2_0__1
@@ -52206,7 +52206,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17859:1: ( ( ':' ) )
             // InternalOCLstdlib.g:17860:1: ( ':' )
@@ -52215,11 +52215,11 @@
             // InternalOCLstdlib.g:17861:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
             }
 
             }
@@ -52247,7 +52247,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17878:1: ( rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2 )
             // InternalOCLstdlib.g:17879:2: rule__NavigatingCommaArgCS__Group_2_0__1__Impl rule__NavigatingCommaArgCS__Group_2_0__2
@@ -52285,7 +52285,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17890:1: ( ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 ) ) )
             // InternalOCLstdlib.g:17891:1: ( ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 ) )
@@ -52294,7 +52294,7 @@
             // InternalOCLstdlib.g:17892:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1());
             }
             // InternalOCLstdlib.g:17893:1: ( rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1 )
             // InternalOCLstdlib.g:17893:2: rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1
@@ -52308,7 +52308,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeAssignment_2_0_1());
             }
 
             }
@@ -52336,7 +52336,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17907:1: ( rule__NavigatingCommaArgCS__Group_2_0__2__Impl )
             // InternalOCLstdlib.g:17908:2: rule__NavigatingCommaArgCS__Group_2_0__2__Impl
@@ -52369,7 +52369,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17918:1: ( ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? ) )
             // InternalOCLstdlib.g:17919:1: ( ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )? )
@@ -52378,7 +52378,7 @@
             // InternalOCLstdlib.g:17920:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2());
             }
             // InternalOCLstdlib.g:17921:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0 )?
             int alt153=2;
@@ -52403,7 +52403,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getGroup_2_0_2());
             }
 
             }
@@ -52431,7 +52431,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17941:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1 )
             // InternalOCLstdlib.g:17942:2: rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl rule__NavigatingCommaArgCS__Group_2_0_2__1
@@ -52469,7 +52469,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17953:1: ( ( '=' ) )
             // InternalOCLstdlib.g:17954:1: ( '=' )
@@ -52478,11 +52478,11 @@
             // InternalOCLstdlib.g:17955:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
             }
 
             }
@@ -52510,7 +52510,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17972:1: ( rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl )
             // InternalOCLstdlib.g:17973:2: rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl
@@ -52543,7 +52543,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_0_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:17983:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) ) )
             // InternalOCLstdlib.g:17984:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 ) )
@@ -52552,7 +52552,7 @@
             // InternalOCLstdlib.g:17985:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1());
             }
             // InternalOCLstdlib.g:17986:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1 )
             // InternalOCLstdlib.g:17986:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1
@@ -52566,7 +52566,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_0_2_1());
             }
 
             }
@@ -52594,7 +52594,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18004:1: ( rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1 )
             // InternalOCLstdlib.g:18005:2: rule__NavigatingCommaArgCS__Group_2_1__0__Impl rule__NavigatingCommaArgCS__Group_2_1__1
@@ -52632,7 +52632,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18016:1: ( ( 'in' ) )
             // InternalOCLstdlib.g:18017:1: ( 'in' )
@@ -52641,11 +52641,11 @@
             // InternalOCLstdlib.g:18018:1: 'in'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
             }
             match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
             }
 
             }
@@ -52673,7 +52673,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18035:1: ( rule__NavigatingCommaArgCS__Group_2_1__1__Impl )
             // InternalOCLstdlib.g:18036:2: rule__NavigatingCommaArgCS__Group_2_1__1__Impl
@@ -52706,7 +52706,7 @@
     public final void rule__NavigatingCommaArgCS__Group_2_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18046:1: ( ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 ) ) )
             // InternalOCLstdlib.g:18047:1: ( ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 ) )
@@ -52715,7 +52715,7 @@
             // InternalOCLstdlib.g:18048:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1());
             }
             // InternalOCLstdlib.g:18049:1: ( rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1 )
             // InternalOCLstdlib.g:18049:2: rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1
@@ -52729,7 +52729,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionAssignment_2_1_1());
             }
 
             }
@@ -52757,7 +52757,7 @@
     public final void rule__NavigatingSemiArgCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18067:1: ( rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1 )
             // InternalOCLstdlib.g:18068:2: rule__NavigatingSemiArgCS__Group__0__Impl rule__NavigatingSemiArgCS__Group__1
@@ -52795,7 +52795,7 @@
     public final void rule__NavigatingSemiArgCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18079:1: ( ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) ) )
             // InternalOCLstdlib.g:18080:1: ( ( rule__NavigatingSemiArgCS__PrefixAssignment_0 ) )
@@ -52804,7 +52804,7 @@
             // InternalOCLstdlib.g:18081:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0());
             }
             // InternalOCLstdlib.g:18082:1: ( rule__NavigatingSemiArgCS__PrefixAssignment_0 )
             // InternalOCLstdlib.g:18082:2: rule__NavigatingSemiArgCS__PrefixAssignment_0
@@ -52818,7 +52818,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixAssignment_0());
             }
 
             }
@@ -52846,7 +52846,7 @@
     public final void rule__NavigatingSemiArgCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18096:1: ( rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2 )
             // InternalOCLstdlib.g:18097:2: rule__NavigatingSemiArgCS__Group__1__Impl rule__NavigatingSemiArgCS__Group__2
@@ -52884,7 +52884,7 @@
     public final void rule__NavigatingSemiArgCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18108:1: ( ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) ) )
             // InternalOCLstdlib.g:18109:1: ( ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 ) )
@@ -52893,7 +52893,7 @@
             // InternalOCLstdlib.g:18110:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
             // InternalOCLstdlib.g:18111:1: ( rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1 )
             // InternalOCLstdlib.g:18111:2: rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1
@@ -52907,7 +52907,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionAssignment_1());
             }
 
             }
@@ -52935,7 +52935,7 @@
     public final void rule__NavigatingSemiArgCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18125:1: ( rule__NavigatingSemiArgCS__Group__2__Impl )
             // InternalOCLstdlib.g:18126:2: rule__NavigatingSemiArgCS__Group__2__Impl
@@ -52968,7 +52968,7 @@
     public final void rule__NavigatingSemiArgCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18136:1: ( ( ( rule__NavigatingSemiArgCS__Group_2__0 )? ) )
             // InternalOCLstdlib.g:18137:1: ( ( rule__NavigatingSemiArgCS__Group_2__0 )? )
@@ -52977,7 +52977,7 @@
             // InternalOCLstdlib.g:18138:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:18139:1: ( rule__NavigatingSemiArgCS__Group_2__0 )?
             int alt154=2;
@@ -53002,7 +53002,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2());
             }
 
             }
@@ -53030,7 +53030,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18159:1: ( rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1 )
             // InternalOCLstdlib.g:18160:2: rule__NavigatingSemiArgCS__Group_2__0__Impl rule__NavigatingSemiArgCS__Group_2__1
@@ -53068,7 +53068,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18171:1: ( ( ':' ) )
             // InternalOCLstdlib.g:18172:1: ( ':' )
@@ -53077,11 +53077,11 @@
             // InternalOCLstdlib.g:18173:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -53109,7 +53109,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18190:1: ( rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2 )
             // InternalOCLstdlib.g:18191:2: rule__NavigatingSemiArgCS__Group_2__1__Impl rule__NavigatingSemiArgCS__Group_2__2
@@ -53147,7 +53147,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18202:1: ( ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) ) )
             // InternalOCLstdlib.g:18203:1: ( ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 ) )
@@ -53156,7 +53156,7 @@
             // InternalOCLstdlib.g:18204:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1());
             }
             // InternalOCLstdlib.g:18205:1: ( rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1 )
             // InternalOCLstdlib.g:18205:2: rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1
@@ -53170,7 +53170,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeAssignment_2_1());
             }
 
             }
@@ -53198,7 +53198,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18219:1: ( rule__NavigatingSemiArgCS__Group_2__2__Impl )
             // InternalOCLstdlib.g:18220:2: rule__NavigatingSemiArgCS__Group_2__2__Impl
@@ -53231,7 +53231,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18230:1: ( ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? ) )
             // InternalOCLstdlib.g:18231:1: ( ( rule__NavigatingSemiArgCS__Group_2_2__0 )? )
@@ -53240,7 +53240,7 @@
             // InternalOCLstdlib.g:18232:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2());
             }
             // InternalOCLstdlib.g:18233:1: ( rule__NavigatingSemiArgCS__Group_2_2__0 )?
             int alt155=2;
@@ -53265,7 +53265,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getGroup_2_2());
             }
 
             }
@@ -53293,7 +53293,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18253:1: ( rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1 )
             // InternalOCLstdlib.g:18254:2: rule__NavigatingSemiArgCS__Group_2_2__0__Impl rule__NavigatingSemiArgCS__Group_2_2__1
@@ -53331,7 +53331,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18265:1: ( ( '=' ) )
             // InternalOCLstdlib.g:18266:1: ( '=' )
@@ -53340,11 +53340,11 @@
             // InternalOCLstdlib.g:18267:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
             }
 
             }
@@ -53372,7 +53372,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18284:1: ( rule__NavigatingSemiArgCS__Group_2_2__1__Impl )
             // InternalOCLstdlib.g:18285:2: rule__NavigatingSemiArgCS__Group_2_2__1__Impl
@@ -53405,7 +53405,7 @@
     public final void rule__NavigatingSemiArgCS__Group_2_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18295:1: ( ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) ) )
             // InternalOCLstdlib.g:18296:1: ( ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 ) )
@@ -53414,7 +53414,7 @@
             // InternalOCLstdlib.g:18297:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
             // InternalOCLstdlib.g:18298:1: ( rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1 )
             // InternalOCLstdlib.g:18298:2: rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1
@@ -53428,7 +53428,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionAssignment_2_2_1());
             }
 
             }
@@ -53456,7 +53456,7 @@
     public final void rule__IfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18316:1: ( rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1 )
             // InternalOCLstdlib.g:18317:2: rule__IfExpCS__Group__0__Impl rule__IfExpCS__Group__1
@@ -53494,7 +53494,7 @@
     public final void rule__IfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18328:1: ( ( 'if' ) )
             // InternalOCLstdlib.g:18329:1: ( 'if' )
@@ -53503,11 +53503,11 @@
             // InternalOCLstdlib.g:18330:1: 'if'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); 
+               before(grammarAccess.getIfExpCSAccess().getIfKeyword_0());
             }
             match(input,44,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getIfKeyword_0()); 
+               after(grammarAccess.getIfExpCSAccess().getIfKeyword_0());
             }
 
             }
@@ -53535,7 +53535,7 @@
     public final void rule__IfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18347:1: ( rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2 )
             // InternalOCLstdlib.g:18348:2: rule__IfExpCS__Group__1__Impl rule__IfExpCS__Group__2
@@ -53573,7 +53573,7 @@
     public final void rule__IfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18359:1: ( ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) ) )
             // InternalOCLstdlib.g:18360:1: ( ( rule__IfExpCS__OwnedConditionAssignment_1 ) )
@@ -53582,7 +53582,7 @@
             // InternalOCLstdlib.g:18361:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1());
             }
             // InternalOCLstdlib.g:18362:1: ( rule__IfExpCS__OwnedConditionAssignment_1 )
             // InternalOCLstdlib.g:18362:2: rule__IfExpCS__OwnedConditionAssignment_1
@@ -53596,7 +53596,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAssignment_1());
             }
 
             }
@@ -53624,7 +53624,7 @@
     public final void rule__IfExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18376:1: ( rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3 )
             // InternalOCLstdlib.g:18377:2: rule__IfExpCS__Group__2__Impl rule__IfExpCS__Group__3
@@ -53662,7 +53662,7 @@
     public final void rule__IfExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18388:1: ( ( 'then' ) )
             // InternalOCLstdlib.g:18389:1: ( 'then' )
@@ -53671,11 +53671,11 @@
             // InternalOCLstdlib.g:18390:1: 'then'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); 
+               before(grammarAccess.getIfExpCSAccess().getThenKeyword_2());
             }
             match(input,50,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getThenKeyword_2()); 
+               after(grammarAccess.getIfExpCSAccess().getThenKeyword_2());
             }
 
             }
@@ -53703,7 +53703,7 @@
     public final void rule__IfExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18407:1: ( rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4 )
             // InternalOCLstdlib.g:18408:2: rule__IfExpCS__Group__3__Impl rule__IfExpCS__Group__4
@@ -53741,7 +53741,7 @@
     public final void rule__IfExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18419:1: ( ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) ) )
             // InternalOCLstdlib.g:18420:1: ( ( rule__IfExpCS__OwnedThenExpressionAssignment_3 ) )
@@ -53750,7 +53750,7 @@
             // InternalOCLstdlib.g:18421:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
             // InternalOCLstdlib.g:18422:1: ( rule__IfExpCS__OwnedThenExpressionAssignment_3 )
             // InternalOCLstdlib.g:18422:2: rule__IfExpCS__OwnedThenExpressionAssignment_3
@@ -53764,7 +53764,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
 
             }
@@ -53792,7 +53792,7 @@
     public final void rule__IfExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18436:1: ( rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5 )
             // InternalOCLstdlib.g:18437:2: rule__IfExpCS__Group__4__Impl rule__IfExpCS__Group__5
@@ -53830,7 +53830,7 @@
     public final void rule__IfExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18448:1: ( ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* ) )
             // InternalOCLstdlib.g:18449:1: ( ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )* )
@@ -53839,7 +53839,7 @@
             // InternalOCLstdlib.g:18450:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4());
             }
             // InternalOCLstdlib.g:18451:1: ( rule__IfExpCS__OwnedIfThenExpressionsAssignment_4 )*
             loop156:
@@ -53871,7 +53871,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsAssignment_4());
             }
 
             }
@@ -53899,7 +53899,7 @@
     public final void rule__IfExpCS__Group__5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18465:1: ( rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6 )
             // InternalOCLstdlib.g:18466:2: rule__IfExpCS__Group__5__Impl rule__IfExpCS__Group__6
@@ -53937,7 +53937,7 @@
     public final void rule__IfExpCS__Group__5__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18477:1: ( ( 'else' ) )
             // InternalOCLstdlib.g:18478:1: ( 'else' )
@@ -53946,11 +53946,11 @@
             // InternalOCLstdlib.g:18479:1: 'else'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); 
+               before(grammarAccess.getIfExpCSAccess().getElseKeyword_5());
             }
             match(input,42,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getElseKeyword_5()); 
+               after(grammarAccess.getIfExpCSAccess().getElseKeyword_5());
             }
 
             }
@@ -53978,7 +53978,7 @@
     public final void rule__IfExpCS__Group__6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18496:1: ( rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7 )
             // InternalOCLstdlib.g:18497:2: rule__IfExpCS__Group__6__Impl rule__IfExpCS__Group__7
@@ -54016,7 +54016,7 @@
     public final void rule__IfExpCS__Group__6__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18508:1: ( ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) ) )
             // InternalOCLstdlib.g:18509:1: ( ( rule__IfExpCS__OwnedElseExpressionAssignment_6 ) )
@@ -54025,7 +54025,7 @@
             // InternalOCLstdlib.g:18510:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6());
             }
             // InternalOCLstdlib.g:18511:1: ( rule__IfExpCS__OwnedElseExpressionAssignment_6 )
             // InternalOCLstdlib.g:18511:2: rule__IfExpCS__OwnedElseExpressionAssignment_6
@@ -54039,7 +54039,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionAssignment_6());
             }
 
             }
@@ -54067,7 +54067,7 @@
     public final void rule__IfExpCS__Group__7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18525:1: ( rule__IfExpCS__Group__7__Impl )
             // InternalOCLstdlib.g:18526:2: rule__IfExpCS__Group__7__Impl
@@ -54100,7 +54100,7 @@
     public final void rule__IfExpCS__Group__7__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18536:1: ( ( 'endif' ) )
             // InternalOCLstdlib.g:18537:1: ( 'endif' )
@@ -54109,11 +54109,11 @@
             // InternalOCLstdlib.g:18538:1: 'endif'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); 
+               before(grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
             }
             match(input,43,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getEndifKeyword_7()); 
+               after(grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
             }
 
             }
@@ -54141,7 +54141,7 @@
     public final void rule__ElseIfThenExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18571:1: ( rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1 )
             // InternalOCLstdlib.g:18572:2: rule__ElseIfThenExpCS__Group__0__Impl rule__ElseIfThenExpCS__Group__1
@@ -54179,7 +54179,7 @@
     public final void rule__ElseIfThenExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18583:1: ( ( 'elseif' ) )
             // InternalOCLstdlib.g:18584:1: ( 'elseif' )
@@ -54188,11 +54188,11 @@
             // InternalOCLstdlib.g:18585:1: 'elseif'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
             }
             match(input,99,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
             }
 
             }
@@ -54220,7 +54220,7 @@
     public final void rule__ElseIfThenExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18602:1: ( rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2 )
             // InternalOCLstdlib.g:18603:2: rule__ElseIfThenExpCS__Group__1__Impl rule__ElseIfThenExpCS__Group__2
@@ -54258,7 +54258,7 @@
     public final void rule__ElseIfThenExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18614:1: ( ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) ) )
             // InternalOCLstdlib.g:18615:1: ( ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 ) )
@@ -54267,7 +54267,7 @@
             // InternalOCLstdlib.g:18616:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1());
             }
             // InternalOCLstdlib.g:18617:1: ( rule__ElseIfThenExpCS__OwnedConditionAssignment_1 )
             // InternalOCLstdlib.g:18617:2: rule__ElseIfThenExpCS__OwnedConditionAssignment_1
@@ -54281,7 +54281,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionAssignment_1());
             }
 
             }
@@ -54309,7 +54309,7 @@
     public final void rule__ElseIfThenExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18631:1: ( rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3 )
             // InternalOCLstdlib.g:18632:2: rule__ElseIfThenExpCS__Group__2__Impl rule__ElseIfThenExpCS__Group__3
@@ -54347,7 +54347,7 @@
     public final void rule__ElseIfThenExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18643:1: ( ( 'then' ) )
             // InternalOCLstdlib.g:18644:1: ( 'then' )
@@ -54356,11 +54356,11 @@
             // InternalOCLstdlib.g:18645:1: 'then'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
             }
             match(input,50,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
             }
 
             }
@@ -54388,7 +54388,7 @@
     public final void rule__ElseIfThenExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18662:1: ( rule__ElseIfThenExpCS__Group__3__Impl )
             // InternalOCLstdlib.g:18663:2: rule__ElseIfThenExpCS__Group__3__Impl
@@ -54421,7 +54421,7 @@
     public final void rule__ElseIfThenExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18673:1: ( ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) ) )
             // InternalOCLstdlib.g:18674:1: ( ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 ) )
@@ -54430,7 +54430,7 @@
             // InternalOCLstdlib.g:18675:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
             // InternalOCLstdlib.g:18676:1: ( rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3 )
             // InternalOCLstdlib.g:18676:2: rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3
@@ -54444,7 +54444,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionAssignment_3());
             }
 
             }
@@ -54472,7 +54472,7 @@
     public final void rule__LetExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18698:1: ( rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1 )
             // InternalOCLstdlib.g:18699:2: rule__LetExpCS__Group__0__Impl rule__LetExpCS__Group__1
@@ -54510,7 +54510,7 @@
     public final void rule__LetExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18710:1: ( ( 'let' ) )
             // InternalOCLstdlib.g:18711:1: ( 'let' )
@@ -54519,11 +54519,11 @@
             // InternalOCLstdlib.g:18712:1: 'let'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); 
+               before(grammarAccess.getLetExpCSAccess().getLetKeyword_0());
             }
             match(input,47,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getLetKeyword_0()); 
+               after(grammarAccess.getLetExpCSAccess().getLetKeyword_0());
             }
 
             }
@@ -54551,7 +54551,7 @@
     public final void rule__LetExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18729:1: ( rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2 )
             // InternalOCLstdlib.g:18730:2: rule__LetExpCS__Group__1__Impl rule__LetExpCS__Group__2
@@ -54589,7 +54589,7 @@
     public final void rule__LetExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18741:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) ) )
             // InternalOCLstdlib.g:18742:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_1 ) )
@@ -54598,7 +54598,7 @@
             // InternalOCLstdlib.g:18743:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1());
             }
             // InternalOCLstdlib.g:18744:1: ( rule__LetExpCS__OwnedVariablesAssignment_1 )
             // InternalOCLstdlib.g:18744:2: rule__LetExpCS__OwnedVariablesAssignment_1
@@ -54612,7 +54612,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_1());
             }
 
             }
@@ -54640,7 +54640,7 @@
     public final void rule__LetExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18758:1: ( rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3 )
             // InternalOCLstdlib.g:18759:2: rule__LetExpCS__Group__2__Impl rule__LetExpCS__Group__3
@@ -54678,7 +54678,7 @@
     public final void rule__LetExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18770:1: ( ( ( rule__LetExpCS__Group_2__0 )* ) )
             // InternalOCLstdlib.g:18771:1: ( ( rule__LetExpCS__Group_2__0 )* )
@@ -54687,7 +54687,7 @@
             // InternalOCLstdlib.g:18772:1: ( rule__LetExpCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getGroup_2()); 
+               before(grammarAccess.getLetExpCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:18773:1: ( rule__LetExpCS__Group_2__0 )*
             loop157:
@@ -54719,7 +54719,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getGroup_2()); 
+               after(grammarAccess.getLetExpCSAccess().getGroup_2());
             }
 
             }
@@ -54747,7 +54747,7 @@
     public final void rule__LetExpCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18787:1: ( rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4 )
             // InternalOCLstdlib.g:18788:2: rule__LetExpCS__Group__3__Impl rule__LetExpCS__Group__4
@@ -54785,7 +54785,7 @@
     public final void rule__LetExpCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18799:1: ( ( 'in' ) )
             // InternalOCLstdlib.g:18800:1: ( 'in' )
@@ -54794,11 +54794,11 @@
             // InternalOCLstdlib.g:18801:1: 'in'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getInKeyword_3()); 
+               before(grammarAccess.getLetExpCSAccess().getInKeyword_3());
             }
             match(input,46,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getInKeyword_3()); 
+               after(grammarAccess.getLetExpCSAccess().getInKeyword_3());
             }
 
             }
@@ -54826,7 +54826,7 @@
     public final void rule__LetExpCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18818:1: ( rule__LetExpCS__Group__4__Impl )
             // InternalOCLstdlib.g:18819:2: rule__LetExpCS__Group__4__Impl
@@ -54859,7 +54859,7 @@
     public final void rule__LetExpCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18829:1: ( ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) ) )
             // InternalOCLstdlib.g:18830:1: ( ( rule__LetExpCS__OwnedInExpressionAssignment_4 ) )
@@ -54868,7 +54868,7 @@
             // InternalOCLstdlib.g:18831:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4());
             }
             // InternalOCLstdlib.g:18832:1: ( rule__LetExpCS__OwnedInExpressionAssignment_4 )
             // InternalOCLstdlib.g:18832:2: rule__LetExpCS__OwnedInExpressionAssignment_4
@@ -54882,7 +54882,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionAssignment_4());
             }
 
             }
@@ -54910,7 +54910,7 @@
     public final void rule__LetExpCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18856:1: ( rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1 )
             // InternalOCLstdlib.g:18857:2: rule__LetExpCS__Group_2__0__Impl rule__LetExpCS__Group_2__1
@@ -54948,7 +54948,7 @@
     public final void rule__LetExpCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18868:1: ( ( ',' ) )
             // InternalOCLstdlib.g:18869:1: ( ',' )
@@ -54957,11 +54957,11 @@
             // InternalOCLstdlib.g:18870:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); 
+               before(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0()); 
+               after(grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
             }
 
             }
@@ -54989,7 +54989,7 @@
     public final void rule__LetExpCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18887:1: ( rule__LetExpCS__Group_2__1__Impl )
             // InternalOCLstdlib.g:18888:2: rule__LetExpCS__Group_2__1__Impl
@@ -55022,7 +55022,7 @@
     public final void rule__LetExpCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18898:1: ( ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) ) )
             // InternalOCLstdlib.g:18899:1: ( ( rule__LetExpCS__OwnedVariablesAssignment_2_1 ) )
@@ -55031,7 +55031,7 @@
             // InternalOCLstdlib.g:18900:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1());
             }
             // InternalOCLstdlib.g:18901:1: ( rule__LetExpCS__OwnedVariablesAssignment_2_1 )
             // InternalOCLstdlib.g:18901:2: rule__LetExpCS__OwnedVariablesAssignment_2_1
@@ -55045,7 +55045,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesAssignment_2_1());
             }
 
             }
@@ -55073,7 +55073,7 @@
     public final void rule__LetVariableCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18919:1: ( rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1 )
             // InternalOCLstdlib.g:18920:2: rule__LetVariableCS__Group__0__Impl rule__LetVariableCS__Group__1
@@ -55111,7 +55111,7 @@
     public final void rule__LetVariableCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18931:1: ( ( ( rule__LetVariableCS__NameAssignment_0 ) ) )
             // InternalOCLstdlib.g:18932:1: ( ( rule__LetVariableCS__NameAssignment_0 ) )
@@ -55120,7 +55120,7 @@
             // InternalOCLstdlib.g:18933:1: ( rule__LetVariableCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getNameAssignment_0());
             }
             // InternalOCLstdlib.g:18934:1: ( rule__LetVariableCS__NameAssignment_0 )
             // InternalOCLstdlib.g:18934:2: rule__LetVariableCS__NameAssignment_0
@@ -55134,7 +55134,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getNameAssignment_0());
             }
 
             }
@@ -55162,7 +55162,7 @@
     public final void rule__LetVariableCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18948:1: ( rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2 )
             // InternalOCLstdlib.g:18949:2: rule__LetVariableCS__Group__1__Impl rule__LetVariableCS__Group__2
@@ -55200,7 +55200,7 @@
     public final void rule__LetVariableCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18960:1: ( ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? ) )
             // InternalOCLstdlib.g:18961:1: ( ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )? )
@@ -55209,7 +55209,7 @@
             // InternalOCLstdlib.g:18962:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1());
             }
             // InternalOCLstdlib.g:18963:1: ( rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1 )?
             int alt158=2;
@@ -55234,7 +55234,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseAssignment_1());
             }
 
             }
@@ -55262,7 +55262,7 @@
     public final void rule__LetVariableCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18977:1: ( rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3 )
             // InternalOCLstdlib.g:18978:2: rule__LetVariableCS__Group__2__Impl rule__LetVariableCS__Group__3
@@ -55300,7 +55300,7 @@
     public final void rule__LetVariableCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:18989:1: ( ( ( rule__LetVariableCS__Group_2__0 )? ) )
             // InternalOCLstdlib.g:18990:1: ( ( rule__LetVariableCS__Group_2__0 )? )
@@ -55309,7 +55309,7 @@
             // InternalOCLstdlib.g:18991:1: ( rule__LetVariableCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getGroup_2()); 
+               before(grammarAccess.getLetVariableCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:18992:1: ( rule__LetVariableCS__Group_2__0 )?
             int alt159=2;
@@ -55334,7 +55334,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getGroup_2()); 
+               after(grammarAccess.getLetVariableCSAccess().getGroup_2());
             }
 
             }
@@ -55362,7 +55362,7 @@
     public final void rule__LetVariableCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19006:1: ( rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4 )
             // InternalOCLstdlib.g:19007:2: rule__LetVariableCS__Group__3__Impl rule__LetVariableCS__Group__4
@@ -55400,7 +55400,7 @@
     public final void rule__LetVariableCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19018:1: ( ( '=' ) )
             // InternalOCLstdlib.g:19019:1: ( '=' )
@@ -55409,11 +55409,11 @@
             // InternalOCLstdlib.g:19020:1: '='
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); 
+               before(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
             }
             match(input,60,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3()); 
+               after(grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
             }
 
             }
@@ -55441,7 +55441,7 @@
     public final void rule__LetVariableCS__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19037:1: ( rule__LetVariableCS__Group__4__Impl )
             // InternalOCLstdlib.g:19038:2: rule__LetVariableCS__Group__4__Impl
@@ -55474,7 +55474,7 @@
     public final void rule__LetVariableCS__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19048:1: ( ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) ) )
             // InternalOCLstdlib.g:19049:1: ( ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 ) )
@@ -55483,7 +55483,7 @@
             // InternalOCLstdlib.g:19050:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4());
             }
             // InternalOCLstdlib.g:19051:1: ( rule__LetVariableCS__OwnedInitExpressionAssignment_4 )
             // InternalOCLstdlib.g:19051:2: rule__LetVariableCS__OwnedInitExpressionAssignment_4
@@ -55497,7 +55497,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionAssignment_4());
             }
 
             }
@@ -55525,7 +55525,7 @@
     public final void rule__LetVariableCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19075:1: ( rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1 )
             // InternalOCLstdlib.g:19076:2: rule__LetVariableCS__Group_2__0__Impl rule__LetVariableCS__Group_2__1
@@ -55563,7 +55563,7 @@
     public final void rule__LetVariableCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19087:1: ( ( ':' ) )
             // InternalOCLstdlib.g:19088:1: ( ':' )
@@ -55572,11 +55572,11 @@
             // InternalOCLstdlib.g:19089:1: ':'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
             }
             match(input,82,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
             }
 
             }
@@ -55604,7 +55604,7 @@
     public final void rule__LetVariableCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19106:1: ( rule__LetVariableCS__Group_2__1__Impl )
             // InternalOCLstdlib.g:19107:2: rule__LetVariableCS__Group_2__1__Impl
@@ -55637,7 +55637,7 @@
     public final void rule__LetVariableCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19117:1: ( ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) ) )
             // InternalOCLstdlib.g:19118:1: ( ( rule__LetVariableCS__OwnedTypeAssignment_2_1 ) )
@@ -55646,7 +55646,7 @@
             // InternalOCLstdlib.g:19119:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1());
             }
             // InternalOCLstdlib.g:19120:1: ( rule__LetVariableCS__OwnedTypeAssignment_2_1 )
             // InternalOCLstdlib.g:19120:2: rule__LetVariableCS__OwnedTypeAssignment_2_1
@@ -55660,7 +55660,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeAssignment_2_1());
             }
 
             }
@@ -55688,7 +55688,7 @@
     public final void rule__NestedExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19138:1: ( rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1 )
             // InternalOCLstdlib.g:19139:2: rule__NestedExpCS__Group__0__Impl rule__NestedExpCS__Group__1
@@ -55726,7 +55726,7 @@
     public final void rule__NestedExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19150:1: ( ( '(' ) )
             // InternalOCLstdlib.g:19151:1: ( '(' )
@@ -55735,11 +55735,11 @@
             // InternalOCLstdlib.g:19152:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); 
+               before(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0()); 
+               after(grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
             }
 
             }
@@ -55767,7 +55767,7 @@
     public final void rule__NestedExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19169:1: ( rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2 )
             // InternalOCLstdlib.g:19170:2: rule__NestedExpCS__Group__1__Impl rule__NestedExpCS__Group__2
@@ -55805,7 +55805,7 @@
     public final void rule__NestedExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19181:1: ( ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) ) )
             // InternalOCLstdlib.g:19182:1: ( ( rule__NestedExpCS__OwnedExpressionAssignment_1 ) )
@@ -55814,7 +55814,7 @@
             // InternalOCLstdlib.g:19183:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1()); 
+               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1());
             }
             // InternalOCLstdlib.g:19184:1: ( rule__NestedExpCS__OwnedExpressionAssignment_1 )
             // InternalOCLstdlib.g:19184:2: rule__NestedExpCS__OwnedExpressionAssignment_1
@@ -55828,7 +55828,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1()); 
+               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionAssignment_1());
             }
 
             }
@@ -55856,7 +55856,7 @@
     public final void rule__NestedExpCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19198:1: ( rule__NestedExpCS__Group__2__Impl )
             // InternalOCLstdlib.g:19199:2: rule__NestedExpCS__Group__2__Impl
@@ -55889,7 +55889,7 @@
     public final void rule__NestedExpCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19209:1: ( ( ')' ) )
             // InternalOCLstdlib.g:19210:1: ( ')' )
@@ -55898,11 +55898,11 @@
             // InternalOCLstdlib.g:19211:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); 
+               before(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2()); 
+               after(grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
             }
 
             }
@@ -55930,7 +55930,7 @@
     public final void rule__SelfExpCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19234:1: ( rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1 )
             // InternalOCLstdlib.g:19235:2: rule__SelfExpCS__Group__0__Impl rule__SelfExpCS__Group__1
@@ -55968,7 +55968,7 @@
     public final void rule__SelfExpCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19246:1: ( ( () ) )
             // InternalOCLstdlib.g:19247:1: ( () )
@@ -55977,15 +55977,15 @@
             // InternalOCLstdlib.g:19248:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0()); 
+               before(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0());
             }
             // InternalOCLstdlib.g:19249:1: ()
-            // InternalOCLstdlib.g:19251:1: 
+            // InternalOCLstdlib.g:19251:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0()); 
+               after(grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0());
             }
 
             }
@@ -56009,7 +56009,7 @@
     public final void rule__SelfExpCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19265:1: ( rule__SelfExpCS__Group__1__Impl )
             // InternalOCLstdlib.g:19266:2: rule__SelfExpCS__Group__1__Impl
@@ -56042,7 +56042,7 @@
     public final void rule__SelfExpCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19276:1: ( ( 'self' ) )
             // InternalOCLstdlib.g:19277:1: ( 'self' )
@@ -56051,11 +56051,11 @@
             // InternalOCLstdlib.g:19278:1: 'self'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); 
+               before(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
             }
             match(input,100,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1()); 
+               after(grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
             }
 
             }
@@ -56083,7 +56083,7 @@
     public final void rule__MultiplicityBoundsCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19299:1: ( rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1 )
             // InternalOCLstdlib.g:19300:2: rule__MultiplicityBoundsCS__Group__0__Impl rule__MultiplicityBoundsCS__Group__1
@@ -56121,7 +56121,7 @@
     public final void rule__MultiplicityBoundsCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19311:1: ( ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) ) )
             // InternalOCLstdlib.g:19312:1: ( ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 ) )
@@ -56130,7 +56130,7 @@
             // InternalOCLstdlib.g:19313:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
             // InternalOCLstdlib.g:19314:1: ( rule__MultiplicityBoundsCS__LowerBoundAssignment_0 )
             // InternalOCLstdlib.g:19314:2: rule__MultiplicityBoundsCS__LowerBoundAssignment_0
@@ -56144,7 +56144,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundAssignment_0());
             }
 
             }
@@ -56172,7 +56172,7 @@
     public final void rule__MultiplicityBoundsCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19328:1: ( rule__MultiplicityBoundsCS__Group__1__Impl )
             // InternalOCLstdlib.g:19329:2: rule__MultiplicityBoundsCS__Group__1__Impl
@@ -56205,7 +56205,7 @@
     public final void rule__MultiplicityBoundsCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19339:1: ( ( ( rule__MultiplicityBoundsCS__Group_1__0 )? ) )
             // InternalOCLstdlib.g:19340:1: ( ( rule__MultiplicityBoundsCS__Group_1__0 )? )
@@ -56214,7 +56214,7 @@
             // InternalOCLstdlib.g:19341:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:19342:1: ( rule__MultiplicityBoundsCS__Group_1__0 )?
             int alt160=2;
@@ -56239,7 +56239,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getGroup_1());
             }
 
             }
@@ -56267,7 +56267,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19360:1: ( rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1 )
             // InternalOCLstdlib.g:19361:2: rule__MultiplicityBoundsCS__Group_1__0__Impl rule__MultiplicityBoundsCS__Group_1__1
@@ -56305,7 +56305,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19372:1: ( ( '..' ) )
             // InternalOCLstdlib.g:19373:1: ( '..' )
@@ -56314,11 +56314,11 @@
             // InternalOCLstdlib.g:19374:1: '..'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
             }
             match(input,92,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
             }
 
             }
@@ -56346,7 +56346,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19391:1: ( rule__MultiplicityBoundsCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:19392:2: rule__MultiplicityBoundsCS__Group_1__1__Impl
@@ -56379,7 +56379,7 @@
     public final void rule__MultiplicityBoundsCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19402:1: ( ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) ) )
             // InternalOCLstdlib.g:19403:1: ( ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 ) )
@@ -56388,7 +56388,7 @@
             // InternalOCLstdlib.g:19404:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
             // InternalOCLstdlib.g:19405:1: ( rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1 )
             // InternalOCLstdlib.g:19405:2: rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1
@@ -56402,7 +56402,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundAssignment_1_1());
             }
 
             }
@@ -56430,7 +56430,7 @@
     public final void rule__MultiplicityCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19423:1: ( rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1 )
             // InternalOCLstdlib.g:19424:2: rule__MultiplicityCS__Group__0__Impl rule__MultiplicityCS__Group__1
@@ -56468,7 +56468,7 @@
     public final void rule__MultiplicityCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19435:1: ( ( '[' ) )
             // InternalOCLstdlib.g:19436:1: ( '[' )
@@ -56477,11 +56477,11 @@
             // InternalOCLstdlib.g:19437:1: '['
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
             }
             match(input,97,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
             }
 
             }
@@ -56509,7 +56509,7 @@
     public final void rule__MultiplicityCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19454:1: ( rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2 )
             // InternalOCLstdlib.g:19455:2: rule__MultiplicityCS__Group__1__Impl rule__MultiplicityCS__Group__2
@@ -56547,7 +56547,7 @@
     public final void rule__MultiplicityCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19466:1: ( ( ( rule__MultiplicityCS__Alternatives_1 ) ) )
             // InternalOCLstdlib.g:19467:1: ( ( rule__MultiplicityCS__Alternatives_1 ) )
@@ -56556,7 +56556,7 @@
             // InternalOCLstdlib.g:19468:1: ( rule__MultiplicityCS__Alternatives_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1()); 
+               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
             // InternalOCLstdlib.g:19469:1: ( rule__MultiplicityCS__Alternatives_1 )
             // InternalOCLstdlib.g:19469:2: rule__MultiplicityCS__Alternatives_1
@@ -56570,7 +56570,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_1()); 
+               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_1());
             }
 
             }
@@ -56598,7 +56598,7 @@
     public final void rule__MultiplicityCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19483:1: ( rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3 )
             // InternalOCLstdlib.g:19484:2: rule__MultiplicityCS__Group__2__Impl rule__MultiplicityCS__Group__3
@@ -56636,7 +56636,7 @@
     public final void rule__MultiplicityCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19495:1: ( ( ( rule__MultiplicityCS__Alternatives_2 )? ) )
             // InternalOCLstdlib.g:19496:1: ( ( rule__MultiplicityCS__Alternatives_2 )? )
@@ -56645,7 +56645,7 @@
             // InternalOCLstdlib.g:19497:1: ( rule__MultiplicityCS__Alternatives_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2()); 
+               before(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
             // InternalOCLstdlib.g:19498:1: ( rule__MultiplicityCS__Alternatives_2 )?
             int alt161=2;
@@ -56670,7 +56670,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_2()); 
+               after(grammarAccess.getMultiplicityCSAccess().getAlternatives_2());
             }
 
             }
@@ -56698,7 +56698,7 @@
     public final void rule__MultiplicityCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19512:1: ( rule__MultiplicityCS__Group__3__Impl )
             // InternalOCLstdlib.g:19513:2: rule__MultiplicityCS__Group__3__Impl
@@ -56731,7 +56731,7 @@
     public final void rule__MultiplicityCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19523:1: ( ( ']' ) )
             // InternalOCLstdlib.g:19524:1: ( ']' )
@@ -56740,11 +56740,11 @@
             // InternalOCLstdlib.g:19525:1: ']'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); 
+               before(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
             }
             match(input,98,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3()); 
+               after(grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
             }
 
             }
@@ -56772,7 +56772,7 @@
     public final void rule__PathNameCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19550:1: ( rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1 )
             // InternalOCLstdlib.g:19551:2: rule__PathNameCS__Group__0__Impl rule__PathNameCS__Group__1
@@ -56810,7 +56810,7 @@
     public final void rule__PathNameCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19562:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) ) )
             // InternalOCLstdlib.g:19563:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_0 ) )
@@ -56819,7 +56819,7 @@
             // InternalOCLstdlib.g:19564:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
             // InternalOCLstdlib.g:19565:1: ( rule__PathNameCS__OwnedPathElementsAssignment_0 )
             // InternalOCLstdlib.g:19565:2: rule__PathNameCS__OwnedPathElementsAssignment_0
@@ -56833,7 +56833,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_0());
             }
 
             }
@@ -56861,7 +56861,7 @@
     public final void rule__PathNameCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19579:1: ( rule__PathNameCS__Group__1__Impl )
             // InternalOCLstdlib.g:19580:2: rule__PathNameCS__Group__1__Impl
@@ -56894,7 +56894,7 @@
     public final void rule__PathNameCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19590:1: ( ( ( rule__PathNameCS__Group_1__0 )* ) )
             // InternalOCLstdlib.g:19591:1: ( ( rule__PathNameCS__Group_1__0 )* )
@@ -56903,7 +56903,7 @@
             // InternalOCLstdlib.g:19592:1: ( rule__PathNameCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getGroup_1()); 
+               before(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:19593:1: ( rule__PathNameCS__Group_1__0 )*
             loop162:
@@ -56935,7 +56935,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getGroup_1()); 
+               after(grammarAccess.getPathNameCSAccess().getGroup_1());
             }
 
             }
@@ -56963,7 +56963,7 @@
     public final void rule__PathNameCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19611:1: ( rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1 )
             // InternalOCLstdlib.g:19612:2: rule__PathNameCS__Group_1__0__Impl rule__PathNameCS__Group_1__1
@@ -57001,7 +57001,7 @@
     public final void rule__PathNameCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19623:1: ( ( '::' ) )
             // InternalOCLstdlib.g:19624:1: ( '::' )
@@ -57010,11 +57010,11 @@
             // InternalOCLstdlib.g:19625:1: '::'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); 
+               before(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
             }
             match(input,81,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0()); 
+               after(grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
             }
 
             }
@@ -57042,7 +57042,7 @@
     public final void rule__PathNameCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19642:1: ( rule__PathNameCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:19643:2: rule__PathNameCS__Group_1__1__Impl
@@ -57075,7 +57075,7 @@
     public final void rule__PathNameCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19653:1: ( ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) ) )
             // InternalOCLstdlib.g:19654:1: ( ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 ) )
@@ -57084,7 +57084,7 @@
             // InternalOCLstdlib.g:19655:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
             // InternalOCLstdlib.g:19656:1: ( rule__PathNameCS__OwnedPathElementsAssignment_1_1 )
             // InternalOCLstdlib.g:19656:2: rule__PathNameCS__OwnedPathElementsAssignment_1_1
@@ -57098,7 +57098,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsAssignment_1_1());
             }
 
             }
@@ -57126,7 +57126,7 @@
     public final void rule__TemplateBindingCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19674:1: ( rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1 )
             // InternalOCLstdlib.g:19675:2: rule__TemplateBindingCS__Group__0__Impl rule__TemplateBindingCS__Group__1
@@ -57164,7 +57164,7 @@
     public final void rule__TemplateBindingCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19686:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) ) )
             // InternalOCLstdlib.g:19687:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 ) )
@@ -57173,7 +57173,7 @@
             // InternalOCLstdlib.g:19688:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
             // InternalOCLstdlib.g:19689:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0 )
             // InternalOCLstdlib.g:19689:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0
@@ -57187,7 +57187,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_0());
             }
 
             }
@@ -57215,7 +57215,7 @@
     public final void rule__TemplateBindingCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19703:1: ( rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2 )
             // InternalOCLstdlib.g:19704:2: rule__TemplateBindingCS__Group__1__Impl rule__TemplateBindingCS__Group__2
@@ -57253,7 +57253,7 @@
     public final void rule__TemplateBindingCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19715:1: ( ( ( rule__TemplateBindingCS__Group_1__0 )* ) )
             // InternalOCLstdlib.g:19716:1: ( ( rule__TemplateBindingCS__Group_1__0 )* )
@@ -57262,7 +57262,7 @@
             // InternalOCLstdlib.g:19717:1: ( rule__TemplateBindingCS__Group_1__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getGroup_1()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:19718:1: ( rule__TemplateBindingCS__Group_1__0 )*
             loop163:
@@ -57294,7 +57294,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getGroup_1()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getGroup_1());
             }
 
             }
@@ -57322,7 +57322,7 @@
     public final void rule__TemplateBindingCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19732:1: ( rule__TemplateBindingCS__Group__2__Impl )
             // InternalOCLstdlib.g:19733:2: rule__TemplateBindingCS__Group__2__Impl
@@ -57355,7 +57355,7 @@
     public final void rule__TemplateBindingCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19743:1: ( ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? ) )
             // InternalOCLstdlib.g:19744:1: ( ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )? )
@@ -57364,7 +57364,7 @@
             // InternalOCLstdlib.g:19745:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
             // InternalOCLstdlib.g:19746:1: ( rule__TemplateBindingCS__OwnedMultiplicityAssignment_2 )?
             int alt164=2;
@@ -57389,7 +57389,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityAssignment_2());
             }
 
             }
@@ -57417,7 +57417,7 @@
     public final void rule__TemplateBindingCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19766:1: ( rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1 )
             // InternalOCLstdlib.g:19767:2: rule__TemplateBindingCS__Group_1__0__Impl rule__TemplateBindingCS__Group_1__1
@@ -57455,7 +57455,7 @@
     public final void rule__TemplateBindingCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19778:1: ( ( ',' ) )
             // InternalOCLstdlib.g:19779:1: ( ',' )
@@ -57464,11 +57464,11 @@
             // InternalOCLstdlib.g:19780:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
             }
 
             }
@@ -57496,7 +57496,7 @@
     public final void rule__TemplateBindingCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19797:1: ( rule__TemplateBindingCS__Group_1__1__Impl )
             // InternalOCLstdlib.g:19798:2: rule__TemplateBindingCS__Group_1__1__Impl
@@ -57529,7 +57529,7 @@
     public final void rule__TemplateBindingCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19808:1: ( ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) ) )
             // InternalOCLstdlib.g:19809:1: ( ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 ) )
@@ -57538,7 +57538,7 @@
             // InternalOCLstdlib.g:19810:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
             // InternalOCLstdlib.g:19811:1: ( rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1 )
             // InternalOCLstdlib.g:19811:2: rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1
@@ -57552,7 +57552,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsAssignment_1_1());
             }
 
             }
@@ -57580,7 +57580,7 @@
     public final void rule__TemplateSignatureCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19829:1: ( rule__TemplateSignatureCS__Group__0__Impl rule__TemplateSignatureCS__Group__1 )
             // InternalOCLstdlib.g:19830:2: rule__TemplateSignatureCS__Group__0__Impl rule__TemplateSignatureCS__Group__1
@@ -57618,7 +57618,7 @@
     public final void rule__TemplateSignatureCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19841:1: ( ( '(' ) )
             // InternalOCLstdlib.g:19842:1: ( '(' )
@@ -57627,11 +57627,11 @@
             // InternalOCLstdlib.g:19843:1: '('
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0());
             }
             match(input,83,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0());
             }
 
             }
@@ -57659,7 +57659,7 @@
     public final void rule__TemplateSignatureCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19860:1: ( rule__TemplateSignatureCS__Group__1__Impl rule__TemplateSignatureCS__Group__2 )
             // InternalOCLstdlib.g:19861:2: rule__TemplateSignatureCS__Group__1__Impl rule__TemplateSignatureCS__Group__2
@@ -57697,7 +57697,7 @@
     public final void rule__TemplateSignatureCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19872:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 ) ) )
             // InternalOCLstdlib.g:19873:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 ) )
@@ -57706,7 +57706,7 @@
             // InternalOCLstdlib.g:19874:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1());
             }
             // InternalOCLstdlib.g:19875:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_1 )
             // InternalOCLstdlib.g:19875:2: rule__TemplateSignatureCS__OwnedParametersAssignment_1
@@ -57720,7 +57720,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_1());
             }
 
             }
@@ -57748,7 +57748,7 @@
     public final void rule__TemplateSignatureCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19889:1: ( rule__TemplateSignatureCS__Group__2__Impl rule__TemplateSignatureCS__Group__3 )
             // InternalOCLstdlib.g:19890:2: rule__TemplateSignatureCS__Group__2__Impl rule__TemplateSignatureCS__Group__3
@@ -57786,7 +57786,7 @@
     public final void rule__TemplateSignatureCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19901:1: ( ( ( rule__TemplateSignatureCS__Group_2__0 )* ) )
             // InternalOCLstdlib.g:19902:1: ( ( rule__TemplateSignatureCS__Group_2__0 )* )
@@ -57795,7 +57795,7 @@
             // InternalOCLstdlib.g:19903:1: ( rule__TemplateSignatureCS__Group_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getGroup_2()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:19904:1: ( rule__TemplateSignatureCS__Group_2__0 )*
             loop165:
@@ -57827,7 +57827,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getGroup_2()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getGroup_2());
             }
 
             }
@@ -57855,7 +57855,7 @@
     public final void rule__TemplateSignatureCS__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19918:1: ( rule__TemplateSignatureCS__Group__3__Impl )
             // InternalOCLstdlib.g:19919:2: rule__TemplateSignatureCS__Group__3__Impl
@@ -57888,7 +57888,7 @@
     public final void rule__TemplateSignatureCS__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19929:1: ( ( ')' ) )
             // InternalOCLstdlib.g:19930:1: ( ')' )
@@ -57897,11 +57897,11 @@
             // InternalOCLstdlib.g:19931:1: ')'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_3()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_3());
             }
             match(input,84,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_3()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_3());
             }
 
             }
@@ -57929,7 +57929,7 @@
     public final void rule__TemplateSignatureCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19956:1: ( rule__TemplateSignatureCS__Group_2__0__Impl rule__TemplateSignatureCS__Group_2__1 )
             // InternalOCLstdlib.g:19957:2: rule__TemplateSignatureCS__Group_2__0__Impl rule__TemplateSignatureCS__Group_2__1
@@ -57967,7 +57967,7 @@
     public final void rule__TemplateSignatureCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19968:1: ( ( ',' ) )
             // InternalOCLstdlib.g:19969:1: ( ',' )
@@ -57976,11 +57976,11 @@
             // InternalOCLstdlib.g:19970:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_2_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_2_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_2_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_2_0());
             }
 
             }
@@ -58008,7 +58008,7 @@
     public final void rule__TemplateSignatureCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19987:1: ( rule__TemplateSignatureCS__Group_2__1__Impl )
             // InternalOCLstdlib.g:19988:2: rule__TemplateSignatureCS__Group_2__1__Impl
@@ -58041,7 +58041,7 @@
     public final void rule__TemplateSignatureCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:19998:1: ( ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 ) ) )
             // InternalOCLstdlib.g:19999:1: ( ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 ) )
@@ -58050,7 +58050,7 @@
             // InternalOCLstdlib.g:20000:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_2_1()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_2_1());
             }
             // InternalOCLstdlib.g:20001:1: ( rule__TemplateSignatureCS__OwnedParametersAssignment_2_1 )
             // InternalOCLstdlib.g:20001:2: rule__TemplateSignatureCS__OwnedParametersAssignment_2_1
@@ -58064,7 +58064,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_2_1()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersAssignment_2_1());
             }
 
             }
@@ -58092,7 +58092,7 @@
     public final void rule__TypeParameterCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20019:1: ( rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1 )
             // InternalOCLstdlib.g:20020:2: rule__TypeParameterCS__Group__0__Impl rule__TypeParameterCS__Group__1
@@ -58130,7 +58130,7 @@
     public final void rule__TypeParameterCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20031:1: ( ( ( rule__TypeParameterCS__NameAssignment_0 ) ) )
             // InternalOCLstdlib.g:20032:1: ( ( rule__TypeParameterCS__NameAssignment_0 ) )
@@ -58139,7 +58139,7 @@
             // InternalOCLstdlib.g:20033:1: ( rule__TypeParameterCS__NameAssignment_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
             // InternalOCLstdlib.g:20034:1: ( rule__TypeParameterCS__NameAssignment_0 )
             // InternalOCLstdlib.g:20034:2: rule__TypeParameterCS__NameAssignment_0
@@ -58153,7 +58153,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getNameAssignment_0());
             }
 
             }
@@ -58181,7 +58181,7 @@
     public final void rule__TypeParameterCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20048:1: ( rule__TypeParameterCS__Group__1__Impl )
             // InternalOCLstdlib.g:20049:2: rule__TypeParameterCS__Group__1__Impl
@@ -58214,7 +58214,7 @@
     public final void rule__TypeParameterCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20059:1: ( ( ( rule__TypeParameterCS__Group_1__0 )? ) )
             // InternalOCLstdlib.g:20060:1: ( ( rule__TypeParameterCS__Group_1__0 )? )
@@ -58223,7 +58223,7 @@
             // InternalOCLstdlib.g:20061:1: ( rule__TypeParameterCS__Group_1__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
             // InternalOCLstdlib.g:20062:1: ( rule__TypeParameterCS__Group_1__0 )?
             int alt166=2;
@@ -58248,7 +58248,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup_1());
             }
 
             }
@@ -58276,7 +58276,7 @@
     public final void rule__TypeParameterCS__Group_1__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20080:1: ( rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1 )
             // InternalOCLstdlib.g:20081:2: rule__TypeParameterCS__Group_1__0__Impl rule__TypeParameterCS__Group_1__1
@@ -58314,7 +58314,7 @@
     public final void rule__TypeParameterCS__Group_1__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20092:1: ( ( 'extends' ) )
             // InternalOCLstdlib.g:20093:1: ( 'extends' )
@@ -58323,11 +58323,11 @@
             // InternalOCLstdlib.g:20094:1: 'extends'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
             }
             match(input,20,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
             }
 
             }
@@ -58355,7 +58355,7 @@
     public final void rule__TypeParameterCS__Group_1__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20111:1: ( rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2 )
             // InternalOCLstdlib.g:20112:2: rule__TypeParameterCS__Group_1__1__Impl rule__TypeParameterCS__Group_1__2
@@ -58393,7 +58393,7 @@
     public final void rule__TypeParameterCS__Group_1__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20123:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) ) )
             // InternalOCLstdlib.g:20124:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 ) )
@@ -58402,7 +58402,7 @@
             // InternalOCLstdlib.g:20125:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
             // InternalOCLstdlib.g:20126:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_1 )
             // InternalOCLstdlib.g:20126:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_1
@@ -58416,7 +58416,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_1());
             }
 
             }
@@ -58444,7 +58444,7 @@
     public final void rule__TypeParameterCS__Group_1__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20140:1: ( rule__TypeParameterCS__Group_1__2__Impl )
             // InternalOCLstdlib.g:20141:2: rule__TypeParameterCS__Group_1__2__Impl
@@ -58477,7 +58477,7 @@
     public final void rule__TypeParameterCS__Group_1__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20151:1: ( ( ( rule__TypeParameterCS__Group_1_2__0 )* ) )
             // InternalOCLstdlib.g:20152:1: ( ( rule__TypeParameterCS__Group_1_2__0 )* )
@@ -58486,7 +58486,7 @@
             // InternalOCLstdlib.g:20153:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2()); 
+               before(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
             // InternalOCLstdlib.g:20154:1: ( rule__TypeParameterCS__Group_1_2__0 )*
             loop167:
@@ -58518,7 +58518,7 @@
             } while (true);
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getGroup_1_2()); 
+               after(grammarAccess.getTypeParameterCSAccess().getGroup_1_2());
             }
 
             }
@@ -58546,7 +58546,7 @@
     public final void rule__TypeParameterCS__Group_1_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20174:1: ( rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1 )
             // InternalOCLstdlib.g:20175:2: rule__TypeParameterCS__Group_1_2__0__Impl rule__TypeParameterCS__Group_1_2__1
@@ -58584,7 +58584,7 @@
     public final void rule__TypeParameterCS__Group_1_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20186:1: ( ( '&&' ) )
             // InternalOCLstdlib.g:20187:1: ( '&&' )
@@ -58593,11 +58593,11 @@
             // InternalOCLstdlib.g:20188:1: '&&'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
             }
             match(input,101,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
             }
 
             }
@@ -58625,7 +58625,7 @@
     public final void rule__TypeParameterCS__Group_1_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20205:1: ( rule__TypeParameterCS__Group_1_2__1__Impl )
             // InternalOCLstdlib.g:20206:2: rule__TypeParameterCS__Group_1_2__1__Impl
@@ -58658,7 +58658,7 @@
     public final void rule__TypeParameterCS__Group_1_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20216:1: ( ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) ) )
             // InternalOCLstdlib.g:20217:1: ( ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 ) )
@@ -58667,7 +58667,7 @@
             // InternalOCLstdlib.g:20218:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
             // InternalOCLstdlib.g:20219:1: ( rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1 )
             // InternalOCLstdlib.g:20219:2: rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1
@@ -58681,7 +58681,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsAssignment_1_2_1());
             }
 
             }
@@ -58709,7 +58709,7 @@
     public final void rule__WildcardTypeRefCS__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20237:1: ( rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1 )
             // InternalOCLstdlib.g:20238:2: rule__WildcardTypeRefCS__Group__0__Impl rule__WildcardTypeRefCS__Group__1
@@ -58747,7 +58747,7 @@
     public final void rule__WildcardTypeRefCS__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20249:1: ( ( () ) )
             // InternalOCLstdlib.g:20250:1: ( () )
@@ -58756,15 +58756,15 @@
             // InternalOCLstdlib.g:20251:1: ()
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
             // InternalOCLstdlib.g:20252:1: ()
-            // InternalOCLstdlib.g:20254:1: 
+            // InternalOCLstdlib.g:20254:1:
             {
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0());
             }
 
             }
@@ -58788,7 +58788,7 @@
     public final void rule__WildcardTypeRefCS__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20268:1: ( rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2 )
             // InternalOCLstdlib.g:20269:2: rule__WildcardTypeRefCS__Group__1__Impl rule__WildcardTypeRefCS__Group__2
@@ -58826,7 +58826,7 @@
     public final void rule__WildcardTypeRefCS__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20280:1: ( ( '?' ) )
             // InternalOCLstdlib.g:20281:1: ( '?' )
@@ -58835,11 +58835,11 @@
             // InternalOCLstdlib.g:20282:1: '?'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
             }
             match(input,80,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
             }
 
             }
@@ -58867,7 +58867,7 @@
     public final void rule__WildcardTypeRefCS__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20299:1: ( rule__WildcardTypeRefCS__Group__2__Impl )
             // InternalOCLstdlib.g:20300:2: rule__WildcardTypeRefCS__Group__2__Impl
@@ -58900,7 +58900,7 @@
     public final void rule__WildcardTypeRefCS__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20310:1: ( ( ( rule__WildcardTypeRefCS__Group_2__0 )? ) )
             // InternalOCLstdlib.g:20311:1: ( ( rule__WildcardTypeRefCS__Group_2__0 )? )
@@ -58909,7 +58909,7 @@
             // InternalOCLstdlib.g:20312:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
             // InternalOCLstdlib.g:20313:1: ( rule__WildcardTypeRefCS__Group_2__0 )?
             int alt168=2;
@@ -58934,7 +58934,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getGroup_2());
             }
 
             }
@@ -58962,7 +58962,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20333:1: ( rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1 )
             // InternalOCLstdlib.g:20334:2: rule__WildcardTypeRefCS__Group_2__0__Impl rule__WildcardTypeRefCS__Group_2__1
@@ -59000,7 +59000,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20345:1: ( ( 'extends' ) )
             // InternalOCLstdlib.g:20346:1: ( 'extends' )
@@ -59009,11 +59009,11 @@
             // InternalOCLstdlib.g:20347:1: 'extends'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
             }
             match(input,20,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
             }
 
             }
@@ -59041,7 +59041,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20364:1: ( rule__WildcardTypeRefCS__Group_2__1__Impl )
             // InternalOCLstdlib.g:20365:2: rule__WildcardTypeRefCS__Group_2__1__Impl
@@ -59074,7 +59074,7 @@
     public final void rule__WildcardTypeRefCS__Group_2__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20375:1: ( ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) ) )
             // InternalOCLstdlib.g:20376:1: ( ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 ) )
@@ -59083,7 +59083,7 @@
             // InternalOCLstdlib.g:20377:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
             // InternalOCLstdlib.g:20378:1: ( rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1 )
             // InternalOCLstdlib.g:20378:2: rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1
@@ -59097,7 +59097,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsAssignment_2_1());
             }
 
             }
@@ -59125,7 +59125,7 @@
     public final void rule__Library__OwnedImportsAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20397:1: ( ( ruleImportCS ) )
             // InternalOCLstdlib.g:20398:1: ( ruleImportCS )
@@ -59134,7 +59134,7 @@
             // InternalOCLstdlib.g:20399:1: ruleImportCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibraryAccess().getOwnedImportsImportCSParserRuleCall_0_0_0()); 
+               before(grammarAccess.getLibraryAccess().getOwnedImportsImportCSParserRuleCall_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleImportCS();
@@ -59142,7 +59142,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibraryAccess().getOwnedImportsImportCSParserRuleCall_0_0_0()); 
+               after(grammarAccess.getLibraryAccess().getOwnedImportsImportCSParserRuleCall_0_0_0());
             }
 
             }
@@ -59170,7 +59170,7 @@
     public final void rule__Library__OwnedPackagesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20412:1: ( ( ruleLibPackageCS ) )
             // InternalOCLstdlib.g:20413:1: ( ruleLibPackageCS )
@@ -59179,7 +59179,7 @@
             // InternalOCLstdlib.g:20414:1: ruleLibPackageCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibraryAccess().getOwnedPackagesLibPackageCSParserRuleCall_1_0()); 
+               before(grammarAccess.getLibraryAccess().getOwnedPackagesLibPackageCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLibPackageCS();
@@ -59187,7 +59187,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibraryAccess().getOwnedPackagesLibPackageCSParserRuleCall_1_0()); 
+               after(grammarAccess.getLibraryAccess().getOwnedPackagesLibPackageCSParserRuleCall_1_0());
             }
 
             }
@@ -59215,7 +59215,7 @@
     public final void rule__LibPathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20427:1: ( ( ruleLibPathElementCS ) )
             // InternalOCLstdlib.g:20428:1: ( ruleLibPathElementCS )
@@ -59224,7 +59224,7 @@
             // InternalOCLstdlib.g:20429:1: ruleLibPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_0_0()); 
+               before(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLibPathElementCS();
@@ -59232,7 +59232,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_0_0()); 
+               after(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_0_0());
             }
 
             }
@@ -59260,7 +59260,7 @@
     public final void rule__LibPathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20442:1: ( ( ruleLibPathElementCS ) )
             // InternalOCLstdlib.g:20443:1: ( ruleLibPathElementCS )
@@ -59269,7 +59269,7 @@
             // InternalOCLstdlib.g:20444:1: ruleLibPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLibPathElementCS();
@@ -59277,7 +59277,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_1_1_0());
             }
 
             }
@@ -59305,7 +59305,7 @@
     public final void rule__LibPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20457:1: ( ( ( ruleName ) ) )
             // InternalOCLstdlib.g:20458:1: ( ( ruleName ) )
@@ -59314,13 +59314,13 @@
             // InternalOCLstdlib.g:20459:1: ( ruleName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               before(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
             // InternalOCLstdlib.g:20460:1: ( ruleName )
             // InternalOCLstdlib.g:20461:1: ruleName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementNameParserRuleCall_0_1()); 
+               before(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementNameParserRuleCall_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleName();
@@ -59328,13 +59328,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementNameParserRuleCall_0_1()); 
+               after(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementNameParserRuleCall_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               after(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
 
             }
@@ -59362,7 +59362,7 @@
     public final void rule__AccumulatorCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20476:1: ( ( ruleIdentifier ) )
             // InternalOCLstdlib.g:20477:1: ( ruleIdentifier )
@@ -59371,7 +59371,7 @@
             // InternalOCLstdlib.g:20478:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAccumulatorCSAccess().getNameIdentifierParserRuleCall_0_0()); 
+               before(grammarAccess.getAccumulatorCSAccess().getNameIdentifierParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -59379,7 +59379,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAccumulatorCSAccess().getNameIdentifierParserRuleCall_0_0()); 
+               after(grammarAccess.getAccumulatorCSAccess().getNameIdentifierParserRuleCall_0_0());
             }
 
             }
@@ -59407,7 +59407,7 @@
     public final void rule__AccumulatorCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20491:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:20492:1: ( ruleTypedMultiplicityRefCS )
@@ -59416,7 +59416,7 @@
             // InternalOCLstdlib.g:20493:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAccumulatorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
+               before(grammarAccess.getAccumulatorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -59424,7 +59424,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAccumulatorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
+               after(grammarAccess.getAccumulatorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
             }
 
             }
@@ -59452,7 +59452,7 @@
     public final void rule__AnnotationCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20506:1: ( ( ( rule__AnnotationCS__NameAlternatives_1_0 ) ) )
             // InternalOCLstdlib.g:20507:1: ( ( rule__AnnotationCS__NameAlternatives_1_0 ) )
@@ -59461,7 +59461,7 @@
             // InternalOCLstdlib.g:20508:1: ( rule__AnnotationCS__NameAlternatives_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getNameAlternatives_1_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getNameAlternatives_1_0());
             }
             // InternalOCLstdlib.g:20509:1: ( rule__AnnotationCS__NameAlternatives_1_0 )
             // InternalOCLstdlib.g:20509:2: rule__AnnotationCS__NameAlternatives_1_0
@@ -59475,7 +59475,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getNameAlternatives_1_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getNameAlternatives_1_0());
             }
 
             }
@@ -59503,7 +59503,7 @@
     public final void rule__AnnotationCS__OwnedDetailsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20522:1: ( ( ruleDetailCS ) )
             // InternalOCLstdlib.g:20523:1: ( ruleDetailCS )
@@ -59512,7 +59512,7 @@
             // InternalOCLstdlib.g:20524:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleDetailCS();
@@ -59520,7 +59520,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_0());
             }
 
             }
@@ -59548,7 +59548,7 @@
     public final void rule__AnnotationCS__OwnedDetailsAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20537:1: ( ( ruleDetailCS ) )
             // InternalOCLstdlib.g:20538:1: ( ruleDetailCS )
@@ -59557,7 +59557,7 @@
             // InternalOCLstdlib.g:20539:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleDetailCS();
@@ -59565,7 +59565,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_2_1_0());
             }
 
             }
@@ -59593,7 +59593,7 @@
     public final void rule__AnnotationCS__OwnedAnnotationsAssignment_3_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20552:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLstdlib.g:20553:1: ( ruleAnnotationElementCS )
@@ -59602,7 +59602,7 @@
             // InternalOCLstdlib.g:20554:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_0_1_0()); 
+               before(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -59610,7 +59610,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_0_1_0()); 
+               after(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_0_1_0());
             }
 
             }
@@ -59638,7 +59638,7 @@
     public final void rule__LibClassCS__IsAbstractAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20567:1: ( ( ( 'abstract' ) ) )
             // InternalOCLstdlib.g:20568:1: ( ( 'abstract' ) )
@@ -59647,23 +59647,23 @@
             // InternalOCLstdlib.g:20569:1: ( 'abstract' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0()); 
+               before(grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0());
             }
             // InternalOCLstdlib.g:20570:1: ( 'abstract' )
             // InternalOCLstdlib.g:20571:1: 'abstract'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0()); 
+               before(grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0());
             }
             match(input,16,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0()); 
+               after(grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0()); 
+               after(grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0());
             }
 
             }
@@ -59691,7 +59691,7 @@
     public final void rule__LibClassCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20590:1: ( ( ruleAnyName ) )
             // InternalOCLstdlib.g:20591:1: ( ruleAnyName )
@@ -59700,7 +59700,7 @@
             // InternalOCLstdlib.g:20592:1: ruleAnyName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getNameAnyNameParserRuleCall_2_0()); 
+               before(grammarAccess.getLibClassCSAccess().getNameAnyNameParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnyName();
@@ -59708,7 +59708,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getNameAnyNameParserRuleCall_2_0()); 
+               after(grammarAccess.getLibClassCSAccess().getNameAnyNameParserRuleCall_2_0());
             }
 
             }
@@ -59736,7 +59736,7 @@
     public final void rule__LibClassCS__OwnedSignatureAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20605:1: ( ( ruleTemplateSignatureCS ) )
             // InternalOCLstdlib.g:20606:1: ( ruleTemplateSignatureCS )
@@ -59745,7 +59745,7 @@
             // InternalOCLstdlib.g:20607:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
+               before(grammarAccess.getLibClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateSignatureCS();
@@ -59753,7 +59753,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
+               after(grammarAccess.getLibClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
             }
 
             }
@@ -59781,7 +59781,7 @@
     public final void rule__LibClassCS__MetaclassNameAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20620:1: ( ( ( ruleAnyName ) ) )
             // InternalOCLstdlib.g:20621:1: ( ( ruleAnyName ) )
@@ -59790,13 +59790,13 @@
             // InternalOCLstdlib.g:20622:1: ( ruleAnyName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSCrossReference_4_1_0()); 
+               before(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSCrossReference_4_1_0());
             }
             // InternalOCLstdlib.g:20623:1: ( ruleAnyName )
             // InternalOCLstdlib.g:20624:1: ruleAnyName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSAnyNameParserRuleCall_4_1_0_1()); 
+               before(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSAnyNameParserRuleCall_4_1_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnyName();
@@ -59804,13 +59804,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSAnyNameParserRuleCall_4_1_0_1()); 
+               after(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSAnyNameParserRuleCall_4_1_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSCrossReference_4_1_0()); 
+               after(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSCrossReference_4_1_0());
             }
 
             }
@@ -59838,7 +59838,7 @@
     public final void rule__LibClassCS__OwnedSuperTypesAssignment_5_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20639:1: ( ( ruleTypedRefCS ) )
             // InternalOCLstdlib.g:20640:1: ( ruleTypedRefCS )
@@ -59847,7 +59847,7 @@
             // InternalOCLstdlib.g:20641:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_1_0()); 
+               before(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -59855,7 +59855,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_1_0()); 
+               after(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_1_0());
             }
 
             }
@@ -59883,7 +59883,7 @@
     public final void rule__LibClassCS__OwnedSuperTypesAssignment_5_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20654:1: ( ( ruleTypedRefCS ) )
             // InternalOCLstdlib.g:20655:1: ( ruleTypedRefCS )
@@ -59892,7 +59892,7 @@
             // InternalOCLstdlib.g:20656:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_2_1_0()); 
+               before(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -59900,7 +59900,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_2_1_0()); 
+               after(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_2_1_0());
             }
 
             }
@@ -59928,7 +59928,7 @@
     public final void rule__LibClassCS__OwnedOperationsAssignment_7_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20669:1: ( ( ruleOperationCS ) )
             // InternalOCLstdlib.g:20670:1: ( ruleOperationCS )
@@ -59937,7 +59937,7 @@
             // InternalOCLstdlib.g:20671:1: ruleOperationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_0()); 
+               before(grammarAccess.getLibClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleOperationCS();
@@ -59945,7 +59945,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_0()); 
+               after(grammarAccess.getLibClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_0());
             }
 
             }
@@ -59973,7 +59973,7 @@
     public final void rule__LibClassCS__OwnedPropertiesAssignment_7_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20684:1: ( ( ruleLibPropertyCS ) )
             // InternalOCLstdlib.g:20685:1: ( ruleLibPropertyCS )
@@ -59982,7 +59982,7 @@
             // InternalOCLstdlib.g:20686:1: ruleLibPropertyCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getOwnedPropertiesLibPropertyCSParserRuleCall_7_1_0()); 
+               before(grammarAccess.getLibClassCSAccess().getOwnedPropertiesLibPropertyCSParserRuleCall_7_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLibPropertyCS();
@@ -59990,7 +59990,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getOwnedPropertiesLibPropertyCSParserRuleCall_7_1_0()); 
+               after(grammarAccess.getLibClassCSAccess().getOwnedPropertiesLibPropertyCSParserRuleCall_7_1_0());
             }
 
             }
@@ -60018,7 +60018,7 @@
     public final void rule__LibClassCS__OwnedConstraintsAssignment_7_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20699:1: ( ( ruleInvCS ) )
             // InternalOCLstdlib.g:20700:1: ( ruleInvCS )
@@ -60027,7 +60027,7 @@
             // InternalOCLstdlib.g:20701:1: ruleInvCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getOwnedConstraintsInvCSParserRuleCall_7_2_0()); 
+               before(grammarAccess.getLibClassCSAccess().getOwnedConstraintsInvCSParserRuleCall_7_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleInvCS();
@@ -60035,7 +60035,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getOwnedConstraintsInvCSParserRuleCall_7_2_0()); 
+               after(grammarAccess.getLibClassCSAccess().getOwnedConstraintsInvCSParserRuleCall_7_2_0());
             }
 
             }
@@ -60063,7 +60063,7 @@
     public final void rule__LibClassCS__OwnedAnnotationsAssignment_7_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20714:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLstdlib.g:20715:1: ( ruleAnnotationElementCS )
@@ -60072,7 +60072,7 @@
             // InternalOCLstdlib.g:20716:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_3_0()); 
+               before(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -60080,7 +60080,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_3_0()); 
+               after(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_3_0());
             }
 
             }
@@ -60108,7 +60108,7 @@
     public final void rule__DetailCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20729:1: ( ( ( rule__DetailCS__NameAlternatives_0_0 ) ) )
             // InternalOCLstdlib.g:20730:1: ( ( rule__DetailCS__NameAlternatives_0_0 ) )
@@ -60117,7 +60117,7 @@
             // InternalOCLstdlib.g:20731:1: ( rule__DetailCS__NameAlternatives_0_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSAccess().getNameAlternatives_0_0()); 
+               before(grammarAccess.getDetailCSAccess().getNameAlternatives_0_0());
             }
             // InternalOCLstdlib.g:20732:1: ( rule__DetailCS__NameAlternatives_0_0 )
             // InternalOCLstdlib.g:20732:2: rule__DetailCS__NameAlternatives_0_0
@@ -60131,7 +60131,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSAccess().getNameAlternatives_0_0()); 
+               after(grammarAccess.getDetailCSAccess().getNameAlternatives_0_0());
             }
 
             }
@@ -60159,7 +60159,7 @@
     public final void rule__DetailCS__ValuesAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20745:1: ( ( ( rule__DetailCS__ValuesAlternatives_2_0 ) ) )
             // InternalOCLstdlib.g:20746:1: ( ( rule__DetailCS__ValuesAlternatives_2_0 ) )
@@ -60168,7 +60168,7 @@
             // InternalOCLstdlib.g:20747:1: ( rule__DetailCS__ValuesAlternatives_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDetailCSAccess().getValuesAlternatives_2_0()); 
+               before(grammarAccess.getDetailCSAccess().getValuesAlternatives_2_0());
             }
             // InternalOCLstdlib.g:20748:1: ( rule__DetailCS__ValuesAlternatives_2_0 )
             // InternalOCLstdlib.g:20748:2: rule__DetailCS__ValuesAlternatives_2_0
@@ -60182,7 +60182,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDetailCSAccess().getValuesAlternatives_2_0()); 
+               after(grammarAccess.getDetailCSAccess().getValuesAlternatives_2_0());
             }
 
             }
@@ -60210,7 +60210,7 @@
     public final void rule__DocumentationCS__ValueAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20761:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
             // InternalOCLstdlib.g:20762:1: ( RULE_SINGLE_QUOTED_STRING )
@@ -60219,11 +60219,11 @@
             // InternalOCLstdlib.g:20763:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0()); 
+               before(grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0()); 
+               after(grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0());
             }
 
             }
@@ -60251,7 +60251,7 @@
     public final void rule__DocumentationCS__OwnedDetailsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20776:1: ( ( ruleDetailCS ) )
             // InternalOCLstdlib.g:20777:1: ( ruleDetailCS )
@@ -60260,7 +60260,7 @@
             // InternalOCLstdlib.g:20778:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); 
+               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleDetailCS();
@@ -60268,7 +60268,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); 
+               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
             }
 
             }
@@ -60296,7 +60296,7 @@
     public final void rule__DocumentationCS__OwnedDetailsAssignment_3_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20791:1: ( ( ruleDetailCS ) )
             // InternalOCLstdlib.g:20792:1: ( ruleDetailCS )
@@ -60305,7 +60305,7 @@
             // InternalOCLstdlib.g:20793:1: ruleDetailCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); 
+               before(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleDetailCS();
@@ -60313,7 +60313,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); 
+               after(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
             }
 
             }
@@ -60341,7 +60341,7 @@
     public final void rule__ImportCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20806:1: ( ( ruleIdentifier ) )
             // InternalOCLstdlib.g:20807:1: ( ruleIdentifier )
@@ -60350,7 +60350,7 @@
             // InternalOCLstdlib.g:20808:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0()); 
+               before(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -60358,7 +60358,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0()); 
+               after(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0());
             }
 
             }
@@ -60386,7 +60386,7 @@
     public final void rule__ImportCS__OwnedPathNameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20821:1: ( ( ruleURIPathNameCS ) )
             // InternalOCLstdlib.g:20822:1: ( ruleURIPathNameCS )
@@ -60395,7 +60395,7 @@
             // InternalOCLstdlib.g:20823:1: ruleURIPathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0()); 
+               before(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleURIPathNameCS();
@@ -60403,7 +60403,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0()); 
+               after(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
             }
 
             }
@@ -60431,7 +60431,7 @@
     public final void rule__ImportCS__IsAllAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20836:1: ( ( ( '::*' ) ) )
             // InternalOCLstdlib.g:20837:1: ( ( '::*' ) )
@@ -60440,23 +60440,23 @@
             // InternalOCLstdlib.g:20838:1: ( '::*' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); 
+               before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
             // InternalOCLstdlib.g:20839:1: ( '::*' )
             // InternalOCLstdlib.g:20840:1: '::*'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); 
+               before(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
             match(input,102,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); 
+               after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0()); 
+               after(grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
             }
 
             }
@@ -60484,7 +60484,7 @@
     public final void rule__InvCS__StereotypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20859:1: ( ( ( 'inv' ) ) )
             // InternalOCLstdlib.g:20860:1: ( ( 'inv' ) )
@@ -60493,23 +60493,23 @@
             // InternalOCLstdlib.g:20861:1: ( 'inv' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0()); 
+               before(grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0());
             }
             // InternalOCLstdlib.g:20862:1: ( 'inv' )
             // InternalOCLstdlib.g:20863:1: 'inv'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0()); 
+               before(grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0());
             }
             match(input,22,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0()); 
+               after(grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0()); 
+               after(grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0());
             }
 
             }
@@ -60537,7 +60537,7 @@
     public final void rule__InvCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20882:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLstdlib.g:20883:1: ( ruleUnrestrictedName )
@@ -60546,7 +60546,7 @@
             // InternalOCLstdlib.g:20884:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+               before(grammarAccess.getInvCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -60554,7 +60554,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+               after(grammarAccess.getInvCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
             }
 
             }
@@ -60582,7 +60582,7 @@
     public final void rule__InvCS__OwnedMessageSpecificationAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20897:1: ( ( ruleSpecificationCS ) )
             // InternalOCLstdlib.g:20898:1: ( ruleSpecificationCS )
@@ -60591,7 +60591,7 @@
             // InternalOCLstdlib.g:20899:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+               before(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -60599,7 +60599,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+               after(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
             }
 
             }
@@ -60627,7 +60627,7 @@
     public final void rule__InvCS__OwnedSpecificationAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20912:1: ( ( ruleSpecificationCS ) )
             // InternalOCLstdlib.g:20913:1: ( ruleSpecificationCS )
@@ -60636,7 +60636,7 @@
             // InternalOCLstdlib.g:20914:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getInvCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+               before(grammarAccess.getInvCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -60644,7 +60644,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getInvCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+               after(grammarAccess.getInvCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
             }
 
             }
@@ -60672,7 +60672,7 @@
     public final void rule__LibCoercionCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20927:1: ( ( ruleName ) )
             // InternalOCLstdlib.g:20928:1: ( ruleName )
@@ -60681,7 +60681,7 @@
             // InternalOCLstdlib.g:20929:1: ruleName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getNameNameParserRuleCall_1_0()); 
+               before(grammarAccess.getLibCoercionCSAccess().getNameNameParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleName();
@@ -60689,7 +60689,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getNameNameParserRuleCall_1_0()); 
+               after(grammarAccess.getLibCoercionCSAccess().getNameNameParserRuleCall_1_0());
             }
 
             }
@@ -60717,7 +60717,7 @@
     public final void rule__LibCoercionCS__OwnedTypeAssignment_5() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20942:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:20943:1: ( ruleTypedMultiplicityRefCS )
@@ -60726,7 +60726,7 @@
             // InternalOCLstdlib.g:20944:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_5_0()); 
+               before(grammarAccess.getLibCoercionCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_5_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -60734,7 +60734,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_5_0()); 
+               after(grammarAccess.getLibCoercionCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_5_0());
             }
 
             }
@@ -60762,7 +60762,7 @@
     public final void rule__LibCoercionCS__ImplementationAssignment_6_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20957:1: ( ( ( RULE_SINGLE_QUOTED_STRING ) ) )
             // InternalOCLstdlib.g:20958:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
@@ -60771,23 +60771,23 @@
             // InternalOCLstdlib.g:20959:1: ( RULE_SINGLE_QUOTED_STRING )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSCrossReference_6_1_0()); 
+               before(grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSCrossReference_6_1_0());
             }
             // InternalOCLstdlib.g:20960:1: ( RULE_SINGLE_QUOTED_STRING )
             // InternalOCLstdlib.g:20961:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_6_1_0_1()); 
+               before(grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_6_1_0_1());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_6_1_0_1()); 
+               after(grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_6_1_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSCrossReference_6_1_0()); 
+               after(grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSCrossReference_6_1_0());
             }
 
             }
@@ -60815,7 +60815,7 @@
     public final void rule__LibCoercionCS__OwnedAnnotationsAssignment_7_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20976:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLstdlib.g:20977:1: ( ruleAnnotationElementCS )
@@ -60824,7 +60824,7 @@
             // InternalOCLstdlib.g:20978:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); 
+               before(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -60832,7 +60832,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); 
+               after(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
             }
 
             }
@@ -60860,7 +60860,7 @@
     public final void rule__LibCoercionCS__OwnedPreconditionsAssignment_7_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:20991:1: ( ( rulePostCS ) )
             // InternalOCLstdlib.g:20992:1: ( rulePostCS )
@@ -60869,7 +60869,7 @@
             // InternalOCLstdlib.g:20993:1: rulePostCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsPostCSParserRuleCall_7_0_1_1_0()); 
+               before(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsPostCSParserRuleCall_7_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePostCS();
@@ -60877,7 +60877,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsPostCSParserRuleCall_7_0_1_1_0()); 
+               after(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsPostCSParserRuleCall_7_0_1_1_0());
             }
 
             }
@@ -60905,7 +60905,7 @@
     public final void rule__LibCoercionCS__OwnedPostconditionsAssignment_7_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21006:1: ( ( rulePreCS ) )
             // InternalOCLstdlib.g:21007:1: ( rulePreCS )
@@ -60914,7 +60914,7 @@
             // InternalOCLstdlib.g:21008:1: rulePreCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsPreCSParserRuleCall_7_0_1_2_0()); 
+               before(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsPreCSParserRuleCall_7_0_1_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePreCS();
@@ -60922,7 +60922,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsPreCSParserRuleCall_7_0_1_2_0()); 
+               after(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsPreCSParserRuleCall_7_0_1_2_0());
             }
 
             }
@@ -60950,7 +60950,7 @@
     public final void rule__LibIterationCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21021:1: ( ( ruleName ) )
             // InternalOCLstdlib.g:21022:1: ( ruleName )
@@ -60959,7 +60959,7 @@
             // InternalOCLstdlib.g:21023:1: ruleName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getNameNameParserRuleCall_1_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getNameNameParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleName();
@@ -60967,7 +60967,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getNameNameParserRuleCall_1_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getNameNameParserRuleCall_1_0());
             }
 
             }
@@ -60995,7 +60995,7 @@
     public final void rule__LibIterationCS__OwnedSignatureAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21036:1: ( ( ruleTemplateSignatureCS ) )
             // InternalOCLstdlib.g:21037:1: ( ruleTemplateSignatureCS )
@@ -61004,7 +61004,7 @@
             // InternalOCLstdlib.g:21038:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateSignatureCS();
@@ -61012,7 +61012,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
             }
 
             }
@@ -61040,7 +61040,7 @@
     public final void rule__LibIterationCS__OwnedIteratorsAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21051:1: ( ( ruleIteratorCS ) )
             // InternalOCLstdlib.g:21052:1: ( ruleIteratorCS )
@@ -61049,7 +61049,7 @@
             // InternalOCLstdlib.g:21053:1: ruleIteratorCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_4_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIteratorCS();
@@ -61057,7 +61057,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_4_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_4_0());
             }
 
             }
@@ -61085,7 +61085,7 @@
     public final void rule__LibIterationCS__OwnedIteratorsAssignment_5_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21066:1: ( ( ruleIteratorCS ) )
             // InternalOCLstdlib.g:21067:1: ( ruleIteratorCS )
@@ -61094,7 +61094,7 @@
             // InternalOCLstdlib.g:21068:1: ruleIteratorCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_5_1_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_5_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIteratorCS();
@@ -61102,7 +61102,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_5_1_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_5_1_0());
             }
 
             }
@@ -61130,7 +61130,7 @@
     public final void rule__LibIterationCS__OwnedAccumulatorsAssignment_6_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21081:1: ( ( ruleAccumulatorCS ) )
             // InternalOCLstdlib.g:21082:1: ( ruleAccumulatorCS )
@@ -61139,7 +61139,7 @@
             // InternalOCLstdlib.g:21083:1: ruleAccumulatorCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_1_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAccumulatorCS();
@@ -61147,7 +61147,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_1_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_1_0());
             }
 
             }
@@ -61175,7 +61175,7 @@
     public final void rule__LibIterationCS__OwnedAccumulatorsAssignment_6_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21096:1: ( ( ruleAccumulatorCS ) )
             // InternalOCLstdlib.g:21097:1: ( ruleAccumulatorCS )
@@ -61184,7 +61184,7 @@
             // InternalOCLstdlib.g:21098:1: ruleAccumulatorCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_2_1_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAccumulatorCS();
@@ -61192,7 +61192,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_2_1_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_2_1_0());
             }
 
             }
@@ -61220,7 +61220,7 @@
     public final void rule__LibIterationCS__OwnedParametersAssignment_7_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21111:1: ( ( ruleParameterCS ) )
             // InternalOCLstdlib.g:21112:1: ( ruleParameterCS )
@@ -61229,7 +61229,7 @@
             // InternalOCLstdlib.g:21113:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_1_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleParameterCS();
@@ -61237,7 +61237,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_1_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_1_0());
             }
 
             }
@@ -61265,7 +61265,7 @@
     public final void rule__LibIterationCS__OwnedParametersAssignment_7_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21126:1: ( ( ruleParameterCS ) )
             // InternalOCLstdlib.g:21127:1: ( ruleParameterCS )
@@ -61274,7 +61274,7 @@
             // InternalOCLstdlib.g:21128:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_2_1_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleParameterCS();
@@ -61282,7 +61282,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_2_1_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_2_1_0());
             }
 
             }
@@ -61310,7 +61310,7 @@
     public final void rule__LibIterationCS__OwnedTypeAssignment_10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21141:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:21142:1: ( ruleTypedMultiplicityRefCS )
@@ -61319,7 +61319,7 @@
             // InternalOCLstdlib.g:21143:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_10_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_10_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -61327,7 +61327,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_10_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_10_0());
             }
 
             }
@@ -61355,7 +61355,7 @@
     public final void rule__LibIterationCS__IsInvalidatingAssignment_11() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21156:1: ( ( ( 'invalidating' ) ) )
             // InternalOCLstdlib.g:21157:1: ( ( 'invalidating' ) )
@@ -61364,23 +61364,23 @@
             // InternalOCLstdlib.g:21158:1: ( 'invalidating' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0());
             }
             // InternalOCLstdlib.g:21159:1: ( 'invalidating' )
             // InternalOCLstdlib.g:21160:1: 'invalidating'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0());
             }
             match(input,23,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0());
             }
 
             }
@@ -61408,7 +61408,7 @@
     public final void rule__LibIterationCS__IsValidatingAssignment_12() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21179:1: ( ( ( 'validating' ) ) )
             // InternalOCLstdlib.g:21180:1: ( ( 'validating' ) )
@@ -61417,23 +61417,23 @@
             // InternalOCLstdlib.g:21181:1: ( 'validating' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0());
             }
             // InternalOCLstdlib.g:21182:1: ( 'validating' )
             // InternalOCLstdlib.g:21183:1: 'validating'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0());
             }
             match(input,36,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0());
             }
 
             }
@@ -61461,7 +61461,7 @@
     public final void rule__LibIterationCS__ImplementationAssignment_13_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21202:1: ( ( ( RULE_SINGLE_QUOTED_STRING ) ) )
             // InternalOCLstdlib.g:21203:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
@@ -61470,23 +61470,23 @@
             // InternalOCLstdlib.g:21204:1: ( RULE_SINGLE_QUOTED_STRING )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSCrossReference_13_1_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSCrossReference_13_1_0());
             }
             // InternalOCLstdlib.g:21205:1: ( RULE_SINGLE_QUOTED_STRING )
             // InternalOCLstdlib.g:21206:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_13_1_0_1()); 
+               before(grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_13_1_0_1());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_13_1_0_1()); 
+               after(grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_13_1_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSCrossReference_13_1_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSCrossReference_13_1_0());
             }
 
             }
@@ -61514,7 +61514,7 @@
     public final void rule__LibIterationCS__OwnedAnnotationsAssignment_14_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21221:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLstdlib.g:21222:1: ( ruleAnnotationElementCS )
@@ -61523,7 +61523,7 @@
             // InternalOCLstdlib.g:21223:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_14_0_1_0_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_14_0_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -61531,7 +61531,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_14_0_1_0_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_14_0_1_0_0());
             }
 
             }
@@ -61559,7 +61559,7 @@
     public final void rule__LibIterationCS__OwnedPreconditionsAssignment_14_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21236:1: ( ( rulePostCS ) )
             // InternalOCLstdlib.g:21237:1: ( rulePostCS )
@@ -61568,7 +61568,7 @@
             // InternalOCLstdlib.g:21238:1: rulePostCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsPostCSParserRuleCall_14_0_1_1_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsPostCSParserRuleCall_14_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePostCS();
@@ -61576,7 +61576,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsPostCSParserRuleCall_14_0_1_1_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsPostCSParserRuleCall_14_0_1_1_0());
             }
 
             }
@@ -61604,7 +61604,7 @@
     public final void rule__LibIterationCS__OwnedPostconditionsAssignment_14_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21251:1: ( ( rulePreCS ) )
             // InternalOCLstdlib.g:21252:1: ( rulePreCS )
@@ -61613,7 +61613,7 @@
             // InternalOCLstdlib.g:21253:1: rulePreCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsPreCSParserRuleCall_14_0_1_2_0()); 
+               before(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsPreCSParserRuleCall_14_0_1_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePreCS();
@@ -61621,7 +61621,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsPreCSParserRuleCall_14_0_1_2_0()); 
+               after(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsPreCSParserRuleCall_14_0_1_2_0());
             }
 
             }
@@ -61649,7 +61649,7 @@
     public final void rule__IteratorCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21266:1: ( ( ruleIdentifier ) )
             // InternalOCLstdlib.g:21267:1: ( ruleIdentifier )
@@ -61658,7 +61658,7 @@
             // InternalOCLstdlib.g:21268:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIteratorCSAccess().getNameIdentifierParserRuleCall_0_0()); 
+               before(grammarAccess.getIteratorCSAccess().getNameIdentifierParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -61666,7 +61666,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIteratorCSAccess().getNameIdentifierParserRuleCall_0_0()); 
+               after(grammarAccess.getIteratorCSAccess().getNameIdentifierParserRuleCall_0_0());
             }
 
             }
@@ -61694,7 +61694,7 @@
     public final void rule__IteratorCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21281:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:21282:1: ( ruleTypedMultiplicityRefCS )
@@ -61703,7 +61703,7 @@
             // InternalOCLstdlib.g:21283:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIteratorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
+               before(grammarAccess.getIteratorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -61711,7 +61711,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIteratorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
+               after(grammarAccess.getIteratorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
             }
 
             }
@@ -61739,7 +61739,7 @@
     public final void rule__LambdaTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21296:1: ( ( ( 'Lambda' ) ) )
             // InternalOCLstdlib.g:21297:1: ( ( 'Lambda' ) )
@@ -61748,23 +61748,23 @@
             // InternalOCLstdlib.g:21298:1: ( 'Lambda' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0());
             }
             // InternalOCLstdlib.g:21299:1: ( 'Lambda' )
             // InternalOCLstdlib.g:21300:1: 'Lambda'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0());
             }
             match(input,37,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0());
             }
 
             }
@@ -61792,7 +61792,7 @@
     public final void rule__LambdaTypeCS__OwnedSignatureAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21319:1: ( ( ruleTemplateSignatureCS ) )
             // InternalOCLstdlib.g:21320:1: ( ruleTemplateSignatureCS )
@@ -61801,7 +61801,7 @@
             // InternalOCLstdlib.g:21321:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateSignatureCS();
@@ -61809,7 +61809,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
             }
 
             }
@@ -61837,7 +61837,7 @@
     public final void rule__LambdaTypeCS__OwnedContextTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21334:1: ( ( ruleLambdaContextTypeRefCS ) )
             // InternalOCLstdlib.g:21335:1: ( ruleLambdaContextTypeRefCS )
@@ -61846,7 +61846,7 @@
             // InternalOCLstdlib.g:21336:1: ruleLambdaContextTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeLambdaContextTypeRefCSParserRuleCall_2_0()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeLambdaContextTypeRefCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLambdaContextTypeRefCS();
@@ -61854,7 +61854,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeLambdaContextTypeRefCSParserRuleCall_2_0()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeLambdaContextTypeRefCSParserRuleCall_2_0());
             }
 
             }
@@ -61882,7 +61882,7 @@
     public final void rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21349:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:21350:1: ( ruleTypedMultiplicityRefCS )
@@ -61891,7 +61891,7 @@
             // InternalOCLstdlib.g:21351:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_0_0()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -61899,7 +61899,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_0_0()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_0_0());
             }
 
             }
@@ -61927,7 +61927,7 @@
     public final void rule__LambdaTypeCS__OwnedParameterTypesAssignment_4_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21364:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:21365:1: ( ruleTypedMultiplicityRefCS )
@@ -61936,7 +61936,7 @@
             // InternalOCLstdlib.g:21366:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_1_1_0()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -61944,7 +61944,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_1_1_0()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_1_1_0());
             }
 
             }
@@ -61972,7 +61972,7 @@
     public final void rule__LambdaTypeCS__OwnedResultTypeAssignment_7() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21379:1: ( ( ruleTypedRefCS ) )
             // InternalOCLstdlib.g:21380:1: ( ruleTypedRefCS )
@@ -61981,7 +61981,7 @@
             // InternalOCLstdlib.g:21381:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeTypedRefCSParserRuleCall_7_0()); 
+               before(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeTypedRefCSParserRuleCall_7_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -61989,7 +61989,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeTypedRefCSParserRuleCall_7_0()); 
+               after(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeTypedRefCSParserRuleCall_7_0());
             }
 
             }
@@ -62017,7 +62017,7 @@
     public final void rule__LambdaContextTypeRefCS__OwnedPathNameAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21394:1: ( ( ruleLibPathNameCS ) )
             // InternalOCLstdlib.g:21395:1: ( ruleLibPathNameCS )
@@ -62026,7 +62026,7 @@
             // InternalOCLstdlib.g:21396:1: ruleLibPathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0()); 
+               before(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLibPathNameCS();
@@ -62034,7 +62034,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0()); 
+               after(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0());
             }
 
             }
@@ -62062,7 +62062,7 @@
     public final void rule__LibOperationCS__IsStaticAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21409:1: ( ( ( 'static' ) ) )
             // InternalOCLstdlib.g:21410:1: ( ( 'static' ) )
@@ -62071,23 +62071,23 @@
             // InternalOCLstdlib.g:21411:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0());
             }
             // InternalOCLstdlib.g:21412:1: ( 'static' )
             // InternalOCLstdlib.g:21413:1: 'static'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0());
             }
             match(input,34,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0());
             }
 
             }
@@ -62115,7 +62115,7 @@
     public final void rule__LibOperationCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21432:1: ( ( ruleName ) )
             // InternalOCLstdlib.g:21433:1: ( ruleName )
@@ -62124,7 +62124,7 @@
             // InternalOCLstdlib.g:21434:1: ruleName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getNameNameParserRuleCall_2_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getNameNameParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleName();
@@ -62132,7 +62132,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getNameNameParserRuleCall_2_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getNameNameParserRuleCall_2_0());
             }
 
             }
@@ -62160,7 +62160,7 @@
     public final void rule__LibOperationCS__OwnedSignatureAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21447:1: ( ( ruleTemplateSignatureCS ) )
             // InternalOCLstdlib.g:21448:1: ( ruleTemplateSignatureCS )
@@ -62169,7 +62169,7 @@
             // InternalOCLstdlib.g:21449:1: ruleTemplateSignatureCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateSignatureCS();
@@ -62177,7 +62177,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
             }
 
             }
@@ -62205,7 +62205,7 @@
     public final void rule__LibOperationCS__OwnedParametersAssignment_5_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21462:1: ( ( ruleParameterCS ) )
             // InternalOCLstdlib.g:21463:1: ( ruleParameterCS )
@@ -62214,7 +62214,7 @@
             // InternalOCLstdlib.g:21464:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleParameterCS();
@@ -62222,7 +62222,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0());
             }
 
             }
@@ -62250,7 +62250,7 @@
     public final void rule__LibOperationCS__OwnedParametersAssignment_5_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21477:1: ( ( ruleParameterCS ) )
             // InternalOCLstdlib.g:21478:1: ( ruleParameterCS )
@@ -62259,7 +62259,7 @@
             // InternalOCLstdlib.g:21479:1: ruleParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleParameterCS();
@@ -62267,7 +62267,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0());
             }
 
             }
@@ -62295,7 +62295,7 @@
     public final void rule__LibOperationCS__OwnedTypeAssignment_8() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21492:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:21493:1: ( ruleTypedMultiplicityRefCS )
@@ -62304,7 +62304,7 @@
             // InternalOCLstdlib.g:21494:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_8_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_8_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -62312,7 +62312,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_8_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_8_0());
             }
 
             }
@@ -62340,7 +62340,7 @@
     public final void rule__LibOperationCS__IsValidatingAssignment_9() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21507:1: ( ( ( 'validating' ) ) )
             // InternalOCLstdlib.g:21508:1: ( ( 'validating' ) )
@@ -62349,23 +62349,23 @@
             // InternalOCLstdlib.g:21509:1: ( 'validating' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0());
             }
             // InternalOCLstdlib.g:21510:1: ( 'validating' )
             // InternalOCLstdlib.g:21511:1: 'validating'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0());
             }
             match(input,36,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0());
             }
 
             }
@@ -62393,7 +62393,7 @@
     public final void rule__LibOperationCS__IsInvalidatingAssignment_10() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21530:1: ( ( ( 'invalidating' ) ) )
             // InternalOCLstdlib.g:21531:1: ( ( 'invalidating' ) )
@@ -62402,23 +62402,23 @@
             // InternalOCLstdlib.g:21532:1: ( 'invalidating' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0());
             }
             // InternalOCLstdlib.g:21533:1: ( 'invalidating' )
             // InternalOCLstdlib.g:21534:1: 'invalidating'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0());
             }
             match(input,23,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0());
             }
 
             }
@@ -62446,7 +62446,7 @@
     public final void rule__LibOperationCS__PrecedenceAssignment_11_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21553:1: ( ( ( ruleName ) ) )
             // InternalOCLstdlib.g:21554:1: ( ( ruleName ) )
@@ -62455,13 +62455,13 @@
             // InternalOCLstdlib.g:21555:1: ( ruleName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceCrossReference_11_2_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceCrossReference_11_2_0());
             }
             // InternalOCLstdlib.g:21556:1: ( ruleName )
             // InternalOCLstdlib.g:21557:1: ruleName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceNameParserRuleCall_11_2_0_1()); 
+               before(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceNameParserRuleCall_11_2_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleName();
@@ -62469,13 +62469,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceNameParserRuleCall_11_2_0_1()); 
+               after(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceNameParserRuleCall_11_2_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceCrossReference_11_2_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceCrossReference_11_2_0());
             }
 
             }
@@ -62503,7 +62503,7 @@
     public final void rule__LibOperationCS__ImplementationAssignment_12_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21572:1: ( ( ( RULE_SINGLE_QUOTED_STRING ) ) )
             // InternalOCLstdlib.g:21573:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
@@ -62512,23 +62512,23 @@
             // InternalOCLstdlib.g:21574:1: ( RULE_SINGLE_QUOTED_STRING )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSCrossReference_12_1_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSCrossReference_12_1_0());
             }
             // InternalOCLstdlib.g:21575:1: ( RULE_SINGLE_QUOTED_STRING )
             // InternalOCLstdlib.g:21576:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_12_1_0_1()); 
+               before(grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_12_1_0_1());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_12_1_0_1()); 
+               after(grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_12_1_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSCrossReference_12_1_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSCrossReference_12_1_0());
             }
 
             }
@@ -62556,7 +62556,7 @@
     public final void rule__LibOperationCS__OwnedAnnotationsAssignment_13_0_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21591:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLstdlib.g:21592:1: ( ruleAnnotationElementCS )
@@ -62565,7 +62565,7 @@
             // InternalOCLstdlib.g:21593:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_13_0_1_0_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_13_0_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -62573,7 +62573,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_13_0_1_0_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_13_0_1_0_0());
             }
 
             }
@@ -62601,7 +62601,7 @@
     public final void rule__LibOperationCS__OwnedBodyExpressionsAssignment_13_0_1_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21606:1: ( ( ruleSpecificationCS ) )
             // InternalOCLstdlib.g:21607:1: ( ruleSpecificationCS )
@@ -62610,7 +62610,7 @@
             // InternalOCLstdlib.g:21608:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_13_0_1_1_3_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_13_0_1_1_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -62618,7 +62618,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_13_0_1_1_3_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_13_0_1_1_3_0());
             }
 
             }
@@ -62646,7 +62646,7 @@
     public final void rule__LibOperationCS__OwnedPostconditionsAssignment_13_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21621:1: ( ( rulePostCS ) )
             // InternalOCLstdlib.g:21622:1: ( rulePostCS )
@@ -62655,7 +62655,7 @@
             // InternalOCLstdlib.g:21623:1: rulePostCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsPostCSParserRuleCall_13_0_1_2_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsPostCSParserRuleCall_13_0_1_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePostCS();
@@ -62663,7 +62663,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsPostCSParserRuleCall_13_0_1_2_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsPostCSParserRuleCall_13_0_1_2_0());
             }
 
             }
@@ -62691,7 +62691,7 @@
     public final void rule__LibOperationCS__OwnedPreconditionsAssignment_13_0_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21636:1: ( ( rulePreCS ) )
             // InternalOCLstdlib.g:21637:1: ( rulePreCS )
@@ -62700,7 +62700,7 @@
             // InternalOCLstdlib.g:21638:1: rulePreCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsPreCSParserRuleCall_13_0_1_3_0()); 
+               before(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsPreCSParserRuleCall_13_0_1_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePreCS();
@@ -62708,7 +62708,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsPreCSParserRuleCall_13_0_1_3_0()); 
+               after(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsPreCSParserRuleCall_13_0_1_3_0());
             }
 
             }
@@ -62736,7 +62736,7 @@
     public final void rule__LibPackageCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21651:1: ( ( ruleName ) )
             // InternalOCLstdlib.g:21652:1: ( ruleName )
@@ -62745,7 +62745,7 @@
             // InternalOCLstdlib.g:21653:1: ruleName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getNameNameParserRuleCall_1_0()); 
+               before(grammarAccess.getLibPackageCSAccess().getNameNameParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleName();
@@ -62753,7 +62753,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getNameNameParserRuleCall_1_0()); 
+               after(grammarAccess.getLibPackageCSAccess().getNameNameParserRuleCall_1_0());
             }
 
             }
@@ -62781,7 +62781,7 @@
     public final void rule__LibPackageCS__NsPrefixAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21666:1: ( ( ruleIdentifier ) )
             // InternalOCLstdlib.g:21667:1: ( ruleIdentifier )
@@ -62790,7 +62790,7 @@
             // InternalOCLstdlib.g:21668:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0()); 
+               before(grammarAccess.getLibPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -62798,7 +62798,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0()); 
+               after(grammarAccess.getLibPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0());
             }
 
             }
@@ -62826,7 +62826,7 @@
     public final void rule__LibPackageCS__NsURIAssignment_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21681:1: ( ( ruleURI ) )
             // InternalOCLstdlib.g:21682:1: ( ruleURI )
@@ -62835,7 +62835,7 @@
             // InternalOCLstdlib.g:21683:1: ruleURI
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getNsURIURIParserRuleCall_2_3_0()); 
+               before(grammarAccess.getLibPackageCSAccess().getNsURIURIParserRuleCall_2_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleURI();
@@ -62843,7 +62843,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getNsURIURIParserRuleCall_2_3_0()); 
+               after(grammarAccess.getLibPackageCSAccess().getNsURIURIParserRuleCall_2_3_0());
             }
 
             }
@@ -62871,7 +62871,7 @@
     public final void rule__LibPackageCS__OwnedPackagesAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21696:1: ( ( rulePackageCS ) )
             // InternalOCLstdlib.g:21697:1: ( rulePackageCS )
@@ -62880,7 +62880,7 @@
             // InternalOCLstdlib.g:21698:1: rulePackageCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0()); 
+               before(grammarAccess.getLibPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePackageCS();
@@ -62888,7 +62888,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0()); 
+               after(grammarAccess.getLibPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0());
             }
 
             }
@@ -62916,7 +62916,7 @@
     public final void rule__LibPackageCS__OwnedPrecedencesAssignment_4_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21711:1: ( ( rulePrecedenceCS ) )
             // InternalOCLstdlib.g:21712:1: ( rulePrecedenceCS )
@@ -62925,7 +62925,7 @@
             // InternalOCLstdlib.g:21713:1: rulePrecedenceCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesPrecedenceCSParserRuleCall_4_1_1_0()); 
+               before(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesPrecedenceCSParserRuleCall_4_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrecedenceCS();
@@ -62933,7 +62933,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesPrecedenceCSParserRuleCall_4_1_1_0()); 
+               after(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesPrecedenceCSParserRuleCall_4_1_1_0());
             }
 
             }
@@ -62961,7 +62961,7 @@
     public final void rule__LibPackageCS__OwnedClassesAssignment_4_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21726:1: ( ( ruleClassCS ) )
             // InternalOCLstdlib.g:21727:1: ( ruleClassCS )
@@ -62970,7 +62970,7 @@
             // InternalOCLstdlib.g:21728:1: ruleClassCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_2_0()); 
+               before(grammarAccess.getLibPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleClassCS();
@@ -62978,7 +62978,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_2_0()); 
+               after(grammarAccess.getLibPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_2_0());
             }
 
             }
@@ -63006,7 +63006,7 @@
     public final void rule__LibPackageCS__OwnedAnnotationsAssignment_4_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21741:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLstdlib.g:21742:1: ( ruleAnnotationElementCS )
@@ -63015,7 +63015,7 @@
             // InternalOCLstdlib.g:21743:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_3_0()); 
+               before(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -63023,7 +63023,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_3_0()); 
+               after(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_3_0());
             }
 
             }
@@ -63051,7 +63051,7 @@
     public final void rule__PackageCS__NameAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21756:1: ( ( ruleName ) )
             // InternalOCLstdlib.g:21757:1: ( ruleName )
@@ -63060,7 +63060,7 @@
             // InternalOCLstdlib.g:21758:1: ruleName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getNameNameParserRuleCall_1_0()); 
+               before(grammarAccess.getPackageCSAccess().getNameNameParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleName();
@@ -63068,7 +63068,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getNameNameParserRuleCall_1_0()); 
+               after(grammarAccess.getPackageCSAccess().getNameNameParserRuleCall_1_0());
             }
 
             }
@@ -63096,7 +63096,7 @@
     public final void rule__PackageCS__NsPrefixAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21771:1: ( ( ruleIdentifier ) )
             // InternalOCLstdlib.g:21772:1: ( ruleIdentifier )
@@ -63105,7 +63105,7 @@
             // InternalOCLstdlib.g:21773:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0()); 
+               before(grammarAccess.getPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -63113,7 +63113,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0()); 
+               after(grammarAccess.getPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0());
             }
 
             }
@@ -63141,7 +63141,7 @@
     public final void rule__PackageCS__NsURIAssignment_2_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21786:1: ( ( ruleURI ) )
             // InternalOCLstdlib.g:21787:1: ( ruleURI )
@@ -63150,7 +63150,7 @@
             // InternalOCLstdlib.g:21788:1: ruleURI
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_2_3_0()); 
+               before(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_2_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleURI();
@@ -63158,7 +63158,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_2_3_0()); 
+               after(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_2_3_0());
             }
 
             }
@@ -63186,7 +63186,7 @@
     public final void rule__PackageCS__OwnedPackagesAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21801:1: ( ( rulePackageCS ) )
             // InternalOCLstdlib.g:21802:1: ( rulePackageCS )
@@ -63195,7 +63195,7 @@
             // InternalOCLstdlib.g:21803:1: rulePackageCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0()); 
+               before(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePackageCS();
@@ -63203,7 +63203,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0()); 
+               after(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0());
             }
 
             }
@@ -63231,7 +63231,7 @@
     public final void rule__PackageCS__OwnedClassesAssignment_4_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21816:1: ( ( ruleClassCS ) )
             // InternalOCLstdlib.g:21817:1: ( ruleClassCS )
@@ -63240,7 +63240,7 @@
             // InternalOCLstdlib.g:21818:1: ruleClassCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_1_0()); 
+               before(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleClassCS();
@@ -63248,7 +63248,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_1_0()); 
+               after(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_1_0());
             }
 
             }
@@ -63276,7 +63276,7 @@
     public final void rule__PackageCS__OwnedAnnotationsAssignment_4_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21831:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLstdlib.g:21832:1: ( ruleAnnotationElementCS )
@@ -63285,7 +63285,7 @@
             // InternalOCLstdlib.g:21833:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_2_0()); 
+               before(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -63293,7 +63293,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_2_0()); 
+               after(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_2_0());
             }
 
             }
@@ -63321,7 +63321,7 @@
     public final void rule__ParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21846:1: ( ( ruleIdentifier ) )
             // InternalOCLstdlib.g:21847:1: ( ruleIdentifier )
@@ -63330,7 +63330,7 @@
             // InternalOCLstdlib.g:21848:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getNameIdentifierParserRuleCall_0_0()); 
+               before(grammarAccess.getParameterCSAccess().getNameIdentifierParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -63338,7 +63338,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getNameIdentifierParserRuleCall_0_0()); 
+               after(grammarAccess.getParameterCSAccess().getNameIdentifierParserRuleCall_0_0());
             }
 
             }
@@ -63366,7 +63366,7 @@
     public final void rule__ParameterCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21861:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:21862:1: ( ruleTypedMultiplicityRefCS )
@@ -63375,7 +63375,7 @@
             // InternalOCLstdlib.g:21863:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
+               before(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -63383,7 +63383,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
+               after(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
             }
 
             }
@@ -63411,7 +63411,7 @@
     public final void rule__LibPropertyCS__IsStaticAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21876:1: ( ( ( 'static' ) ) )
             // InternalOCLstdlib.g:21877:1: ( ( 'static' ) )
@@ -63420,23 +63420,23 @@
             // InternalOCLstdlib.g:21878:1: ( 'static' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0()); 
+               before(grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0());
             }
             // InternalOCLstdlib.g:21879:1: ( 'static' )
             // InternalOCLstdlib.g:21880:1: 'static'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0()); 
+               before(grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0());
             }
             match(input,34,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0()); 
+               after(grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0()); 
+               after(grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0());
             }
 
             }
@@ -63464,7 +63464,7 @@
     public final void rule__LibPropertyCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21899:1: ( ( ruleName ) )
             // InternalOCLstdlib.g:21900:1: ( ruleName )
@@ -63473,7 +63473,7 @@
             // InternalOCLstdlib.g:21901:1: ruleName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getNameNameParserRuleCall_2_0()); 
+               before(grammarAccess.getLibPropertyCSAccess().getNameNameParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleName();
@@ -63481,7 +63481,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getNameNameParserRuleCall_2_0()); 
+               after(grammarAccess.getLibPropertyCSAccess().getNameNameParserRuleCall_2_0());
             }
 
             }
@@ -63509,7 +63509,7 @@
     public final void rule__LibPropertyCS__OwnedTypeAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21914:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:21915:1: ( ruleTypedMultiplicityRefCS )
@@ -63518,7 +63518,7 @@
             // InternalOCLstdlib.g:21916:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_0()); 
+               before(grammarAccess.getLibPropertyCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -63526,7 +63526,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_0()); 
+               after(grammarAccess.getLibPropertyCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_0());
             }
 
             }
@@ -63554,7 +63554,7 @@
     public final void rule__LibPropertyCS__ImplementationAssignment_5_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21929:1: ( ( ( RULE_SINGLE_QUOTED_STRING ) ) )
             // InternalOCLstdlib.g:21930:1: ( ( RULE_SINGLE_QUOTED_STRING ) )
@@ -63563,23 +63563,23 @@
             // InternalOCLstdlib.g:21931:1: ( RULE_SINGLE_QUOTED_STRING )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSCrossReference_5_1_0()); 
+               before(grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSCrossReference_5_1_0());
             }
             // InternalOCLstdlib.g:21932:1: ( RULE_SINGLE_QUOTED_STRING )
             // InternalOCLstdlib.g:21933:1: RULE_SINGLE_QUOTED_STRING
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0_1()); 
+               before(grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0_1());
             }
             match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0_1()); 
+               after(grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSSINGLE_QUOTED_STRINGTerminalRuleCall_5_1_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSCrossReference_5_1_0()); 
+               after(grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSCrossReference_5_1_0());
             }
 
             }
@@ -63607,7 +63607,7 @@
     public final void rule__LibPropertyCS__OwnedAnnotationsAssignment_6_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21948:1: ( ( ruleAnnotationElementCS ) )
             // InternalOCLstdlib.g:21949:1: ( ruleAnnotationElementCS )
@@ -63616,7 +63616,7 @@
             // InternalOCLstdlib.g:21950:1: ruleAnnotationElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0()); 
+               before(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleAnnotationElementCS();
@@ -63624,7 +63624,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0()); 
+               after(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0());
             }
 
             }
@@ -63652,7 +63652,7 @@
     public final void rule__PostCS__StereotypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21963:1: ( ( ( 'post' ) ) )
             // InternalOCLstdlib.g:21964:1: ( ( 'post' ) )
@@ -63661,23 +63661,23 @@
             // InternalOCLstdlib.g:21965:1: ( 'post' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0()); 
+               before(grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0());
             }
             // InternalOCLstdlib.g:21966:1: ( 'post' )
             // InternalOCLstdlib.g:21967:1: 'post'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0()); 
+               before(grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0());
             }
             match(input,29,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0()); 
+               after(grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0()); 
+               after(grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0());
             }
 
             }
@@ -63705,7 +63705,7 @@
     public final void rule__PostCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:21986:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLstdlib.g:21987:1: ( ruleUnrestrictedName )
@@ -63714,7 +63714,7 @@
             // InternalOCLstdlib.g:21988:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+               before(grammarAccess.getPostCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -63722,7 +63722,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+               after(grammarAccess.getPostCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
             }
 
             }
@@ -63750,7 +63750,7 @@
     public final void rule__PostCS__OwnedMessageSpecificationAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22001:1: ( ( ruleSpecificationCS ) )
             // InternalOCLstdlib.g:22002:1: ( ruleSpecificationCS )
@@ -63759,7 +63759,7 @@
             // InternalOCLstdlib.g:22003:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+               before(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -63767,7 +63767,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+               after(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
             }
 
             }
@@ -63795,7 +63795,7 @@
     public final void rule__PostCS__OwnedSpecificationAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22016:1: ( ( ruleSpecificationCS ) )
             // InternalOCLstdlib.g:22017:1: ( ruleSpecificationCS )
@@ -63804,7 +63804,7 @@
             // InternalOCLstdlib.g:22018:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPostCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+               before(grammarAccess.getPostCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -63812,7 +63812,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPostCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+               after(grammarAccess.getPostCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
             }
 
             }
@@ -63840,7 +63840,7 @@
     public final void rule__PreCS__StereotypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22031:1: ( ( ( 'pre' ) ) )
             // InternalOCLstdlib.g:22032:1: ( ( 'pre' ) )
@@ -63849,23 +63849,23 @@
             // InternalOCLstdlib.g:22033:1: ( 'pre' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0()); 
+               before(grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0());
             }
             // InternalOCLstdlib.g:22034:1: ( 'pre' )
             // InternalOCLstdlib.g:22035:1: 'pre'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0()); 
+               before(grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0());
             }
             match(input,30,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0()); 
+               after(grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0()); 
+               after(grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0());
             }
 
             }
@@ -63893,7 +63893,7 @@
     public final void rule__PreCS__NameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22054:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLstdlib.g:22055:1: ( ruleUnrestrictedName )
@@ -63902,7 +63902,7 @@
             // InternalOCLstdlib.g:22056:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+               before(grammarAccess.getPreCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -63910,7 +63910,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+               after(grammarAccess.getPreCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
             }
 
             }
@@ -63938,7 +63938,7 @@
     public final void rule__PreCS__OwnedMessageSpecificationAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22069:1: ( ( ruleSpecificationCS ) )
             // InternalOCLstdlib.g:22070:1: ( ruleSpecificationCS )
@@ -63947,7 +63947,7 @@
             // InternalOCLstdlib.g:22071:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+               before(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -63955,7 +63955,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+               after(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
             }
 
             }
@@ -63983,7 +63983,7 @@
     public final void rule__PreCS__OwnedSpecificationAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22084:1: ( ( ruleSpecificationCS ) )
             // InternalOCLstdlib.g:22085:1: ( ruleSpecificationCS )
@@ -63992,7 +63992,7 @@
             // InternalOCLstdlib.g:22086:1: ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPreCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+               before(grammarAccess.getPreCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSpecificationCS();
@@ -64000,7 +64000,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPreCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+               after(grammarAccess.getPreCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
             }
 
             }
@@ -64028,7 +64028,7 @@
     public final void rule__PrecedenceCS__IsRightAssociativeAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22099:1: ( ( ( 'right' ) ) )
             // InternalOCLstdlib.g:22100:1: ( ( 'right' ) )
@@ -64037,23 +64037,23 @@
             // InternalOCLstdlib.g:22101:1: ( 'right' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0()); 
+               before(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0());
             }
             // InternalOCLstdlib.g:22102:1: ( 'right' )
             // InternalOCLstdlib.g:22103:1: 'right'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0()); 
+               before(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0());
             }
             match(input,33,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0()); 
+               after(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0()); 
+               after(grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0());
             }
 
             }
@@ -64081,7 +64081,7 @@
     public final void rule__PrecedenceCS__NameAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22122:1: ( ( ruleName ) )
             // InternalOCLstdlib.g:22123:1: ( ruleName )
@@ -64090,7 +64090,7 @@
             // InternalOCLstdlib.g:22124:1: ruleName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrecedenceCSAccess().getNameNameParserRuleCall_2_0()); 
+               before(grammarAccess.getPrecedenceCSAccess().getNameNameParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleName();
@@ -64098,7 +64098,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrecedenceCSAccess().getNameNameParserRuleCall_2_0()); 
+               after(grammarAccess.getPrecedenceCSAccess().getNameNameParserRuleCall_2_0());
             }
 
             }
@@ -64126,7 +64126,7 @@
     public final void rule__SpecificationCS__OwnedExpressionAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22137:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:22138:1: ( ruleExpCS )
@@ -64135,7 +64135,7 @@
             // InternalOCLstdlib.g:22139:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0()); 
+               before(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -64143,7 +64143,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0()); 
+               after(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0());
             }
 
             }
@@ -64171,7 +64171,7 @@
     public final void rule__TypedMultiplicityRefCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22152:1: ( ( ruleMultiplicityCS ) )
             // InternalOCLstdlib.g:22153:1: ( ruleMultiplicityCS )
@@ -64180,7 +64180,7 @@
             // InternalOCLstdlib.g:22154:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               before(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -64188,7 +64188,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               after(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
 
             }
@@ -64216,7 +64216,7 @@
     public final void rule__TypedTypeRefCS__IsTypeofAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22167:1: ( ( ( 'typeof' ) ) )
             // InternalOCLstdlib.g:22168:1: ( ( 'typeof' ) )
@@ -64225,23 +64225,23 @@
             // InternalOCLstdlib.g:22169:1: ( 'typeof' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0());
             }
             // InternalOCLstdlib.g:22170:1: ( 'typeof' )
             // InternalOCLstdlib.g:22171:1: 'typeof'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0());
             }
             match(input,103,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0());
             }
 
             }
@@ -64269,7 +64269,7 @@
     public final void rule__TypedTypeRefCS__OwnedPathNameAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22190:1: ( ( ruleLibPathNameCS ) )
             // InternalOCLstdlib.g:22191:1: ( ruleLibPathNameCS )
@@ -64278,7 +64278,7 @@
             // InternalOCLstdlib.g:22192:1: ruleLibPathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0_2_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLibPathNameCS();
@@ -64286,7 +64286,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0_2_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0_2_0());
             }
 
             }
@@ -64314,7 +64314,7 @@
     public final void rule__TypedTypeRefCS__OwnedPathNameAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22205:1: ( ( ruleLibPathNameCS ) )
             // InternalOCLstdlib.g:22206:1: ( ruleLibPathNameCS )
@@ -64323,7 +64323,7 @@
             // InternalOCLstdlib.g:22207:1: ruleLibPathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_1_0_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLibPathNameCS();
@@ -64331,7 +64331,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_1_0_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_1_0_0());
             }
 
             }
@@ -64359,7 +64359,7 @@
     public final void rule__TypedTypeRefCS__OwnedBindingAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22220:1: ( ( ruleTemplateBindingCS ) )
             // InternalOCLstdlib.g:22221:1: ( ruleTemplateBindingCS )
@@ -64368,7 +64368,7 @@
             // InternalOCLstdlib.g:22222:1: ruleTemplateBindingCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0()); 
+               before(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateBindingCS();
@@ -64376,7 +64376,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0()); 
+               after(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0());
             }
 
             }
@@ -64404,7 +64404,7 @@
     public final void rule__TuplePartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22235:1: ( ( ruleIdentifier ) )
             // InternalOCLstdlib.g:22236:1: ( ruleIdentifier )
@@ -64413,7 +64413,7 @@
             // InternalOCLstdlib.g:22237:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getNameIdentifierParserRuleCall_0_0()); 
+               before(grammarAccess.getTuplePartCSAccess().getNameIdentifierParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -64421,7 +64421,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getNameIdentifierParserRuleCall_0_0()); 
+               after(grammarAccess.getTuplePartCSAccess().getNameIdentifierParserRuleCall_0_0());
             }
 
             }
@@ -64449,7 +64449,7 @@
     public final void rule__TuplePartCS__OwnedTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22250:1: ( ( ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:22251:1: ( ruleTypedMultiplicityRefCS )
@@ -64458,7 +64458,7 @@
             // InternalOCLstdlib.g:22252:1: ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedMultiplicityRefCS();
@@ -64466,7 +64466,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
             }
 
             }
@@ -64494,7 +64494,7 @@
     public final void rule__URIPathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22266:1: ( ( ruleURIFirstPathElementCS ) )
             // InternalOCLstdlib.g:22267:1: ( ruleURIFirstPathElementCS )
@@ -64503,7 +64503,7 @@
             // InternalOCLstdlib.g:22268:1: ruleURIFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0()); 
+               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleURIFirstPathElementCS();
@@ -64511,7 +64511,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0()); 
+               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
             }
 
             }
@@ -64539,7 +64539,7 @@
     public final void rule__URIPathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22281:1: ( ( ruleNextPathElementCS ) )
             // InternalOCLstdlib.g:22282:1: ( ruleNextPathElementCS )
@@ -64548,7 +64548,7 @@
             // InternalOCLstdlib.g:22283:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNextPathElementCS();
@@ -64556,7 +64556,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
 
             }
@@ -64584,7 +64584,7 @@
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22296:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalOCLstdlib.g:22297:1: ( ( ruleUnrestrictedName ) )
@@ -64593,13 +64593,13 @@
             // InternalOCLstdlib.g:22298:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
             }
             // InternalOCLstdlib.g:22299:1: ( ruleUnrestrictedName )
             // InternalOCLstdlib.g:22300:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -64607,13 +64607,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
             }
 
             }
@@ -64641,7 +64641,7 @@
     public final void rule__URIFirstPathElementCS__ReferredElementAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22315:1: ( ( ( ruleURI ) ) )
             // InternalOCLstdlib.g:22316:1: ( ( ruleURI ) )
@@ -64650,13 +64650,13 @@
             // InternalOCLstdlib.g:22317:1: ( ruleURI )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
             }
             // InternalOCLstdlib.g:22318:1: ( ruleURI )
             // InternalOCLstdlib.g:22319:1: ruleURI
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1()); 
+               before(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleURI();
@@ -64664,13 +64664,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceURIParserRuleCall_1_1_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
+               after(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
             }
 
             }
@@ -64698,7 +64698,7 @@
     public final void rule__PrimitiveTypeCS__NameAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22334:1: ( ( rulePrimitiveTypeIdentifier ) )
             // InternalOCLstdlib.g:22335:1: ( rulePrimitiveTypeIdentifier )
@@ -64707,7 +64707,7 @@
             // InternalOCLstdlib.g:22336:1: rulePrimitiveTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
+               before(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrimitiveTypeIdentifier();
@@ -64715,7 +64715,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
+               after(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
             }
 
             }
@@ -64743,7 +64743,7 @@
     public final void rule__CollectionTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22349:1: ( ( ruleCollectionTypeIdentifier ) )
             // InternalOCLstdlib.g:22350:1: ( ruleCollectionTypeIdentifier )
@@ -64752,7 +64752,7 @@
             // InternalOCLstdlib.g:22351:1: ruleCollectionTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionTypeIdentifier();
@@ -64760,7 +64760,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
             }
 
             }
@@ -64788,7 +64788,7 @@
     public final void rule__CollectionTypeCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22364:1: ( ( ruleTypeExpCS ) )
             // InternalOCLstdlib.g:22365:1: ( ruleTypeExpCS )
@@ -64797,7 +64797,7 @@
             // InternalOCLstdlib.g:22366:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -64805,7 +64805,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -64833,7 +64833,7 @@
     public final void rule__MapTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22379:1: ( ( ( 'Map' ) ) )
             // InternalOCLstdlib.g:22380:1: ( ( 'Map' ) )
@@ -64842,23 +64842,23 @@
             // InternalOCLstdlib.g:22381:1: ( 'Map' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
             // InternalOCLstdlib.g:22382:1: ( 'Map' )
             // InternalOCLstdlib.g:22383:1: 'Map'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
             match(input,38,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
             }
 
             }
@@ -64886,7 +64886,7 @@
     public final void rule__MapTypeCS__OwnedKeyTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22402:1: ( ( ruleTypeExpCS ) )
             // InternalOCLstdlib.g:22403:1: ( ruleTypeExpCS )
@@ -64895,7 +64895,7 @@
             // InternalOCLstdlib.g:22404:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -64903,7 +64903,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -64931,7 +64931,7 @@
     public final void rule__MapTypeCS__OwnedValueTypeAssignment_1_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22417:1: ( ( ruleTypeExpCS ) )
             // InternalOCLstdlib.g:22418:1: ( ruleTypeExpCS )
@@ -64940,7 +64940,7 @@
             // InternalOCLstdlib.g:22419:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
+               before(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -64948,7 +64948,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
+               after(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
             }
 
             }
@@ -64976,7 +64976,7 @@
     public final void rule__TupleTypeCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22432:1: ( ( ( 'Tuple' ) ) )
             // InternalOCLstdlib.g:22433:1: ( ( 'Tuple' ) )
@@ -64985,23 +64985,23 @@
             // InternalOCLstdlib.g:22434:1: ( 'Tuple' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
             // InternalOCLstdlib.g:22435:1: ( 'Tuple' )
             // InternalOCLstdlib.g:22436:1: 'Tuple'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
             match(input,39,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
             }
 
             }
@@ -65029,7 +65029,7 @@
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22455:1: ( ( ruleTuplePartCS ) )
             // InternalOCLstdlib.g:22456:1: ( ruleTuplePartCS )
@@ -65038,7 +65038,7 @@
             // InternalOCLstdlib.g:22457:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTuplePartCS();
@@ -65046,7 +65046,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
             }
 
             }
@@ -65074,7 +65074,7 @@
     public final void rule__TupleTypeCS__OwnedPartsAssignment_1_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22470:1: ( ( ruleTuplePartCS ) )
             // InternalOCLstdlib.g:22471:1: ( ruleTuplePartCS )
@@ -65083,7 +65083,7 @@
             // InternalOCLstdlib.g:22472:1: ruleTuplePartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
+               before(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTuplePartCS();
@@ -65091,7 +65091,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
+               after(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
             }
 
             }
@@ -65119,7 +65119,7 @@
     public final void rule__CollectionLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22485:1: ( ( ruleCollectionTypeCS ) )
             // InternalOCLstdlib.g:22486:1: ( ruleCollectionTypeCS )
@@ -65128,7 +65128,7 @@
             // InternalOCLstdlib.g:22487:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionTypeCS();
@@ -65136,7 +65136,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
 
             }
@@ -65164,7 +65164,7 @@
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22500:1: ( ( ruleCollectionLiteralPartCS ) )
             // InternalOCLstdlib.g:22501:1: ( ruleCollectionLiteralPartCS )
@@ -65173,7 +65173,7 @@
             // InternalOCLstdlib.g:22502:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionLiteralPartCS();
@@ -65181,7 +65181,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
             }
 
             }
@@ -65209,7 +65209,7 @@
     public final void rule__CollectionLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22515:1: ( ( ruleCollectionLiteralPartCS ) )
             // InternalOCLstdlib.g:22516:1: ( ruleCollectionLiteralPartCS )
@@ -65218,7 +65218,7 @@
             // InternalOCLstdlib.g:22517:1: ruleCollectionLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionLiteralPartCS();
@@ -65226,7 +65226,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -65254,7 +65254,7 @@
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22530:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:22531:1: ( ruleExpCS )
@@ -65263,7 +65263,7 @@
             // InternalOCLstdlib.g:22532:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -65271,7 +65271,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
             }
 
             }
@@ -65299,7 +65299,7 @@
     public final void rule__CollectionLiteralPartCS__OwnedLastExpressionAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22545:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:22546:1: ( ruleExpCS )
@@ -65308,7 +65308,7 @@
             // InternalOCLstdlib.g:22547:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -65316,7 +65316,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
             }
 
             }
@@ -65344,7 +65344,7 @@
     public final void rule__CollectionLiteralPartCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22560:1: ( ( rulePatternExpCS ) )
             // InternalOCLstdlib.g:22561:1: ( rulePatternExpCS )
@@ -65353,7 +65353,7 @@
             // InternalOCLstdlib.g:22562:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePatternExpCS();
@@ -65361,7 +65361,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
             }
 
             }
@@ -65389,7 +65389,7 @@
     public final void rule__CollectionPatternCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22575:1: ( ( ruleCollectionTypeCS ) )
             // InternalOCLstdlib.g:22576:1: ( ruleCollectionTypeCS )
@@ -65398,7 +65398,7 @@
             // InternalOCLstdlib.g:22577:1: ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCollectionTypeCS();
@@ -65406,7 +65406,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
             }
 
             }
@@ -65434,7 +65434,7 @@
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22590:1: ( ( rulePatternExpCS ) )
             // InternalOCLstdlib.g:22591:1: ( rulePatternExpCS )
@@ -65443,7 +65443,7 @@
             // InternalOCLstdlib.g:22592:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePatternExpCS();
@@ -65451,7 +65451,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
             }
 
             }
@@ -65479,7 +65479,7 @@
     public final void rule__CollectionPatternCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22605:1: ( ( rulePatternExpCS ) )
             // InternalOCLstdlib.g:22606:1: ( rulePatternExpCS )
@@ -65488,7 +65488,7 @@
             // InternalOCLstdlib.g:22607:1: rulePatternExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePatternExpCS();
@@ -65496,7 +65496,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -65524,7 +65524,7 @@
     public final void rule__CollectionPatternCS__RestVariableNameAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22620:1: ( ( ruleIdentifier ) )
             // InternalOCLstdlib.g:22621:1: ( ruleIdentifier )
@@ -65533,7 +65533,7 @@
             // InternalOCLstdlib.g:22622:1: ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleIdentifier();
@@ -65541,7 +65541,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
             }
 
             }
@@ -65569,7 +65569,7 @@
     public final void rule__ShadowPartCS__ReferredPropertyAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22635:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalOCLstdlib.g:22636:1: ( ( ruleUnrestrictedName ) )
@@ -65578,13 +65578,13 @@
             // InternalOCLstdlib.g:22637:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
+               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
             }
             // InternalOCLstdlib.g:22638:1: ( ruleUnrestrictedName )
             // InternalOCLstdlib.g:22639:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1()); 
+               before(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -65592,13 +65592,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1()); 
+               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyUnrestrictedNameParserRuleCall_0_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
+               after(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
             }
 
             }
@@ -65626,7 +65626,7 @@
     public final void rule__ShadowPartCS__OwnedInitExpressionAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22654:1: ( ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 ) ) )
             // InternalOCLstdlib.g:22655:1: ( ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 ) )
@@ -65635,7 +65635,7 @@
             // InternalOCLstdlib.g:22656:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0()); 
+               before(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0());
             }
             // InternalOCLstdlib.g:22657:1: ( rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0 )
             // InternalOCLstdlib.g:22657:2: rule__ShadowPartCS__OwnedInitExpressionAlternatives_2_0
@@ -65649,7 +65649,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0()); 
+               after(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionAlternatives_2_0());
             }
 
             }
@@ -65677,7 +65677,7 @@
     public final void rule__PatternExpCS__PatternVariableNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22670:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLstdlib.g:22671:1: ( ruleUnrestrictedName )
@@ -65686,7 +65686,7 @@
             // InternalOCLstdlib.g:22672:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -65694,7 +65694,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -65722,7 +65722,7 @@
     public final void rule__PatternExpCS__OwnedPatternTypeAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22685:1: ( ( ruleTypeExpCS ) )
             // InternalOCLstdlib.g:22686:1: ( ruleTypeExpCS )
@@ -65731,7 +65731,7 @@
             // InternalOCLstdlib.g:22687:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -65739,7 +65739,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
             }
 
             }
@@ -65767,7 +65767,7 @@
     public final void rule__LambdaLiteralExpCS__OwnedExpressionCSAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22700:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:22701:1: ( ruleExpCS )
@@ -65776,7 +65776,7 @@
             // InternalOCLstdlib.g:22702:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -65784,7 +65784,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
             }
 
             }
@@ -65812,7 +65812,7 @@
     public final void rule__MapLiteralExpCS__OwnedTypeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22715:1: ( ( ruleMapTypeCS ) )
             // InternalOCLstdlib.g:22716:1: ( ruleMapTypeCS )
@@ -65821,7 +65821,7 @@
             // InternalOCLstdlib.g:22717:1: ruleMapTypeCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMapTypeCS();
@@ -65829,7 +65829,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
             }
 
             }
@@ -65857,7 +65857,7 @@
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22730:1: ( ( ruleMapLiteralPartCS ) )
             // InternalOCLstdlib.g:22731:1: ( ruleMapLiteralPartCS )
@@ -65866,7 +65866,7 @@
             // InternalOCLstdlib.g:22732:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMapLiteralPartCS();
@@ -65874,7 +65874,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
             }
 
             }
@@ -65902,7 +65902,7 @@
     public final void rule__MapLiteralExpCS__OwnedPartsAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22745:1: ( ( ruleMapLiteralPartCS ) )
             // InternalOCLstdlib.g:22746:1: ( ruleMapLiteralPartCS )
@@ -65911,7 +65911,7 @@
             // InternalOCLstdlib.g:22747:1: ruleMapLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMapLiteralPartCS();
@@ -65919,7 +65919,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -65947,7 +65947,7 @@
     public final void rule__MapLiteralPartCS__OwnedKeyAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22760:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:22761:1: ( ruleExpCS )
@@ -65956,7 +65956,7 @@
             // InternalOCLstdlib.g:22762:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -65964,7 +65964,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
             }
 
             }
@@ -65992,7 +65992,7 @@
     public final void rule__MapLiteralPartCS__OwnedValueAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22775:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:22776:1: ( ruleExpCS )
@@ -66001,7 +66001,7 @@
             // InternalOCLstdlib.g:22777:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
+               before(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -66009,7 +66009,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
+               after(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
             }
 
             }
@@ -66037,7 +66037,7 @@
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22790:1: ( ( ruleTupleLiteralPartCS ) )
             // InternalOCLstdlib.g:22791:1: ( ruleTupleLiteralPartCS )
@@ -66046,7 +66046,7 @@
             // InternalOCLstdlib.g:22792:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTupleLiteralPartCS();
@@ -66054,7 +66054,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
             }
 
             }
@@ -66082,7 +66082,7 @@
     public final void rule__TupleLiteralExpCS__OwnedPartsAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22805:1: ( ( ruleTupleLiteralPartCS ) )
             // InternalOCLstdlib.g:22806:1: ( ruleTupleLiteralPartCS )
@@ -66091,7 +66091,7 @@
             // InternalOCLstdlib.g:22807:1: ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
+               before(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTupleLiteralPartCS();
@@ -66099,7 +66099,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
+               after(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
             }
 
             }
@@ -66127,7 +66127,7 @@
     public final void rule__TupleLiteralPartCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22820:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLstdlib.g:22821:1: ( ruleUnrestrictedName )
@@ -66136,7 +66136,7 @@
             // InternalOCLstdlib.g:22822:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -66144,7 +66144,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -66172,7 +66172,7 @@
     public final void rule__TupleLiteralPartCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22835:1: ( ( ruleTypeExpCS ) )
             // InternalOCLstdlib.g:22836:1: ( ruleTypeExpCS )
@@ -66181,7 +66181,7 @@
             // InternalOCLstdlib.g:22837:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -66189,7 +66189,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -66217,7 +66217,7 @@
     public final void rule__TupleLiteralPartCS__OwnedInitExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22850:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:22851:1: ( ruleExpCS )
@@ -66226,7 +66226,7 @@
             // InternalOCLstdlib.g:22852:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
+               before(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -66234,7 +66234,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
+               after(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
             }
 
             }
@@ -66262,7 +66262,7 @@
     public final void rule__NumberLiteralExpCS__SymbolAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22865:1: ( ( ruleNUMBER_LITERAL ) )
             // InternalOCLstdlib.g:22866:1: ( ruleNUMBER_LITERAL )
@@ -66271,7 +66271,7 @@
             // InternalOCLstdlib.g:22867:1: ruleNUMBER_LITERAL
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
+               before(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNUMBER_LITERAL();
@@ -66279,7 +66279,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
+               after(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
             }
 
             }
@@ -66307,7 +66307,7 @@
     public final void rule__StringLiteralExpCS__SegmentsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22880:1: ( ( ruleStringLiteral ) )
             // InternalOCLstdlib.g:22881:1: ( ruleStringLiteral )
@@ -66316,7 +66316,7 @@
             // InternalOCLstdlib.g:22882:1: ruleStringLiteral
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
+               before(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleStringLiteral();
@@ -66324,7 +66324,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
+               after(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
             }
 
             }
@@ -66352,7 +66352,7 @@
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22895:1: ( ( ( 'true' ) ) )
             // InternalOCLstdlib.g:22896:1: ( ( 'true' ) )
@@ -66361,23 +66361,23 @@
             // InternalOCLstdlib.g:22897:1: ( 'true' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
             // InternalOCLstdlib.g:22898:1: ( 'true' )
             // InternalOCLstdlib.g:22899:1: 'true'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
             match(input,104,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
             }
 
             }
@@ -66405,7 +66405,7 @@
     public final void rule__BooleanLiteralExpCS__SymbolAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22918:1: ( ( ( 'false' ) ) )
             // InternalOCLstdlib.g:22919:1: ( ( 'false' ) )
@@ -66414,23 +66414,23 @@
             // InternalOCLstdlib.g:22920:1: ( 'false' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
             // InternalOCLstdlib.g:22921:1: ( 'false' )
             // InternalOCLstdlib.g:22922:1: 'false'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               before(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
             match(input,105,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0()); 
+               after(grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
             }
 
             }
@@ -66458,7 +66458,7 @@
     public final void rule__TypeLiteralWithMultiplicityCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22941:1: ( ( ruleMultiplicityCS ) )
             // InternalOCLstdlib.g:22942:1: ( ruleMultiplicityCS )
@@ -66467,7 +66467,7 @@
             // InternalOCLstdlib.g:22943:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               before(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -66475,7 +66475,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               after(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
 
             }
@@ -66503,7 +66503,7 @@
     public final void rule__TypeLiteralExpCS__OwnedTypeAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22956:1: ( ( ruleTypeLiteralWithMultiplicityCS ) )
             // InternalOCLstdlib.g:22957:1: ( ruleTypeLiteralWithMultiplicityCS )
@@ -66512,7 +66512,7 @@
             // InternalOCLstdlib.g:22958:1: ruleTypeLiteralWithMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
+               before(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeLiteralWithMultiplicityCS();
@@ -66520,7 +66520,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
+               after(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
             }
 
             }
@@ -66548,7 +66548,7 @@
     public final void rule__TypeNameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22971:1: ( ( rulePathNameCS ) )
             // InternalOCLstdlib.g:22972:1: ( rulePathNameCS )
@@ -66557,7 +66557,7 @@
             // InternalOCLstdlib.g:22973:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -66565,7 +66565,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
 
             }
@@ -66593,7 +66593,7 @@
     public final void rule__TypeNameExpCS__OwnedCurlyBracketedClauseAssignment_1_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:22986:1: ( ( ruleCurlyBracketedClauseCS ) )
             // InternalOCLstdlib.g:22987:1: ( ruleCurlyBracketedClauseCS )
@@ -66602,7 +66602,7 @@
             // InternalOCLstdlib.g:22988:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCurlyBracketedClauseCS();
@@ -66610,7 +66610,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
             }
 
             }
@@ -66638,7 +66638,7 @@
     public final void rule__TypeNameExpCS__OwnedPatternGuardAssignment_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23001:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23002:1: ( ruleExpCS )
@@ -66647,7 +66647,7 @@
             // InternalOCLstdlib.g:23003:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
+               before(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -66655,7 +66655,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
+               after(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
             }
 
             }
@@ -66683,7 +66683,7 @@
     public final void rule__TypeExpCS__OwnedMultiplicityAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23016:1: ( ( ruleMultiplicityCS ) )
             // InternalOCLstdlib.g:23017:1: ( ruleMultiplicityCS )
@@ -66692,7 +66692,7 @@
             // InternalOCLstdlib.g:23018:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               before(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -66700,7 +66700,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+               after(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
             }
 
             }
@@ -66728,7 +66728,7 @@
     public final void rule__ExpCS__NameAssignment_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23031:1: ( ( ruleBinaryOperatorName ) )
             // InternalOCLstdlib.g:23032:1: ( ruleBinaryOperatorName )
@@ -66737,7 +66737,7 @@
             // InternalOCLstdlib.g:23033:1: ruleBinaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
+               before(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleBinaryOperatorName();
@@ -66745,7 +66745,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
+               after(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
             }
 
             }
@@ -66773,7 +66773,7 @@
     public final void rule__ExpCS__OwnedRightAssignment_0_1_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23046:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23047:1: ( ruleExpCS )
@@ -66782,7 +66782,7 @@
             // InternalOCLstdlib.g:23048:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
+               before(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -66790,7 +66790,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
+               after(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
             }
 
             }
@@ -66818,7 +66818,7 @@
     public final void rule__PrefixedLetExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23061:1: ( ( ruleUnaryOperatorName ) )
             // InternalOCLstdlib.g:23062:1: ( ruleUnaryOperatorName )
@@ -66827,7 +66827,7 @@
             // InternalOCLstdlib.g:23063:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnaryOperatorName();
@@ -66835,7 +66835,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
 
             }
@@ -66863,7 +66863,7 @@
     public final void rule__PrefixedLetExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23076:1: ( ( rulePrefixedLetExpCS ) )
             // InternalOCLstdlib.g:23077:1: ( rulePrefixedLetExpCS )
@@ -66872,7 +66872,7 @@
             // InternalOCLstdlib.g:23078:1: rulePrefixedLetExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
+               before(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrefixedLetExpCS();
@@ -66880,7 +66880,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
+               after(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
             }
 
             }
@@ -66908,7 +66908,7 @@
     public final void rule__PrefixedPrimaryExpCS__NameAssignment_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23091:1: ( ( ruleUnaryOperatorName ) )
             // InternalOCLstdlib.g:23092:1: ( ruleUnaryOperatorName )
@@ -66917,7 +66917,7 @@
             // InternalOCLstdlib.g:23093:1: ruleUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnaryOperatorName();
@@ -66925,7 +66925,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
             }
 
             }
@@ -66953,7 +66953,7 @@
     public final void rule__PrefixedPrimaryExpCS__OwnedRightAssignment_0_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23106:1: ( ( rulePrefixedPrimaryExpCS ) )
             // InternalOCLstdlib.g:23107:1: ( rulePrefixedPrimaryExpCS )
@@ -66962,7 +66962,7 @@
             // InternalOCLstdlib.g:23108:1: rulePrefixedPrimaryExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
+               before(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePrefixedPrimaryExpCS();
@@ -66970,7 +66970,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
+               after(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
             }
 
             }
@@ -66998,7 +66998,7 @@
     public final void rule__NameExpCS__OwnedPathNameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23121:1: ( ( rulePathNameCS ) )
             // InternalOCLstdlib.g:23122:1: ( rulePathNameCS )
@@ -67007,7 +67007,7 @@
             // InternalOCLstdlib.g:23123:1: rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             rulePathNameCS();
@@ -67015,7 +67015,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
             }
 
             }
@@ -67043,7 +67043,7 @@
     public final void rule__NameExpCS__OwnedSquareBracketedClausesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23136:1: ( ( ruleSquareBracketedClauseCS ) )
             // InternalOCLstdlib.g:23137:1: ( ruleSquareBracketedClauseCS )
@@ -67052,7 +67052,7 @@
             // InternalOCLstdlib.g:23138:1: ruleSquareBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleSquareBracketedClauseCS();
@@ -67060,7 +67060,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
             }
 
             }
@@ -67088,7 +67088,7 @@
     public final void rule__NameExpCS__OwnedRoundBracketedClauseAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23151:1: ( ( ruleRoundBracketedClauseCS ) )
             // InternalOCLstdlib.g:23152:1: ( ruleRoundBracketedClauseCS )
@@ -67097,7 +67097,7 @@
             // InternalOCLstdlib.g:23153:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleRoundBracketedClauseCS();
@@ -67105,7 +67105,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
             }
 
             }
@@ -67133,7 +67133,7 @@
     public final void rule__NameExpCS__OwnedCurlyBracketedClauseAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23166:1: ( ( ruleCurlyBracketedClauseCS ) )
             // InternalOCLstdlib.g:23167:1: ( ruleCurlyBracketedClauseCS )
@@ -67142,7 +67142,7 @@
             // InternalOCLstdlib.g:23168:1: ruleCurlyBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
+               before(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleCurlyBracketedClauseCS();
@@ -67150,7 +67150,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
+               after(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
             }
 
             }
@@ -67178,7 +67178,7 @@
     public final void rule__NameExpCS__IsPreAssignment_4_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23181:1: ( ( ( '@' ) ) )
             // InternalOCLstdlib.g:23182:1: ( ( '@' ) )
@@ -67187,23 +67187,23 @@
             // InternalOCLstdlib.g:23183:1: ( '@' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
             // InternalOCLstdlib.g:23184:1: ( '@' )
             // InternalOCLstdlib.g:23185:1: '@'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               before(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
             match(input,106,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0()); 
+               after(grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
             }
 
             }
@@ -67231,7 +67231,7 @@
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23204:1: ( ( ruleShadowPartCS ) )
             // InternalOCLstdlib.g:23205:1: ( ruleShadowPartCS )
@@ -67240,7 +67240,7 @@
             // InternalOCLstdlib.g:23206:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleShadowPartCS();
@@ -67248,7 +67248,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
             }
 
             }
@@ -67276,7 +67276,7 @@
     public final void rule__CurlyBracketedClauseCS__OwnedPartsAssignment_2_0_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23219:1: ( ( ruleShadowPartCS ) )
             // InternalOCLstdlib.g:23220:1: ( ruleShadowPartCS )
@@ -67285,7 +67285,7 @@
             // InternalOCLstdlib.g:23221:1: ruleShadowPartCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleShadowPartCS();
@@ -67293,7 +67293,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
             }
 
             }
@@ -67321,7 +67321,7 @@
     public final void rule__CurlyBracketedClauseCS__ValueAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23234:1: ( ( ruleStringLiteral ) )
             // InternalOCLstdlib.g:23235:1: ( ruleStringLiteral )
@@ -67330,7 +67330,7 @@
             // InternalOCLstdlib.g:23236:1: ruleStringLiteral
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
+               before(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleStringLiteral();
@@ -67338,7 +67338,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
+               after(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
             }
 
             }
@@ -67366,7 +67366,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23249:1: ( ( ruleNavigatingArgCS ) )
             // InternalOCLstdlib.g:23250:1: ( ruleNavigatingArgCS )
@@ -67375,7 +67375,7 @@
             // InternalOCLstdlib.g:23251:1: ruleNavigatingArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgCS();
@@ -67383,7 +67383,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
             }
 
             }
@@ -67411,7 +67411,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23264:1: ( ( ruleNavigatingCommaArgCS ) )
             // InternalOCLstdlib.g:23265:1: ( ruleNavigatingCommaArgCS )
@@ -67420,7 +67420,7 @@
             // InternalOCLstdlib.g:23266:1: ruleNavigatingCommaArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingCommaArgCS();
@@ -67428,7 +67428,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
             }
 
             }
@@ -67456,7 +67456,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23279:1: ( ( ruleNavigatingSemiArgCS ) )
             // InternalOCLstdlib.g:23280:1: ( ruleNavigatingSemiArgCS )
@@ -67465,7 +67465,7 @@
             // InternalOCLstdlib.g:23281:1: ruleNavigatingSemiArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingSemiArgCS();
@@ -67473,7 +67473,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
             }
 
             }
@@ -67501,7 +67501,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23294:1: ( ( ruleNavigatingCommaArgCS ) )
             // InternalOCLstdlib.g:23295:1: ( ruleNavigatingCommaArgCS )
@@ -67510,7 +67510,7 @@
             // InternalOCLstdlib.g:23296:1: ruleNavigatingCommaArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingCommaArgCS();
@@ -67518,7 +67518,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
             }
 
             }
@@ -67546,7 +67546,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23309:1: ( ( ruleNavigatingBarArgCS ) )
             // InternalOCLstdlib.g:23310:1: ( ruleNavigatingBarArgCS )
@@ -67555,7 +67555,7 @@
             // InternalOCLstdlib.g:23311:1: ruleNavigatingBarArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingBarArgCS();
@@ -67563,7 +67563,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
             }
 
             }
@@ -67591,7 +67591,7 @@
     public final void rule__RoundBracketedClauseCS__OwnedArgumentsAssignment_2_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23324:1: ( ( ruleNavigatingCommaArgCS ) )
             // InternalOCLstdlib.g:23325:1: ( ruleNavigatingCommaArgCS )
@@ -67600,7 +67600,7 @@
             // InternalOCLstdlib.g:23326:1: ruleNavigatingCommaArgCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
+               before(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingCommaArgCS();
@@ -67608,7 +67608,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
+               after(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
             }
 
             }
@@ -67636,7 +67636,7 @@
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23339:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23340:1: ( ruleExpCS )
@@ -67645,7 +67645,7 @@
             // InternalOCLstdlib.g:23341:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -67653,7 +67653,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
             }
 
             }
@@ -67681,7 +67681,7 @@
     public final void rule__SquareBracketedClauseCS__OwnedTermsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23354:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23355:1: ( ruleExpCS )
@@ -67690,7 +67690,7 @@
             // InternalOCLstdlib.g:23356:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -67698,7 +67698,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -67726,7 +67726,7 @@
     public final void rule__NavigatingArgCS__OwnedNameExpressionAssignment_0_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23369:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalOCLstdlib.g:23370:1: ( ruleNavigatingArgExpCS )
@@ -67735,7 +67735,7 @@
             // InternalOCLstdlib.g:23371:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -67743,7 +67743,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
             }
 
             }
@@ -67771,7 +67771,7 @@
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_0_1_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23384:1: ( ( ruleTypeExpCS ) )
             // InternalOCLstdlib.g:23385:1: ( ruleTypeExpCS )
@@ -67780,7 +67780,7 @@
             // InternalOCLstdlib.g:23386:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -67788,7 +67788,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
             }
 
             }
@@ -67816,7 +67816,7 @@
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23399:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23400:1: ( ruleExpCS )
@@ -67825,7 +67825,7 @@
             // InternalOCLstdlib.g:23401:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -67833,7 +67833,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
             }
 
             }
@@ -67861,7 +67861,7 @@
     public final void rule__NavigatingArgCS__OwnedInitExpressionAssignment_0_1_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23414:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23415:1: ( ruleExpCS )
@@ -67870,7 +67870,7 @@
             // InternalOCLstdlib.g:23416:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -67878,7 +67878,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
             }
 
             }
@@ -67906,7 +67906,7 @@
     public final void rule__NavigatingArgCS__OwnedTypeAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23429:1: ( ( ruleTypeExpCS ) )
             // InternalOCLstdlib.g:23430:1: ( ruleTypeExpCS )
@@ -67915,7 +67915,7 @@
             // InternalOCLstdlib.g:23431:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -67923,7 +67923,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
             }
 
             }
@@ -67951,7 +67951,7 @@
     public final void rule__NavigatingBarArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23444:1: ( ( ( '|' ) ) )
             // InternalOCLstdlib.g:23445:1: ( ( '|' ) )
@@ -67960,23 +67960,23 @@
             // InternalOCLstdlib.g:23446:1: ( '|' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
             // InternalOCLstdlib.g:23447:1: ( '|' )
             // InternalOCLstdlib.g:23448:1: '|'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
             match(input,90,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
             }
 
             }
@@ -68004,7 +68004,7 @@
     public final void rule__NavigatingBarArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23467:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalOCLstdlib.g:23468:1: ( ruleNavigatingArgExpCS )
@@ -68013,7 +68013,7 @@
             // InternalOCLstdlib.g:23469:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -68021,7 +68021,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
 
             }
@@ -68049,7 +68049,7 @@
     public final void rule__NavigatingBarArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23482:1: ( ( ruleTypeExpCS ) )
             // InternalOCLstdlib.g:23483:1: ( ruleTypeExpCS )
@@ -68058,7 +68058,7 @@
             // InternalOCLstdlib.g:23484:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -68066,7 +68066,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -68094,7 +68094,7 @@
     public final void rule__NavigatingBarArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23497:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23498:1: ( ruleExpCS )
@@ -68103,7 +68103,7 @@
             // InternalOCLstdlib.g:23499:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -68111,7 +68111,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
 
             }
@@ -68139,7 +68139,7 @@
     public final void rule__NavigatingCommaArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23512:1: ( ( ( ',' ) ) )
             // InternalOCLstdlib.g:23513:1: ( ( ',' ) )
@@ -68148,23 +68148,23 @@
             // InternalOCLstdlib.g:23514:1: ( ',' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
             // InternalOCLstdlib.g:23515:1: ( ',' )
             // InternalOCLstdlib.g:23516:1: ','
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
             match(input,85,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
             }
 
             }
@@ -68192,7 +68192,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23535:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalOCLstdlib.g:23536:1: ( ruleNavigatingArgExpCS )
@@ -68201,7 +68201,7 @@
             // InternalOCLstdlib.g:23537:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -68209,7 +68209,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
 
             }
@@ -68237,7 +68237,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedTypeAssignment_2_0_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23550:1: ( ( ruleTypeExpCS ) )
             // InternalOCLstdlib.g:23551:1: ( ruleTypeExpCS )
@@ -68246,7 +68246,7 @@
             // InternalOCLstdlib.g:23552:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -68254,7 +68254,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
             }
 
             }
@@ -68282,7 +68282,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_0_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23565:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23566:1: ( ruleExpCS )
@@ -68291,7 +68291,7 @@
             // InternalOCLstdlib.g:23567:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -68299,7 +68299,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
             }
 
             }
@@ -68327,7 +68327,7 @@
     public final void rule__NavigatingCommaArgCS__OwnedInitExpressionAssignment_2_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23580:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23581:1: ( ruleExpCS )
@@ -68336,7 +68336,7 @@
             // InternalOCLstdlib.g:23582:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
+               before(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -68344,7 +68344,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
+               after(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
             }
 
             }
@@ -68372,7 +68372,7 @@
     public final void rule__NavigatingSemiArgCS__PrefixAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23595:1: ( ( ( ';' ) ) )
             // InternalOCLstdlib.g:23596:1: ( ( ';' ) )
@@ -68381,23 +68381,23 @@
             // InternalOCLstdlib.g:23597:1: ( ';' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
             // InternalOCLstdlib.g:23598:1: ( ';' )
             // InternalOCLstdlib.g:23599:1: ';'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
             match(input,40,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
             }
 
             }
@@ -68425,7 +68425,7 @@
     public final void rule__NavigatingSemiArgCS__OwnedNameExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23618:1: ( ( ruleNavigatingArgExpCS ) )
             // InternalOCLstdlib.g:23619:1: ( ruleNavigatingArgExpCS )
@@ -68434,7 +68434,7 @@
             // InternalOCLstdlib.g:23620:1: ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNavigatingArgExpCS();
@@ -68442,7 +68442,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
             }
 
             }
@@ -68470,7 +68470,7 @@
     public final void rule__NavigatingSemiArgCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23633:1: ( ( ruleTypeExpCS ) )
             // InternalOCLstdlib.g:23634:1: ( ruleTypeExpCS )
@@ -68479,7 +68479,7 @@
             // InternalOCLstdlib.g:23635:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -68487,7 +68487,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -68515,7 +68515,7 @@
     public final void rule__NavigatingSemiArgCS__OwnedInitExpressionAssignment_2_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23648:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23649:1: ( ruleExpCS )
@@ -68524,7 +68524,7 @@
             // InternalOCLstdlib.g:23650:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               before(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -68532,7 +68532,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+               after(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
             }
 
             }
@@ -68560,7 +68560,7 @@
     public final void rule__IfExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23663:1: ( ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) ) )
             // InternalOCLstdlib.g:23664:1: ( ( rule__IfExpCS__OwnedConditionAlternatives_1_0 ) )
@@ -68569,7 +68569,7 @@
             // InternalOCLstdlib.g:23665:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0());
             }
             // InternalOCLstdlib.g:23666:1: ( rule__IfExpCS__OwnedConditionAlternatives_1_0 )
             // InternalOCLstdlib.g:23666:2: rule__IfExpCS__OwnedConditionAlternatives_1_0
@@ -68583,7 +68583,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedConditionAlternatives_1_0());
             }
 
             }
@@ -68611,7 +68611,7 @@
     public final void rule__IfExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23679:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23680:1: ( ruleExpCS )
@@ -68620,7 +68620,7 @@
             // InternalOCLstdlib.g:23681:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -68628,7 +68628,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
 
             }
@@ -68656,7 +68656,7 @@
     public final void rule__IfExpCS__OwnedIfThenExpressionsAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23694:1: ( ( ruleElseIfThenExpCS ) )
             // InternalOCLstdlib.g:23695:1: ( ruleElseIfThenExpCS )
@@ -68665,7 +68665,7 @@
             // InternalOCLstdlib.g:23696:1: ruleElseIfThenExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleElseIfThenExpCS();
@@ -68673,7 +68673,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
             }
 
             }
@@ -68701,7 +68701,7 @@
     public final void rule__IfExpCS__OwnedElseExpressionAssignment_6() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23709:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23710:1: ( ruleExpCS )
@@ -68710,7 +68710,7 @@
             // InternalOCLstdlib.g:23711:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
+               before(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -68718,7 +68718,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
+               after(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
             }
 
             }
@@ -68746,7 +68746,7 @@
     public final void rule__ElseIfThenExpCS__OwnedConditionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23724:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23725:1: ( ruleExpCS )
@@ -68755,7 +68755,7 @@
             // InternalOCLstdlib.g:23726:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -68763,7 +68763,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
             }
 
             }
@@ -68791,7 +68791,7 @@
     public final void rule__ElseIfThenExpCS__OwnedThenExpressionAssignment_3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23739:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23740:1: ( ruleExpCS )
@@ -68800,7 +68800,7 @@
             // InternalOCLstdlib.g:23741:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               before(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -68808,7 +68808,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+               after(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
             }
 
             }
@@ -68836,7 +68836,7 @@
     public final void rule__LetExpCS__OwnedVariablesAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23754:1: ( ( ruleLetVariableCS ) )
             // InternalOCLstdlib.g:23755:1: ( ruleLetVariableCS )
@@ -68845,7 +68845,7 @@
             // InternalOCLstdlib.g:23756:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLetVariableCS();
@@ -68853,7 +68853,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
             }
 
             }
@@ -68881,7 +68881,7 @@
     public final void rule__LetExpCS__OwnedVariablesAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23769:1: ( ( ruleLetVariableCS ) )
             // InternalOCLstdlib.g:23770:1: ( ruleLetVariableCS )
@@ -68890,7 +68890,7 @@
             // InternalOCLstdlib.g:23771:1: ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLetVariableCS();
@@ -68898,7 +68898,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
             }
 
             }
@@ -68926,7 +68926,7 @@
     public final void rule__LetExpCS__OwnedInExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23784:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23785:1: ( ruleExpCS )
@@ -68935,7 +68935,7 @@
             // InternalOCLstdlib.g:23786:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
+               before(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -68943,7 +68943,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
+               after(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
             }
 
             }
@@ -68971,7 +68971,7 @@
     public final void rule__LetVariableCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23799:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLstdlib.g:23800:1: ( ruleUnrestrictedName )
@@ -68980,7 +68980,7 @@
             // InternalOCLstdlib.g:23801:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -68988,7 +68988,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -69016,7 +69016,7 @@
     public final void rule__LetVariableCS__OwnedRoundBracketedClauseAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23814:1: ( ( ruleRoundBracketedClauseCS ) )
             // InternalOCLstdlib.g:23815:1: ( ruleRoundBracketedClauseCS )
@@ -69025,7 +69025,7 @@
             // InternalOCLstdlib.g:23816:1: ruleRoundBracketedClauseCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleRoundBracketedClauseCS();
@@ -69033,7 +69033,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
             }
 
             }
@@ -69061,7 +69061,7 @@
     public final void rule__LetVariableCS__OwnedTypeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23829:1: ( ( ruleTypeExpCS ) )
             // InternalOCLstdlib.g:23830:1: ( ruleTypeExpCS )
@@ -69070,7 +69070,7 @@
             // InternalOCLstdlib.g:23831:1: ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeExpCS();
@@ -69078,7 +69078,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
             }
 
             }
@@ -69106,7 +69106,7 @@
     public final void rule__LetVariableCS__OwnedInitExpressionAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23844:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23845:1: ( ruleExpCS )
@@ -69115,7 +69115,7 @@
             // InternalOCLstdlib.g:23846:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
+               before(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -69123,7 +69123,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
+               after(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
             }
 
             }
@@ -69151,7 +69151,7 @@
     public final void rule__NestedExpCS__OwnedExpressionAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23859:1: ( ( ruleExpCS ) )
             // InternalOCLstdlib.g:23860:1: ( ruleExpCS )
@@ -69160,7 +69160,7 @@
             // InternalOCLstdlib.g:23861:1: ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
+               before(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleExpCS();
@@ -69168,7 +69168,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
+               after(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
             }
 
             }
@@ -69196,7 +69196,7 @@
     public final void rule__MultiplicityBoundsCS__LowerBoundAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23874:1: ( ( ruleLOWER ) )
             // InternalOCLstdlib.g:23875:1: ( ruleLOWER )
@@ -69205,7 +69205,7 @@
             // InternalOCLstdlib.g:23876:1: ruleLOWER
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleLOWER();
@@ -69213,7 +69213,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
             }
 
             }
@@ -69241,7 +69241,7 @@
     public final void rule__MultiplicityBoundsCS__UpperBoundAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23889:1: ( ( ruleUPPER ) )
             // InternalOCLstdlib.g:23890:1: ( ruleUPPER )
@@ -69250,7 +69250,7 @@
             // InternalOCLstdlib.g:23891:1: ruleUPPER
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+               before(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUPPER();
@@ -69258,7 +69258,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+               after(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
             }
 
             }
@@ -69286,7 +69286,7 @@
     public final void rule__MultiplicityCS__IsNullFreeAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23904:1: ( ( ( '|1' ) ) )
             // InternalOCLstdlib.g:23905:1: ( ( '|1' ) )
@@ -69295,23 +69295,23 @@
             // InternalOCLstdlib.g:23906:1: ( '|1' )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
             // InternalOCLstdlib.g:23907:1: ( '|1' )
             // InternalOCLstdlib.g:23908:1: '|1'
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               before(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
             match(input,107,FollowSets000.FOLLOW_2); if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0()); 
+               after(grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
             }
 
             }
@@ -69339,7 +69339,7 @@
     public final void rule__MultiplicityStringCS__StringBoundsAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23927:1: ( ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) ) )
             // InternalOCLstdlib.g:23928:1: ( ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 ) )
@@ -69348,7 +69348,7 @@
             // InternalOCLstdlib.g:23929:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0()); 
+               before(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
             // InternalOCLstdlib.g:23930:1: ( rule__MultiplicityStringCS__StringBoundsAlternatives_0 )
             // InternalOCLstdlib.g:23930:2: rule__MultiplicityStringCS__StringBoundsAlternatives_0
@@ -69362,7 +69362,7 @@
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0()); 
+               after(grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAlternatives_0());
             }
 
             }
@@ -69390,7 +69390,7 @@
     public final void rule__PathNameCS__OwnedPathElementsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23943:1: ( ( ruleFirstPathElementCS ) )
             // InternalOCLstdlib.g:23944:1: ( ruleFirstPathElementCS )
@@ -69399,7 +69399,7 @@
             // InternalOCLstdlib.g:23945:1: ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleFirstPathElementCS();
@@ -69407,7 +69407,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
             }
 
             }
@@ -69435,7 +69435,7 @@
     public final void rule__PathNameCS__OwnedPathElementsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23958:1: ( ( ruleNextPathElementCS ) )
             // InternalOCLstdlib.g:23959:1: ( ruleNextPathElementCS )
@@ -69444,7 +69444,7 @@
             // InternalOCLstdlib.g:23960:1: ruleNextPathElementCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleNextPathElementCS();
@@ -69452,7 +69452,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
             }
 
             }
@@ -69480,7 +69480,7 @@
     public final void rule__FirstPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23973:1: ( ( ( ruleUnrestrictedName ) ) )
             // InternalOCLstdlib.g:23974:1: ( ( ruleUnrestrictedName ) )
@@ -69489,13 +69489,13 @@
             // InternalOCLstdlib.g:23975:1: ( ruleUnrestrictedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
             // InternalOCLstdlib.g:23976:1: ( ruleUnrestrictedName )
             // InternalOCLstdlib.g:23977:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1()); 
+               before(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -69503,13 +69503,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementUnrestrictedNameParserRuleCall_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               after(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
 
             }
@@ -69537,7 +69537,7 @@
     public final void rule__NextPathElementCS__ReferredElementAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:23992:1: ( ( ( ruleUnreservedName ) ) )
             // InternalOCLstdlib.g:23993:1: ( ( ruleUnreservedName ) )
@@ -69546,13 +69546,13 @@
             // InternalOCLstdlib.g:23994:1: ( ruleUnreservedName )
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
             // InternalOCLstdlib.g:23995:1: ( ruleUnreservedName )
             // InternalOCLstdlib.g:23996:1: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1()); 
+               before(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnreservedName();
@@ -69560,13 +69560,13 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementUnreservedNameParserRuleCall_0_1());
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+               after(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
             }
 
             }
@@ -69594,7 +69594,7 @@
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:24011:1: ( ( ruleTemplateParameterSubstitutionCS ) )
             // InternalOCLstdlib.g:24012:1: ( ruleTemplateParameterSubstitutionCS )
@@ -69603,7 +69603,7 @@
             // InternalOCLstdlib.g:24013:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateParameterSubstitutionCS();
@@ -69611,7 +69611,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
             }
 
             }
@@ -69639,7 +69639,7 @@
     public final void rule__TemplateBindingCS__OwnedSubstitutionsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:24026:1: ( ( ruleTemplateParameterSubstitutionCS ) )
             // InternalOCLstdlib.g:24027:1: ( ruleTemplateParameterSubstitutionCS )
@@ -69648,7 +69648,7 @@
             // InternalOCLstdlib.g:24028:1: ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTemplateParameterSubstitutionCS();
@@ -69656,7 +69656,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
             }
 
             }
@@ -69684,7 +69684,7 @@
     public final void rule__TemplateBindingCS__OwnedMultiplicityAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:24041:1: ( ( ruleMultiplicityCS ) )
             // InternalOCLstdlib.g:24042:1: ( ruleMultiplicityCS )
@@ -69693,7 +69693,7 @@
             // InternalOCLstdlib.g:24043:1: ruleMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+               before(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleMultiplicityCS();
@@ -69701,7 +69701,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+               after(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
             }
 
             }
@@ -69729,7 +69729,7 @@
     public final void rule__TemplateParameterSubstitutionCS__OwnedActualParameterAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:24056:1: ( ( ruleTypeRefCS ) )
             // InternalOCLstdlib.g:24057:1: ( ruleTypeRefCS )
@@ -69738,7 +69738,7 @@
             // InternalOCLstdlib.g:24058:1: ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+               before(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeRefCS();
@@ -69746,7 +69746,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+               after(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
             }
 
             }
@@ -69774,7 +69774,7 @@
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:24071:1: ( ( ruleTypeParameterCS ) )
             // InternalOCLstdlib.g:24072:1: ( ruleTypeParameterCS )
@@ -69783,7 +69783,7 @@
             // InternalOCLstdlib.g:24073:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeParameterCS();
@@ -69791,7 +69791,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_0());
             }
 
             }
@@ -69819,7 +69819,7 @@
     public final void rule__TemplateSignatureCS__OwnedParametersAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:24086:1: ( ( ruleTypeParameterCS ) )
             // InternalOCLstdlib.g:24087:1: ( ruleTypeParameterCS )
@@ -69828,7 +69828,7 @@
             // InternalOCLstdlib.g:24088:1: ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypeParameterCS();
@@ -69836,7 +69836,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_2_1_0());
             }
 
             }
@@ -69864,7 +69864,7 @@
     public final void rule__TypeParameterCS__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:24101:1: ( ( ruleUnrestrictedName ) )
             // InternalOCLstdlib.g:24102:1: ( ruleUnrestrictedName )
@@ -69873,7 +69873,7 @@
             // InternalOCLstdlib.g:24103:1: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -69881,7 +69881,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
             }
 
             }
@@ -69909,7 +69909,7 @@
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:24116:1: ( ( ruleTypedRefCS ) )
             // InternalOCLstdlib.g:24117:1: ( ruleTypedRefCS )
@@ -69918,7 +69918,7 @@
             // InternalOCLstdlib.g:24118:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -69926,7 +69926,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
             }
 
             }
@@ -69954,7 +69954,7 @@
     public final void rule__TypeParameterCS__OwnedExtendsAssignment_1_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:24131:1: ( ( ruleTypedRefCS ) )
             // InternalOCLstdlib.g:24132:1: ( ruleTypedRefCS )
@@ -69963,7 +69963,7 @@
             // InternalOCLstdlib.g:24133:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+               before(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -69971,7 +69971,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+               after(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
             }
 
             }
@@ -69999,7 +69999,7 @@
     public final void rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
-            
+
         try {
             // InternalOCLstdlib.g:24146:1: ( ( ruleTypedRefCS ) )
             // InternalOCLstdlib.g:24147:1: ( ruleTypedRefCS )
@@ -70008,7 +70008,7 @@
             // InternalOCLstdlib.g:24148:1: ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+               before(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleTypedRefCS();
@@ -70016,7 +70016,7 @@
             state._fsp--;
             if (state.failed) return ;
             if ( state.backtracking==0 ) {
-               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+               after(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
             }
 
             }
@@ -70039,7 +70039,7 @@
     // $ANTLR end "rule__WildcardTypeRefCS__OwnedExtendsAssignment_2_1"
 
     // $ANTLR start synpred120_InternalOCLstdlib
-    public final void synpred120_InternalOCLstdlib_fragment() throws RecognitionException {   
+    public final void synpred120_InternalOCLstdlib_fragment() throws RecognitionException {
         // InternalOCLstdlib.g:4742:6: ( ( ruleTypeLiteralCS ) )
         // InternalOCLstdlib.g:4742:6: ( ruleTypeLiteralCS )
         {
@@ -70047,7 +70047,7 @@
         // InternalOCLstdlib.g:4743:1: ruleTypeLiteralCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+           before(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleTypeLiteralCS();
@@ -70063,7 +70063,7 @@
     // $ANTLR end synpred120_InternalOCLstdlib
 
     // $ANTLR start synpred121_InternalOCLstdlib
-    public final void synpred121_InternalOCLstdlib_fragment() throws RecognitionException {   
+    public final void synpred121_InternalOCLstdlib_fragment() throws RecognitionException {
         // InternalOCLstdlib.g:4764:1: ( ( ( rule__ExpCS__Group_0__0 ) ) )
         // InternalOCLstdlib.g:4764:1: ( ( rule__ExpCS__Group_0__0 ) )
         {
@@ -70071,7 +70071,7 @@
         // InternalOCLstdlib.g:4765:1: ( rule__ExpCS__Group_0__0 )
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getExpCSAccess().getGroup_0()); 
+           before(grammarAccess.getExpCSAccess().getGroup_0());
         }
         // InternalOCLstdlib.g:4766:1: ( rule__ExpCS__Group_0__0 )
         // InternalOCLstdlib.g:4766:2: rule__ExpCS__Group_0__0
@@ -70093,7 +70093,7 @@
     // $ANTLR end synpred121_InternalOCLstdlib
 
     // $ANTLR start synpred128_InternalOCLstdlib
-    public final void synpred128_InternalOCLstdlib_fragment() throws RecognitionException {   
+    public final void synpred128_InternalOCLstdlib_fragment() throws RecognitionException {
         // InternalOCLstdlib.g:4854:6: ( ( ruleTupleLiteralExpCS ) )
         // InternalOCLstdlib.g:4854:6: ( ruleTupleLiteralExpCS )
         {
@@ -70101,7 +70101,7 @@
         // InternalOCLstdlib.g:4855:1: ruleTupleLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleTupleLiteralExpCS();
@@ -70117,7 +70117,7 @@
     // $ANTLR end synpred128_InternalOCLstdlib
 
     // $ANTLR start synpred129_InternalOCLstdlib
-    public final void synpred129_InternalOCLstdlib_fragment() throws RecognitionException {   
+    public final void synpred129_InternalOCLstdlib_fragment() throws RecognitionException {
         // InternalOCLstdlib.g:4860:6: ( ( ruleMapLiteralExpCS ) )
         // InternalOCLstdlib.g:4860:6: ( ruleMapLiteralExpCS )
         {
@@ -70125,7 +70125,7 @@
         // InternalOCLstdlib.g:4861:1: ruleMapLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleMapLiteralExpCS();
@@ -70141,7 +70141,7 @@
     // $ANTLR end synpred129_InternalOCLstdlib
 
     // $ANTLR start synpred130_InternalOCLstdlib
-    public final void synpred130_InternalOCLstdlib_fragment() throws RecognitionException {   
+    public final void synpred130_InternalOCLstdlib_fragment() throws RecognitionException {
         // InternalOCLstdlib.g:4866:6: ( ( ruleCollectionLiteralExpCS ) )
         // InternalOCLstdlib.g:4866:6: ( ruleCollectionLiteralExpCS )
         {
@@ -70149,7 +70149,7 @@
         // InternalOCLstdlib.g:4867:1: ruleCollectionLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleCollectionLiteralExpCS();
@@ -70165,7 +70165,7 @@
     // $ANTLR end synpred130_InternalOCLstdlib
 
     // $ANTLR start synpred132_InternalOCLstdlib
-    public final void synpred132_InternalOCLstdlib_fragment() throws RecognitionException {   
+    public final void synpred132_InternalOCLstdlib_fragment() throws RecognitionException {
         // InternalOCLstdlib.g:4878:6: ( ( ruleTypeLiteralExpCS ) )
         // InternalOCLstdlib.g:4878:6: ( ruleTypeLiteralExpCS )
         {
@@ -70173,7 +70173,7 @@
         // InternalOCLstdlib.g:4879:1: ruleTypeLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+           before(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
         }
         pushFollow(FollowSets000.FOLLOW_2);
         ruleTypeLiteralExpCS();
@@ -70467,10 +70467,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA40_32 = input.LA(1);
 
-                         
+
                         int index40_32 = input.index();
                         input.rewind();
                         s = -1;
@@ -70478,14 +70478,14 @@
 
                         else if ( (true) ) {s = 39;}
 
-                         
+
                         input.seek(index40_32);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA40_33 = input.LA(1);
 
-                         
+
                         int index40_33 = input.index();
                         input.rewind();
                         s = -1;
@@ -70493,14 +70493,14 @@
 
                         else if ( (true) ) {s = 39;}
 
-                         
+
                         input.seek(index40_33);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA40_34 = input.LA(1);
 
-                         
+
                         int index40_34 = input.index();
                         input.rewind();
                         s = -1;
@@ -70508,14 +70508,14 @@
 
                         else if ( (true) ) {s = 39;}
 
-                         
+
                         input.seek(index40_34);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA40_35 = input.LA(1);
 
-                         
+
                         int index40_35 = input.index();
                         input.rewind();
                         s = -1;
@@ -70523,14 +70523,14 @@
 
                         else if ( (true) ) {s = 39;}
 
-                         
+
                         input.seek(index40_35);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA40_36 = input.LA(1);
 
-                         
+
                         int index40_36 = input.index();
                         input.rewind();
                         s = -1;
@@ -70538,7 +70538,7 @@
 
                         else if ( (true) ) {s = 39;}
 
-                         
+
                         input.seek(index40_36);
                         if ( s>=0 ) return s;
                         break;
@@ -70638,10 +70638,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA41_1 = input.LA(1);
 
-                         
+
                         int index41_1 = input.index();
                         input.rewind();
                         s = -1;
@@ -70649,14 +70649,14 @@
 
                         else if ( (true) ) {s = 52;}
 
-                         
+
                         input.seek(index41_1);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA41_2 = input.LA(1);
 
-                         
+
                         int index41_2 = input.index();
                         input.rewind();
                         s = -1;
@@ -70664,7 +70664,7 @@
 
                         else if ( (true) ) {s = 52;}
 
-                         
+
                         input.seek(index41_2);
                         if ( s>=0 ) return s;
                         break;
@@ -70761,10 +70761,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA44_11 = input.LA(1);
 
-                         
+
                         int index44_11 = input.index();
                         input.rewind();
                         s = -1;
@@ -70772,14 +70772,14 @@
 
                         else if ( (synpred132_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index44_11);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA44_12 = input.LA(1);
 
-                         
+
                         int index44_12 = input.index();
                         input.rewind();
                         s = -1;
@@ -70787,14 +70787,14 @@
 
                         else if ( (synpred132_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index44_12);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA44_13 = input.LA(1);
 
-                         
+
                         int index44_13 = input.index();
                         input.rewind();
                         s = -1;
@@ -70802,14 +70802,14 @@
 
                         else if ( (synpred132_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index44_13);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA44_14 = input.LA(1);
 
-                         
+
                         int index44_14 = input.index();
                         input.rewind();
                         s = -1;
@@ -70817,14 +70817,14 @@
 
                         else if ( (synpred132_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index44_14);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA44_15 = input.LA(1);
 
-                         
+
                         int index44_15 = input.index();
                         input.rewind();
                         s = -1;
@@ -70832,14 +70832,14 @@
 
                         else if ( (synpred132_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index44_15);
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA44_16 = input.LA(1);
 
-                         
+
                         int index44_16 = input.index();
                         input.rewind();
                         s = -1;
@@ -70847,14 +70847,14 @@
 
                         else if ( (synpred132_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index44_16);
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA44_17 = input.LA(1);
 
-                         
+
                         int index44_17 = input.index();
                         input.rewind();
                         s = -1;
@@ -70862,7 +70862,7 @@
 
                         else if ( (synpred132_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index44_17);
                         if ( s>=0 ) return s;
                         break;
@@ -71087,9 +71087,9 @@
             return "9360:1: ( rule__LibOperationCS__OwnedSignatureAssignment_3 )?";
         }
     }
- 
 
-    
+
+
     private static class FollowSets000 {
         public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
         public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/internal/OCLstdlibActivator.java b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/internal/OCLstdlibActivator.java
index b75711b..68d6782 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/internal/OCLstdlibActivator.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib.ui/src-gen/org/eclipse/ocl/xtext/oclstdlib/ui/internal/OCLstdlibActivator.java
@@ -26,35 +26,35 @@
 
 /**
  * This class was generated. Customizations should only happen in a newly
- * introduced subclass. 
+ * introduced subclass.
  */
 public class OCLstdlibActivator extends AbstractUIPlugin {
-	
+
 	public static final String ORG_ECLIPSE_OCL_XTEXT_OCLSTDLIB_OCLSTDLIB = "org.eclipse.ocl.xtext.oclstdlib.OCLstdlib";
-	
+
 	private static final Logger logger = Logger.getLogger(OCLstdlibActivator.class);
-	
+
 	private static OCLstdlibActivator INSTANCE;
-	
+
 	private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1));
-	
+
 	@Override
 	public void start(BundleContext context) throws Exception {
 		super.start(context);
 		INSTANCE = this;
 	}
-	
+
 	@Override
 	public void stop(BundleContext context) throws Exception {
 		injectors.clear();
 		INSTANCE = null;
 		super.stop(context);
 	}
-	
+
 	public static OCLstdlibActivator getInstance() {
 		return INSTANCE;
 	}
-	
+
 	public Injector getInjector(String language) {
 		synchronized (injectors) {
 			Injector injector = injectors.get(language);
@@ -64,7 +64,7 @@
 			return injector;
 		}
 	}
-	
+
 	protected Injector createInjector(String language) {
 		try {
 			Module runtimeModule = getRuntimeModule(language);
@@ -83,20 +83,20 @@
 		if (ORG_ECLIPSE_OCL_XTEXT_OCLSTDLIB_OCLSTDLIB.equals(grammar)) {
 			return new org.eclipse.ocl.xtext.oclstdlib.OCLstdlibRuntimeModule();
 		}
-		
+
 		throw new IllegalArgumentException(grammar);
 	}
-	
+
 	protected Module getUiModule(String grammar) {
 		if (ORG_ECLIPSE_OCL_XTEXT_OCLSTDLIB_OCLSTDLIB.equals(grammar)) {
 			return new org.eclipse.ocl.xtext.oclstdlib.ui.OCLstdlibUiModule(this);
 		}
-		
+
 		throw new IllegalArgumentException(grammar);
 	}
-	
+
 	protected Module getSharedStateModule() {
 		return new SharedStateModule();
 	}
-	
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractDelegatingOCLstdlibCSVisitor.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractDelegatingOCLstdlibCSVisitor.java
index 2cb7cf3..9682c8f 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractDelegatingOCLstdlibCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractDelegatingOCLstdlibCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractExtendingOCLstdlibCSVisitor.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractExtendingOCLstdlibCSVisitor.java
index 1504b5b..f062ad9 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractExtendingOCLstdlibCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractExtendingOCLstdlibCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -30,12 +30,12 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractExtendingOCLstdlibCSVisitor(C context) {
 		super(context);
-	}	
+	}
 
 	@Override
 	public R visitJavaClassCS(org.eclipse.ocl.xtext.oclstdlibcs.@NonNull JavaClassCS object) {
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractNullOCLstdlibCSVisitor.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractNullOCLstdlibCSVisitor.java
index ec3dd1d..e1dd971 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractNullOCLstdlibCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractNullOCLstdlibCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -22,7 +22,7 @@
  * An AbstractNullOCLstdlibCSVisitor provides a default implementation for each
  * visitXxx method that returns null.
  *
- * @deprecated Explicit 'Null' functionality is obsolete with Java 8 @Nullable annotations.  
+ * @deprecated Explicit 'Null' functionality is obsolete with Java 8 @Nullable annotations.
  */
  @Deprecated
 public abstract class AbstractNullOCLstdlibCSVisitor<@Nullable R, C>
@@ -30,12 +30,12 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractNullOCLstdlibCSVisitor(C context) {
 		super(context);
-	}	
+	}
 
 	@Override
 	public R visitJavaClassCS(org.eclipse.ocl.xtext.oclstdlibcs.@NonNull JavaClassCS object) {
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSContainmentVisitor.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSContainmentVisitor.java
index 4d70c77..c4828f7 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSContainmentVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSContainmentVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSLeft2RightVisitor.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSLeft2RightVisitor.java
index 7a4c8f9..408418f 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSLeft2RightVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSLeft2RightVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSPostOrderVisitor.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSPostOrderVisitor.java
index 41fab33..88d2cad 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSPostOrderVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSPostOrderVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSPreOrderVisitor.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSPreOrderVisitor.java
index ad73231..ae1d221 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSPreOrderVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSPreOrderVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSVisitor.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSVisitor.java
index 30768fd..5ac639d 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/AbstractOCLstdlibCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -26,7 +26,7 @@
 {
 	/**
 	 * Initializes me with an initial value for my result.
-	 * 
+	 *
 	 * @param context my initial result value
 	 */
 	protected AbstractOCLstdlibCSVisitor(C context) {
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/DecorableOCLstdlibCSVisitor.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/DecorableOCLstdlibCSVisitor.java
index b3dc63c..cbfcca7 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/DecorableOCLstdlibCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/DecorableOCLstdlibCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/OCLstdlibCSVisitor.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/OCLstdlibCSVisitor.java
index 82fe52c..ed1460c 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/OCLstdlibCSVisitor.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/emf-gen/org/eclipse/ocl/xtext/oclstdlibcs/util/OCLstdlibCSVisitor.java
@@ -1,10 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2016 Willink Transformations and others.
+ * Copyright (c) 2010, 2017 Willink Transformations and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  * Contributors:
  *   E.D.Willink - Initial API and implementation
  *
@@ -18,6 +18,7 @@
 import org.eclipse.jdt.annotation.NonNull;
 
 /**
+ * @noimplement This interface is not intended to be implemented by clients.
  */
 public interface OCLstdlibCSVisitor<R> extends org.eclipse.ocl.xtext.essentialoclcs.util.EssentialOCLCSVisitor<R>
 {
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/AbstractOCLstdlibRuntimeModule.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/AbstractOCLstdlibRuntimeModule.java
index 5e8ef0c..f5d2f83 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/AbstractOCLstdlibRuntimeModule.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/AbstractOCLstdlibRuntimeModule.java
@@ -30,16 +30,16 @@
 		properties = tryBindProperties(binder, "org/eclipse/ocl/xtext/oclstdlib/OCLstdlib.properties");
 		super.configure(binder);
 	}
-	
+
 	public void configureLanguageName(Binder binder) {
 		binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.eclipse.ocl.xtext.oclstdlib.OCLstdlib");
 	}
-	
+
 	public void configureFileExtensions(Binder binder) {
 		if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
 			binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("oclstdlib");
 	}
-	
+
 	// contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment
 	public java.lang.ClassLoader bindClassLoaderToInstance() {
 		return getClass().getClassLoader();
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 2a80ad7..1f81c9e 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
@@ -9,7 +9,7 @@
  *     E.D.Willink - initial API and implementation
  *******************************************************************************
  * This code is 100% auto-generated
- * from: E:\GIT\org.eclipse.ocl\examples..\..\plugins\org.eclipse.ocl.xtext.oclstdlib\src-gen\org\eclipse\ocl\xtext\oclstdlib\OCLstdlib.xtextbin
+ * from: E:\GIT\org.eclipse.ocl\plugins..\..\plugins\org.eclipse.ocl.xtext.oclstdlib\src-gen\org\eclipse\ocl\xtext\oclstdlib\OCLstdlib.xtextbin
  * by: org.eclipse.ocl.examples.build.xtend.generateGrammar.xtend
  *
  * Do not edit it.
@@ -73,7 +73,7 @@
 
 	/*
 	 * This class should be bound to org.eclipse.xtext.service.GrammarProvider.
-	 */ 
+	 */
 	@Singleton
 	public static class GrammarProvider extends org.eclipse.xtext.service.GrammarProvider
 	{
@@ -87,7 +87,7 @@
 			return OCLstdlibGrammarResource.GRAMMAR;
 		}
 	}
-	
+
 	private static class _OCLstdlib
 	{
 		private static final @NonNull ReferencedMetamodel MM = createReferencedMetamodel(org.eclipse.ocl.xtext.oclstdlibcs.OCLstdlibCSPackage.eINSTANCE, null); // http://www.eclipse.org/ocl/2015/OCLstdlibCS
@@ -95,7 +95,7 @@
 		private static final @NonNull ReferencedMetamodel MM_ecore = createReferencedMetamodel(org.eclipse.emf.ecore.EcorePackage.eINSTANCE, "ecore"); // http://www.eclipse.org/emf/2002/Ecore
 		private static final @NonNull ReferencedMetamodel MM_essentialocl = createReferencedMetamodel(org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.eINSTANCE, "essentialocl"); // http://www.eclipse.org/ocl/2015/EssentialOCLCS
 		private static final @NonNull ReferencedMetamodel MM_pivot = createReferencedMetamodel(org.eclipse.ocl.pivot.PivotPackage.eINSTANCE, "pivot"); // http://www.eclipse.org/ocl/2015/Pivot
-		
+
 		private static final @NonNull ParserRule PR_AccumulatorCS = createParserRule("AccumulatorCS", createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.PARAMETER_CS));
 		private static final @NonNull ParserRule PR_AnnotationCS = createParserRule("AnnotationCS", createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.ANNOTATION_CS));
 		private static final @NonNull ParserRule PR_AnnotationElementCS = createParserRule("AnnotationElementCS", createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.ANNOTATION_ELEMENT_CS));
@@ -131,7 +131,7 @@
 		private static final @NonNull ParserRule PR_TypedMultiplicityRefCS = createParserRule("TypedMultiplicityRefCS", createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.TYPED_REF_CS));
 		private static final @NonNull ParserRule PR_TypedRefCS = createParserRule("TypedRefCS", createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.TYPED_REF_CS));
 		private static final @NonNull ParserRule PR_TypedTypeRefCS = createParserRule("TypedTypeRefCS", createTypeRef(MM_base, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.TYPED_TYPE_REF_CS));
-		
+
 		private static void initParserRules() {
 			PR_AccumulatorCS.setAlternatives(createGroup(createAssignment("name", "=", createRuleCall(PR_Identifier)), createKeyword(":"), createAssignment("ownedType", "=", createRuleCall(PR_TypedMultiplicityRefCS))));
 			PR_AnnotationCS.setAlternatives(createGroup(createKeyword("annotation"), createAssignment("name", "=", createAlternatives(createRuleCall(PR_Identifier), createRuleCall(_Base.TR_SINGLE_QUOTED_STRING))), setCardinality("?", createGroup(createKeyword("("), createAssignment("ownedDetails", "+=", createRuleCall(PR_DetailCS)), setCardinality("*", createGroup(createKeyword(","), createAssignment("ownedDetails", "+=", createRuleCall(PR_DetailCS)))), createKeyword(")"))), createAlternatives(createGroup(createKeyword("{"), createAssignment("ownedAnnotations", "+=", createRuleCall(PR_AnnotationElementCS)), createKeyword("}")), createKeyword(";"))));
@@ -169,7 +169,7 @@
 			PR_TypedRefCS.setAlternatives(createAlternatives(createRuleCall(_EssentialOCL.PR_MapTypeCS), createRuleCall(_EssentialOCL.PR_TupleTypeCS), createRuleCall(PR_TypedTypeRefCS), createRuleCall(PR_LambdaTypeCS)));
 			PR_TypedTypeRefCS.setAlternatives(createAlternatives(createGroup(createAssignment("isTypeof", "?=", createKeyword("typeof")), createKeyword("("), createAssignment("ownedPathName", "=", createRuleCall(PR_LibPathNameCS)), createKeyword(")")), createGroup(createAssignment("ownedPathName", "=", createRuleCall(PR_LibPathNameCS)), setCardinality("?", createGroup(createKeyword("("), createAssignment("ownedBinding", "=", createRuleCall(_Base.PR_TemplateBindingCS)), createKeyword(")"))))));
 		}
-		
+
 		private static @NonNull Grammar initGrammar() {
 			initParserRules();
 			Grammar grammar = G_OCLstdlib;
@@ -226,14 +226,14 @@
 			return grammar;
 		}
 	}
-	
+
 	private static class _EssentialOCL
 	{
 		private static final @NonNull ReferencedMetamodel MM = createReferencedMetamodel(org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.eINSTANCE, null); // http://www.eclipse.org/ocl/2015/EssentialOCLCS
 		private static final @NonNull ReferencedMetamodel MM_base = createReferencedMetamodel(org.eclipse.ocl.xtext.basecs.BaseCSPackage.eINSTANCE, "base"); // http://www.eclipse.org/ocl/2015/BaseCS
 		private static final @NonNull ReferencedMetamodel MM_ecore = createReferencedMetamodel(org.eclipse.emf.ecore.EcorePackage.eINSTANCE, "ecore"); // http://www.eclipse.org/emf/2002/Ecore
 		private static final @NonNull ReferencedMetamodel MM_pivot = createReferencedMetamodel(org.eclipse.ocl.pivot.PivotPackage.eINSTANCE, "pivot"); // http://www.eclipse.org/ocl/2015/Pivot
-		
+
 		private static final @NonNull ParserRule PR_BinaryOperatorName = createParserRule("BinaryOperatorName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_BooleanLiteralExpCS = createParserRule("BooleanLiteralExpCS", createTypeRef(MM, org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.Literals.BOOLEAN_LITERAL_EXP_CS));
 		private static final @NonNull ParserRule PR_CollectionLiteralExpCS = createParserRule("CollectionLiteralExpCS", createTypeRef(MM, org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.Literals.COLLECTION_LITERAL_EXP_CS));
@@ -297,7 +297,7 @@
 		private static final @NonNull ParserRule PR_UnlimitedNaturalLiteralExpCS = createParserRule("UnlimitedNaturalLiteralExpCS", createTypeRef(MM, org.eclipse.ocl.xtext.essentialoclcs.EssentialOCLCSPackage.Literals.UNLIMITED_NATURAL_LITERAL_EXP_CS));
 		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_UnrestrictedName = createParserRule("UnrestrictedName", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initParserRules() {
 			PR_BinaryOperatorName.setAlternatives(createAlternatives(createRuleCall(PR_InfixOperatorName), createRuleCall(PR_NavigationOperatorName)));
 			PR_BooleanLiteralExpCS.setAlternatives(createAlternatives(createAssignment("symbol", "=", createKeyword("true")), createAssignment("symbol", "=", createKeyword("false"))));
@@ -363,7 +363,7 @@
 			PR_UnreservedName.setAlternatives(createRuleCall(PR_EssentialOCLUnreservedName));
 			PR_UnrestrictedName.setAlternatives(createRuleCall(PR_EssentialOCLUnrestrictedName));
 		}
-		
+
 		private static @NonNull Grammar initGrammar() {
 			initParserRules();
 			Grammar grammar = G_EssentialOCL;
@@ -447,13 +447,13 @@
 			return grammar;
 		}
 	}
-	
+
 	private static class _Base
 	{
 		private static final @NonNull ReferencedMetamodel MM = createReferencedMetamodel(org.eclipse.ocl.xtext.basecs.BaseCSPackage.eINSTANCE, null); // http://www.eclipse.org/ocl/2015/BaseCS
 		private static final @NonNull ReferencedMetamodel MM_ecore = createReferencedMetamodel(org.eclipse.emf.ecore.EcorePackage.eINSTANCE, "ecore"); // http://www.eclipse.org/emf/2002/Ecore
 		private static final @NonNull ReferencedMetamodel MM_pivot = createReferencedMetamodel(org.eclipse.ocl.pivot.PivotPackage.eINSTANCE, "pivot"); // http://www.eclipse.org/ocl/2015/Pivot
-		
+
 		private static final @NonNull TerminalRule TR_ANY_OTHER = createTerminalRule("ANY_OTHER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_DOUBLE_QUOTED_STRING = createTerminalRule("DOUBLE_QUOTED_STRING", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_ESCAPED_CHARACTER = createTerminalRule("ESCAPED_CHARACTER", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
@@ -466,7 +466,7 @@
 		private static final @NonNull TerminalRule TR_SINGLE_QUOTED_STRING = createTerminalRule("SINGLE_QUOTED_STRING", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_SL_COMMENT = createTerminalRule("SL_COMMENT", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull TerminalRule TR_WS = createTerminalRule("WS", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
-		
+
 		private static void initTerminalRules() {
 			TR_ANY_OTHER.setAlternatives(createWildcard());
 			TR_DOUBLE_QUOTED_STRING.setAlternatives(createGroup(createKeyword("\""), setCardinality("*", createAlternatives(createRuleCall(TR_ESCAPED_CHARACTER), createNegatedToken(createAlternatives(createKeyword("\\"), createKeyword("\""))))), createKeyword("\"")));
@@ -483,7 +483,7 @@
 			TR_SL_COMMENT.setAlternatives(createGroup(createKeyword("--"), setCardinality("*", createNegatedToken(createAlternatives(createKeyword("\n"), createKeyword("\r")))), setCardinality("?", createGroup(setCardinality("?", createKeyword("\r")), createKeyword("\n")))));
 			TR_WS.setAlternatives(setCardinality("+", createAlternatives(createKeyword(" "), createKeyword("\t"), createKeyword("\r"), createKeyword("\n"))));
 		}
-		
+
 		private static final @NonNull ParserRule PR_FirstPathElementCS = createParserRule("FirstPathElementCS", createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.PATH_ELEMENT_CS));
 		private static final @NonNull ParserRule PR_ID = createParserRule("ID", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
 		private static final @NonNull ParserRule PR_Identifier = createParserRule("Identifier", createTypeRef(MM_ecore, org.eclipse.emf.ecore.EcorePackage.Literals.ESTRING));
@@ -507,7 +507,7 @@
 		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_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));
-		
+
 		private static void initParserRules() {
 			PR_FirstPathElementCS.setAlternatives(createAssignment("referredElement", "=", createCrossReference(createTypeRef(MM_pivot, org.eclipse.ocl.pivot.PivotPackage.Literals.NAMED_ELEMENT), createRuleCall(_EssentialOCL.PR_UnrestrictedName))));
 			PR_ID.setAlternatives(createAlternatives(createRuleCall(TR_SIMPLE_ID), createRuleCall(TR_ESCAPED_ID)));
@@ -533,7 +533,7 @@
 			PR_UnrestrictedName.setAlternatives(createRuleCall(_OCLstdlib.PR_Identifier));
 			PR_WildcardTypeRefCS.setAlternatives(createGroup(createAction(null, null, createTypeRef(MM, org.eclipse.ocl.xtext.basecs.BaseCSPackage.Literals.WILDCARD_TYPE_REF_CS)), createKeyword("?"), setCardinality("?", createGroup(createKeyword("extends"), createAssignment("ownedExtends", "=", createRuleCall(_OCLstdlib.PR_TypedRefCS))))));
 		}
-		
+
 		private static @NonNull Grammar initGrammar() {
 			initTerminalRules();
 			initParserRules();
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/OCLstdlibStandaloneSetupGenerated.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/OCLstdlibStandaloneSetupGenerated.java
index d253a6f..f5008e6 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/OCLstdlibStandaloneSetupGenerated.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/OCLstdlibStandaloneSetupGenerated.java
@@ -31,18 +31,18 @@
 		register(injector);
 		return injector;
 	}
-	
+
 	public Injector createInjector() {
 		return Guice.createInjector(new org.eclipse.ocl.xtext.oclstdlib.OCLstdlibRuntimeModule());
 	}
-	
+
 	public void register(Injector injector) {
 
 		org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class);
 		org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class);
 		Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("oclstdlib", resourceFactory);
 		org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("oclstdlib", serviceProvider);
-		
+
 
 
 
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/OCLstdlibAntlrTokenFileProvider.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/OCLstdlibAntlrTokenFileProvider.java
index f0d1af7..089e960 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/OCLstdlibAntlrTokenFileProvider.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/OCLstdlibAntlrTokenFileProvider.java
@@ -14,7 +14,7 @@
 import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider;
 
 public class OCLstdlibAntlrTokenFileProvider implements IAntlrTokenFileProvider {
-	
+
 	@Override
 	public InputStream getAntlrTokenFile() {
 		ClassLoader classLoader = getClass().getClassLoader();
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/OCLstdlibParser.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/OCLstdlibParser.java
index 59ed52b..f2c0598 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/OCLstdlibParser.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/parser/antlr/OCLstdlibParser.java
@@ -16,31 +16,31 @@
 import org.eclipse.ocl.xtext.oclstdlib.services.OCLstdlibGrammarAccess;
 
 public class OCLstdlibParser extends org.eclipse.xtext.parser.antlr.AbstractAntlrParser {
-	
+
 	@Inject
 	private OCLstdlibGrammarAccess grammarAccess;
-	
+
 	@Override
 	protected void setInitialHiddenTokens(XtextTokenStream tokenStream) {
 		tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT");
 	}
-	
+
 	@Override
 	protected org.eclipse.ocl.xtext.oclstdlib.parser.antlr.internal.InternalOCLstdlibParser createParser(XtextTokenStream stream) {
 		return new org.eclipse.ocl.xtext.oclstdlib.parser.antlr.internal.InternalOCLstdlibParser(stream, getGrammarAccess());
 	}
-	
-	@Override 
+
+	@Override
 	protected String getDefaultRuleName() {
 		return "Library";
 	}
-	
+
 	public OCLstdlibGrammarAccess getGrammarAccess() {
 		return this.grammarAccess;
 	}
-	
+
 	public void setGrammarAccess(OCLstdlibGrammarAccess grammarAccess) {
 		this.grammarAccess = grammarAccess;
 	}
-	
+
 }
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 1c0b38c..ed81eab 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
@@ -13,19 +13,19 @@
 options {
 	superClass=AbstractInternalAntlrParser;
 	backtrack=true;
-	
+
 }
 
 @lexer::header {
 package org.eclipse.ocl.xtext.oclstdlib.parser.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.parser.antlr.Lexer;
 }
 
 @parser::header {
-package org.eclipse.ocl.xtext.oclstdlib.parser.antlr.internal; 
+package org.eclipse.ocl.xtext.oclstdlib.parser.antlr.internal;
 
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
@@ -46,85 +46,85 @@
   This grammar contains a lot of empty actions to work around a bug in ANTLR.
   Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases.
 */
- 
+
  	private OCLstdlibGrammarAccess grammarAccess;
- 	
+
     public InternalOCLstdlibParser(TokenStream input, OCLstdlibGrammarAccess grammarAccess) {
         this(input);
         this.grammarAccess = grammarAccess;
         registerRules(grammarAccess.getGrammar());
     }
-    
+
     @Override
     protected String getFirstRuleName() {
-    	return "Library";	
+    	return "Library";
    	}
-   	
+
    	@Override
    	protected OCLstdlibGrammarAccess getGrammarAccess() {
    		return grammarAccess;
    	}
 }
 
-@rulecatch { 
-    catch (RecognitionException re) { 
-        recover(input,re); 
+@rulecatch {
+    catch (RecognitionException re) {
+        recover(input,re);
         appendSkippedTokens();
-    } 
+    }
 }
 
 
 
 
 // Entry rule entryRuleLibrary
-entryRuleLibrary returns [EObject current=null] 
+entryRuleLibrary returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLibraryRule()); }
-	 iv_ruleLibrary=ruleLibrary 
-	 { $current=$iv_ruleLibrary.current; } 
-	 EOF 
+	 iv_ruleLibrary=ruleLibrary
+	 { $current=$iv_ruleLibrary.current; }
+	 EOF
 ;
 
 // Rule Library
-ruleLibrary returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLibrary returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibraryAccess().getOwnedImportsImportCSParserRuleCall_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibraryAccess().getOwnedImportsImportCSParserRuleCall_0_0_0());
 	    }
 		lv_ownedImports_0_0=ruleImportCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibraryRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedImports",
-        		lv_ownedImports_0_0, 
+        		lv_ownedImports_0_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ImportCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1=';' 
+)	otherlv_1=';'
     {
     	newLeafNode(otherlv_1, grammarAccess.getLibraryAccess().getSemicolonKeyword_0_1());
     }
 )*(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibraryAccess().getOwnedPackagesLibPackageCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibraryAccess().getOwnedPackagesLibPackageCSParserRuleCall_1_0());
 	    }
 		lv_ownedPackages_2_0=ruleLibPackageCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibraryRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPackages",
-        		lv_ownedPackages_2_0, 
+        		lv_ownedPackages_2_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPackageCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -138,40 +138,40 @@
 
 
 // Entry rule entryRuleIdentifier
-entryRuleIdentifier returns [String current=null] 
+entryRuleIdentifier returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getIdentifierRule()); } 
-	 iv_ruleIdentifier=ruleIdentifier 
-	 { $current=$iv_ruleIdentifier.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getIdentifierRule()); }
+	 iv_ruleIdentifier=ruleIdentifier
+	 { $current=$iv_ruleIdentifier.current.getText(); }
+	 EOF
 ;
 
 // Rule Identifier
-ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall_0());
     }
     this_ID_0=ruleID    {
 		$current.merge(this_ID_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getIdentifierAccess().getRestrictedKeywordsParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getIdentifierAccess().getRestrictedKeywordsParserRuleCall_1());
     }
     this_RestrictedKeywords_1=ruleRestrictedKeywords    {
 		$current.merge(this_RestrictedKeywords_1);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 )
@@ -182,164 +182,164 @@
 
 
 // Entry rule entryRuleRestrictedKeywords
-entryRuleRestrictedKeywords returns [String current=null] 
+entryRuleRestrictedKeywords returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getRestrictedKeywordsRule()); } 
-	 iv_ruleRestrictedKeywords=ruleRestrictedKeywords 
-	 { $current=$iv_ruleRestrictedKeywords.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getRestrictedKeywordsRule()); }
+	 iv_ruleRestrictedKeywords=ruleRestrictedKeywords
+	 { $current=$iv_ruleRestrictedKeywords.current.getText(); }
+	 EOF
 ;
 
 // Rule RestrictedKeywords
-ruleRestrictedKeywords returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleRestrictedKeywords returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='abstract' 
+	kw='abstract'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getAbstractKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getAbstractKeyword_0());
     }
 
     |
-	kw='annotation' 
+	kw='annotation'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getAnnotationKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getAnnotationKeyword_1());
     }
 
     |
-	kw='conformsTo' 
+	kw='conformsTo'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getConformsToKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getConformsToKeyword_2());
     }
 
     |
-	kw='documentation' 
+	kw='documentation'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getDocumentationKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getDocumentationKeyword_3());
     }
 
     |
-	kw='extends' 
+	kw='extends'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getExtendsKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getExtendsKeyword_4());
     }
 
     |
-	kw='import' 
+	kw='import'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getImportKeyword_5()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getImportKeyword_5());
     }
 
     |
-	kw='inv' 
+	kw='inv'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getInvKeyword_6()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getInvKeyword_6());
     }
 
     |
-	kw='invalidating' 
+	kw='invalidating'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getInvalidatingKeyword_7()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getInvalidatingKeyword_7());
     }
 
     |
-	kw='iteration' 
+	kw='iteration'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getIterationKeyword_8()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getIterationKeyword_8());
     }
 
     |
-	kw='left' 
+	kw='left'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getLeftKeyword_9()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getLeftKeyword_9());
     }
 
     |
-	kw='library' 
+	kw='library'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getLibraryKeyword_10()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getLibraryKeyword_10());
     }
 
     |
-	kw='operation' 
+	kw='operation'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getOperationKeyword_11()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getOperationKeyword_11());
     }
 
     |
-	kw='package' 
+	kw='package'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPackageKeyword_12()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPackageKeyword_12());
     }
 
     |
-	kw='post' 
+	kw='post'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPostKeyword_13()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPostKeyword_13());
     }
 
     |
-	kw='pre' 
+	kw='pre'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPreKeyword_14()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPreKeyword_14());
     }
 
     |
-	kw='precedence' 
+	kw='precedence'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPrecedenceKeyword_15()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPrecedenceKeyword_15());
     }
 
     |
-	kw='property' 
+	kw='property'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPropertyKeyword_16()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPropertyKeyword_16());
     }
 
     |
-	kw='right' 
+	kw='right'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getRightKeyword_17()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getRightKeyword_17());
     }
 
     |
-	kw='static' 
+	kw='static'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getStaticKeyword_18()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getStaticKeyword_18());
     }
 
     |
-	kw='type' 
+	kw='type'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getTypeKeyword_19()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getTypeKeyword_19());
     }
 
     |
-	kw='validating' 
+	kw='validating'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getValidatingKeyword_20()); 
+        newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getValidatingKeyword_20());
     }
 )
     ;
@@ -349,28 +349,28 @@
 
 
 // Entry rule entryRuleName
-entryRuleName returns [String current=null] 
+entryRuleName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getNameRule()); } 
-	 iv_ruleName=ruleName 
-	 { $current=$iv_ruleName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getNameRule()); }
+	 iv_ruleName=ruleName
+	 { $current=$iv_ruleName.current.getText(); }
+	 EOF
 ;
 
 // Rule Name
-ruleName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getNameAccess().getIdentifierParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getNameAccess().getIdentifierParserRuleCall_0());
     }
     this_Identifier_0=ruleIdentifier    {
 		$current.merge(this_Identifier_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -378,43 +378,43 @@
 		$current.merge(this_DOUBLE_QUOTED_STRING_1);
     }
 
-    { 
-    newLeafNode(this_DOUBLE_QUOTED_STRING_1, grammarAccess.getNameAccess().getDOUBLE_QUOTED_STRINGTerminalRuleCall_1()); 
+    {
+    newLeafNode(this_DOUBLE_QUOTED_STRING_1, grammarAccess.getNameAccess().getDOUBLE_QUOTED_STRINGTerminalRuleCall_1());
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getNameAccess().getEssentialOCLReservedKeywordParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getNameAccess().getEssentialOCLReservedKeywordParserRuleCall_2());
     }
     this_EssentialOCLReservedKeyword_2=ruleEssentialOCLReservedKeyword    {
 		$current.merge(this_EssentialOCLReservedKeyword_2);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getNameAccess().getPrimitiveTypeIdentifierParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getNameAccess().getPrimitiveTypeIdentifierParserRuleCall_3());
     }
     this_PrimitiveTypeIdentifier_3=rulePrimitiveTypeIdentifier    {
 		$current.merge(this_PrimitiveTypeIdentifier_3);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getNameAccess().getCollectionTypeIdentifierParserRuleCall_4()); 
+    {
+        newCompositeNode(grammarAccess.getNameAccess().getCollectionTypeIdentifierParserRuleCall_4());
     }
     this_CollectionTypeIdentifier_4=ruleCollectionTypeIdentifier    {
 		$current.merge(this_CollectionTypeIdentifier_4);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 )
@@ -425,50 +425,50 @@
 
 
 // Entry rule entryRuleAnyName
-entryRuleAnyName returns [String current=null] 
+entryRuleAnyName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getAnyNameRule()); } 
-	 iv_ruleAnyName=ruleAnyName 
-	 { $current=$iv_ruleAnyName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getAnyNameRule()); }
+	 iv_ruleAnyName=ruleAnyName
+	 { $current=$iv_ruleAnyName.current.getText(); }
+	 EOF
 ;
 
 // Rule AnyName
-ruleAnyName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleAnyName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getAnyNameAccess().getNameParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getAnyNameAccess().getNameParserRuleCall_0());
     }
     this_Name_0=ruleName    {
 		$current.merge(this_Name_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-	kw='Lambda' 
+	kw='Lambda'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getAnyNameAccess().getLambdaKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getAnyNameAccess().getLambdaKeyword_1());
     }
 
     |
-	kw='Map' 
+	kw='Map'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getAnyNameAccess().getMapKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getAnyNameAccess().getMapKeyword_2());
     }
 
     |
-	kw='Tuple' 
+	kw='Tuple'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getAnyNameAccess().getTupleKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getAnyNameAccess().getTupleKeyword_3());
     }
 )
     ;
@@ -478,54 +478,54 @@
 
 
 // Entry rule entryRuleLibPathNameCS
-entryRuleLibPathNameCS returns [EObject current=null] 
+entryRuleLibPathNameCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLibPathNameCSRule()); }
-	 iv_ruleLibPathNameCS=ruleLibPathNameCS 
-	 { $current=$iv_ruleLibPathNameCS.current; } 
-	 EOF 
+	 iv_ruleLibPathNameCS=ruleLibPathNameCS
+	 { $current=$iv_ruleLibPathNameCS.current; }
+	 EOF
 ;
 
 // Rule LibPathNameCS
-ruleLibPathNameCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLibPathNameCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathElements_0_0=ruleLibPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_0_0, 
+        		lv_ownedPathElements_0_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='::' 
+)(	otherlv_1='::'
     {
     	newLeafNode(otherlv_1, grammarAccess.getLibPathNameCSAccess().getColonColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedPathElements_2_0=ruleLibPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_2_0, 
+        		lv_ownedPathElements_2_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -539,33 +539,33 @@
 
 
 // Entry rule entryRuleLibPathElementCS
-entryRuleLibPathElementCS returns [EObject current=null] 
+entryRuleLibPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLibPathElementCSRule()); }
-	 iv_ruleLibPathElementCS=ruleLibPathElementCS 
-	 { $current=$iv_ruleLibPathElementCS.current; } 
-	 EOF 
+	 iv_ruleLibPathElementCS=ruleLibPathElementCS
+	 { $current=$iv_ruleLibPathElementCS.current; }
+	 EOF
 ;
 
 // Rule LibPathElementCS
-ruleLibPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLibPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getLibPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
 	    }
-		ruleName		{ 
+		ruleName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -578,54 +578,54 @@
 
 
 // Entry rule entryRuleAccumulatorCS
-entryRuleAccumulatorCS returns [EObject current=null] 
+entryRuleAccumulatorCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getAccumulatorCSRule()); }
-	 iv_ruleAccumulatorCS=ruleAccumulatorCS 
-	 { $current=$iv_ruleAccumulatorCS.current; } 
-	 EOF 
+	 iv_ruleAccumulatorCS=ruleAccumulatorCS
+	 { $current=$iv_ruleAccumulatorCS.current; }
+	 EOF
 ;
 
 // Rule AccumulatorCS
-ruleAccumulatorCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleAccumulatorCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAccumulatorCSAccess().getNameIdentifierParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAccumulatorCSAccess().getNameIdentifierParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAccumulatorCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1=':' 
+)	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getAccumulatorCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAccumulatorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAccumulatorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
 	    }
 		lv_ownedType_2_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAccumulatorCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -639,135 +639,135 @@
 
 
 // Entry rule entryRuleAnnotationCS
-entryRuleAnnotationCS returns [EObject current=null] 
+entryRuleAnnotationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getAnnotationCSRule()); }
-	 iv_ruleAnnotationCS=ruleAnnotationCS 
-	 { $current=$iv_ruleAnnotationCS.current; } 
-	 EOF 
+	 iv_ruleAnnotationCS=ruleAnnotationCS
+	 { $current=$iv_ruleAnnotationCS.current; }
+	 EOF
 ;
 
 // Rule AnnotationCS
-ruleAnnotationCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleAnnotationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='annotation' 
+(	otherlv_0='annotation'
     {
     	newLeafNode(otherlv_0, grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_0());
     }
 (
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getNameIdentifierParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getNameIdentifierParserRuleCall_1_0_0());
 	    }
 		lv_name_1_1=ruleIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_1, 
+        		lv_name_1_1,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
     |		lv_name_1_2=RULE_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_name_1_2, grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_1_0_1()); 
+			newLeafNode(lv_name_1_2, grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_1_0_1());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getAnnotationCSRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_2, 
+        		lv_name_1_2,
         		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
 	    }
 
 )
 
 )
-)(	otherlv_2='(' 
+)(	otherlv_2='('
     {
     	newLeafNode(otherlv_2, grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedDetails_3_0=ruleDetailCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDetails",
-        		lv_ownedDetails_3_0, 
+        		lv_ownedDetails_3_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.DetailCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_4=',' 
+)(	otherlv_4=','
     {
     	newLeafNode(otherlv_4, grammarAccess.getAnnotationCSAccess().getCommaKeyword_2_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_2_1_0());
 	    }
 		lv_ownedDetails_5_0=ruleDetailCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDetails",
-        		lv_ownedDetails_5_0, 
+        		lv_ownedDetails_5_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.DetailCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_6=')' 
+))*	otherlv_6=')'
     {
     	newLeafNode(otherlv_6, grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_2_3());
     }
-)?((	otherlv_7='{' 
+)?((	otherlv_7='{'
     {
     	newLeafNode(otherlv_7, grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_3_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_0_1_0());
 	    }
 		lv_ownedAnnotations_8_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_8_0, 
+        		lv_ownedAnnotations_8_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_9='}' 
+)	otherlv_9='}'
     {
     	newLeafNode(otherlv_9, grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_3_0_2());
     }
 )
-    |	otherlv_10=';' 
+    |	otherlv_10=';'
     {
     	newLeafNode(otherlv_10, grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_3_1());
     }
@@ -779,42 +779,42 @@
 
 
 // Entry rule entryRuleAnnotationElementCS
-entryRuleAnnotationElementCS returns [EObject current=null] 
+entryRuleAnnotationElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getAnnotationElementCSRule()); }
-	 iv_ruleAnnotationElementCS=ruleAnnotationElementCS 
-	 { $current=$iv_ruleAnnotationElementCS.current; } 
-	 EOF 
+	 iv_ruleAnnotationElementCS=ruleAnnotationElementCS
+	 { $current=$iv_ruleAnnotationElementCS.current; }
+	 EOF
 ;
 
 // Rule AnnotationElementCS
-ruleAnnotationElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleAnnotationElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0());
     }
     this_AnnotationCS_0=ruleAnnotationCS
-    { 
-        $current = $this_AnnotationCS_0.current; 
+    {
+        $current = $this_AnnotationCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1());
     }
     this_DocumentationCS_1=ruleDocumentationCS
-    { 
-        $current = $this_DocumentationCS_1.current; 
+    {
+        $current = $this_DocumentationCS_1.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -825,26 +825,26 @@
 
 
 // Entry rule entryRuleLibClassCS
-entryRuleLibClassCS returns [EObject current=null] 
+entryRuleLibClassCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLibClassCSRule()); }
-	 iv_ruleLibClassCS=ruleLibClassCS 
-	 { $current=$iv_ruleLibClassCS.current; } 
-	 EOF 
+	 iv_ruleLibClassCS=ruleLibClassCS
+	 { $current=$iv_ruleLibClassCS.current; }
+	 EOF
 ;
 
 // Rule LibClassCS
-ruleLibClassCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLibClassCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_isAbstract_0_0=	'abstract' 
+		lv_isAbstract_0_0=	'abstract'
     {
         newLeafNode(lv_isAbstract_0_0, grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getLibClassCSRule());
@@ -853,23 +853,23 @@
 	    }
 
 )
-)?	otherlv_1='type' 
+)?	otherlv_1='type'
     {
     	newLeafNode(otherlv_1, grammarAccess.getLibClassCSAccess().getTypeKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibClassCSAccess().getNameAnyNameParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibClassCSAccess().getNameAnyNameParserRuleCall_2_0());
 	    }
 		lv_name_2_0=ruleAnyName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibClassCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_0, 
+        		lv_name_2_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnyName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -877,105 +877,105 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
 	    }
 		lv_ownedSignature_3_0=ruleTemplateSignatureCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibClassCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSignature",
-        		lv_ownedSignature_3_0, 
+        		lv_ownedSignature_3_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateSignatureCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?(	otherlv_4=':' 
+)?(	otherlv_4=':'
     {
     	newLeafNode(otherlv_4, grammarAccess.getLibClassCSAccess().getColonKeyword_4_0());
     }
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getLibClassCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSCrossReference_4_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSCrossReference_4_1_0());
 	    }
-		ruleAnyName		{ 
+		ruleAnyName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?(	otherlv_6='conformsTo' 
+))?(	otherlv_6='conformsTo'
     {
     	newLeafNode(otherlv_6, grammarAccess.getLibClassCSAccess().getConformsToKeyword_5_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_1_0());
 	    }
 		lv_ownedSuperTypes_7_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibClassCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSuperTypes",
-        		lv_ownedSuperTypes_7_0, 
+        		lv_ownedSuperTypes_7_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_8=',' 
+)(	otherlv_8=','
     {
     	newLeafNode(otherlv_8, grammarAccess.getLibClassCSAccess().getCommaKeyword_5_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_2_1_0());
 	    }
 		lv_ownedSuperTypes_9_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibClassCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSuperTypes",
-        		lv_ownedSuperTypes_9_0, 
+        		lv_ownedSuperTypes_9_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_10='{' 
+))*)?	otherlv_10='{'
     {
     	newLeafNode(otherlv_10, grammarAccess.getLibClassCSAccess().getLeftCurlyBracketKeyword_6());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_0());
 	    }
 		lv_ownedOperations_11_0=ruleOperationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibClassCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedOperations",
-        		lv_ownedOperations_11_0, 
+        		lv_ownedOperations_11_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.OperationCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -984,17 +984,17 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedPropertiesLibPropertyCSParserRuleCall_7_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedPropertiesLibPropertyCSParserRuleCall_7_1_0());
 	    }
 		lv_ownedProperties_12_0=ruleLibPropertyCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibClassCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedProperties",
-        		lv_ownedProperties_12_0, 
+        		lv_ownedProperties_12_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPropertyCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1003,17 +1003,17 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedConstraintsInvCSParserRuleCall_7_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedConstraintsInvCSParserRuleCall_7_2_0());
 	    }
 		lv_ownedConstraints_13_0=ruleInvCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibClassCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedConstraints",
-        		lv_ownedConstraints_13_0, 
+        		lv_ownedConstraints_13_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.InvCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1022,23 +1022,23 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_3_0());
 	    }
 		lv_ownedAnnotations_14_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibClassCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_14_0, 
+        		lv_ownedAnnotations_14_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_15='}' 
+))*	otherlv_15='}'
     {
     	newLeafNode(otherlv_15, grammarAccess.getLibClassCSAccess().getRightCurlyBracketKeyword_8());
     }
@@ -1050,29 +1050,29 @@
 
 
 // Entry rule entryRuleClassCS
-entryRuleClassCS returns [EObject current=null] 
+entryRuleClassCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getClassCSRule()); }
-	 iv_ruleClassCS=ruleClassCS 
-	 { $current=$iv_ruleClassCS.current; } 
-	 EOF 
+	 iv_ruleClassCS=ruleClassCS
+	 { $current=$iv_ruleClassCS.current; }
+	 EOF
 ;
 
 // Rule ClassCS
-ruleClassCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleClassCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getClassCSAccess().getLibClassCSParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getClassCSAccess().getLibClassCSParserRuleCall());
     }
     this_LibClassCS_0=ruleLibClassCS
-    { 
-        $current = $this_LibClassCS_0.current; 
+    {
+        $current = $this_LibClassCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
@@ -1083,56 +1083,56 @@
 
 
 // Entry rule entryRuleDetailCS
-entryRuleDetailCS returns [EObject current=null] 
+entryRuleDetailCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getDetailCSRule()); }
-	 iv_ruleDetailCS=ruleDetailCS 
-	 { $current=$iv_ruleDetailCS.current; } 
-	 EOF 
+	 iv_ruleDetailCS=ruleDetailCS
+	 { $current=$iv_ruleDetailCS.current; }
+	 EOF
 ;
 
 // Rule DetailCS
-ruleDetailCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleDetailCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDetailCSAccess().getNameNameParserRuleCall_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDetailCSAccess().getNameNameParserRuleCall_0_0_0());
 	    }
 		lv_name_0_1=ruleName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDetailCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_1, 
+        		lv_name_0_1,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
 	        afterParserOrEnumRuleCall();
 	    }
 
     |		lv_name_0_2=RULE_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_name_0_2, grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1()); 
+			newLeafNode(lv_name_0_2, grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getDetailCSRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_2, 
+        		lv_name_0_2,
         		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
 	    }
 
 )
 
 )
-)	otherlv_1='=' 
+)	otherlv_1='='
     {
     	newLeafNode(otherlv_1, grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1());
     }
@@ -1141,31 +1141,31 @@
 (
 		lv_values_2_1=RULE_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_values_2_1, grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0()); 
+			newLeafNode(lv_values_2_1, grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getDetailCSRule());
 	        }
        		addWithLastConsumed(
-       			$current, 
+       			$current,
        			"values",
-        		lv_values_2_1, 
+        		lv_values_2_1,
         		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
 	    }
 
     |		lv_values_2_2=RULE_ML_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_values_2_2, grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); 
+			newLeafNode(lv_values_2_2, grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getDetailCSRule());
 	        }
        		addWithLastConsumed(
-       			$current, 
+       			$current,
        			"values",
-        		lv_values_2_2, 
+        		lv_values_2_2,
         		"org.eclipse.ocl.xtext.base.Base.ML_SINGLE_QUOTED_STRING");
 	    }
 
@@ -1180,29 +1180,29 @@
 
 
 // Entry rule entryRuleDocumentationCS
-entryRuleDocumentationCS returns [EObject current=null] 
+entryRuleDocumentationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getDocumentationCSRule()); }
-	 iv_ruleDocumentationCS=ruleDocumentationCS 
-	 { $current=$iv_ruleDocumentationCS.current; } 
-	 EOF 
+	 iv_ruleDocumentationCS=ruleDocumentationCS
+	 { $current=$iv_ruleDocumentationCS.current; }
+	 EOF
 ;
 
 // Rule DocumentationCS
-ruleDocumentationCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleDocumentationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0(),
             $current);
     }
-)	otherlv_1='documentation' 
+)	otherlv_1='documentation'
     {
     	newLeafNode(otherlv_1, grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1());
     }
@@ -1210,69 +1210,69 @@
 (
 		lv_value_2_0=RULE_SINGLE_QUOTED_STRING
 		{
-			newLeafNode(lv_value_2_0, grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0()); 
+			newLeafNode(lv_value_2_0, grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0());
 		}
 		{
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getDocumentationCSRule());
 	        }
        		setWithLastConsumed(
-       			$current, 
+       			$current,
        			"value",
-        		lv_value_2_0, 
+        		lv_value_2_0,
         		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
 	    }
 
 )
-)?(	otherlv_3='(' 
+)?(	otherlv_3='('
     {
     	newLeafNode(otherlv_3, grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
 	    }
 		lv_ownedDetails_4_0=ruleDetailCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDocumentationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDetails",
-        		lv_ownedDetails_4_0, 
+        		lv_ownedDetails_4_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.DetailCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_5=',' 
+)(	otherlv_5=','
     {
     	newLeafNode(otherlv_5, grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
 	    }
 		lv_ownedDetails_6_0=ruleDetailCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getDocumentationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedDetails",
-        		lv_ownedDetails_6_0, 
+        		lv_ownedDetails_6_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.DetailCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_7=')' 
+))*	otherlv_7=')'
     {
     	newLeafNode(otherlv_7, grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3());
     }
-)?	otherlv_8=';' 
+)?	otherlv_8=';'
     {
     	newLeafNode(otherlv_8, grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4());
     }
@@ -1284,58 +1284,58 @@
 
 
 // Entry rule entryRuleImportCS
-entryRuleImportCS returns [EObject current=null] 
+entryRuleImportCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getImportCSRule()); }
-	 iv_ruleImportCS=ruleImportCS 
-	 { $current=$iv_ruleImportCS.current; } 
-	 EOF 
+	 iv_ruleImportCS=ruleImportCS
+	 { $current=$iv_ruleImportCS.current; }
+	 EOF
 ;
 
 // Rule ImportCS
-ruleImportCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleImportCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='import' 
+(	otherlv_0='import'
     {
     	newLeafNode(otherlv_0, grammarAccess.getImportCSAccess().getImportKeyword_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0());
 	    }
 		lv_name_1_0=ruleIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getImportCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_2=':' 
+)	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getImportCSAccess().getColonKeyword_1_1());
     }
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
 	    }
 		lv_ownedPathName_3_0=ruleURIPathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getImportCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_3_0, 
+        		lv_ownedPathName_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIPathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1343,11 +1343,11 @@
 )
 )(
 (
-		lv_isAll_4_0=	'::*' 
+		lv_isAll_4_0=	'::*'
     {
         newLeafNode(lv_isAll_4_0, grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getImportCSRule());
@@ -1364,26 +1364,26 @@
 
 
 // Entry rule entryRuleInvCS
-entryRuleInvCS returns [EObject current=null] 
+entryRuleInvCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getInvCSRule()); }
-	 iv_ruleInvCS=ruleInvCS 
-	 { $current=$iv_ruleInvCS.current; } 
-	 EOF 
+	 iv_ruleInvCS=ruleInvCS
+	 { $current=$iv_ruleInvCS.current; }
+	 EOF
 ;
 
 // Rule InvCS
-ruleInvCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleInvCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_stereotype_0_0=	'inv' 
+		lv_stereotype_0_0=	'inv'
     {
         newLeafNode(lv_stereotype_0_0, grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getInvCSRule());
@@ -1394,71 +1394,71 @@
 )
 )((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getInvCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getInvCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
 	    }
 		lv_name_1_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getInvCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2='(' 
+)(	otherlv_2='('
     {
     	newLeafNode(otherlv_2, grammarAccess.getInvCSAccess().getLeftParenthesisKeyword_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
 	    }
 		lv_ownedMessageSpecification_3_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getInvCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMessageSpecification",
-        		lv_ownedMessageSpecification_3_0, 
+        		lv_ownedMessageSpecification_3_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_4=')' 
+)	otherlv_4=')'
     {
     	newLeafNode(otherlv_4, grammarAccess.getInvCSAccess().getRightParenthesisKeyword_1_1_2());
     }
-)?)?	otherlv_5=':' 
+)?)?	otherlv_5=':'
     {
     	newLeafNode(otherlv_5, grammarAccess.getInvCSAccess().getColonKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getInvCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getInvCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
 	    }
 		lv_ownedSpecification_6_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getInvCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSpecification",
-        		lv_ownedSpecification_6_0, 
+        		lv_ownedSpecification_6_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_7=';' 
+)	otherlv_7=';'
     {
     	newLeafNode(otherlv_7, grammarAccess.getInvCSAccess().getSemicolonKeyword_4());
     }
@@ -1470,79 +1470,79 @@
 
 
 // Entry rule entryRuleLibCoercionCS
-entryRuleLibCoercionCS returns [EObject current=null] 
+entryRuleLibCoercionCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLibCoercionCSRule()); }
-	 iv_ruleLibCoercionCS=ruleLibCoercionCS 
-	 { $current=$iv_ruleLibCoercionCS.current; } 
-	 EOF 
+	 iv_ruleLibCoercionCS=ruleLibCoercionCS
+	 { $current=$iv_ruleLibCoercionCS.current; }
+	 EOF
 ;
 
 // Rule LibCoercionCS
-ruleLibCoercionCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLibCoercionCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='coercion' 
+(	otherlv_0='coercion'
     {
     	newLeafNode(otherlv_0, grammarAccess.getLibCoercionCSAccess().getCoercionKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getNameNameParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getNameNameParserRuleCall_1_0());
 	    }
 		lv_name_1_0=ruleName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibCoercionCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_2='(' 
+)	otherlv_2='('
     {
     	newLeafNode(otherlv_2, grammarAccess.getLibCoercionCSAccess().getLeftParenthesisKeyword_2());
     }
-	otherlv_3=')' 
+	otherlv_3=')'
     {
     	newLeafNode(otherlv_3, grammarAccess.getLibCoercionCSAccess().getRightParenthesisKeyword_3());
     }
-	otherlv_4=':' 
+	otherlv_4=':'
     {
     	newLeafNode(otherlv_4, grammarAccess.getLibCoercionCSAccess().getColonKeyword_4());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_5_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_5_0());
 	    }
 		lv_ownedType_5_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibCoercionCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_5_0, 
+        		lv_ownedType_5_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_6='=>' 
+)(	otherlv_6='=>'
     {
     	newLeafNode(otherlv_6, grammarAccess.getLibCoercionCSAccess().getEqualsSignGreaterThanSignKeyword_6_0());
     }
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
@@ -1551,27 +1551,27 @@
         }
 	otherlv_7=RULE_SINGLE_QUOTED_STRING
 	{
-		newLeafNode(otherlv_7, grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSCrossReference_6_1_0()); 
+		newLeafNode(otherlv_7, grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSCrossReference_6_1_0());
 	}
 
 )
-))?((	otherlv_8='{' 
+))?((	otherlv_8='{'
     {
     	newLeafNode(otherlv_8, grammarAccess.getLibCoercionCSAccess().getLeftCurlyBracketKeyword_7_0_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
 	    }
 		lv_ownedAnnotations_9_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibCoercionCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_9_0, 
+        		lv_ownedAnnotations_9_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1580,17 +1580,17 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsPostCSParserRuleCall_7_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsPostCSParserRuleCall_7_0_1_1_0());
 	    }
 		lv_ownedPreconditions_10_0=rulePostCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibCoercionCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPreconditions",
-        		lv_ownedPreconditions_10_0, 
+        		lv_ownedPreconditions_10_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PostCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1599,28 +1599,28 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsPreCSParserRuleCall_7_0_1_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsPreCSParserRuleCall_7_0_1_2_0());
 	    }
 		lv_ownedPostconditions_11_0=rulePreCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibCoercionCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPostconditions",
-        		lv_ownedPostconditions_11_0, 
+        		lv_ownedPostconditions_11_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PreCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_12='}' 
+))*	otherlv_12='}'
     {
     	newLeafNode(otherlv_12, grammarAccess.getLibCoercionCSAccess().getRightCurlyBracketKeyword_7_0_2());
     }
 )
-    |	otherlv_13=';' 
+    |	otherlv_13=';'
     {
     	newLeafNode(otherlv_13, grammarAccess.getLibCoercionCSAccess().getSemicolonKeyword_7_1());
     }
@@ -1632,36 +1632,36 @@
 
 
 // Entry rule entryRuleLibIterationCS
-entryRuleLibIterationCS returns [EObject current=null] 
+entryRuleLibIterationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLibIterationCSRule()); }
-	 iv_ruleLibIterationCS=ruleLibIterationCS 
-	 { $current=$iv_ruleLibIterationCS.current; } 
-	 EOF 
+	 iv_ruleLibIterationCS=ruleLibIterationCS
+	 { $current=$iv_ruleLibIterationCS.current; }
+	 EOF
 ;
 
 // Rule LibIterationCS
-ruleLibIterationCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLibIterationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='iteration' 
+(	otherlv_0='iteration'
     {
     	newLeafNode(otherlv_0, grammarAccess.getLibIterationCSAccess().getIterationKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getNameNameParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getNameNameParserRuleCall_1_0());
 	    }
 		lv_name_1_0=ruleName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1669,175 +1669,175 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
 	    }
 		lv_ownedSignature_2_0=ruleTemplateSignatureCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSignature",
-        		lv_ownedSignature_2_0, 
+        		lv_ownedSignature_2_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateSignatureCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_3='(' 
+)?	otherlv_3='('
     {
     	newLeafNode(otherlv_3, grammarAccess.getLibIterationCSAccess().getLeftParenthesisKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_4_0());
 	    }
 		lv_ownedIterators_4_0=ruleIteratorCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedIterators",
-        		lv_ownedIterators_4_0, 
+        		lv_ownedIterators_4_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.IteratorCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_5=',' 
+)(	otherlv_5=','
     {
     	newLeafNode(otherlv_5, grammarAccess.getLibIterationCSAccess().getCommaKeyword_5_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_5_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_5_1_0());
 	    }
 		lv_ownedIterators_6_0=ruleIteratorCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedIterators",
-        		lv_ownedIterators_6_0, 
+        		lv_ownedIterators_6_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.IteratorCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*(	otherlv_7=';' 
+))*(	otherlv_7=';'
     {
     	newLeafNode(otherlv_7, grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_6_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_1_0());
 	    }
 		lv_ownedAccumulators_8_0=ruleAccumulatorCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAccumulators",
-        		lv_ownedAccumulators_8_0, 
+        		lv_ownedAccumulators_8_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AccumulatorCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_9=',' 
+)(	otherlv_9=','
     {
     	newLeafNode(otherlv_9, grammarAccess.getLibIterationCSAccess().getCommaKeyword_6_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_2_1_0());
 	    }
 		lv_ownedAccumulators_10_0=ruleAccumulatorCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAccumulators",
-        		lv_ownedAccumulators_10_0, 
+        		lv_ownedAccumulators_10_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AccumulatorCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?(	otherlv_11='|' 
+))*)?(	otherlv_11='|'
     {
     	newLeafNode(otherlv_11, grammarAccess.getLibIterationCSAccess().getVerticalLineKeyword_7_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_1_0());
 	    }
 		lv_ownedParameters_12_0=ruleParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_12_0, 
+        		lv_ownedParameters_12_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_13=',' 
+)(	otherlv_13=','
     {
     	newLeafNode(otherlv_13, grammarAccess.getLibIterationCSAccess().getCommaKeyword_7_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_2_1_0());
 	    }
 		lv_ownedParameters_14_0=ruleParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_14_0, 
+        		lv_ownedParameters_14_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_15=')' 
+))*)?	otherlv_15=')'
     {
     	newLeafNode(otherlv_15, grammarAccess.getLibIterationCSAccess().getRightParenthesisKeyword_8());
     }
-	otherlv_16=':' 
+	otherlv_16=':'
     {
     	newLeafNode(otherlv_16, grammarAccess.getLibIterationCSAccess().getColonKeyword_9());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_10_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_10_0());
 	    }
 		lv_ownedType_17_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_17_0, 
+        		lv_ownedType_17_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1845,11 +1845,11 @@
 )
 )(
 (
-		lv_isInvalidating_18_0=	'invalidating' 
+		lv_isInvalidating_18_0=	'invalidating'
     {
         newLeafNode(lv_isInvalidating_18_0, grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getLibIterationCSRule());
@@ -1860,11 +1860,11 @@
 )
 )?(
 (
-		lv_isValidating_19_0=	'validating' 
+		lv_isValidating_19_0=	'validating'
     {
         newLeafNode(lv_isValidating_19_0, grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getLibIterationCSRule());
@@ -1873,14 +1873,14 @@
 	    }
 
 )
-)?(	otherlv_20='=>' 
+)?(	otherlv_20='=>'
     {
     	newLeafNode(otherlv_20, grammarAccess.getLibIterationCSAccess().getEqualsSignGreaterThanSignKeyword_13_0());
     }
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
@@ -1889,27 +1889,27 @@
         }
 	otherlv_21=RULE_SINGLE_QUOTED_STRING
 	{
-		newLeafNode(otherlv_21, grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSCrossReference_13_1_0()); 
+		newLeafNode(otherlv_21, grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSCrossReference_13_1_0());
 	}
 
 )
-))?((	otherlv_22='{' 
+))?((	otherlv_22='{'
     {
     	newLeafNode(otherlv_22, grammarAccess.getLibIterationCSAccess().getLeftCurlyBracketKeyword_14_0_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_14_0_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_14_0_1_0_0());
 	    }
 		lv_ownedAnnotations_23_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_23_0, 
+        		lv_ownedAnnotations_23_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1918,17 +1918,17 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsPostCSParserRuleCall_14_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsPostCSParserRuleCall_14_0_1_1_0());
 	    }
 		lv_ownedPreconditions_24_0=rulePostCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPreconditions",
-        		lv_ownedPreconditions_24_0, 
+        		lv_ownedPreconditions_24_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PostCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -1937,28 +1937,28 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsPreCSParserRuleCall_14_0_1_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsPreCSParserRuleCall_14_0_1_2_0());
 	    }
 		lv_ownedPostconditions_25_0=rulePreCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPostconditions",
-        		lv_ownedPostconditions_25_0, 
+        		lv_ownedPostconditions_25_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PreCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_26='}' 
+))*	otherlv_26='}'
     {
     	newLeafNode(otherlv_26, grammarAccess.getLibIterationCSAccess().getRightCurlyBracketKeyword_14_0_2());
     }
 )
-    |	otherlv_27=';' 
+    |	otherlv_27=';'
     {
     	newLeafNode(otherlv_27, grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_14_1());
     }
@@ -1970,54 +1970,54 @@
 
 
 // Entry rule entryRuleIteratorCS
-entryRuleIteratorCS returns [EObject current=null] 
+entryRuleIteratorCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getIteratorCSRule()); }
-	 iv_ruleIteratorCS=ruleIteratorCS 
-	 { $current=$iv_ruleIteratorCS.current; } 
-	 EOF 
+	 iv_ruleIteratorCS=ruleIteratorCS
+	 { $current=$iv_ruleIteratorCS.current; }
+	 EOF
 ;
 
 // Rule IteratorCS
-ruleIteratorCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleIteratorCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIteratorCSAccess().getNameIdentifierParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIteratorCSAccess().getNameIdentifierParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIteratorCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1=':' 
+)	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getIteratorCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIteratorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIteratorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
 	    }
 		lv_ownedType_2_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIteratorCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2031,26 +2031,26 @@
 
 
 // Entry rule entryRuleLambdaTypeCS
-entryRuleLambdaTypeCS returns [EObject current=null] 
+entryRuleLambdaTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLambdaTypeCSRule()); }
-	 iv_ruleLambdaTypeCS=ruleLambdaTypeCS 
-	 { $current=$iv_ruleLambdaTypeCS.current; } 
-	 EOF 
+	 iv_ruleLambdaTypeCS=ruleLambdaTypeCS
+	 { $current=$iv_ruleLambdaTypeCS.current; }
+	 EOF
 ;
 
 // Rule LambdaTypeCS
-ruleLambdaTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLambdaTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_name_0_0=	'Lambda' 
+		lv_name_0_0=	'Lambda'
     {
         newLeafNode(lv_name_0_0, grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getLambdaTypeCSRule());
@@ -2061,17 +2061,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
 	    }
 		lv_ownedSignature_1_0=ruleTemplateSignatureCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLambdaTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSignature",
-        		lv_ownedSignature_1_0, 
+        		lv_ownedSignature_1_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateSignatureCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2079,87 +2079,87 @@
 )
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeLambdaContextTypeRefCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeLambdaContextTypeRefCSParserRuleCall_2_0());
 	    }
 		lv_ownedContextType_2_0=ruleLambdaContextTypeRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLambdaTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedContextType",
-        		lv_ownedContextType_2_0, 
+        		lv_ownedContextType_2_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LambdaContextTypeRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3='(' 
+)	otherlv_3='('
     {
     	newLeafNode(otherlv_3, grammarAccess.getLambdaTypeCSAccess().getLeftParenthesisKeyword_3());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_0_0());
 	    }
 		lv_ownedParameterTypes_4_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLambdaTypeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameterTypes",
-        		lv_ownedParameterTypes_4_0, 
+        		lv_ownedParameterTypes_4_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_5=',' 
+)(	otherlv_5=','
     {
     	newLeafNode(otherlv_5, grammarAccess.getLambdaTypeCSAccess().getCommaKeyword_4_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_1_1_0());
 	    }
 		lv_ownedParameterTypes_6_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLambdaTypeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameterTypes",
-        		lv_ownedParameterTypes_6_0, 
+        		lv_ownedParameterTypes_6_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_7=')' 
+))*)?	otherlv_7=')'
     {
     	newLeafNode(otherlv_7, grammarAccess.getLambdaTypeCSAccess().getRightParenthesisKeyword_5());
     }
-	otherlv_8=':' 
+	otherlv_8=':'
     {
     	newLeafNode(otherlv_8, grammarAccess.getLambdaTypeCSAccess().getColonKeyword_6());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeTypedRefCSParserRuleCall_7_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeTypedRefCSParserRuleCall_7_0());
 	    }
 		lv_ownedResultType_9_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLambdaTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedResultType",
-        		lv_ownedResultType_9_0, 
+        		lv_ownedResultType_9_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2173,32 +2173,32 @@
 
 
 // Entry rule entryRuleLambdaContextTypeRefCS
-entryRuleLambdaContextTypeRefCS returns [EObject current=null] 
+entryRuleLambdaContextTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLambdaContextTypeRefCSRule()); }
-	 iv_ruleLambdaContextTypeRefCS=ruleLambdaContextTypeRefCS 
-	 { $current=$iv_ruleLambdaContextTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleLambdaContextTypeRefCS=ruleLambdaContextTypeRefCS
+	 { $current=$iv_ruleLambdaContextTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule LambdaContextTypeRefCS
-ruleLambdaContextTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLambdaContextTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0());
 	    }
 		lv_ownedPathName_0_0=ruleLibPathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLambdaContextTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_0_0, 
+        		lv_ownedPathName_0_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2212,55 +2212,55 @@
 
 
 // Entry rule entryRuleOperationCS
-entryRuleOperationCS returns [EObject current=null] 
+entryRuleOperationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getOperationCSRule()); }
-	 iv_ruleOperationCS=ruleOperationCS 
-	 { $current=$iv_ruleOperationCS.current; } 
-	 EOF 
+	 iv_ruleOperationCS=ruleOperationCS
+	 { $current=$iv_ruleOperationCS.current; }
+	 EOF
 ;
 
 // Rule OperationCS
-ruleOperationCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleOperationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getOperationCSAccess().getLibCoercionCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getOperationCSAccess().getLibCoercionCSParserRuleCall_0());
     }
     this_LibCoercionCS_0=ruleLibCoercionCS
-    { 
-        $current = $this_LibCoercionCS_0.current; 
+    {
+        $current = $this_LibCoercionCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getOperationCSAccess().getLibIterationCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getOperationCSAccess().getLibIterationCSParserRuleCall_1());
     }
     this_LibIterationCS_1=ruleLibIterationCS
-    { 
-        $current = $this_LibIterationCS_1.current; 
+    {
+        $current = $this_LibIterationCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getOperationCSAccess().getLibOperationCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getOperationCSAccess().getLibOperationCSParserRuleCall_2());
     }
     this_LibOperationCS_2=ruleLibOperationCS
-    { 
-        $current = $this_LibOperationCS_2.current; 
+    {
+        $current = $this_LibOperationCS_2.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -2271,26 +2271,26 @@
 
 
 // Entry rule entryRuleLibOperationCS
-entryRuleLibOperationCS returns [EObject current=null] 
+entryRuleLibOperationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLibOperationCSRule()); }
-	 iv_ruleLibOperationCS=ruleLibOperationCS 
-	 { $current=$iv_ruleLibOperationCS.current; } 
-	 EOF 
+	 iv_ruleLibOperationCS=ruleLibOperationCS
+	 { $current=$iv_ruleLibOperationCS.current; }
+	 EOF
 ;
 
 // Rule LibOperationCS
-ruleLibOperationCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLibOperationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_isStatic_0_0=	'static' 
+		lv_isStatic_0_0=	'static'
     {
         newLeafNode(lv_isStatic_0_0, grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getLibOperationCSRule());
@@ -2299,23 +2299,23 @@
 	    }
 
 )
-)?	otherlv_1='operation' 
+)?	otherlv_1='operation'
     {
     	newLeafNode(otherlv_1, grammarAccess.getLibOperationCSAccess().getOperationKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getNameNameParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getNameNameParserRuleCall_2_0());
 	    }
 		lv_name_2_0=ruleName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_0, 
+        		lv_name_2_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2323,87 +2323,87 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
 	    }
 		lv_ownedSignature_3_0=ruleTemplateSignatureCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSignature",
-        		lv_ownedSignature_3_0, 
+        		lv_ownedSignature_3_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateSignatureCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_4='(' 
+)?	otherlv_4='('
     {
     	newLeafNode(otherlv_4, grammarAccess.getLibOperationCSAccess().getLeftParenthesisKeyword_4());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0());
 	    }
 		lv_ownedParameters_5_0=ruleParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_5_0, 
+        		lv_ownedParameters_5_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_6=',' 
+)(	otherlv_6=','
     {
     	newLeafNode(otherlv_6, grammarAccess.getLibOperationCSAccess().getCommaKeyword_5_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0());
 	    }
 		lv_ownedParameters_7_0=ruleParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_7_0, 
+        		lv_ownedParameters_7_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_8=')' 
+))*)?	otherlv_8=')'
     {
     	newLeafNode(otherlv_8, grammarAccess.getLibOperationCSAccess().getRightParenthesisKeyword_6());
     }
-	otherlv_9=':' 
+	otherlv_9=':'
     {
     	newLeafNode(otherlv_9, grammarAccess.getLibOperationCSAccess().getColonKeyword_7());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_8_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_8_0());
 	    }
 		lv_ownedType_10_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_10_0, 
+        		lv_ownedType_10_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2411,11 +2411,11 @@
 )
 )(
 (
-		lv_isValidating_11_0=	'validating' 
+		lv_isValidating_11_0=	'validating'
     {
         newLeafNode(lv_isValidating_11_0, grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getLibOperationCSRule());
@@ -2426,11 +2426,11 @@
 )
 )?(
 (
-		lv_isInvalidating_12_0=	'invalidating' 
+		lv_isInvalidating_12_0=	'invalidating'
     {
         newLeafNode(lv_isInvalidating_12_0, grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getLibOperationCSRule());
@@ -2439,40 +2439,40 @@
 	    }
 
 )
-)?(	otherlv_13='precedence' 
+)?(	otherlv_13='precedence'
     {
     	newLeafNode(otherlv_13, grammarAccess.getLibOperationCSAccess().getPrecedenceKeyword_11_0());
     }
-	otherlv_14='=' 
+	otherlv_14='='
     {
     	newLeafNode(otherlv_14, grammarAccess.getLibOperationCSAccess().getEqualsSignKeyword_11_1());
     }
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getLibOperationCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceCrossReference_11_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceCrossReference_11_2_0());
 	    }
-		ruleName		{ 
+		ruleName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?(	otherlv_16='=>' 
+))?(	otherlv_16='=>'
     {
     	newLeafNode(otherlv_16, grammarAccess.getLibOperationCSAccess().getEqualsSignGreaterThanSignKeyword_12_0());
     }
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
@@ -2481,88 +2481,88 @@
         }
 	otherlv_17=RULE_SINGLE_QUOTED_STRING
 	{
-		newLeafNode(otherlv_17, grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSCrossReference_12_1_0()); 
+		newLeafNode(otherlv_17, grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSCrossReference_12_1_0());
 	}
 
 )
-))?((	otherlv_18='{' 
+))?((	otherlv_18='{'
     {
     	newLeafNode(otherlv_18, grammarAccess.getLibOperationCSAccess().getLeftCurlyBracketKeyword_13_0_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_13_0_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_13_0_1_0_0());
 	    }
 		lv_ownedAnnotations_19_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_19_0, 
+        		lv_ownedAnnotations_19_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 )
-    |(	otherlv_20='body' 
+    |(	otherlv_20='body'
     {
     	newLeafNode(otherlv_20, grammarAccess.getLibOperationCSAccess().getBodyKeyword_13_0_1_1_0());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getLibOperationCSAccess().getUnrestrictedNameParserRuleCall_13_0_1_1_1()); 
+    {
+        newCompositeNode(grammarAccess.getLibOperationCSAccess().getUnrestrictedNameParserRuleCall_13_0_1_1_1());
     }
 ruleUnrestrictedName
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
-)?	otherlv_22=':' 
+)?	otherlv_22=':'
     {
     	newLeafNode(otherlv_22, grammarAccess.getLibOperationCSAccess().getColonKeyword_13_0_1_1_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_13_0_1_1_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_13_0_1_1_3_0());
 	    }
 		lv_ownedBodyExpressions_23_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedBodyExpressions",
-        		lv_ownedBodyExpressions_23_0, 
+        		lv_ownedBodyExpressions_23_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_24=';' 
+)	otherlv_24=';'
     {
     	newLeafNode(otherlv_24, grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_0_1_1_4());
     }
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsPostCSParserRuleCall_13_0_1_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsPostCSParserRuleCall_13_0_1_2_0());
 	    }
 		lv_ownedPostconditions_25_0=rulePostCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPostconditions",
-        		lv_ownedPostconditions_25_0, 
+        		lv_ownedPostconditions_25_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PostCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2571,28 +2571,28 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsPreCSParserRuleCall_13_0_1_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsPreCSParserRuleCall_13_0_1_3_0());
 	    }
 		lv_ownedPreconditions_26_0=rulePreCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPreconditions",
-        		lv_ownedPreconditions_26_0, 
+        		lv_ownedPreconditions_26_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PreCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_27='}' 
+))*	otherlv_27='}'
     {
     	newLeafNode(otherlv_27, grammarAccess.getLibOperationCSAccess().getRightCurlyBracketKeyword_13_0_2());
     }
 )
-    |	otherlv_28=';' 
+    |	otherlv_28=';'
     {
     	newLeafNode(otherlv_28, grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_1());
     }
@@ -2604,148 +2604,148 @@
 
 
 // Entry rule entryRuleLibPackageCS
-entryRuleLibPackageCS returns [EObject current=null] 
+entryRuleLibPackageCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLibPackageCSRule()); }
-	 iv_ruleLibPackageCS=ruleLibPackageCS 
-	 { $current=$iv_ruleLibPackageCS.current; } 
-	 EOF 
+	 iv_ruleLibPackageCS=ruleLibPackageCS
+	 { $current=$iv_ruleLibPackageCS.current; }
+	 EOF
 ;
 
 // Rule LibPackageCS
-ruleLibPackageCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLibPackageCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='library' 
+(	otherlv_0='library'
     {
     	newLeafNode(otherlv_0, grammarAccess.getLibPackageCSAccess().getLibraryKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getNameNameParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getNameNameParserRuleCall_1_0());
 	    }
 		lv_name_1_0=ruleName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=':' 
+)(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getLibPackageCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0());
 	    }
 		lv_nsPrefix_3_0=ruleIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"nsPrefix",
-        		lv_nsPrefix_3_0, 
+        		lv_nsPrefix_3_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_4='=' 
+)	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getLibPackageCSAccess().getEqualsSignKeyword_2_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getNsURIURIParserRuleCall_2_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getNsURIURIParserRuleCall_2_3_0());
 	    }
 		lv_nsURI_5_0=ruleURI		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"nsURI",
-        		lv_nsURI_5_0, 
+        		lv_nsURI_5_0,
         		"org.eclipse.ocl.xtext.base.Base.URI");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?	otherlv_6='{' 
+))?	otherlv_6='{'
     {
     	newLeafNode(otherlv_6, grammarAccess.getLibPackageCSAccess().getLeftCurlyBracketKeyword_3());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0());
 	    }
 		lv_ownedPackages_7_0=rulePackageCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPackages",
-        		lv_ownedPackages_7_0, 
+        		lv_ownedPackages_7_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PackageCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 )
-    |(	otherlv_8='precedence' 
+    |(	otherlv_8='precedence'
     {
     	newLeafNode(otherlv_8, grammarAccess.getLibPackageCSAccess().getPrecedenceKeyword_4_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesPrecedenceCSParserRuleCall_4_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesPrecedenceCSParserRuleCall_4_1_1_0());
 	    }
 		lv_ownedPrecedences_9_0=rulePrecedenceCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPrecedences",
-        		lv_ownedPrecedences_9_0, 
+        		lv_ownedPrecedences_9_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PrecedenceCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)+	otherlv_10=';' 
+)+	otherlv_10=';'
     {
     	newLeafNode(otherlv_10, grammarAccess.getLibPackageCSAccess().getSemicolonKeyword_4_1_2());
     }
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_2_0());
 	    }
 		lv_ownedClasses_11_0=ruleClassCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedClasses",
-        		lv_ownedClasses_11_0, 
+        		lv_ownedClasses_11_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ClassCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2754,23 +2754,23 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_3_0());
 	    }
 		lv_ownedAnnotations_12_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_12_0, 
+        		lv_ownedAnnotations_12_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_13='}' 
+))*	otherlv_13='}'
     {
     	newLeafNode(otherlv_13, grammarAccess.getLibPackageCSAccess().getRightCurlyBracketKeyword_5());
     }
@@ -2782,102 +2782,102 @@
 
 
 // Entry rule entryRulePackageCS
-entryRulePackageCS returns [EObject current=null] 
+entryRulePackageCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPackageCSRule()); }
-	 iv_rulePackageCS=rulePackageCS 
-	 { $current=$iv_rulePackageCS.current; } 
-	 EOF 
+	 iv_rulePackageCS=rulePackageCS
+	 { $current=$iv_rulePackageCS.current; }
+	 EOF
 ;
 
 // Rule PackageCS
-rulePackageCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePackageCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='package' 
+(	otherlv_0='package'
     {
     	newLeafNode(otherlv_0, grammarAccess.getPackageCSAccess().getPackageKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageCSAccess().getNameNameParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageCSAccess().getNameNameParserRuleCall_1_0());
 	    }
 		lv_name_1_0=ruleName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=':' 
+)(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getPackageCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0());
 	    }
 		lv_nsPrefix_3_0=ruleIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"nsPrefix",
-        		lv_nsPrefix_3_0, 
+        		lv_nsPrefix_3_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_4='=' 
+)	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getPackageCSAccess().getEqualsSignKeyword_2_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_2_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_2_3_0());
 	    }
 		lv_nsURI_5_0=ruleURI		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"nsURI",
-        		lv_nsURI_5_0, 
+        		lv_nsURI_5_0,
         		"org.eclipse.ocl.xtext.base.Base.URI");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?	otherlv_6='{' 
+))?	otherlv_6='{'
     {
     	newLeafNode(otherlv_6, grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_3());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0());
 	    }
 		lv_ownedPackages_7_0=rulePackageCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPackages",
-        		lv_ownedPackages_7_0, 
+        		lv_ownedPackages_7_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PackageCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2886,17 +2886,17 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_1_0());
 	    }
 		lv_ownedClasses_8_0=ruleClassCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedClasses",
-        		lv_ownedClasses_8_0, 
+        		lv_ownedClasses_8_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ClassCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2905,23 +2905,23 @@
 )
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_2_0());
 	    }
 		lv_ownedAnnotations_9_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPackageCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_9_0, 
+        		lv_ownedAnnotations_9_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_10='}' 
+))*	otherlv_10='}'
     {
     	newLeafNode(otherlv_10, grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_5());
     }
@@ -2933,54 +2933,54 @@
 
 
 // Entry rule entryRuleParameterCS
-entryRuleParameterCS returns [EObject current=null] 
+entryRuleParameterCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getParameterCSRule()); }
-	 iv_ruleParameterCS=ruleParameterCS 
-	 { $current=$iv_ruleParameterCS.current; } 
-	 EOF 
+	 iv_ruleParameterCS=ruleParameterCS
+	 { $current=$iv_ruleParameterCS.current; }
+	 EOF
 ;
 
 // Rule ParameterCS
-ruleParameterCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleParameterCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getParameterCSAccess().getNameIdentifierParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getParameterCSAccess().getNameIdentifierParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getParameterCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1=':' 
+)	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getParameterCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
 	    }
 		lv_ownedType_2_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getParameterCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -2994,26 +2994,26 @@
 
 
 // Entry rule entryRuleLibPropertyCS
-entryRuleLibPropertyCS returns [EObject current=null] 
+entryRuleLibPropertyCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLibPropertyCSRule()); }
-	 iv_ruleLibPropertyCS=ruleLibPropertyCS 
-	 { $current=$iv_ruleLibPropertyCS.current; } 
-	 EOF 
+	 iv_ruleLibPropertyCS=ruleLibPropertyCS
+	 { $current=$iv_ruleLibPropertyCS.current; }
+	 EOF
 ;
 
 // Rule LibPropertyCS
-ruleLibPropertyCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLibPropertyCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_isStatic_0_0=	'static' 
+		lv_isStatic_0_0=	'static'
     {
         newLeafNode(lv_isStatic_0_0, grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getLibPropertyCSRule());
@@ -3022,58 +3022,58 @@
 	    }
 
 )
-)?	otherlv_1='property' 
+)?	otherlv_1='property'
     {
     	newLeafNode(otherlv_1, grammarAccess.getLibPropertyCSAccess().getPropertyKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibPropertyCSAccess().getNameNameParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibPropertyCSAccess().getNameNameParserRuleCall_2_0());
 	    }
 		lv_name_2_0=ruleName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibPropertyCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_0, 
+        		lv_name_2_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=':' 
+)	otherlv_3=':'
     {
     	newLeafNode(otherlv_3, grammarAccess.getLibPropertyCSAccess().getColonKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibPropertyCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibPropertyCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_0());
 	    }
 		lv_ownedType_4_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibPropertyCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_4_0, 
+        		lv_ownedType_4_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_5='=>' 
+)(	otherlv_5='=>'
     {
     	newLeafNode(otherlv_5, grammarAccess.getLibPropertyCSAccess().getEqualsSignGreaterThanSignKeyword_5_0());
     }
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
@@ -3082,38 +3082,38 @@
         }
 	otherlv_6=RULE_SINGLE_QUOTED_STRING
 	{
-		newLeafNode(otherlv_6, grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSCrossReference_5_1_0()); 
+		newLeafNode(otherlv_6, grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSCrossReference_5_1_0());
 	}
 
 )
-))?((	otherlv_7='{' 
+))?((	otherlv_7='{'
     {
     	newLeafNode(otherlv_7, grammarAccess.getLibPropertyCSAccess().getLeftCurlyBracketKeyword_6_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0());
 	    }
 		lv_ownedAnnotations_8_0=ruleAnnotationElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLibPropertyCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedAnnotations",
-        		lv_ownedAnnotations_8_0, 
+        		lv_ownedAnnotations_8_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_9='}' 
+)*	otherlv_9='}'
     {
     	newLeafNode(otherlv_9, grammarAccess.getLibPropertyCSAccess().getRightCurlyBracketKeyword_6_0_2());
     }
 )
-    |	otherlv_10=';' 
+    |	otherlv_10=';'
     {
     	newLeafNode(otherlv_10, grammarAccess.getLibPropertyCSAccess().getSemicolonKeyword_6_1());
     }
@@ -3125,26 +3125,26 @@
 
 
 // Entry rule entryRulePostCS
-entryRulePostCS returns [EObject current=null] 
+entryRulePostCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPostCSRule()); }
-	 iv_rulePostCS=rulePostCS 
-	 { $current=$iv_rulePostCS.current; } 
-	 EOF 
+	 iv_rulePostCS=rulePostCS
+	 { $current=$iv_rulePostCS.current; }
+	 EOF
 ;
 
 // Rule PostCS
-rulePostCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePostCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_stereotype_0_0=	'post' 
+		lv_stereotype_0_0=	'post'
     {
         newLeafNode(lv_stereotype_0_0, grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getPostCSRule());
@@ -3155,71 +3155,71 @@
 )
 )((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPostCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPostCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
 	    }
 		lv_name_1_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPostCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2='(' 
+)(	otherlv_2='('
     {
     	newLeafNode(otherlv_2, grammarAccess.getPostCSAccess().getLeftParenthesisKeyword_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
 	    }
 		lv_ownedMessageSpecification_3_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPostCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMessageSpecification",
-        		lv_ownedMessageSpecification_3_0, 
+        		lv_ownedMessageSpecification_3_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_4=')' 
+)	otherlv_4=')'
     {
     	newLeafNode(otherlv_4, grammarAccess.getPostCSAccess().getRightParenthesisKeyword_1_1_2());
     }
-)?)?	otherlv_5=':' 
+)?)?	otherlv_5=':'
     {
     	newLeafNode(otherlv_5, grammarAccess.getPostCSAccess().getColonKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPostCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPostCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
 	    }
 		lv_ownedSpecification_6_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPostCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSpecification",
-        		lv_ownedSpecification_6_0, 
+        		lv_ownedSpecification_6_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_7=';' 
+)	otherlv_7=';'
     {
     	newLeafNode(otherlv_7, grammarAccess.getPostCSAccess().getSemicolonKeyword_4());
     }
@@ -3231,26 +3231,26 @@
 
 
 // Entry rule entryRulePreCS
-entryRulePreCS returns [EObject current=null] 
+entryRulePreCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPreCSRule()); }
-	 iv_rulePreCS=rulePreCS 
-	 { $current=$iv_rulePreCS.current; } 
-	 EOF 
+	 iv_rulePreCS=rulePreCS
+	 { $current=$iv_rulePreCS.current; }
+	 EOF
 ;
 
 // Rule PreCS
-rulePreCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePreCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_stereotype_0_0=	'pre' 
+		lv_stereotype_0_0=	'pre'
     {
         newLeafNode(lv_stereotype_0_0, grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getPreCSRule());
@@ -3261,71 +3261,71 @@
 )
 )((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPreCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPreCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
 	    }
 		lv_name_1_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPreCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2='(' 
+)(	otherlv_2='('
     {
     	newLeafNode(otherlv_2, grammarAccess.getPreCSAccess().getLeftParenthesisKeyword_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
 	    }
 		lv_ownedMessageSpecification_3_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPreCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMessageSpecification",
-        		lv_ownedMessageSpecification_3_0, 
+        		lv_ownedMessageSpecification_3_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_4=')' 
+)	otherlv_4=')'
     {
     	newLeafNode(otherlv_4, grammarAccess.getPreCSAccess().getRightParenthesisKeyword_1_1_2());
     }
-)?)?	otherlv_5=':' 
+)?)?	otherlv_5=':'
     {
     	newLeafNode(otherlv_5, grammarAccess.getPreCSAccess().getColonKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPreCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPreCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
 	    }
 		lv_ownedSpecification_6_0=ruleSpecificationCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPreCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedSpecification",
-        		lv_ownedSpecification_6_0, 
+        		lv_ownedSpecification_6_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_7=';' 
+)	otherlv_7=';'
     {
     	newLeafNode(otherlv_7, grammarAccess.getPreCSAccess().getSemicolonKeyword_4());
     }
@@ -3337,31 +3337,31 @@
 
 
 // Entry rule entryRulePrecedenceCS
-entryRulePrecedenceCS returns [EObject current=null] 
+entryRulePrecedenceCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrecedenceCSRule()); }
-	 iv_rulePrecedenceCS=rulePrecedenceCS 
-	 { $current=$iv_rulePrecedenceCS.current; } 
-	 EOF 
+	 iv_rulePrecedenceCS=rulePrecedenceCS
+	 { $current=$iv_rulePrecedenceCS.current; }
+	 EOF
 ;
 
 // Rule PrecedenceCS
-rulePrecedenceCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrecedenceCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-((	otherlv_0='left' 
+((	otherlv_0='left'
     {
     	newLeafNode(otherlv_0, grammarAccess.getPrecedenceCSAccess().getLeftKeyword_0_0());
     }
 
     |(
 (
-		lv_isRightAssociative_1_0=	'right' 
+		lv_isRightAssociative_1_0=	'right'
     {
         newLeafNode(lv_isRightAssociative_1_0, grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getPrecedenceCSRule());
@@ -3370,23 +3370,23 @@
 	    }
 
 )
-))	otherlv_2=':' 
+))	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getPrecedenceCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrecedenceCSAccess().getNameNameParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrecedenceCSAccess().getNameNameParserRuleCall_2_0());
 	    }
 		lv_name_3_0=ruleName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrecedenceCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_3_0, 
+        		lv_name_3_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3400,32 +3400,32 @@
 
 
 // Entry rule entryRuleSpecificationCS
-entryRuleSpecificationCS returns [EObject current=null] 
+entryRuleSpecificationCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getSpecificationCSRule()); }
-	 iv_ruleSpecificationCS=ruleSpecificationCS 
-	 { $current=$iv_ruleSpecificationCS.current; } 
-	 EOF 
+	 iv_ruleSpecificationCS=ruleSpecificationCS
+	 { $current=$iv_ruleSpecificationCS.current; }
+	 EOF
 ;
 
 // Rule SpecificationCS
-ruleSpecificationCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleSpecificationCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0());
 	    }
 		lv_ownedExpression_0_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getSpecificationCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_0_0, 
+        		lv_ownedExpression_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3439,83 +3439,83 @@
 
 
 // Entry rule entryRuleTypedMultiplicityRefCS
-entryRuleTypedMultiplicityRefCS returns [EObject current=null] 
+entryRuleTypedMultiplicityRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypedMultiplicityRefCSRule()); }
-	 iv_ruleTypedMultiplicityRefCS=ruleTypedMultiplicityRefCS 
-	 { $current=$iv_ruleTypedMultiplicityRefCS.current; } 
-	 EOF 
+	 iv_ruleTypedMultiplicityRefCS=ruleTypedMultiplicityRefCS
+	 { $current=$iv_ruleTypedMultiplicityRefCS.current; }
+	 EOF
 ;
 
 // Rule TypedMultiplicityRefCS
-ruleTypedMultiplicityRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypedMultiplicityRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getMapTypeCSParserRuleCall_0_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getMapTypeCSParserRuleCall_0_0());
     }
     this_MapTypeCS_0=ruleMapTypeCS
-    { 
-        $current = $this_MapTypeCS_0.current; 
+    {
+        $current = $this_MapTypeCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getTupleTypeCSParserRuleCall_0_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getTupleTypeCSParserRuleCall_0_1());
     }
     this_TupleTypeCS_1=ruleTupleTypeCS
-    { 
-        $current = $this_TupleTypeCS_1.current; 
+    {
+        $current = $this_TupleTypeCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedTypeRefCSParserRuleCall_0_2()); 
+    {
+        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedTypeRefCSParserRuleCall_0_2());
     }
     this_TypedTypeRefCS_2=ruleTypedTypeRefCS
-    { 
-        $current = $this_TypedTypeRefCS_2.current; 
+    {
+        $current = $this_TypedTypeRefCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getLambdaTypeCSParserRuleCall_0_3()); 
+    {
+        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getLambdaTypeCSParserRuleCall_0_3());
     }
     this_LambdaTypeCS_3=ruleLambdaTypeCS
-    { 
-        $current = $this_LambdaTypeCS_3.current; 
+    {
+        $current = $this_LambdaTypeCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
 	    }
 		lv_ownedMultiplicity_4_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedMultiplicityRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_4_0, 
+        		lv_ownedMultiplicity_4_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3529,68 +3529,68 @@
 
 
 // Entry rule entryRuleTypedRefCS
-entryRuleTypedRefCS returns [EObject current=null] 
+entryRuleTypedRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypedRefCSRule()); }
-	 iv_ruleTypedRefCS=ruleTypedRefCS 
-	 { $current=$iv_ruleTypedRefCS.current; } 
-	 EOF 
+	 iv_ruleTypedRefCS=ruleTypedRefCS
+	 { $current=$iv_ruleTypedRefCS.current; }
+	 EOF
 ;
 
 // Rule TypedRefCS
-ruleTypedRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypedRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedRefCSAccess().getMapTypeCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypedRefCSAccess().getMapTypeCSParserRuleCall_0());
     }
     this_MapTypeCS_0=ruleMapTypeCS
-    { 
-        $current = $this_MapTypeCS_0.current; 
+    {
+        $current = $this_MapTypeCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTupleTypeCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTupleTypeCSParserRuleCall_1());
     }
     this_TupleTypeCS_1=ruleTupleTypeCS
-    { 
-        $current = $this_TupleTypeCS_1.current; 
+    {
+        $current = $this_TupleTypeCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_2());
     }
     this_TypedTypeRefCS_2=ruleTypedTypeRefCS
-    { 
-        $current = $this_TypedTypeRefCS_2.current; 
+    {
+        $current = $this_TypedTypeRefCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypedRefCSAccess().getLambdaTypeCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getTypedRefCSAccess().getLambdaTypeCSParserRuleCall_3());
     }
     this_LambdaTypeCS_3=ruleLambdaTypeCS
-    { 
-        $current = $this_LambdaTypeCS_3.current; 
+    {
+        $current = $this_LambdaTypeCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -3601,26 +3601,26 @@
 
 
 // Entry rule entryRuleTypedTypeRefCS
-entryRuleTypedTypeRefCS returns [EObject current=null] 
+entryRuleTypedTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypedTypeRefCSRule()); }
-	 iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS 
-	 { $current=$iv_ruleTypedTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS
+	 { $current=$iv_ruleTypedTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule TypedTypeRefCS
-ruleTypedTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypedTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
 (
-		lv_isTypeof_0_0=	'typeof' 
+		lv_isTypeof_0_0=	'typeof'
     {
         newLeafNode(lv_isTypeof_0_0, grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getTypedTypeRefCSRule());
@@ -3629,74 +3629,74 @@
 	    }
 
 )
-)	otherlv_1='(' 
+)	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_0_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0_2_0());
 	    }
 		lv_ownedPathName_2_0=ruleLibPathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_2_0, 
+        		lv_ownedPathName_2_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=')' 
+)	otherlv_3=')'
     {
     	newLeafNode(otherlv_3, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_0_3());
     }
 )
     |((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_1_0_0());
 	    }
 		lv_ownedPathName_4_0=ruleLibPathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_4_0, 
+        		lv_ownedPathName_4_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_5='(' 
+)(	otherlv_5='('
     {
     	newLeafNode(otherlv_5, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0());
 	    }
 		lv_ownedBinding_6_0=ruleTemplateBindingCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedBinding",
-        		lv_ownedBinding_6_0, 
+        		lv_ownedBinding_6_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateBindingCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_7=')' 
+)	otherlv_7=')'
     {
     	newLeafNode(otherlv_7, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_1_2());
     }
@@ -3708,54 +3708,54 @@
 
 
 // Entry rule entryRuleTuplePartCS
-entryRuleTuplePartCS returns [EObject current=null] 
+entryRuleTuplePartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTuplePartCSRule()); }
-	 iv_ruleTuplePartCS=ruleTuplePartCS 
-	 { $current=$iv_ruleTuplePartCS.current; } 
-	 EOF 
+	 iv_ruleTuplePartCS=ruleTuplePartCS
+	 { $current=$iv_ruleTuplePartCS.current; }
+	 EOF
 ;
 
 // Rule TuplePartCS
-ruleTuplePartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTuplePartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameIdentifierParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameIdentifierParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1=':' 
+)	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
 	    }
 		lv_ownedType_2_0=ruleTypedMultiplicityRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -3771,94 +3771,94 @@
 
 
 // Entry rule entryRuleEssentialOCLReservedKeyword
-entryRuleEssentialOCLReservedKeyword returns [String current=null] 
+entryRuleEssentialOCLReservedKeyword returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLReservedKeywordRule()); } 
-	 iv_ruleEssentialOCLReservedKeyword=ruleEssentialOCLReservedKeyword 
-	 { $current=$iv_ruleEssentialOCLReservedKeyword.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLReservedKeywordRule()); }
+	 iv_ruleEssentialOCLReservedKeyword=ruleEssentialOCLReservedKeyword
+	 { $current=$iv_ruleEssentialOCLReservedKeyword.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLReservedKeyword
-ruleEssentialOCLReservedKeyword returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLReservedKeyword returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='and' 
+	kw='and'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getAndKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getAndKeyword_0());
     }
 
     |
-	kw='else' 
+	kw='else'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getElseKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getElseKeyword_1());
     }
 
     |
-	kw='endif' 
+	kw='endif'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getEndifKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getEndifKeyword_2());
     }
 
     |
-	kw='if' 
+	kw='if'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getIfKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getIfKeyword_3());
     }
 
     |
-	kw='implies' 
+	kw='implies'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getImpliesKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getImpliesKeyword_4());
     }
 
     |
-	kw='in' 
+	kw='in'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getInKeyword_5()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getInKeyword_5());
     }
 
     |
-	kw='let' 
+	kw='let'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getLetKeyword_6()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getLetKeyword_6());
     }
 
     |
-	kw='not' 
+	kw='not'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getNotKeyword_7()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getNotKeyword_7());
     }
 
     |
-	kw='or' 
+	kw='or'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getOrKeyword_8()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getOrKeyword_8());
     }
 
     |
-	kw='then' 
+	kw='then'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getThenKeyword_9()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getThenKeyword_9());
     }
 
     |
-	kw='xor' 
+	kw='xor'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getXorKeyword_10()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getXorKeyword_10());
     }
 )
     ;
@@ -3868,31 +3868,31 @@
 
 
 // Entry rule entryRuleEssentialOCLUnaryOperatorName
-entryRuleEssentialOCLUnaryOperatorName returns [String current=null] 
+entryRuleEssentialOCLUnaryOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); } 
-	 iv_ruleEssentialOCLUnaryOperatorName=ruleEssentialOCLUnaryOperatorName 
-	 { $current=$iv_ruleEssentialOCLUnaryOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); }
+	 iv_ruleEssentialOCLUnaryOperatorName=ruleEssentialOCLUnaryOperatorName
+	 { $current=$iv_ruleEssentialOCLUnaryOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnaryOperatorName
-ruleEssentialOCLUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='-' 
+	kw='-'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
     }
 
     |
-	kw='not' 
+	kw='not'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
     }
 )
     ;
@@ -3902,115 +3902,115 @@
 
 
 // Entry rule entryRuleEssentialOCLInfixOperatorName
-entryRuleEssentialOCLInfixOperatorName returns [String current=null] 
+entryRuleEssentialOCLInfixOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule()); } 
-	 iv_ruleEssentialOCLInfixOperatorName=ruleEssentialOCLInfixOperatorName 
-	 { $current=$iv_ruleEssentialOCLInfixOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule()); }
+	 iv_ruleEssentialOCLInfixOperatorName=ruleEssentialOCLInfixOperatorName
+	 { $current=$iv_ruleEssentialOCLInfixOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLInfixOperatorName
-ruleEssentialOCLInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='*' 
+	kw='*'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
     }
 
     |
-	kw='/' 
+	kw='/'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
     }
 
     |
-	kw='+' 
+	kw='+'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
     }
 
     |
-	kw='-' 
+	kw='-'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
     }
 
     |
-	kw='>' 
+	kw='>'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
     }
 
     |
-	kw='<' 
+	kw='<'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
     }
 
     |
-	kw='>=' 
+	kw='>='
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
     }
 
     |
-	kw='<=' 
+	kw='<='
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
     }
 
     |
-	kw='=' 
+	kw='='
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
     }
 
     |
-	kw='<>' 
+	kw='<>'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
     }
 
     |
-	kw='and' 
+	kw='and'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
     }
 
     |
-	kw='or' 
+	kw='or'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
     }
 
     |
-	kw='xor' 
+	kw='xor'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
     }
 
     |
-	kw='implies' 
+	kw='implies'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
     }
 )
     ;
@@ -4020,45 +4020,45 @@
 
 
 // Entry rule entryRuleEssentialOCLNavigationOperatorName
-entryRuleEssentialOCLNavigationOperatorName returns [String current=null] 
+entryRuleEssentialOCLNavigationOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); } 
-	 iv_ruleEssentialOCLNavigationOperatorName=ruleEssentialOCLNavigationOperatorName 
-	 { $current=$iv_ruleEssentialOCLNavigationOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); }
+	 iv_ruleEssentialOCLNavigationOperatorName=ruleEssentialOCLNavigationOperatorName
+	 { $current=$iv_ruleEssentialOCLNavigationOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLNavigationOperatorName
-ruleEssentialOCLNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='.' 
+	kw='.'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
     }
 
     |
-	kw='->' 
+	kw='->'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
     }
 
     |
-	kw='?.' 
+	kw='?.'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
     }
 
     |
-	kw='?->' 
+	kw='?->'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
     }
 )
     ;
@@ -4068,40 +4068,40 @@
 
 
 // Entry rule entryRuleBinaryOperatorName
-entryRuleBinaryOperatorName returns [String current=null] 
+entryRuleBinaryOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getBinaryOperatorNameRule()); } 
-	 iv_ruleBinaryOperatorName=ruleBinaryOperatorName 
-	 { $current=$iv_ruleBinaryOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getBinaryOperatorNameRule()); }
+	 iv_ruleBinaryOperatorName=ruleBinaryOperatorName
+	 { $current=$iv_ruleBinaryOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule BinaryOperatorName
-ruleBinaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleBinaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
     }
     this_InfixOperatorName_0=ruleInfixOperatorName    {
 		$current.merge(this_InfixOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
     }
     this_NavigationOperatorName_1=ruleNavigationOperatorName    {
 		$current.merge(this_NavigationOperatorName_1);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 )
@@ -4112,28 +4112,28 @@
 
 
 // Entry rule entryRuleInfixOperatorName
-entryRuleInfixOperatorName returns [String current=null] 
+entryRuleInfixOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getInfixOperatorNameRule()); } 
-	 iv_ruleInfixOperatorName=ruleInfixOperatorName 
-	 { $current=$iv_ruleInfixOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getInfixOperatorNameRule()); }
+	 iv_ruleInfixOperatorName=ruleInfixOperatorName
+	 { $current=$iv_ruleInfixOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule InfixOperatorName
-ruleInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleInfixOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
     }
     this_EssentialOCLInfixOperatorName_0=ruleEssentialOCLInfixOperatorName    {
 		$current.merge(this_EssentialOCLInfixOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -4144,28 +4144,28 @@
 
 
 // Entry rule entryRuleNavigationOperatorName
-entryRuleNavigationOperatorName returns [String current=null] 
+entryRuleNavigationOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getNavigationOperatorNameRule()); } 
-	 iv_ruleNavigationOperatorName=ruleNavigationOperatorName 
-	 { $current=$iv_ruleNavigationOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getNavigationOperatorNameRule()); }
+	 iv_ruleNavigationOperatorName=ruleNavigationOperatorName
+	 { $current=$iv_ruleNavigationOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule NavigationOperatorName
-ruleNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleNavigationOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall());
     }
     this_EssentialOCLNavigationOperatorName_0=ruleEssentialOCLNavigationOperatorName    {
 		$current.merge(this_EssentialOCLNavigationOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -4176,28 +4176,28 @@
 
 
 // Entry rule entryRuleUnaryOperatorName
-entryRuleUnaryOperatorName returns [String current=null] 
+entryRuleUnaryOperatorName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnaryOperatorNameRule()); } 
-	 iv_ruleUnaryOperatorName=ruleUnaryOperatorName 
-	 { $current=$iv_ruleUnaryOperatorName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnaryOperatorNameRule()); }
+	 iv_ruleUnaryOperatorName=ruleUnaryOperatorName
+	 { $current=$iv_ruleUnaryOperatorName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnaryOperatorName
-ruleUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnaryOperatorName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
     }
     this_EssentialOCLUnaryOperatorName_0=ruleEssentialOCLUnaryOperatorName    {
 		$current.merge(this_EssentialOCLUnaryOperatorName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -4208,28 +4208,28 @@
 
 
 // Entry rule entryRuleEssentialOCLUnrestrictedName
-entryRuleEssentialOCLUnrestrictedName returns [String current=null] 
+entryRuleEssentialOCLUnrestrictedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule()); } 
-	 iv_ruleEssentialOCLUnrestrictedName=ruleEssentialOCLUnrestrictedName 
-	 { $current=$iv_ruleEssentialOCLUnrestrictedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule()); }
+	 iv_ruleEssentialOCLUnrestrictedName=ruleEssentialOCLUnrestrictedName
+	 { $current=$iv_ruleEssentialOCLUnrestrictedName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnrestrictedName
-ruleEssentialOCLUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
     }
     this_Identifier_0=ruleIdentifier    {
 		$current.merge(this_Identifier_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -4240,28 +4240,28 @@
 
 
 // Entry rule entryRuleUnrestrictedName
-entryRuleUnrestrictedName returns [String current=null] 
+entryRuleUnrestrictedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnrestrictedNameRule()); } 
-	 iv_ruleUnrestrictedName=ruleUnrestrictedName 
-	 { $current=$iv_ruleUnrestrictedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnrestrictedNameRule()); }
+	 iv_ruleUnrestrictedName=ruleUnrestrictedName
+	 { $current=$iv_ruleUnrestrictedName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnrestrictedName
-ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnrestrictedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall());
     }
     this_EssentialOCLUnrestrictedName_0=ruleEssentialOCLUnrestrictedName    {
 		$current.merge(this_EssentialOCLUnrestrictedName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -4272,67 +4272,67 @@
 
 
 // Entry rule entryRuleEssentialOCLUnreservedName
-entryRuleEssentialOCLUnreservedName returns [String current=null] 
+entryRuleEssentialOCLUnreservedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule()); } 
-	 iv_ruleEssentialOCLUnreservedName=ruleEssentialOCLUnreservedName 
-	 { $current=$iv_ruleEssentialOCLUnreservedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule()); }
+	 iv_ruleEssentialOCLUnreservedName=ruleEssentialOCLUnreservedName
+	 { $current=$iv_ruleEssentialOCLUnreservedName.current.getText(); }
+	 EOF
 ;
 
 // Rule EssentialOCLUnreservedName
-ruleEssentialOCLUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleEssentialOCLUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
     }
     this_UnrestrictedName_0=ruleUnrestrictedName    {
 		$current.merge(this_UnrestrictedName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
     }
     this_CollectionTypeIdentifier_1=ruleCollectionTypeIdentifier    {
 		$current.merge(this_CollectionTypeIdentifier_1);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-    { 
-        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
     }
     this_PrimitiveTypeIdentifier_2=rulePrimitiveTypeIdentifier    {
 		$current.merge(this_PrimitiveTypeIdentifier_2);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
     |
-	kw='Map' 
+	kw='Map'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
     }
 
     |
-	kw='Tuple' 
+	kw='Tuple'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
     }
 )
     ;
@@ -4342,28 +4342,28 @@
 
 
 // Entry rule entryRuleUnreservedName
-entryRuleUnreservedName returns [String current=null] 
+entryRuleUnreservedName returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUnreservedNameRule()); } 
-	 iv_ruleUnreservedName=ruleUnreservedName 
-	 { $current=$iv_ruleUnreservedName.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUnreservedNameRule()); }
+	 iv_ruleUnreservedName=ruleUnreservedName
+	 { $current=$iv_ruleUnreservedName.current.getText(); }
+	 EOF
 ;
 
 // Rule UnreservedName
-ruleUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUnreservedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-    { 
-        newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
     }
     this_EssentialOCLUnreservedName_0=ruleEssentialOCLUnreservedName    {
 		$current.merge(this_EssentialOCLUnreservedName_0);
     }
 
-    { 
+    {
         afterParserOrEnumRuleCall();
     }
 
@@ -4374,54 +4374,54 @@
 
 
 // Entry rule entryRuleURIPathNameCS
-entryRuleURIPathNameCS returns [EObject current=null] 
+entryRuleURIPathNameCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getURIPathNameCSRule()); }
-	 iv_ruleURIPathNameCS=ruleURIPathNameCS 
-	 { $current=$iv_ruleURIPathNameCS.current; } 
-	 EOF 
+	 iv_ruleURIPathNameCS=ruleURIPathNameCS
+	 { $current=$iv_ruleURIPathNameCS.current; }
+	 EOF
 ;
 
 // Rule URIPathNameCS
-ruleURIPathNameCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleURIPathNameCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathElements_0_0=ruleURIFirstPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getURIPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_0_0, 
+        		lv_ownedPathElements_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIFirstPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='::' 
+)(	otherlv_1='::'
     {
     	newLeafNode(otherlv_1, grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedPathElements_2_0=ruleNextPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getURIPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_2_0, 
+        		lv_ownedPathElements_2_0,
         		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4435,41 +4435,41 @@
 
 
 // Entry rule entryRuleURIFirstPathElementCS
-entryRuleURIFirstPathElementCS returns [EObject current=null] 
+entryRuleURIFirstPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getURIFirstPathElementCSRule()); }
-	 iv_ruleURIFirstPathElementCS=ruleURIFirstPathElementCS 
-	 { $current=$iv_ruleURIFirstPathElementCS.current; } 
-	 EOF 
+	 iv_ruleURIFirstPathElementCS=ruleURIFirstPathElementCS
+	 { $current=$iv_ruleURIFirstPathElementCS.current; }
+	 EOF
 ;
 
 // Rule URIFirstPathElementCS
-ruleURIFirstPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleURIFirstPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 )
     |((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
@@ -4478,18 +4478,18 @@
     }
 )(
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
 	    }
-		ruleURI		{ 
+		ruleURI		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -4502,73 +4502,73 @@
 
 
 // Entry rule entryRulePrimitiveTypeIdentifier
-entryRulePrimitiveTypeIdentifier returns [String current=null] 
+entryRulePrimitiveTypeIdentifier returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule()); } 
-	 iv_rulePrimitiveTypeIdentifier=rulePrimitiveTypeIdentifier 
-	 { $current=$iv_rulePrimitiveTypeIdentifier.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule()); }
+	 iv_rulePrimitiveTypeIdentifier=rulePrimitiveTypeIdentifier
+	 { $current=$iv_rulePrimitiveTypeIdentifier.current.getText(); }
+	 EOF
 ;
 
 // Rule PrimitiveTypeIdentifier
-rulePrimitiveTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+rulePrimitiveTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='Boolean' 
+	kw='Boolean'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
     }
 
     |
-	kw='Integer' 
+	kw='Integer'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
     }
 
     |
-	kw='Real' 
+	kw='Real'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
     }
 
     |
-	kw='String' 
+	kw='String'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
     }
 
     |
-	kw='UnlimitedNatural' 
+	kw='UnlimitedNatural'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
     }
 
     |
-	kw='OclAny' 
+	kw='OclAny'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
     }
 
     |
-	kw='OclInvalid' 
+	kw='OclInvalid'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
     }
 
     |
-	kw='OclVoid' 
+	kw='OclVoid'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); 
+        newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
     }
 )
     ;
@@ -4578,32 +4578,32 @@
 
 
 // Entry rule entryRulePrimitiveTypeCS
-entryRulePrimitiveTypeCS returns [EObject current=null] 
+entryRulePrimitiveTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrimitiveTypeCSRule()); }
-	 iv_rulePrimitiveTypeCS=rulePrimitiveTypeCS 
-	 { $current=$iv_rulePrimitiveTypeCS.current; } 
-	 EOF 
+	 iv_rulePrimitiveTypeCS=rulePrimitiveTypeCS
+	 { $current=$iv_rulePrimitiveTypeCS.current; }
+	 EOF
 ;
 
 // Rule PrimitiveTypeCS
-rulePrimitiveTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrimitiveTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
 	    }
 		lv_name_0_0=rulePrimitiveTypeIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrimitiveTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrimitiveTypeIdentifier");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -4617,52 +4617,52 @@
 
 
 // Entry rule entryRuleCollectionTypeIdentifier
-entryRuleCollectionTypeIdentifier returns [String current=null] 
+entryRuleCollectionTypeIdentifier returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule()); } 
-	 iv_ruleCollectionTypeIdentifier=ruleCollectionTypeIdentifier 
-	 { $current=$iv_ruleCollectionTypeIdentifier.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule()); }
+	 iv_ruleCollectionTypeIdentifier=ruleCollectionTypeIdentifier
+	 { $current=$iv_ruleCollectionTypeIdentifier.current.getText(); }
+	 EOF
 ;
 
 // Rule CollectionTypeIdentifier
-ruleCollectionTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleCollectionTypeIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	kw='Set' 
+	kw='Set'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
     }
 
     |
-	kw='Bag' 
+	kw='Bag'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
     }
 
     |
-	kw='Sequence' 
+	kw='Sequence'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
     }
 
     |
-	kw='Collection' 
+	kw='Collection'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
     }
 
     |
-	kw='OrderedSet' 
+	kw='OrderedSet'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
+        newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
     }
 )
     ;
@@ -4672,60 +4672,60 @@
 
 
 // Entry rule entryRuleCollectionTypeCS
-entryRuleCollectionTypeCS returns [EObject current=null] 
+entryRuleCollectionTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionTypeCSRule()); }
-	 iv_ruleCollectionTypeCS=ruleCollectionTypeCS 
-	 { $current=$iv_ruleCollectionTypeCS.current; } 
-	 EOF 
+	 iv_ruleCollectionTypeCS=ruleCollectionTypeCS
+	 { $current=$iv_ruleCollectionTypeCS.current; }
+	 EOF
 ;
 
 // Rule CollectionTypeCS
-ruleCollectionTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleCollectionTypeIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeIdentifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=')' 
+)	otherlv_3=')'
     {
     	newLeafNode(otherlv_3, grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
     }
@@ -4737,26 +4737,26 @@
 
 
 // Entry rule entryRuleMapTypeCS
-entryRuleMapTypeCS returns [EObject current=null] 
+entryRuleMapTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMapTypeCSRule()); }
-	 iv_ruleMapTypeCS=ruleMapTypeCS 
-	 { $current=$iv_ruleMapTypeCS.current; } 
-	 EOF 
+	 iv_ruleMapTypeCS=ruleMapTypeCS
+	 { $current=$iv_ruleMapTypeCS.current; }
+	 EOF
 ;
 
 // Rule MapTypeCS
-ruleMapTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMapTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_name_0_0=	'Map' 
+		lv_name_0_0=	'Map'
     {
         newLeafNode(lv_name_0_0, grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMapTypeCSRule());
@@ -4765,51 +4765,51 @@
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedKeyType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedKeyType",
-        		lv_ownedKeyType_2_0, 
+        		lv_ownedKeyType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3=',' 
+)	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
 	    }
 		lv_ownedValueType_4_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedValueType",
-        		lv_ownedValueType_4_0, 
+        		lv_ownedValueType_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_5=')' 
+)	otherlv_5=')'
     {
     	newLeafNode(otherlv_5, grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
     }
@@ -4821,26 +4821,26 @@
 
 
 // Entry rule entryRuleTupleTypeCS
-entryRuleTupleTypeCS returns [EObject current=null] 
+entryRuleTupleTypeCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTupleTypeCSRule()); }
-	 iv_ruleTupleTypeCS=ruleTupleTypeCS 
-	 { $current=$iv_ruleTupleTypeCS.current; } 
-	 EOF 
+	 iv_ruleTupleTypeCS=ruleTupleTypeCS
+	 { $current=$iv_ruleTupleTypeCS.current; }
+	 EOF
 ;
 
 // Rule TupleTypeCS
-ruleTupleTypeCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTupleTypeCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_name_0_0=	'Tuple' 
+		lv_name_0_0=	'Tuple'
     {
         newLeafNode(lv_name_0_0, grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getTupleTypeCSRule());
@@ -4849,51 +4849,51 @@
 	    }
 
 )
-)(	otherlv_1='(' 
+)(	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
 	    }
 		lv_ownedParts_2_0=ruleTuplePartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TuplePartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleTuplePartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TuplePartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_5=')' 
+))*)?	otherlv_5=')'
     {
     	newLeafNode(otherlv_5, grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
     }
@@ -4905,82 +4905,82 @@
 
 
 // Entry rule entryRuleCollectionLiteralExpCS
-entryRuleCollectionLiteralExpCS returns [EObject current=null] 
+entryRuleCollectionLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionLiteralExpCSRule()); }
-	 iv_ruleCollectionLiteralExpCS=ruleCollectionLiteralExpCS 
-	 { $current=$iv_ruleCollectionLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleCollectionLiteralExpCS=ruleCollectionLiteralExpCS
+	 { $current=$iv_ruleCollectionLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule CollectionLiteralExpCS
-ruleCollectionLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
 	    }
 		lv_ownedType_0_0=ruleCollectionTypeCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedParts_2_0=ruleCollectionLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleCollectionLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_5='}' 
+))*)?	otherlv_5='}'
     {
     	newLeafNode(otherlv_5, grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -4992,54 +4992,54 @@
 
 
 // Entry rule entryRuleCollectionLiteralPartCS
-entryRuleCollectionLiteralPartCS returns [EObject current=null] 
+entryRuleCollectionLiteralPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionLiteralPartCSRule()); }
-	 iv_ruleCollectionLiteralPartCS=ruleCollectionLiteralPartCS 
-	 { $current=$iv_ruleCollectionLiteralPartCS.current; } 
-	 EOF 
+	 iv_ruleCollectionLiteralPartCS=ruleCollectionLiteralPartCS
+	 { $current=$iv_ruleCollectionLiteralPartCS.current; }
+	 EOF
 ;
 
 // Rule CollectionLiteralPartCS
-ruleCollectionLiteralPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionLiteralPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
 	    }
 		lv_ownedExpression_0_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_0_0, 
+        		lv_ownedExpression_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='..' 
+)(	otherlv_1='..'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
 	    }
 		lv_ownedLastExpression_2_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedLastExpression",
-        		lv_ownedLastExpression_2_0, 
+        		lv_ownedLastExpression_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5048,17 +5048,17 @@
 ))?)
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedExpression_3_0=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_3_0, 
+        		lv_ownedExpression_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5072,104 +5072,104 @@
 
 
 // Entry rule entryRuleCollectionPatternCS
-entryRuleCollectionPatternCS returns [EObject current=null] 
+entryRuleCollectionPatternCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCollectionPatternCSRule()); }
-	 iv_ruleCollectionPatternCS=ruleCollectionPatternCS 
-	 { $current=$iv_ruleCollectionPatternCS.current; } 
-	 EOF 
+	 iv_ruleCollectionPatternCS=ruleCollectionPatternCS
+	 { $current=$iv_ruleCollectionPatternCS.current; }
+	 EOF
 ;
 
 // Rule CollectionPatternCS
-ruleCollectionPatternCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCollectionPatternCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
 	    }
 		lv_ownedType_0_0=ruleCollectionTypeCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedParts_2_0=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedParts_4_0=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*(	otherlv_5='++' 
+))*(	otherlv_5='++'
     {
     	newLeafNode(otherlv_5, grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
 	    }
 		lv_restVariableName_6_0=ruleIdentifier		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"restVariableName",
-        		lv_restVariableName_6_0, 
+        		lv_restVariableName_6_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)))?	otherlv_7='}' 
+)))?	otherlv_7='}'
     {
     	newLeafNode(otherlv_7, grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -5181,70 +5181,70 @@
 
 
 // Entry rule entryRuleShadowPartCS
-entryRuleShadowPartCS returns [EObject current=null] 
+entryRuleShadowPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getShadowPartCSRule()); }
-	 iv_ruleShadowPartCS=ruleShadowPartCS 
-	 { $current=$iv_ruleShadowPartCS.current; } 
-	 EOF 
+	 iv_ruleShadowPartCS=ruleShadowPartCS
+	 { $current=$iv_ruleShadowPartCS.current; }
+	 EOF
 ;
 
 // Rule ShadowPartCS
-ruleShadowPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleShadowPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getShadowPartCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='=' 
+)	otherlv_1='='
     {
     	newLeafNode(otherlv_1, grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
     }
 (
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedInitExpression_2_1=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_2_1, 
+        		lv_ownedInitExpression_2_1,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
-    |		{ 
-	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
+    |		{
+	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
 	    }
 		lv_ownedInitExpression_2_2=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_2_2, 
+        		lv_ownedInitExpression_2_2,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5260,54 +5260,54 @@
 
 
 // Entry rule entryRulePatternExpCS
-entryRulePatternExpCS returns [EObject current=null] 
+entryRulePatternExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPatternExpCSRule()); }
-	 iv_rulePatternExpCS=rulePatternExpCS 
-	 { $current=$iv_rulePatternExpCS.current; } 
-	 EOF 
+	 iv_rulePatternExpCS=rulePatternExpCS
+	 { $current=$iv_rulePatternExpCS.current; }
+	 EOF
 ;
 
 // Rule PatternExpCS
-rulePatternExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePatternExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_patternVariableName_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"patternVariableName",
-        		lv_patternVariableName_0_0, 
+        		lv_patternVariableName_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?	otherlv_1=':' 
+)?	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedPatternType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPatternType",
-        		lv_ownedPatternType_2_0, 
+        		lv_ownedPatternType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5321,46 +5321,46 @@
 
 
 // Entry rule entryRuleLambdaLiteralExpCS
-entryRuleLambdaLiteralExpCS returns [EObject current=null] 
+entryRuleLambdaLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLambdaLiteralExpCSRule()); }
-	 iv_ruleLambdaLiteralExpCS=ruleLambdaLiteralExpCS 
-	 { $current=$iv_ruleLambdaLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleLambdaLiteralExpCS=ruleLambdaLiteralExpCS
+	 { $current=$iv_ruleLambdaLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule LambdaLiteralExpCS
-ruleLambdaLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLambdaLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='Lambda' 
+(	otherlv_0='Lambda'
     {
     	newLeafNode(otherlv_0, grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
     }
-	otherlv_1='{' 
+	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedExpressionCS_2_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLambdaLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpressionCS",
-        		lv_ownedExpressionCS_2_0, 
+        		lv_ownedExpressionCS_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_3='}' 
+)	otherlv_3='}'
     {
     	newLeafNode(otherlv_3, grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -5372,82 +5372,82 @@
 
 
 // Entry rule entryRuleMapLiteralExpCS
-entryRuleMapLiteralExpCS returns [EObject current=null] 
+entryRuleMapLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMapLiteralExpCSRule()); }
-	 iv_ruleMapLiteralExpCS=ruleMapLiteralExpCS 
-	 { $current=$iv_ruleMapLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleMapLiteralExpCS=ruleMapLiteralExpCS
+	 { $current=$iv_ruleMapLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule MapLiteralExpCS
-ruleMapLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMapLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
 	    }
 		lv_ownedType_0_0=ruleMapTypeCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapTypeCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedParts_2_0=ruleMapLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleMapLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*)?	otherlv_5='}' 
+))*)?	otherlv_5='}'
     {
     	newLeafNode(otherlv_5, grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -5459,54 +5459,54 @@
 
 
 // Entry rule entryRuleMapLiteralPartCS
-entryRuleMapLiteralPartCS returns [EObject current=null] 
+entryRuleMapLiteralPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMapLiteralPartCSRule()); }
-	 iv_ruleMapLiteralPartCS=ruleMapLiteralPartCS 
-	 { $current=$iv_ruleMapLiteralPartCS.current; } 
-	 EOF 
+	 iv_ruleMapLiteralPartCS=ruleMapLiteralPartCS
+	 { $current=$iv_ruleMapLiteralPartCS.current; }
+	 EOF
 ;
 
 // Rule MapLiteralPartCS
-ruleMapLiteralPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMapLiteralPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
 	    }
 		lv_ownedKey_0_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedKey",
-        		lv_ownedKey_0_0, 
+        		lv_ownedKey_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_1='<-' 
+)	otherlv_1='<-'
     {
     	newLeafNode(otherlv_1, grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
 	    }
 		lv_ownedValue_2_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedValue",
-        		lv_ownedValue_2_0, 
+        		lv_ownedValue_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5520,94 +5520,94 @@
 
 
 // Entry rule entryRulePrimitiveLiteralExpCS
-entryRulePrimitiveLiteralExpCS returns [EObject current=null] 
+entryRulePrimitiveLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSRule()); }
-	 iv_rulePrimitiveLiteralExpCS=rulePrimitiveLiteralExpCS 
-	 { $current=$iv_rulePrimitiveLiteralExpCS.current; } 
-	 EOF 
+	 iv_rulePrimitiveLiteralExpCS=rulePrimitiveLiteralExpCS
+	 { $current=$iv_rulePrimitiveLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule PrimitiveLiteralExpCS
-rulePrimitiveLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrimitiveLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
     }
     this_NumberLiteralExpCS_0=ruleNumberLiteralExpCS
-    { 
-        $current = $this_NumberLiteralExpCS_0.current; 
+    {
+        $current = $this_NumberLiteralExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
     }
     this_StringLiteralExpCS_1=ruleStringLiteralExpCS
-    { 
-        $current = $this_StringLiteralExpCS_1.current; 
+    {
+        $current = $this_StringLiteralExpCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
     }
     this_BooleanLiteralExpCS_2=ruleBooleanLiteralExpCS
-    { 
-        $current = $this_BooleanLiteralExpCS_2.current; 
+    {
+        $current = $this_BooleanLiteralExpCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
     }
     this_UnlimitedNaturalLiteralExpCS_3=ruleUnlimitedNaturalLiteralExpCS
-    { 
-        $current = $this_UnlimitedNaturalLiteralExpCS_3.current; 
+    {
+        $current = $this_UnlimitedNaturalLiteralExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
     }
     this_InvalidLiteralExpCS_4=ruleInvalidLiteralExpCS
-    { 
-        $current = $this_InvalidLiteralExpCS_4.current; 
+    {
+        $current = $this_InvalidLiteralExpCS_4.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
+    {
+        newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
     }
     this_NullLiteralExpCS_5=ruleNullLiteralExpCS
-    { 
-        $current = $this_NullLiteralExpCS_5.current; 
+    {
+        $current = $this_NullLiteralExpCS_5.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -5618,68 +5618,68 @@
 
 
 // Entry rule entryRuleTupleLiteralExpCS
-entryRuleTupleLiteralExpCS returns [EObject current=null] 
+entryRuleTupleLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTupleLiteralExpCSRule()); }
-	 iv_ruleTupleLiteralExpCS=ruleTupleLiteralExpCS 
-	 { $current=$iv_ruleTupleLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleTupleLiteralExpCS=ruleTupleLiteralExpCS
+	 { $current=$iv_ruleTupleLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule TupleLiteralExpCS
-ruleTupleLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTupleLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='Tuple' 
+(	otherlv_0='Tuple'
     {
     	newLeafNode(otherlv_0, grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
     }
-	otherlv_1='{' 
+	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
 	    }
 		lv_ownedParts_2_0=ruleTupleLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
 	    }
 		lv_ownedParts_4_0=ruleTupleLiteralPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_5='}' 
+))*	otherlv_5='}'
     {
     	newLeafNode(otherlv_5, grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
     }
@@ -5691,76 +5691,76 @@
 
 
 // Entry rule entryRuleTupleLiteralPartCS
-entryRuleTupleLiteralPartCS returns [EObject current=null] 
+entryRuleTupleLiteralPartCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTupleLiteralPartCSRule()); }
-	 iv_ruleTupleLiteralPartCS=ruleTupleLiteralPartCS 
-	 { $current=$iv_ruleTupleLiteralPartCS.current; } 
-	 EOF 
+	 iv_ruleTupleLiteralPartCS=ruleTupleLiteralPartCS
+	 { $current=$iv_ruleTupleLiteralPartCS.current; }
+	 EOF
 ;
 
 // Rule TupleLiteralPartCS
-ruleTupleLiteralPartCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTupleLiteralPartCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1=':' 
+)(	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?	otherlv_3='=' 
+))?	otherlv_3='='
     {
     	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
 	    }
 		lv_ownedInitExpression_4_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_4_0, 
+        		lv_ownedInitExpression_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5774,32 +5774,32 @@
 
 
 // Entry rule entryRuleNumberLiteralExpCS
-entryRuleNumberLiteralExpCS returns [EObject current=null] 
+entryRuleNumberLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNumberLiteralExpCSRule()); }
-	 iv_ruleNumberLiteralExpCS=ruleNumberLiteralExpCS 
-	 { $current=$iv_ruleNumberLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleNumberLiteralExpCS=ruleNumberLiteralExpCS
+	 { $current=$iv_ruleNumberLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule NumberLiteralExpCS
-ruleNumberLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNumberLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
 	    }
 		lv_symbol_0_0=ruleNUMBER_LITERAL		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNumberLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"symbol",
-        		lv_symbol_0_0, 
+        		lv_symbol_0_0,
         		"org.eclipse.ocl.xtext.base.Base.NUMBER_LITERAL");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5813,32 +5813,32 @@
 
 
 // Entry rule entryRuleStringLiteralExpCS
-entryRuleStringLiteralExpCS returns [EObject current=null] 
+entryRuleStringLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getStringLiteralExpCSRule()); }
-	 iv_ruleStringLiteralExpCS=ruleStringLiteralExpCS 
-	 { $current=$iv_ruleStringLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleStringLiteralExpCS=ruleStringLiteralExpCS
+	 { $current=$iv_ruleStringLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule StringLiteralExpCS
-ruleStringLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleStringLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
 	    }
 		lv_segments_0_0=ruleStringLiteral		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getStringLiteralExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"segments",
-        		lv_segments_0_0, 
+        		lv_segments_0_0,
         		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -5852,26 +5852,26 @@
 
 
 // Entry rule entryRuleBooleanLiteralExpCS
-entryRuleBooleanLiteralExpCS returns [EObject current=null] 
+entryRuleBooleanLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getBooleanLiteralExpCSRule()); }
-	 iv_ruleBooleanLiteralExpCS=ruleBooleanLiteralExpCS 
-	 { $current=$iv_ruleBooleanLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleBooleanLiteralExpCS=ruleBooleanLiteralExpCS
+	 { $current=$iv_ruleBooleanLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule BooleanLiteralExpCS
-ruleBooleanLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleBooleanLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_symbol_0_0=	'true' 
+		lv_symbol_0_0=	'true'
     {
         newLeafNode(lv_symbol_0_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
@@ -5883,11 +5883,11 @@
 )
     |(
 (
-		lv_symbol_1_0=	'false' 
+		lv_symbol_1_0=	'false'
     {
         newLeafNode(lv_symbol_1_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
@@ -5904,29 +5904,29 @@
 
 
 // Entry rule entryRuleUnlimitedNaturalLiteralExpCS
-entryRuleUnlimitedNaturalLiteralExpCS returns [EObject current=null] 
+entryRuleUnlimitedNaturalLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); }
-	 iv_ruleUnlimitedNaturalLiteralExpCS=ruleUnlimitedNaturalLiteralExpCS 
-	 { $current=$iv_ruleUnlimitedNaturalLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleUnlimitedNaturalLiteralExpCS=ruleUnlimitedNaturalLiteralExpCS
+	 { $current=$iv_ruleUnlimitedNaturalLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule UnlimitedNaturalLiteralExpCS
-ruleUnlimitedNaturalLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleUnlimitedNaturalLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0(),
             $current);
     }
-)	otherlv_1='*' 
+)	otherlv_1='*'
     {
     	newLeafNode(otherlv_1, grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
     }
@@ -5938,29 +5938,29 @@
 
 
 // Entry rule entryRuleInvalidLiteralExpCS
-entryRuleInvalidLiteralExpCS returns [EObject current=null] 
+entryRuleInvalidLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getInvalidLiteralExpCSRule()); }
-	 iv_ruleInvalidLiteralExpCS=ruleInvalidLiteralExpCS 
-	 { $current=$iv_ruleInvalidLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleInvalidLiteralExpCS=ruleInvalidLiteralExpCS
+	 { $current=$iv_ruleInvalidLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule InvalidLiteralExpCS
-ruleInvalidLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleInvalidLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0(),
             $current);
     }
-)	otherlv_1='invalid' 
+)	otherlv_1='invalid'
     {
     	newLeafNode(otherlv_1, grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
     }
@@ -5972,29 +5972,29 @@
 
 
 // Entry rule entryRuleNullLiteralExpCS
-entryRuleNullLiteralExpCS returns [EObject current=null] 
+entryRuleNullLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNullLiteralExpCSRule()); }
-	 iv_ruleNullLiteralExpCS=ruleNullLiteralExpCS 
-	 { $current=$iv_ruleNullLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleNullLiteralExpCS=ruleNullLiteralExpCS
+	 { $current=$iv_ruleNullLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule NullLiteralExpCS
-ruleNullLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNullLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0(),
             $current);
     }
-)	otherlv_1='null' 
+)	otherlv_1='null'
     {
     	newLeafNode(otherlv_1, grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
     }
@@ -6006,68 +6006,68 @@
 
 
 // Entry rule entryRuleTypeLiteralCS
-entryRuleTypeLiteralCS returns [EObject current=null] 
+entryRuleTypeLiteralCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeLiteralCSRule()); }
-	 iv_ruleTypeLiteralCS=ruleTypeLiteralCS 
-	 { $current=$iv_ruleTypeLiteralCS.current; } 
-	 EOF 
+	 iv_ruleTypeLiteralCS=ruleTypeLiteralCS
+	 { $current=$iv_ruleTypeLiteralCS.current; }
+	 EOF
 ;
 
 // Rule TypeLiteralCS
-ruleTypeLiteralCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeLiteralCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
     }
     this_PrimitiveTypeCS_0=rulePrimitiveTypeCS
-    { 
-        $current = $this_PrimitiveTypeCS_0.current; 
+    {
+        $current = $this_PrimitiveTypeCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
     }
     this_CollectionTypeCS_1=ruleCollectionTypeCS
-    { 
-        $current = $this_CollectionTypeCS_1.current; 
+    {
+        $current = $this_CollectionTypeCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
     }
     this_MapTypeCS_2=ruleMapTypeCS
-    { 
-        $current = $this_MapTypeCS_2.current; 
+    {
+        $current = $this_MapTypeCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
     }
     this_TupleTypeCS_3=ruleTupleTypeCS
-    { 
-        $current = $this_TupleTypeCS_3.current; 
+    {
+        $current = $this_TupleTypeCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -6078,44 +6078,44 @@
 
 
 // Entry rule entryRuleTypeLiteralWithMultiplicityCS
-entryRuleTypeLiteralWithMultiplicityCS returns [EObject current=null] 
+entryRuleTypeLiteralWithMultiplicityCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); }
-	 iv_ruleTypeLiteralWithMultiplicityCS=ruleTypeLiteralWithMultiplicityCS 
-	 { $current=$iv_ruleTypeLiteralWithMultiplicityCS.current; } 
-	 EOF 
+	 iv_ruleTypeLiteralWithMultiplicityCS=ruleTypeLiteralWithMultiplicityCS
+	 { $current=$iv_ruleTypeLiteralWithMultiplicityCS.current; }
+	 EOF
 ;
 
 // Rule TypeLiteralWithMultiplicityCS
-ruleTypeLiteralWithMultiplicityCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeLiteralWithMultiplicityCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
     }
     this_TypeLiteralCS_0=ruleTypeLiteralCS
-    { 
-        $current = $this_TypeLiteralCS_0.current; 
+    {
+        $current = $this_TypeLiteralCS_0.current;
         afterParserOrEnumRuleCall();
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
 	    }
 		lv_ownedMultiplicity_1_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_1_0, 
+        		lv_ownedMultiplicity_1_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6129,32 +6129,32 @@
 
 
 // Entry rule entryRuleTypeLiteralExpCS
-entryRuleTypeLiteralExpCS returns [EObject current=null] 
+entryRuleTypeLiteralExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeLiteralExpCSRule()); }
-	 iv_ruleTypeLiteralExpCS=ruleTypeLiteralExpCS 
-	 { $current=$iv_ruleTypeLiteralExpCS.current; } 
-	 EOF 
+	 iv_ruleTypeLiteralExpCS=ruleTypeLiteralExpCS
+	 { $current=$iv_ruleTypeLiteralExpCS.current; }
+	 EOF
 ;
 
 // Rule TypeLiteralExpCS
-ruleTypeLiteralExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeLiteralExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
 	    }
 		lv_ownedType_0_0=ruleTypeLiteralWithMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeLiteralExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_0_0, 
+        		lv_ownedType_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeLiteralWithMultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6168,32 +6168,32 @@
 
 
 // Entry rule entryRuleTypeNameExpCS
-entryRuleTypeNameExpCS returns [EObject current=null] 
+entryRuleTypeNameExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeNameExpCSRule()); }
-	 iv_ruleTypeNameExpCS=ruleTypeNameExpCS 
-	 { $current=$iv_ruleTypeNameExpCS.current; } 
-	 EOF 
+	 iv_ruleTypeNameExpCS=ruleTypeNameExpCS
+	 { $current=$iv_ruleTypeNameExpCS.current; }
+	 EOF
 ;
 
 // Rule TypeNameExpCS
-ruleTypeNameExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeNameExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathName_0_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_0_0, 
+        		lv_ownedPathName_0_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6201,45 +6201,45 @@
 )
 )((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
 	    }
 		lv_ownedCurlyBracketedClause_1_0=ruleCurlyBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCurlyBracketedClause",
-        		lv_ownedCurlyBracketedClause_1_0, 
+        		lv_ownedCurlyBracketedClause_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2='{' 
+)(	otherlv_2='{'
     {
     	newLeafNode(otherlv_2, grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
 	    }
 		lv_ownedPatternGuard_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPatternGuard",
-        		lv_ownedPatternGuard_3_0, 
+        		lv_ownedPatternGuard_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_4='}' 
+)	otherlv_4='}'
     {
     	newLeafNode(otherlv_4, grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
     }
@@ -6251,70 +6251,70 @@
 
 
 // Entry rule entryRuleTypeExpCS
-entryRuleTypeExpCS returns [EObject current=null] 
+entryRuleTypeExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeExpCSRule()); }
-	 iv_ruleTypeExpCS=ruleTypeExpCS 
-	 { $current=$iv_ruleTypeExpCS.current; } 
-	 EOF 
+	 iv_ruleTypeExpCS=ruleTypeExpCS
+	 { $current=$iv_ruleTypeExpCS.current; }
+	 EOF
 ;
 
 // Rule TypeExpCS
-ruleTypeExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
     }
     this_TypeNameExpCS_0=ruleTypeNameExpCS
-    { 
-        $current = $this_TypeNameExpCS_0.current; 
+    {
+        $current = $this_TypeNameExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
     }
     this_TypeLiteralCS_1=ruleTypeLiteralCS
-    { 
-        $current = $this_TypeLiteralCS_1.current; 
+    {
+        $current = $this_TypeLiteralCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
+    {
+        newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
     }
     this_CollectionPatternCS_2=ruleCollectionPatternCS
-    { 
-        $current = $this_CollectionPatternCS_2.current; 
+    {
+        $current = $this_CollectionPatternCS_2.current;
         afterParserOrEnumRuleCall();
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
 	    }
 		lv_ownedMultiplicity_3_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_3_0, 
+        		lv_ownedMultiplicity_3_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6328,34 +6328,34 @@
 
 
 // Entry rule entryRuleExpCS
-entryRuleExpCS returns [EObject current=null] 
+entryRuleExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getExpCSRule()); }
-	 iv_ruleExpCS=ruleExpCS 
-	 { $current=$iv_ruleExpCS.current; } 
-	 EOF 
+	 iv_ruleExpCS=ruleExpCS
+	 { $current=$iv_ruleExpCS.current; }
+	 EOF
 ;
 
 // Rule ExpCS
-ruleExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
+    {
+        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
     }
     this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS
-    { 
-        $current = $this_PrefixedPrimaryExpCS_0.current; 
+    {
+        $current = $this_PrefixedPrimaryExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElementAndSet(
@@ -6364,17 +6364,17 @@
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
 	    }
 		lv_name_2_0=ruleBinaryOperatorName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_2_0, 
+        		lv_name_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.BinaryOperatorName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6382,17 +6382,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
 	    }
 		lv_ownedRight_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRight",
-        		lv_ownedRight_3_0, 
+        		lv_ownedRight_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6400,15 +6400,15 @@
 )
 ))?)
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
     }
     this_PrefixedLetExpCS_4=rulePrefixedLetExpCS
-    { 
-        $current = $this_PrefixedLetExpCS_4.current; 
+    {
+        $current = $this_PrefixedLetExpCS_4.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -6419,22 +6419,22 @@
 
 
 // Entry rule entryRulePrefixedLetExpCS
-entryRulePrefixedLetExpCS returns [EObject current=null] 
+entryRulePrefixedLetExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrefixedLetExpCSRule()); }
-	 iv_rulePrefixedLetExpCS=rulePrefixedLetExpCS 
-	 { $current=$iv_rulePrefixedLetExpCS.current; } 
-	 EOF 
+	 iv_rulePrefixedLetExpCS=rulePrefixedLetExpCS
+	 { $current=$iv_rulePrefixedLetExpCS.current; }
+	 EOF
 ;
 
 // Rule PrefixedLetExpCS
-rulePrefixedLetExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrefixedLetExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
@@ -6443,17 +6443,17 @@
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
 	    }
 		lv_name_1_0=ruleUnaryOperatorName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6461,17 +6461,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
 	    }
 		lv_ownedRight_2_0=rulePrefixedLetExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRight",
-        		lv_ownedRight_2_0, 
+        		lv_ownedRight_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedLetExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6479,15 +6479,15 @@
 )
 ))
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
     }
     this_LetExpCS_3=ruleLetExpCS
-    { 
-        $current = $this_LetExpCS_3.current; 
+    {
+        $current = $this_LetExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -6498,22 +6498,22 @@
 
 
 // Entry rule entryRulePrefixedPrimaryExpCS
-entryRulePrefixedPrimaryExpCS returns [EObject current=null] 
+entryRulePrefixedPrimaryExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSRule()); }
-	 iv_rulePrefixedPrimaryExpCS=rulePrefixedPrimaryExpCS 
-	 { $current=$iv_rulePrefixedPrimaryExpCS.current; } 
-	 EOF 
+	 iv_rulePrefixedPrimaryExpCS=rulePrefixedPrimaryExpCS
+	 { $current=$iv_rulePrefixedPrimaryExpCS.current; }
+	 EOF
 ;
 
 // Rule PrefixedPrimaryExpCS
-rulePrefixedPrimaryExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrefixedPrimaryExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
@@ -6522,17 +6522,17 @@
     }
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
 	    }
 		lv_name_1_0=ruleUnaryOperatorName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_1_0, 
+        		lv_name_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6540,17 +6540,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
 	    }
 		lv_ownedRight_2_0=rulePrefixedPrimaryExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRight",
-        		lv_ownedRight_2_0, 
+        		lv_ownedRight_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedPrimaryExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6558,15 +6558,15 @@
 )
 ))
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
     }
     this_PrimaryExpCS_3=rulePrimaryExpCS
-    { 
-        $current = $this_PrimaryExpCS_3.current; 
+    {
+        $current = $this_PrimaryExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -6577,146 +6577,146 @@
 
 
 // Entry rule entryRulePrimaryExpCS
-entryRulePrimaryExpCS returns [EObject current=null] 
+entryRulePrimaryExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPrimaryExpCSRule()); }
-	 iv_rulePrimaryExpCS=rulePrimaryExpCS 
-	 { $current=$iv_rulePrimaryExpCS.current; } 
-	 EOF 
+	 iv_rulePrimaryExpCS=rulePrimaryExpCS
+	 { $current=$iv_rulePrimaryExpCS.current; }
+	 EOF
 ;
 
 // Rule PrimaryExpCS
-rulePrimaryExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePrimaryExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
     }
     this_NestedExpCS_0=ruleNestedExpCS
-    { 
-        $current = $this_NestedExpCS_0.current; 
+    {
+        $current = $this_NestedExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
     }
     this_IfExpCS_1=ruleIfExpCS
-    { 
-        $current = $this_IfExpCS_1.current; 
+    {
+        $current = $this_IfExpCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
     }
     this_SelfExpCS_2=ruleSelfExpCS
-    { 
-        $current = $this_SelfExpCS_2.current; 
+    {
+        $current = $this_SelfExpCS_2.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
     }
     this_PrimitiveLiteralExpCS_3=rulePrimitiveLiteralExpCS
-    { 
-        $current = $this_PrimitiveLiteralExpCS_3.current; 
+    {
+        $current = $this_PrimitiveLiteralExpCS_3.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
     }
     this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS
-    { 
-        $current = $this_TupleLiteralExpCS_4.current; 
+    {
+        $current = $this_TupleLiteralExpCS_4.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
     }
     this_MapLiteralExpCS_5=ruleMapLiteralExpCS
-    { 
-        $current = $this_MapLiteralExpCS_5.current; 
+    {
+        $current = $this_MapLiteralExpCS_5.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
     }
     this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS
-    { 
-        $current = $this_CollectionLiteralExpCS_6.current; 
+    {
+        $current = $this_CollectionLiteralExpCS_6.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
     }
     this_LambdaLiteralExpCS_7=ruleLambdaLiteralExpCS
-    { 
-        $current = $this_LambdaLiteralExpCS_7.current; 
+    {
+        $current = $this_LambdaLiteralExpCS_7.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
     }
     this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS
-    { 
-        $current = $this_TypeLiteralExpCS_8.current; 
+    {
+        $current = $this_TypeLiteralExpCS_8.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
+    {
+        newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
     }
     this_NameExpCS_9=ruleNameExpCS
-    { 
-        $current = $this_NameExpCS_9.current; 
+    {
+        $current = $this_NameExpCS_9.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -6727,32 +6727,32 @@
 
 
 // Entry rule entryRuleNameExpCS
-entryRuleNameExpCS returns [EObject current=null] 
+entryRuleNameExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNameExpCSRule()); }
-	 iv_ruleNameExpCS=ruleNameExpCS 
-	 { $current=$iv_ruleNameExpCS.current; } 
-	 EOF 
+	 iv_ruleNameExpCS=ruleNameExpCS
+	 { $current=$iv_ruleNameExpCS.current; }
+	 EOF
 ;
 
 // Rule NameExpCS
-ruleNameExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNameExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathName_0_0=rulePathNameCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedPathName",
-        		lv_ownedPathName_0_0, 
+        		lv_ownedPathName_0_0,
         		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6760,17 +6760,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
 	    }
 		lv_ownedSquareBracketedClauses_1_0=ruleSquareBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSquareBracketedClauses",
-        		lv_ownedSquareBracketedClauses_1_0, 
+        		lv_ownedSquareBracketedClauses_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.SquareBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6778,17 +6778,17 @@
 )
 )*(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
 	    }
 		lv_ownedRoundBracketedClause_2_0=ruleRoundBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRoundBracketedClause",
-        		lv_ownedRoundBracketedClause_2_0, 
+        		lv_ownedRoundBracketedClause_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6796,17 +6796,17 @@
 )
 )?(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
 	    }
 		lv_ownedCurlyBracketedClause_3_0=ruleCurlyBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNameExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCurlyBracketedClause",
-        		lv_ownedCurlyBracketedClause_3_0, 
+        		lv_ownedCurlyBracketedClause_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6814,11 +6814,11 @@
 )
 )?((
 (
-		lv_isPre_4_0=	'@' 
+		lv_isPre_4_0=	'@'
     {
         newLeafNode(lv_isPre_4_0, grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNameExpCSRule());
@@ -6827,7 +6827,7 @@
 	    }
 
 )
-)	otherlv_5='pre' 
+)	otherlv_5='pre'
     {
     	newLeafNode(otherlv_5, grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
     }
@@ -6839,67 +6839,67 @@
 
 
 // Entry rule entryRuleCurlyBracketedClauseCS
-entryRuleCurlyBracketedClauseCS returns [EObject current=null] 
+entryRuleCurlyBracketedClauseCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getCurlyBracketedClauseCSRule()); }
-	 iv_ruleCurlyBracketedClauseCS=ruleCurlyBracketedClauseCS 
-	 { $current=$iv_ruleCurlyBracketedClauseCS.current; } 
-	 EOF 
+	 iv_ruleCurlyBracketedClauseCS=ruleCurlyBracketedClauseCS
+	 { $current=$iv_ruleCurlyBracketedClauseCS.current; }
+	 EOF
 ;
 
 // Rule CurlyBracketedClauseCS
-ruleCurlyBracketedClauseCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleCurlyBracketedClauseCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0(),
             $current);
     }
-)	otherlv_1='{' 
+)	otherlv_1='{'
     {
     	newLeafNode(otherlv_1, grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
     }
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
 	    }
 		lv_ownedParts_2_0=ruleShadowPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_2_0, 
+        		lv_ownedParts_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3=',' 
+)(	otherlv_3=','
     {
     	newLeafNode(otherlv_3, grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
 	    }
 		lv_ownedParts_4_0=ruleShadowPartCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParts",
-        		lv_ownedParts_4_0, 
+        		lv_ownedParts_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6908,23 +6908,23 @@
 ))*)?
     |(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
 	    }
 		lv_value_5_0=ruleStringLiteral		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"value",
-        		lv_value_5_0, 
+        		lv_value_5_0,
         		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))	otherlv_6='}' 
+))	otherlv_6='}'
     {
     	newLeafNode(otherlv_6, grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
     }
@@ -6936,45 +6936,45 @@
 
 
 // Entry rule entryRuleRoundBracketedClauseCS
-entryRuleRoundBracketedClauseCS returns [EObject current=null] 
+entryRuleRoundBracketedClauseCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getRoundBracketedClauseCSRule()); }
-	 iv_ruleRoundBracketedClauseCS=ruleRoundBracketedClauseCS 
-	 { $current=$iv_ruleRoundBracketedClauseCS.current; } 
-	 EOF 
+	 iv_ruleRoundBracketedClauseCS=ruleRoundBracketedClauseCS
+	 { $current=$iv_ruleRoundBracketedClauseCS.current; }
+	 EOF
 ;
 
 // Rule RoundBracketedClauseCS
-ruleRoundBracketedClauseCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleRoundBracketedClauseCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0(),
             $current);
     }
-)	otherlv_1='(' 
+)	otherlv_1='('
     {
     	newLeafNode(otherlv_1, grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
     }
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
 	    }
 		lv_ownedArguments_2_0=ruleNavigatingArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_2_0, 
+        		lv_ownedArguments_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -6982,17 +6982,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedArguments_3_0=ruleNavigatingCommaArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_3_0, 
+        		lv_ownedArguments_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7000,17 +7000,17 @@
 )
 )*((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
 	    }
 		lv_ownedArguments_4_0=ruleNavigatingSemiArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_4_0, 
+        		lv_ownedArguments_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingSemiArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7018,17 +7018,17 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
 	    }
 		lv_ownedArguments_5_0=ruleNavigatingCommaArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_5_0, 
+        		lv_ownedArguments_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7036,17 +7036,17 @@
 )
 )*)?((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
 	    }
 		lv_ownedArguments_6_0=ruleNavigatingBarArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_6_0, 
+        		lv_ownedArguments_6_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingBarArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7054,23 +7054,23 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
 	    }
 		lv_ownedArguments_7_0=ruleNavigatingCommaArgCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedArguments",
-        		lv_ownedArguments_7_0, 
+        		lv_ownedArguments_7_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*)*)?	otherlv_8=')' 
+)*)*)?	otherlv_8=')'
     {
     	newLeafNode(otherlv_8, grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
     }
@@ -7082,64 +7082,64 @@
 
 
 // Entry rule entryRuleSquareBracketedClauseCS
-entryRuleSquareBracketedClauseCS returns [EObject current=null] 
+entryRuleSquareBracketedClauseCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getSquareBracketedClauseCSRule()); }
-	 iv_ruleSquareBracketedClauseCS=ruleSquareBracketedClauseCS 
-	 { $current=$iv_ruleSquareBracketedClauseCS.current; } 
-	 EOF 
+	 iv_ruleSquareBracketedClauseCS=ruleSquareBracketedClauseCS
+	 { $current=$iv_ruleSquareBracketedClauseCS.current; }
+	 EOF
 ;
 
 // Rule SquareBracketedClauseCS
-ruleSquareBracketedClauseCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleSquareBracketedClauseCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='[' 
+(	otherlv_0='['
     {
     	newLeafNode(otherlv_0, grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedTerms_1_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedTerms",
-        		lv_ownedTerms_1_0, 
+        		lv_ownedTerms_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=',' 
+)(	otherlv_2=','
     {
     	newLeafNode(otherlv_2, grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedTerms_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedTerms",
-        		lv_ownedTerms_3_0, 
+        		lv_ownedTerms_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_4=']' 
+))*	otherlv_4=']'
     {
     	newLeafNode(otherlv_4, grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
     }
@@ -7151,122 +7151,122 @@
 
 
 // Entry rule entryRuleNavigatingArgCS
-entryRuleNavigatingArgCS returns [EObject current=null] 
+entryRuleNavigatingArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingArgCSRule()); }
-	 iv_ruleNavigatingArgCS=ruleNavigatingArgCS 
-	 { $current=$iv_ruleNavigatingArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingArgCS=ruleNavigatingArgCS
+	 { $current=$iv_ruleNavigatingArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingArgCS
-ruleNavigatingArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
 	    }
 		lv_ownedNameExpression_0_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_0_0, 
+        		lv_ownedNameExpression_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)((	otherlv_1=':' 
+)((	otherlv_1=':'
     {
     	newLeafNode(otherlv_1, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
 	    }
 		lv_ownedType_2_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_2_0, 
+        		lv_ownedType_2_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3='=' 
+)(	otherlv_3='='
     {
     	newLeafNode(otherlv_3, grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
 	    }
 		lv_ownedInitExpression_4_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_4_0, 
+        		lv_ownedInitExpression_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 ))?)
-    |(	otherlv_5='in' 
+    |(	otherlv_5='in'
     {
     	newLeafNode(otherlv_5, grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
 	    }
 		lv_ownedInitExpression_6_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_6_0, 
+        		lv_ownedInitExpression_6_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 )))?)
-    |(	otherlv_7=':' 
+    |(	otherlv_7=':'
     {
     	newLeafNode(otherlv_7, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedType_8_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_8_0, 
+        		lv_ownedType_8_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7280,26 +7280,26 @@
 
 
 // Entry rule entryRuleNavigatingBarArgCS
-entryRuleNavigatingBarArgCS returns [EObject current=null] 
+entryRuleNavigatingBarArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingBarArgCSRule()); }
-	 iv_ruleNavigatingBarArgCS=ruleNavigatingBarArgCS 
-	 { $current=$iv_ruleNavigatingBarArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingBarArgCS=ruleNavigatingBarArgCS
+	 { $current=$iv_ruleNavigatingBarArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingBarArgCS
-ruleNavigatingBarArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingBarArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_prefix_0_0=	'|' 
+		lv_prefix_0_0=	'|'
     {
         newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNavigatingBarArgCSRule());
@@ -7310,61 +7310,61 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_1_0, 
+        		lv_ownedNameExpression_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=':' 
+)(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_4='=' 
+)(	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7378,26 +7378,26 @@
 
 
 // Entry rule entryRuleNavigatingCommaArgCS
-entryRuleNavigatingCommaArgCS returns [EObject current=null] 
+entryRuleNavigatingCommaArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingCommaArgCSRule()); }
-	 iv_ruleNavigatingCommaArgCS=ruleNavigatingCommaArgCS 
-	 { $current=$iv_ruleNavigatingCommaArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingCommaArgCS=ruleNavigatingCommaArgCS
+	 { $current=$iv_ruleNavigatingCommaArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingCommaArgCS
-ruleNavigatingCommaArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingCommaArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_prefix_0_0=	',' 
+		lv_prefix_0_0=	','
     {
         newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNavigatingCommaArgCSRule());
@@ -7408,84 +7408,84 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_1_0, 
+        		lv_ownedNameExpression_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)((	otherlv_2=':' 
+)((	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_4='=' 
+)(	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
 ))?)
-    |(	otherlv_6='in' 
+    |(	otherlv_6='in'
     {
     	newLeafNode(otherlv_6, grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
 	    }
 		lv_ownedInitExpression_7_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_7_0, 
+        		lv_ownedInitExpression_7_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7499,26 +7499,26 @@
 
 
 // Entry rule entryRuleNavigatingSemiArgCS
-entryRuleNavigatingSemiArgCS returns [EObject current=null] 
+entryRuleNavigatingSemiArgCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingSemiArgCSRule()); }
-	 iv_ruleNavigatingSemiArgCS=ruleNavigatingSemiArgCS 
-	 { $current=$iv_ruleNavigatingSemiArgCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingSemiArgCS=ruleNavigatingSemiArgCS
+	 { $current=$iv_ruleNavigatingSemiArgCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingSemiArgCS
-ruleNavigatingSemiArgCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingSemiArgCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		lv_prefix_0_0=	';' 
+		lv_prefix_0_0=	';'
     {
         newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNavigatingSemiArgCSRule());
@@ -7529,61 +7529,61 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedNameExpression",
-        		lv_ownedNameExpression_1_0, 
+        		lv_ownedNameExpression_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=':' 
+)(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_4='=' 
+)(	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7597,29 +7597,29 @@
 
 
 // Entry rule entryRuleNavigatingArgExpCS
-entryRuleNavigatingArgExpCS returns [EObject current=null] 
+entryRuleNavigatingArgExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNavigatingArgExpCSRule()); }
-	 iv_ruleNavigatingArgExpCS=ruleNavigatingArgExpCS 
-	 { $current=$iv_ruleNavigatingArgExpCS.current; } 
-	 EOF 
+	 iv_ruleNavigatingArgExpCS=ruleNavigatingArgExpCS
+	 { $current=$iv_ruleNavigatingArgExpCS.current; }
+	 EOF
 ;
 
 // Rule NavigatingArgExpCS
-ruleNavigatingArgExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNavigatingArgExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall()); 
+    {
+        newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall());
     }
     this_ExpCS_0=ruleExpCS
-    { 
-        $current = $this_ExpCS_0.current; 
+    {
+        $current = $this_ExpCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
@@ -7630,52 +7630,52 @@
 
 
 // Entry rule entryRuleIfExpCS
-entryRuleIfExpCS returns [EObject current=null] 
+entryRuleIfExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getIfExpCSRule()); }
-	 iv_ruleIfExpCS=ruleIfExpCS 
-	 { $current=$iv_ruleIfExpCS.current; } 
-	 EOF 
+	 iv_ruleIfExpCS=ruleIfExpCS
+	 { $current=$iv_ruleIfExpCS.current; }
+	 EOF
 ;
 
 // Rule IfExpCS
-ruleIfExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleIfExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='if' 
+(	otherlv_0='if'
     {
     	newLeafNode(otherlv_0, grammarAccess.getIfExpCSAccess().getIfKeyword_0());
     }
 (
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
 	    }
 		lv_ownedCondition_1_1=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCondition",
-        		lv_ownedCondition_1_1, 
+        		lv_ownedCondition_1_1,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
-    |		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
+    |		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
 	    }
 		lv_ownedCondition_1_2=rulePatternExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCondition",
-        		lv_ownedCondition_1_2, 
+        		lv_ownedCondition_1_2,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7683,23 +7683,23 @@
 )
 
 )
-)	otherlv_2='then' 
+)	otherlv_2='then'
     {
     	newLeafNode(otherlv_2, grammarAccess.getIfExpCSAccess().getThenKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
 	    }
 		lv_ownedThenExpression_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedThenExpression",
-        		lv_ownedThenExpression_3_0, 
+        		lv_ownedThenExpression_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7707,45 +7707,45 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
 	    }
 		lv_ownedIfThenExpressions_4_0=ruleElseIfThenExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedIfThenExpressions",
-        		lv_ownedIfThenExpressions_4_0, 
+        		lv_ownedIfThenExpressions_4_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ElseIfThenExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)*	otherlv_5='else' 
+)*	otherlv_5='else'
     {
     	newLeafNode(otherlv_5, grammarAccess.getIfExpCSAccess().getElseKeyword_5());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
+		{
+	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
 	    }
 		lv_ownedElseExpression_6_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getIfExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedElseExpression",
-        		lv_ownedElseExpression_6_0, 
+        		lv_ownedElseExpression_6_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_7='endif' 
+)	otherlv_7='endif'
     {
     	newLeafNode(otherlv_7, grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
     }
@@ -7757,58 +7757,58 @@
 
 
 // Entry rule entryRuleElseIfThenExpCS
-entryRuleElseIfThenExpCS returns [EObject current=null] 
+entryRuleElseIfThenExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getElseIfThenExpCSRule()); }
-	 iv_ruleElseIfThenExpCS=ruleElseIfThenExpCS 
-	 { $current=$iv_ruleElseIfThenExpCS.current; } 
-	 EOF 
+	 iv_ruleElseIfThenExpCS=ruleElseIfThenExpCS
+	 { $current=$iv_ruleElseIfThenExpCS.current; }
+	 EOF
 ;
 
 // Rule ElseIfThenExpCS
-ruleElseIfThenExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleElseIfThenExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='elseif' 
+(	otherlv_0='elseif'
     {
     	newLeafNode(otherlv_0, grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedCondition_1_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedCondition",
-        		lv_ownedCondition_1_0, 
+        		lv_ownedCondition_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_2='then' 
+)	otherlv_2='then'
     {
     	newLeafNode(otherlv_2, grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
+		{
+	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
 	    }
 		lv_ownedThenExpression_3_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedThenExpression",
-        		lv_ownedThenExpression_3_0, 
+        		lv_ownedThenExpression_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7822,80 +7822,80 @@
 
 
 // Entry rule entryRuleLetExpCS
-entryRuleLetExpCS returns [EObject current=null] 
+entryRuleLetExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLetExpCSRule()); }
-	 iv_ruleLetExpCS=ruleLetExpCS 
-	 { $current=$iv_ruleLetExpCS.current; } 
-	 EOF 
+	 iv_ruleLetExpCS=ruleLetExpCS
+	 { $current=$iv_ruleLetExpCS.current; }
+	 EOF
 ;
 
 // Rule LetExpCS
-ruleLetExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLetExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='let' 
+(	otherlv_0='let'
     {
     	newLeafNode(otherlv_0, grammarAccess.getLetExpCSAccess().getLetKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
 	    }
 		lv_ownedVariables_1_0=ruleLetVariableCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedVariables",
-        		lv_ownedVariables_1_0, 
+        		lv_ownedVariables_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=',' 
+)(	otherlv_2=','
     {
     	newLeafNode(otherlv_2, grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedVariables_3_0=ruleLetVariableCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetExpCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedVariables",
-        		lv_ownedVariables_3_0, 
+        		lv_ownedVariables_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_4='in' 
+))*	otherlv_4='in'
     {
     	newLeafNode(otherlv_4, grammarAccess.getLetExpCSAccess().getInKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
 	    }
 		lv_ownedInExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInExpression",
-        		lv_ownedInExpression_5_0, 
+        		lv_ownedInExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7909,32 +7909,32 @@
 
 
 // Entry rule entryRuleLetVariableCS
-entryRuleLetVariableCS returns [EObject current=null] 
+entryRuleLetVariableCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getLetVariableCSRule()); }
-	 iv_ruleLetVariableCS=ruleLetVariableCS 
-	 { $current=$iv_ruleLetVariableCS.current; } 
-	 EOF 
+	 iv_ruleLetVariableCS=ruleLetVariableCS
+	 { $current=$iv_ruleLetVariableCS.current; }
+	 EOF
 ;
 
 // Rule LetVariableCS
-ruleLetVariableCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleLetVariableCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -7942,61 +7942,61 @@
 )
 )(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
 	    }
 		lv_ownedRoundBracketedClause_1_0=ruleRoundBracketedClauseCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedRoundBracketedClause",
-        		lv_ownedRoundBracketedClause_1_0, 
+        		lv_ownedRoundBracketedClause_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)?(	otherlv_2=':' 
+)?(	otherlv_2=':'
     {
     	newLeafNode(otherlv_2, grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedType_3_0=ruleTypeExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedType",
-        		lv_ownedType_3_0, 
+        		lv_ownedType_3_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))?	otherlv_4='=' 
+))?	otherlv_4='='
     {
     	newLeafNode(otherlv_4, grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
+		{
+	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
 	    }
 		lv_ownedInitExpression_5_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedInitExpression",
-        		lv_ownedInitExpression_5_0, 
+        		lv_ownedInitExpression_5_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8010,42 +8010,42 @@
 
 
 // Entry rule entryRuleNestedExpCS
-entryRuleNestedExpCS returns [EObject current=null] 
+entryRuleNestedExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNestedExpCSRule()); }
-	 iv_ruleNestedExpCS=ruleNestedExpCS 
-	 { $current=$iv_ruleNestedExpCS.current; } 
-	 EOF 
+	 iv_ruleNestedExpCS=ruleNestedExpCS
+	 { $current=$iv_ruleNestedExpCS.current; }
+	 EOF
 ;
 
 // Rule NestedExpCS
-ruleNestedExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNestedExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='(' 
+(	otherlv_0='('
     {
     	newLeafNode(otherlv_0, grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
 	    }
 		lv_ownedExpression_1_0=ruleExpCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getNestedExpCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExpression",
-        		lv_ownedExpression_1_0, 
+        		lv_ownedExpression_1_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)	otherlv_2=')' 
+)	otherlv_2=')'
     {
     	newLeafNode(otherlv_2, grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
     }
@@ -8057,29 +8057,29 @@
 
 
 // Entry rule entryRuleSelfExpCS
-entryRuleSelfExpCS returns [EObject current=null] 
+entryRuleSelfExpCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getSelfExpCSRule()); }
-	 iv_ruleSelfExpCS=ruleSelfExpCS 
-	 { $current=$iv_ruleSelfExpCS.current; } 
-	 EOF 
+	 iv_ruleSelfExpCS=ruleSelfExpCS
+	 { $current=$iv_ruleSelfExpCS.current; }
+	 EOF
 ;
 
 // Rule SelfExpCS
-ruleSelfExpCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleSelfExpCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0(),
             $current);
     }
-)	otherlv_1='self' 
+)	otherlv_1='self'
     {
     	newLeafNode(otherlv_1, grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
     }
@@ -8091,54 +8091,54 @@
 
 
 // Entry rule entryRuleMultiplicityBoundsCS
-entryRuleMultiplicityBoundsCS returns [EObject current=null] 
+entryRuleMultiplicityBoundsCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule()); }
-	 iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS 
-	 { $current=$iv_ruleMultiplicityBoundsCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS
+	 { $current=$iv_ruleMultiplicityBoundsCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityBoundsCS
-ruleMultiplicityBoundsCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityBoundsCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
 	    }
 		lv_lowerBound_0_0=ruleLOWER		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"lowerBound",
-        		lv_lowerBound_0_0, 
+        		lv_lowerBound_0_0,
         		"org.eclipse.ocl.xtext.base.Base.LOWER");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='..' 
+)(	otherlv_1='..'
     {
     	newLeafNode(otherlv_1, grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
 	    }
 		lv_upperBound_2_0=ruleUPPER		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"upperBound",
-        		lv_upperBound_2_0, 
+        		lv_upperBound_2_0,
         		"org.eclipse.ocl.xtext.base.Base.UPPER");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8152,60 +8152,60 @@
 
 
 // Entry rule entryRuleMultiplicityCS
-entryRuleMultiplicityCS returns [EObject current=null] 
+entryRuleMultiplicityCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityCSRule()); }
-	 iv_ruleMultiplicityCS=ruleMultiplicityCS 
-	 { $current=$iv_ruleMultiplicityCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityCS=ruleMultiplicityCS
+	 { $current=$iv_ruleMultiplicityCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityCS
-ruleMultiplicityCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='[' 
+(	otherlv_0='['
     {
     	newLeafNode(otherlv_0, grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
     }
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
+    {
+        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
     }
     this_MultiplicityBoundsCS_1=ruleMultiplicityBoundsCS
-    { 
-        $current = $this_MultiplicityBoundsCS_1.current; 
+    {
+        $current = $this_MultiplicityBoundsCS_1.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
+    {
+        newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
     }
     this_MultiplicityStringCS_2=ruleMultiplicityStringCS
-    { 
-        $current = $this_MultiplicityStringCS_2.current; 
+    {
+        $current = $this_MultiplicityStringCS_2.current;
         afterParserOrEnumRuleCall();
     }
-)(	otherlv_3='|?' 
+)(	otherlv_3='|?'
     {
     	newLeafNode(otherlv_3, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
     }
 
     |(
 (
-		lv_isNullFree_4_0=	'|1' 
+		lv_isNullFree_4_0=	'|1'
     {
         newLeafNode(lv_isNullFree_4_0, grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityCSRule());
@@ -8214,7 +8214,7 @@
 	    }
 
 )
-))?	otherlv_5=']' 
+))?	otherlv_5=']'
     {
     	newLeafNode(otherlv_5, grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
     }
@@ -8226,27 +8226,27 @@
 
 
 // Entry rule entryRuleMultiplicityStringCS
-entryRuleMultiplicityStringCS returns [EObject current=null] 
+entryRuleMultiplicityStringCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getMultiplicityStringCSRule()); }
-	 iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS 
-	 { $current=$iv_ruleMultiplicityStringCS.current; } 
-	 EOF 
+	 iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS
+	 { $current=$iv_ruleMultiplicityStringCS.current; }
+	 EOF
 ;
 
 // Rule MultiplicityStringCS
-ruleMultiplicityStringCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleMultiplicityStringCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
 (
-		lv_stringBounds_0_1=	'*' 
+		lv_stringBounds_0_1=	'*'
     {
         newLeafNode(lv_stringBounds_0_1, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -8254,11 +8254,11 @@
        		setWithLastConsumed($current, "stringBounds", lv_stringBounds_0_1, null);
 	    }
 
-    |		lv_stringBounds_0_2=	'+' 
+    |		lv_stringBounds_0_2=	'+'
     {
         newLeafNode(lv_stringBounds_0_2, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -8266,11 +8266,11 @@
        		setWithLastConsumed($current, "stringBounds", lv_stringBounds_0_2, null);
 	    }
 
-    |		lv_stringBounds_0_3=	'?' 
+    |		lv_stringBounds_0_3=	'?'
     {
         newLeafNode(lv_stringBounds_0_3, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
     }
- 
+
 	    {
 	        if ($current==null) {
 	            $current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
@@ -8289,54 +8289,54 @@
 
 
 // Entry rule entryRulePathNameCS
-entryRulePathNameCS returns [EObject current=null] 
+entryRulePathNameCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getPathNameCSRule()); }
-	 iv_rulePathNameCS=rulePathNameCS 
-	 { $current=$iv_rulePathNameCS.current; } 
-	 EOF 
+	 iv_rulePathNameCS=rulePathNameCS
+	 { $current=$iv_rulePathNameCS.current; }
+	 EOF
 ;
 
 // Rule PathNameCS
-rulePathNameCS returns [EObject current=null] 
-    @init { enterRule(); 
+rulePathNameCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
 	    }
 		lv_ownedPathElements_0_0=ruleFirstPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_0_0, 
+        		lv_ownedPathElements_0_0,
         		"org.eclipse.ocl.xtext.base.Base.FirstPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='::' 
+)(	otherlv_1='::'
     {
     	newLeafNode(otherlv_1, grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedPathElements_2_0=ruleNextPathElementCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getPathNameCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedPathElements",
-        		lv_ownedPathElements_2_0, 
+        		lv_ownedPathElements_2_0,
         		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8350,33 +8350,33 @@
 
 
 // Entry rule entryRuleFirstPathElementCS
-entryRuleFirstPathElementCS returns [EObject current=null] 
+entryRuleFirstPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getFirstPathElementCSRule()); }
-	 iv_ruleFirstPathElementCS=ruleFirstPathElementCS 
-	 { $current=$iv_ruleFirstPathElementCS.current; } 
-	 EOF 
+	 iv_ruleFirstPathElementCS=ruleFirstPathElementCS
+	 { $current=$iv_ruleFirstPathElementCS.current; }
+	 EOF
 ;
 
 // Rule FirstPathElementCS
-ruleFirstPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleFirstPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getFirstPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+		{
+	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
 	    }
-		ruleUnrestrictedName		{ 
+		ruleUnrestrictedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -8389,33 +8389,33 @@
 
 
 // Entry rule entryRuleNextPathElementCS
-entryRuleNextPathElementCS returns [EObject current=null] 
+entryRuleNextPathElementCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getNextPathElementCSRule()); }
-	 iv_ruleNextPathElementCS=ruleNextPathElementCS 
-	 { $current=$iv_ruleNextPathElementCS.current; } 
-	 EOF 
+	 iv_ruleNextPathElementCS=ruleNextPathElementCS
+	 { $current=$iv_ruleNextPathElementCS.current; }
+	 EOF
 ;
 
 // Rule NextPathElementCS
-ruleNextPathElementCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleNextPathElementCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-		  /* */ 
+		{
+		  /* */
 		}
 		{
 			if ($current==null) {
 	            $current = createModelElement(grammarAccess.getNextPathElementCSRule());
 	        }
         }
-		{ 
-	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
+		{
+	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
 	    }
-		ruleUnreservedName		{ 
+		ruleUnreservedName		{
 	        afterParserOrEnumRuleCall();
 	    }
 
@@ -8428,54 +8428,54 @@
 
 
 // Entry rule entryRuleTemplateBindingCS
-entryRuleTemplateBindingCS returns [EObject current=null] 
+entryRuleTemplateBindingCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTemplateBindingCSRule()); }
-	 iv_ruleTemplateBindingCS=ruleTemplateBindingCS 
-	 { $current=$iv_ruleTemplateBindingCS.current; } 
-	 EOF 
+	 iv_ruleTemplateBindingCS=ruleTemplateBindingCS
+	 { $current=$iv_ruleTemplateBindingCS.current; }
+	 EOF
 ;
 
 // Rule TemplateBindingCS
-ruleTemplateBindingCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTemplateBindingCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
 	    }
 		lv_ownedSubstitutions_0_0=ruleTemplateParameterSubstitutionCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSubstitutions",
-        		lv_ownedSubstitutions_0_0, 
+        		lv_ownedSubstitutions_0_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1=',' 
+)(	otherlv_1=','
     {
     	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedSubstitutions_2_0=ruleTemplateParameterSubstitutionCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedSubstitutions",
-        		lv_ownedSubstitutions_2_0, 
+        		lv_ownedSubstitutions_2_0,
         		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8483,17 +8483,17 @@
 )
 ))*(
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
 	    }
 		lv_ownedMultiplicity_3_0=ruleMultiplicityCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedMultiplicity",
-        		lv_ownedMultiplicity_3_0, 
+        		lv_ownedMultiplicity_3_0,
         		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8507,32 +8507,32 @@
 
 
 // Entry rule entryRuleTemplateParameterSubstitutionCS
-entryRuleTemplateParameterSubstitutionCS returns [EObject current=null] 
+entryRuleTemplateParameterSubstitutionCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule()); }
-	 iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS 
-	 { $current=$iv_ruleTemplateParameterSubstitutionCS.current; } 
-	 EOF 
+	 iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS
+	 { $current=$iv_ruleTemplateParameterSubstitutionCS.current; }
+	 EOF
 ;
 
 // Rule TemplateParameterSubstitutionCS
-ruleTemplateParameterSubstitutionCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTemplateParameterSubstitutionCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
 	    }
 		lv_ownedActualParameter_0_0=ruleTypeRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateParameterSubstitutionCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedActualParameter",
-        		lv_ownedActualParameter_0_0, 
+        		lv_ownedActualParameter_0_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8546,64 +8546,64 @@
 
 
 // Entry rule entryRuleTemplateSignatureCS
-entryRuleTemplateSignatureCS returns [EObject current=null] 
+entryRuleTemplateSignatureCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTemplateSignatureCSRule()); }
-	 iv_ruleTemplateSignatureCS=ruleTemplateSignatureCS 
-	 { $current=$iv_ruleTemplateSignatureCS.current; } 
-	 EOF 
+	 iv_ruleTemplateSignatureCS=ruleTemplateSignatureCS
+	 { $current=$iv_ruleTemplateSignatureCS.current; }
+	 EOF
 ;
 
 // Rule TemplateSignatureCS
-ruleTemplateSignatureCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTemplateSignatureCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
-(	otherlv_0='(' 
+(	otherlv_0='('
     {
     	newLeafNode(otherlv_0, grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_0());
 	    }
 		lv_ownedParameters_1_0=ruleTypeParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_1_0, 
+        		lv_ownedParameters_1_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_2=',' 
+)(	otherlv_2=','
     {
     	newLeafNode(otherlv_2, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedParameters_3_0=ruleTypeParameterCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedParameters",
-        		lv_ownedParameters_3_0, 
+        		lv_ownedParameters_3_0,
         		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-))*	otherlv_4=')' 
+))*	otherlv_4=')'
     {
     	newLeafNode(otherlv_4, grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_3());
     }
@@ -8615,76 +8615,76 @@
 
 
 // Entry rule entryRuleTypeParameterCS
-entryRuleTypeParameterCS returns [EObject current=null] 
+entryRuleTypeParameterCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeParameterCSRule()); }
-	 iv_ruleTypeParameterCS=ruleTypeParameterCS 
-	 { $current=$iv_ruleTypeParameterCS.current; } 
-	 EOF 
+	 iv_ruleTypeParameterCS=ruleTypeParameterCS
+	 { $current=$iv_ruleTypeParameterCS.current; }
+	 EOF
 ;
 
 // Rule TypeParameterCS
-ruleTypeParameterCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeParameterCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
 	    }
 		lv_name_0_0=ruleUnrestrictedName		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"name",
-        		lv_name_0_0, 
+        		lv_name_0_0,
         		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_1='extends' 
+)(	otherlv_1='extends'
     {
     	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
 	    }
 		lv_ownedExtends_2_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_2_0, 
+        		lv_ownedExtends_2_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
 
 )
-)(	otherlv_3='&&' 
+)(	otherlv_3='&&'
     {
     	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
 	    }
 		lv_ownedExtends_4_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
 	        }
        		add(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_4_0, 
+        		lv_ownedExtends_4_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8698,42 +8698,42 @@
 
 
 // Entry rule entryRuleTypeRefCS
-entryRuleTypeRefCS returns [EObject current=null] 
+entryRuleTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getTypeRefCSRule()); }
-	 iv_ruleTypeRefCS=ruleTypeRefCS 
-	 { $current=$iv_ruleTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleTypeRefCS=ruleTypeRefCS
+	 { $current=$iv_ruleTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule TypeRefCS
-ruleTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
+    {
+        newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
     }
     this_TypedRefCS_0=ruleTypedRefCS
-    { 
-        $current = $this_TypedRefCS_0.current; 
+    {
+        $current = $this_TypedRefCS_0.current;
         afterParserOrEnumRuleCall();
     }
 
     |
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
-    { 
-        newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
+    {
+        newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
     }
     this_WildcardTypeRefCS_1=ruleWildcardTypeRefCS
-    { 
-        $current = $this_WildcardTypeRefCS_1.current; 
+    {
+        $current = $this_WildcardTypeRefCS_1.current;
         afterParserOrEnumRuleCall();
     }
 )
@@ -8744,49 +8744,49 @@
 
 
 // Entry rule entryRuleWildcardTypeRefCS
-entryRuleWildcardTypeRefCS returns [EObject current=null] 
+entryRuleWildcardTypeRefCS returns [EObject current=null]
 	:
 	{ newCompositeNode(grammarAccess.getWildcardTypeRefCSRule()); }
-	 iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS 
-	 { $current=$iv_ruleWildcardTypeRefCS.current; } 
-	 EOF 
+	 iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS
+	 { $current=$iv_ruleWildcardTypeRefCS.current; }
+	 EOF
 ;
 
 // Rule WildcardTypeRefCS
-ruleWildcardTypeRefCS returns [EObject current=null] 
-    @init { enterRule(); 
+ruleWildcardTypeRefCS returns [EObject current=null]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 ((
-	{ 
-	  /* */ 
+	{
+	  /* */
 	}
     {
         $current = forceCreateModelElement(
             grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0(),
             $current);
     }
-)	otherlv_1='?' 
+)	otherlv_1='?'
     {
     	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
     }
-(	otherlv_2='extends' 
+(	otherlv_2='extends'
     {
     	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
     }
 (
 (
-		{ 
-	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
+		{
+	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
 	    }
 		lv_ownedExtends_3_0=ruleTypedRefCS		{
 	        if ($current==null) {
 	            $current = createModelElementForParent(grammarAccess.getWildcardTypeRefCSRule());
 	        }
        		set(
-       			$current, 
+       			$current,
        			"ownedExtends",
-        		lv_ownedExtends_3_0, 
+        		lv_ownedExtends_3_0,
         		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedRefCS");
 	        afterParserOrEnumRuleCall();
 	    }
@@ -8800,33 +8800,33 @@
 
 
 // Entry rule entryRuleID
-entryRuleID returns [String current=null] 
+entryRuleID returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getIDRule()); } 
-	 iv_ruleID=ruleID 
-	 { $current=$iv_ruleID.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getIDRule()); }
+	 iv_ruleID=ruleID
+	 { $current=$iv_ruleID.current.getText(); }
+	 EOF
 ;
 
 // Rule ID
-ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (    this_SIMPLE_ID_0=RULE_SIMPLE_ID    {
 		$current.merge(this_SIMPLE_ID_0);
     }
 
-    { 
-    newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
+    {
+    newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
     }
 
     |    this_ESCAPED_ID_1=RULE_ESCAPED_ID    {
 		$current.merge(this_ESCAPED_ID_1);
     }
 
-    { 
-    newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
+    {
+    newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
     }
 )
     ;
@@ -8836,25 +8836,25 @@
 
 
 // Entry rule entryRuleLOWER
-entryRuleLOWER returns [String current=null] 
+entryRuleLOWER returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getLOWERRule()); } 
-	 iv_ruleLOWER=ruleLOWER 
-	 { $current=$iv_ruleLOWER.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getLOWERRule()); }
+	 iv_ruleLOWER=ruleLOWER
+	 { $current=$iv_ruleLOWER.current.getText(); }
+	 EOF
 ;
 
 // Rule LOWER
-ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleLOWER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
     }
 
     ;
@@ -8864,25 +8864,25 @@
 
 
 // Entry rule entryRuleNUMBER_LITERAL
-entryRuleNUMBER_LITERAL returns [String current=null] 
+entryRuleNUMBER_LITERAL returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getNUMBER_LITERALRule()); } 
-	 iv_ruleNUMBER_LITERAL=ruleNUMBER_LITERAL 
-	 { $current=$iv_ruleNUMBER_LITERAL.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getNUMBER_LITERALRule()); }
+	 iv_ruleNUMBER_LITERAL=ruleNUMBER_LITERAL
+	 { $current=$iv_ruleNUMBER_LITERAL.current.getText(); }
+	 EOF
 ;
 
 // Rule NUMBER_LITERAL
-ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleNUMBER_LITERAL returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
     }
 
     ;
@@ -8892,25 +8892,25 @@
 
 
 // Entry rule entryRuleStringLiteral
-entryRuleStringLiteral returns [String current=null] 
+entryRuleStringLiteral returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getStringLiteralRule()); } 
-	 iv_ruleStringLiteral=ruleStringLiteral 
-	 { $current=$iv_ruleStringLiteral.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getStringLiteralRule()); }
+	 iv_ruleStringLiteral=ruleStringLiteral
+	 { $current=$iv_ruleStringLiteral.current.getText(); }
+	 EOF
 ;
 
 // Rule StringLiteral
-ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleStringLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_SINGLE_QUOTED_STRING_0=RULE_SINGLE_QUOTED_STRING    {
 		$current.merge(this_SINGLE_QUOTED_STRING_0);
     }
 
-    { 
-    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+    {
+    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
     }
 
     ;
@@ -8920,32 +8920,32 @@
 
 
 // Entry rule entryRuleUPPER
-entryRuleUPPER returns [String current=null] 
+entryRuleUPPER returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getUPPERRule()); } 
-	 iv_ruleUPPER=ruleUPPER 
-	 { $current=$iv_ruleUPPER.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getUPPERRule()); }
+	 iv_ruleUPPER=ruleUPPER
+	 { $current=$iv_ruleUPPER.current.getText(); }
+	 EOF
 ;
 
 // Rule UPPER
-ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleUPPER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
 (    this_INT_0=RULE_INT    {
 		$current.merge(this_INT_0);
     }
 
-    { 
-    newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
+    {
+    newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
     }
 
     |
-	kw='*' 
+	kw='*'
     {
         $current.merge(kw);
-        newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
+        newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
     }
 )
     ;
@@ -8955,25 +8955,25 @@
 
 
 // Entry rule entryRuleURI
-entryRuleURI returns [String current=null] 
+entryRuleURI returns [String current=null]
 	:
-	{ newCompositeNode(grammarAccess.getURIRule()); } 
-	 iv_ruleURI=ruleURI 
-	 { $current=$iv_ruleURI.current.getText(); }  
-	 EOF 
+	{ newCompositeNode(grammarAccess.getURIRule()); }
+	 iv_ruleURI=ruleURI
+	 { $current=$iv_ruleURI.current.getText(); }
+	 EOF
 ;
 
 // Rule URI
-ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] 
-    @init { enterRule(); 
+ruleURI returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
+    @init { enterRule();
     }
     @after { leaveRule(); }:
     this_SINGLE_QUOTED_STRING_0=RULE_SINGLE_QUOTED_STRING    {
 		$current.merge(this_SINGLE_QUOTED_STRING_0);
     }
 
-    { 
-    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
+    {
+    newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
     }
 
     ;
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 60f2b1a..a29d5cb 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
@@ -1,6 +1,6 @@
 package org.eclipse.ocl.xtext.oclstdlib.parser.antlr.internal;
 
-// Hack: Use our own Lexer superclass by means of import. 
+// Hack: Use our own Lexer superclass by means of import.
 // Currently there is no other way to specify the superclass for the lexer.
 import org.eclipse.xtext.parser.antlr.Lexer;
 
@@ -121,7 +121,7 @@
     // delegates
     // delegators
 
-    public InternalOCLstdlibLexer() {;} 
+    public InternalOCLstdlibLexer() {;}
     public InternalOCLstdlibLexer(CharStream input) {
         this(input, new RecognizerSharedState());
     }
@@ -139,7 +139,7 @@
             // InternalOCLstdlib.g:11:7: ( ';' )
             // InternalOCLstdlib.g:11:9: ';'
             {
-            match(';'); 
+            match(';');
 
             }
 
@@ -159,7 +159,7 @@
             // InternalOCLstdlib.g:12:7: ( 'abstract' )
             // InternalOCLstdlib.g:12:9: 'abstract'
             {
-            match("abstract"); 
+            match("abstract");
 
 
             }
@@ -180,7 +180,7 @@
             // InternalOCLstdlib.g:13:7: ( 'annotation' )
             // InternalOCLstdlib.g:13:9: 'annotation'
             {
-            match("annotation"); 
+            match("annotation");
 
 
             }
@@ -201,7 +201,7 @@
             // InternalOCLstdlib.g:14:7: ( 'conformsTo' )
             // InternalOCLstdlib.g:14:9: 'conformsTo'
             {
-            match("conformsTo"); 
+            match("conformsTo");
 
 
             }
@@ -222,7 +222,7 @@
             // InternalOCLstdlib.g:15:7: ( 'documentation' )
             // InternalOCLstdlib.g:15:9: 'documentation'
             {
-            match("documentation"); 
+            match("documentation");
 
 
             }
@@ -243,7 +243,7 @@
             // InternalOCLstdlib.g:16:7: ( 'extends' )
             // InternalOCLstdlib.g:16:9: 'extends'
             {
-            match("extends"); 
+            match("extends");
 
 
             }
@@ -264,7 +264,7 @@
             // InternalOCLstdlib.g:17:7: ( 'import' )
             // InternalOCLstdlib.g:17:9: 'import'
             {
-            match("import"); 
+            match("import");
 
 
             }
@@ -285,7 +285,7 @@
             // InternalOCLstdlib.g:18:7: ( 'inv' )
             // InternalOCLstdlib.g:18:9: 'inv'
             {
-            match("inv"); 
+            match("inv");
 
 
             }
@@ -306,7 +306,7 @@
             // InternalOCLstdlib.g:19:7: ( 'invalidating' )
             // InternalOCLstdlib.g:19:9: 'invalidating'
             {
-            match("invalidating"); 
+            match("invalidating");
 
 
             }
@@ -327,7 +327,7 @@
             // InternalOCLstdlib.g:20:7: ( 'iteration' )
             // InternalOCLstdlib.g:20:9: 'iteration'
             {
-            match("iteration"); 
+            match("iteration");
 
 
             }
@@ -348,7 +348,7 @@
             // InternalOCLstdlib.g:21:7: ( 'left' )
             // InternalOCLstdlib.g:21:9: 'left'
             {
-            match("left"); 
+            match("left");
 
 
             }
@@ -369,7 +369,7 @@
             // InternalOCLstdlib.g:22:7: ( 'library' )
             // InternalOCLstdlib.g:22:9: 'library'
             {
-            match("library"); 
+            match("library");
 
 
             }
@@ -390,7 +390,7 @@
             // InternalOCLstdlib.g:23:7: ( 'operation' )
             // InternalOCLstdlib.g:23:9: 'operation'
             {
-            match("operation"); 
+            match("operation");
 
 
             }
@@ -411,7 +411,7 @@
             // InternalOCLstdlib.g:24:7: ( 'package' )
             // InternalOCLstdlib.g:24:9: 'package'
             {
-            match("package"); 
+            match("package");
 
 
             }
@@ -432,7 +432,7 @@
             // InternalOCLstdlib.g:25:7: ( 'post' )
             // InternalOCLstdlib.g:25:9: 'post'
             {
-            match("post"); 
+            match("post");
 
 
             }
@@ -453,7 +453,7 @@
             // InternalOCLstdlib.g:26:7: ( 'pre' )
             // InternalOCLstdlib.g:26:9: 'pre'
             {
-            match("pre"); 
+            match("pre");
 
 
             }
@@ -474,7 +474,7 @@
             // InternalOCLstdlib.g:27:7: ( 'precedence' )
             // InternalOCLstdlib.g:27:9: 'precedence'
             {
-            match("precedence"); 
+            match("precedence");
 
 
             }
@@ -495,7 +495,7 @@
             // InternalOCLstdlib.g:28:7: ( 'property' )
             // InternalOCLstdlib.g:28:9: 'property'
             {
-            match("property"); 
+            match("property");
 
 
             }
@@ -516,7 +516,7 @@
             // InternalOCLstdlib.g:29:7: ( 'right' )
             // InternalOCLstdlib.g:29:9: 'right'
             {
-            match("right"); 
+            match("right");
 
 
             }
@@ -537,7 +537,7 @@
             // InternalOCLstdlib.g:30:7: ( 'static' )
             // InternalOCLstdlib.g:30:9: 'static'
             {
-            match("static"); 
+            match("static");
 
 
             }
@@ -558,7 +558,7 @@
             // InternalOCLstdlib.g:31:7: ( 'type' )
             // InternalOCLstdlib.g:31:9: 'type'
             {
-            match("type"); 
+            match("type");
 
 
             }
@@ -579,7 +579,7 @@
             // InternalOCLstdlib.g:32:7: ( 'validating' )
             // InternalOCLstdlib.g:32:9: 'validating'
             {
-            match("validating"); 
+            match("validating");
 
 
             }
@@ -600,7 +600,7 @@
             // InternalOCLstdlib.g:33:7: ( 'Lambda' )
             // InternalOCLstdlib.g:33:9: 'Lambda'
             {
-            match("Lambda"); 
+            match("Lambda");
 
 
             }
@@ -621,7 +621,7 @@
             // InternalOCLstdlib.g:34:7: ( 'Map' )
             // InternalOCLstdlib.g:34:9: 'Map'
             {
-            match("Map"); 
+            match("Map");
 
 
             }
@@ -642,7 +642,7 @@
             // InternalOCLstdlib.g:35:7: ( 'Tuple' )
             // InternalOCLstdlib.g:35:9: 'Tuple'
             {
-            match("Tuple"); 
+            match("Tuple");
 
 
             }
@@ -663,7 +663,7 @@
             // InternalOCLstdlib.g:36:7: ( '::' )
             // InternalOCLstdlib.g:36:9: '::'
             {
-            match("::"); 
+            match("::");
 
 
             }
@@ -684,7 +684,7 @@
             // InternalOCLstdlib.g:37:7: ( ':' )
             // InternalOCLstdlib.g:37:9: ':'
             {
-            match(':'); 
+            match(':');
 
             }
 
@@ -704,7 +704,7 @@
             // InternalOCLstdlib.g:38:7: ( '(' )
             // InternalOCLstdlib.g:38:9: '('
             {
-            match('('); 
+            match('(');
 
             }
 
@@ -724,7 +724,7 @@
             // InternalOCLstdlib.g:39:7: ( ',' )
             // InternalOCLstdlib.g:39:9: ','
             {
-            match(','); 
+            match(',');
 
             }
 
@@ -744,7 +744,7 @@
             // InternalOCLstdlib.g:40:7: ( ')' )
             // InternalOCLstdlib.g:40:9: ')'
             {
-            match(')'); 
+            match(')');
 
             }
 
@@ -764,7 +764,7 @@
             // InternalOCLstdlib.g:41:7: ( '{' )
             // InternalOCLstdlib.g:41:9: '{'
             {
-            match('{'); 
+            match('{');
 
             }
 
@@ -784,7 +784,7 @@
             // InternalOCLstdlib.g:42:7: ( '}' )
             // InternalOCLstdlib.g:42:9: '}'
             {
-            match('}'); 
+            match('}');
 
             }
 
@@ -804,7 +804,7 @@
             // InternalOCLstdlib.g:43:7: ( '=' )
             // InternalOCLstdlib.g:43:9: '='
             {
-            match('='); 
+            match('=');
 
             }
 
@@ -824,7 +824,7 @@
             // InternalOCLstdlib.g:44:7: ( '::*' )
             // InternalOCLstdlib.g:44:9: '::*'
             {
-            match("::*"); 
+            match("::*");
 
 
             }
@@ -845,7 +845,7 @@
             // InternalOCLstdlib.g:45:7: ( 'coercion' )
             // InternalOCLstdlib.g:45:9: 'coercion'
             {
-            match("coercion"); 
+            match("coercion");
 
 
             }
@@ -866,7 +866,7 @@
             // InternalOCLstdlib.g:46:7: ( '=>' )
             // InternalOCLstdlib.g:46:9: '=>'
             {
-            match("=>"); 
+            match("=>");
 
 
             }
@@ -887,7 +887,7 @@
             // InternalOCLstdlib.g:47:7: ( '|' )
             // InternalOCLstdlib.g:47:9: '|'
             {
-            match('|'); 
+            match('|');
 
             }
 
@@ -907,7 +907,7 @@
             // InternalOCLstdlib.g:48:7: ( 'body' )
             // InternalOCLstdlib.g:48:9: 'body'
             {
-            match("body"); 
+            match("body");
 
 
             }
@@ -928,7 +928,7 @@
             // InternalOCLstdlib.g:49:7: ( 'typeof' )
             // InternalOCLstdlib.g:49:9: 'typeof'
             {
-            match("typeof"); 
+            match("typeof");
 
 
             }
@@ -949,7 +949,7 @@
             // InternalOCLstdlib.g:50:7: ( 'and' )
             // InternalOCLstdlib.g:50:9: 'and'
             {
-            match("and"); 
+            match("and");
 
 
             }
@@ -970,7 +970,7 @@
             // InternalOCLstdlib.g:51:7: ( 'else' )
             // InternalOCLstdlib.g:51:9: 'else'
             {
-            match("else"); 
+            match("else");
 
 
             }
@@ -991,7 +991,7 @@
             // InternalOCLstdlib.g:52:7: ( 'endif' )
             // InternalOCLstdlib.g:52:9: 'endif'
             {
-            match("endif"); 
+            match("endif");
 
 
             }
@@ -1012,7 +1012,7 @@
             // InternalOCLstdlib.g:53:7: ( 'if' )
             // InternalOCLstdlib.g:53:9: 'if'
             {
-            match("if"); 
+            match("if");
 
 
             }
@@ -1033,7 +1033,7 @@
             // InternalOCLstdlib.g:54:7: ( 'implies' )
             // InternalOCLstdlib.g:54:9: 'implies'
             {
-            match("implies"); 
+            match("implies");
 
 
             }
@@ -1054,7 +1054,7 @@
             // InternalOCLstdlib.g:55:7: ( 'in' )
             // InternalOCLstdlib.g:55:9: 'in'
             {
-            match("in"); 
+            match("in");
 
 
             }
@@ -1075,7 +1075,7 @@
             // InternalOCLstdlib.g:56:7: ( 'let' )
             // InternalOCLstdlib.g:56:9: 'let'
             {
-            match("let"); 
+            match("let");
 
 
             }
@@ -1096,7 +1096,7 @@
             // InternalOCLstdlib.g:57:7: ( 'not' )
             // InternalOCLstdlib.g:57:9: 'not'
             {
-            match("not"); 
+            match("not");
 
 
             }
@@ -1117,7 +1117,7 @@
             // InternalOCLstdlib.g:58:7: ( 'or' )
             // InternalOCLstdlib.g:58:9: 'or'
             {
-            match("or"); 
+            match("or");
 
 
             }
@@ -1138,7 +1138,7 @@
             // InternalOCLstdlib.g:59:7: ( 'then' )
             // InternalOCLstdlib.g:59:9: 'then'
             {
-            match("then"); 
+            match("then");
 
 
             }
@@ -1159,7 +1159,7 @@
             // InternalOCLstdlib.g:60:7: ( 'xor' )
             // InternalOCLstdlib.g:60:9: 'xor'
             {
-            match("xor"); 
+            match("xor");
 
 
             }
@@ -1180,7 +1180,7 @@
             // InternalOCLstdlib.g:61:7: ( '-' )
             // InternalOCLstdlib.g:61:9: '-'
             {
-            match('-'); 
+            match('-');
 
             }
 
@@ -1200,7 +1200,7 @@
             // InternalOCLstdlib.g:62:7: ( '*' )
             // InternalOCLstdlib.g:62:9: '*'
             {
-            match('*'); 
+            match('*');
 
             }
 
@@ -1220,7 +1220,7 @@
             // InternalOCLstdlib.g:63:7: ( '/' )
             // InternalOCLstdlib.g:63:9: '/'
             {
-            match('/'); 
+            match('/');
 
             }
 
@@ -1240,7 +1240,7 @@
             // InternalOCLstdlib.g:64:7: ( '+' )
             // InternalOCLstdlib.g:64:9: '+'
             {
-            match('+'); 
+            match('+');
 
             }
 
@@ -1260,7 +1260,7 @@
             // InternalOCLstdlib.g:65:7: ( '>' )
             // InternalOCLstdlib.g:65:9: '>'
             {
-            match('>'); 
+            match('>');
 
             }
 
@@ -1280,7 +1280,7 @@
             // InternalOCLstdlib.g:66:7: ( '<' )
             // InternalOCLstdlib.g:66:9: '<'
             {
-            match('<'); 
+            match('<');
 
             }
 
@@ -1300,7 +1300,7 @@
             // InternalOCLstdlib.g:67:7: ( '>=' )
             // InternalOCLstdlib.g:67:9: '>='
             {
-            match(">="); 
+            match(">=");
 
 
             }
@@ -1321,7 +1321,7 @@
             // InternalOCLstdlib.g:68:7: ( '<=' )
             // InternalOCLstdlib.g:68:9: '<='
             {
-            match("<="); 
+            match("<=");
 
 
             }
@@ -1342,7 +1342,7 @@
             // InternalOCLstdlib.g:69:7: ( '<>' )
             // InternalOCLstdlib.g:69:9: '<>'
             {
-            match("<>"); 
+            match("<>");
 
 
             }
@@ -1363,7 +1363,7 @@
             // InternalOCLstdlib.g:70:7: ( '.' )
             // InternalOCLstdlib.g:70:9: '.'
             {
-            match('.'); 
+            match('.');
 
             }
 
@@ -1383,7 +1383,7 @@
             // InternalOCLstdlib.g:71:7: ( '->' )
             // InternalOCLstdlib.g:71:9: '->'
             {
-            match("->"); 
+            match("->");
 
 
             }
@@ -1404,7 +1404,7 @@
             // InternalOCLstdlib.g:72:7: ( '?.' )
             // InternalOCLstdlib.g:72:9: '?.'
             {
-            match("?."); 
+            match("?.");
 
 
             }
@@ -1425,7 +1425,7 @@
             // InternalOCLstdlib.g:73:7: ( '?->' )
             // InternalOCLstdlib.g:73:9: '?->'
             {
-            match("?->"); 
+            match("?->");
 
 
             }
@@ -1446,7 +1446,7 @@
             // InternalOCLstdlib.g:74:7: ( 'Boolean' )
             // InternalOCLstdlib.g:74:9: 'Boolean'
             {
-            match("Boolean"); 
+            match("Boolean");
 
 
             }
@@ -1467,7 +1467,7 @@
             // InternalOCLstdlib.g:75:7: ( 'Integer' )
             // InternalOCLstdlib.g:75:9: 'Integer'
             {
-            match("Integer"); 
+            match("Integer");
 
 
             }
@@ -1488,7 +1488,7 @@
             // InternalOCLstdlib.g:76:7: ( 'Real' )
             // InternalOCLstdlib.g:76:9: 'Real'
             {
-            match("Real"); 
+            match("Real");
 
 
             }
@@ -1509,7 +1509,7 @@
             // InternalOCLstdlib.g:77:7: ( 'String' )
             // InternalOCLstdlib.g:77:9: 'String'
             {
-            match("String"); 
+            match("String");
 
 
             }
@@ -1530,7 +1530,7 @@
             // InternalOCLstdlib.g:78:7: ( 'UnlimitedNatural' )
             // InternalOCLstdlib.g:78:9: 'UnlimitedNatural'
             {
-            match("UnlimitedNatural"); 
+            match("UnlimitedNatural");
 
 
             }
@@ -1551,7 +1551,7 @@
             // InternalOCLstdlib.g:79:7: ( 'OclAny' )
             // InternalOCLstdlib.g:79:9: 'OclAny'
             {
-            match("OclAny"); 
+            match("OclAny");
 
 
             }
@@ -1572,7 +1572,7 @@
             // InternalOCLstdlib.g:80:7: ( 'OclInvalid' )
             // InternalOCLstdlib.g:80:9: 'OclInvalid'
             {
-            match("OclInvalid"); 
+            match("OclInvalid");
 
 
             }
@@ -1593,7 +1593,7 @@
             // InternalOCLstdlib.g:81:7: ( 'OclVoid' )
             // InternalOCLstdlib.g:81:9: 'OclVoid'
             {
-            match("OclVoid"); 
+            match("OclVoid");
 
 
             }
@@ -1614,7 +1614,7 @@
             // InternalOCLstdlib.g:82:7: ( 'Set' )
             // InternalOCLstdlib.g:82:9: 'Set'
             {
-            match("Set"); 
+            match("Set");
 
 
             }
@@ -1635,7 +1635,7 @@
             // InternalOCLstdlib.g:83:7: ( 'Bag' )
             // InternalOCLstdlib.g:83:9: 'Bag'
             {
-            match("Bag"); 
+            match("Bag");
 
 
             }
@@ -1656,7 +1656,7 @@
             // InternalOCLstdlib.g:84:7: ( 'Sequence' )
             // InternalOCLstdlib.g:84:9: 'Sequence'
             {
-            match("Sequence"); 
+            match("Sequence");
 
 
             }
@@ -1677,7 +1677,7 @@
             // InternalOCLstdlib.g:85:7: ( 'Collection' )
             // InternalOCLstdlib.g:85:9: 'Collection'
             {
-            match("Collection"); 
+            match("Collection");
 
 
             }
@@ -1698,7 +1698,7 @@
             // InternalOCLstdlib.g:86:7: ( 'OrderedSet' )
             // InternalOCLstdlib.g:86:9: 'OrderedSet'
             {
-            match("OrderedSet"); 
+            match("OrderedSet");
 
 
             }
@@ -1719,7 +1719,7 @@
             // InternalOCLstdlib.g:87:7: ( '..' )
             // InternalOCLstdlib.g:87:9: '..'
             {
-            match(".."); 
+            match("..");
 
 
             }
@@ -1740,7 +1740,7 @@
             // InternalOCLstdlib.g:88:7: ( '++' )
             // InternalOCLstdlib.g:88:9: '++'
             {
-            match("++"); 
+            match("++");
 
 
             }
@@ -1761,7 +1761,7 @@
             // InternalOCLstdlib.g:89:7: ( '<-' )
             // InternalOCLstdlib.g:89:9: '<-'
             {
-            match("<-"); 
+            match("<-");
 
 
             }
@@ -1782,7 +1782,7 @@
             // InternalOCLstdlib.g:90:7: ( 'true' )
             // InternalOCLstdlib.g:90:9: 'true'
             {
-            match("true"); 
+            match("true");
 
 
             }
@@ -1803,7 +1803,7 @@
             // InternalOCLstdlib.g:91:7: ( 'false' )
             // InternalOCLstdlib.g:91:9: 'false'
             {
-            match("false"); 
+            match("false");
 
 
             }
@@ -1824,7 +1824,7 @@
             // InternalOCLstdlib.g:92:7: ( 'invalid' )
             // InternalOCLstdlib.g:92:9: 'invalid'
             {
-            match("invalid"); 
+            match("invalid");
 
 
             }
@@ -1845,7 +1845,7 @@
             // InternalOCLstdlib.g:93:7: ( 'null' )
             // InternalOCLstdlib.g:93:9: 'null'
             {
-            match("null"); 
+            match("null");
 
 
             }
@@ -1866,7 +1866,7 @@
             // InternalOCLstdlib.g:94:7: ( '@' )
             // InternalOCLstdlib.g:94:9: '@'
             {
-            match('@'); 
+            match('@');
 
             }
 
@@ -1886,7 +1886,7 @@
             // InternalOCLstdlib.g:95:8: ( '[' )
             // InternalOCLstdlib.g:95:10: '['
             {
-            match('['); 
+            match('[');
 
             }
 
@@ -1906,7 +1906,7 @@
             // InternalOCLstdlib.g:96:8: ( ']' )
             // InternalOCLstdlib.g:96:10: ']'
             {
-            match(']'); 
+            match(']');
 
             }
 
@@ -1926,7 +1926,7 @@
             // InternalOCLstdlib.g:97:8: ( 'elseif' )
             // InternalOCLstdlib.g:97:10: 'elseif'
             {
-            match("elseif"); 
+            match("elseif");
 
 
             }
@@ -1947,7 +1947,7 @@
             // InternalOCLstdlib.g:98:8: ( 'self' )
             // InternalOCLstdlib.g:98:10: 'self'
             {
-            match("self"); 
+            match("self");
 
 
             }
@@ -1968,7 +1968,7 @@
             // InternalOCLstdlib.g:99:8: ( '|?' )
             // InternalOCLstdlib.g:99:10: '|?'
             {
-            match("|?"); 
+            match("|?");
 
 
             }
@@ -1989,7 +1989,7 @@
             // InternalOCLstdlib.g:100:8: ( '|1' )
             // InternalOCLstdlib.g:100:10: '|1'
             {
-            match("|1"); 
+            match("|1");
 
 
             }
@@ -2010,7 +2010,7 @@
             // InternalOCLstdlib.g:101:8: ( '?' )
             // InternalOCLstdlib.g:101:10: '?'
             {
-            match('?'); 
+            match('?');
 
             }
 
@@ -2030,7 +2030,7 @@
             // InternalOCLstdlib.g:102:8: ( '&&' )
             // InternalOCLstdlib.g:102:10: '&&'
             {
-            match("&&"); 
+            match("&&");
 
 
             }
@@ -2049,7 +2049,7 @@
             // InternalOCLstdlib.g:8985:33: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' ) )
             // InternalOCLstdlib.g:8985:35: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | 'u' | '\"' | '\\'' | '\\\\' )
             {
-            match('\\'); 
+            match('\\');
             if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||(input.LA(1)>='t' && input.LA(1)<='u') ) {
                 input.consume();
 
@@ -2100,7 +2100,7 @@
             // InternalOCLstdlib.g:8989:27: ( '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
             // InternalOCLstdlib.g:8989:29: '\"' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
             {
-            match('\"'); 
+            match('\"');
             // InternalOCLstdlib.g:8989:33: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\"' ) ) )*
             loop1:
             do {
@@ -2119,7 +2119,7 @@
             	case 1 :
             	    // InternalOCLstdlib.g:8989:34: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -2144,7 +2144,7 @@
                 }
             } while (true);
 
-            match('\"'); 
+            match('\"');
 
             }
 
@@ -2164,7 +2164,7 @@
             // InternalOCLstdlib.g:8991:27: ( '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             // InternalOCLstdlib.g:8991:29: '\\'' ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
             {
-            match('\''); 
+            match('\'');
             // InternalOCLstdlib.g:8991:34: ( RULE_ESCAPED_CHARACTER | ~ ( ( '\\\\' | '\\'' ) ) )*
             loop2:
             do {
@@ -2183,7 +2183,7 @@
             	case 1 :
             	    // InternalOCLstdlib.g:8991:35: RULE_ESCAPED_CHARACTER
             	    {
-            	    mRULE_ESCAPED_CHARACTER(); 
+            	    mRULE_ESCAPED_CHARACTER();
 
             	    }
             	    break;
@@ -2208,7 +2208,7 @@
                 }
             } while (true);
 
-            match('\''); 
+            match('\'');
 
             }
 
@@ -2228,7 +2228,7 @@
             // InternalOCLstdlib.g:8993:30: ( '/\\'' ( options {greedy=false; } : . )* '\\'/' )
             // InternalOCLstdlib.g:8993:32: '/\\'' ( options {greedy=false; } : . )* '\\'/'
             {
-            match("/'"); 
+            match("/'");
 
             // InternalOCLstdlib.g:8993:38: ( options {greedy=false; } : . )*
             loop3:
@@ -2257,7 +2257,7 @@
             	case 1 :
             	    // InternalOCLstdlib.g:8993:66: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -2267,7 +2267,7 @@
                 }
             } while (true);
 
-            match("'/"); 
+            match("'/");
 
 
             }
@@ -2288,7 +2288,7 @@
             // InternalOCLstdlib.g:8995:16: ( RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )* )
             // InternalOCLstdlib.g:8995:18: RULE_LETTER_CHARACTER ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             {
-            mRULE_LETTER_CHARACTER(); 
+            mRULE_LETTER_CHARACTER();
             // InternalOCLstdlib.g:8995:40: ( RULE_LETTER_CHARACTER | '0' .. '9' )*
             loop4:
             do {
@@ -2341,8 +2341,8 @@
             // InternalOCLstdlib.g:8997:17: ( '_' RULE_SINGLE_QUOTED_STRING )
             // InternalOCLstdlib.g:8997:19: '_' RULE_SINGLE_QUOTED_STRING
             {
-            match('_'); 
-            mRULE_SINGLE_QUOTED_STRING(); 
+            match('_');
+            mRULE_SINGLE_QUOTED_STRING();
 
             }
 
@@ -2378,7 +2378,7 @@
             	case 1 :
             	    // InternalOCLstdlib.g:8999:13: '0' .. '9'
             	    {
-            	    matchRange('0','9'); 
+            	    matchRange('0','9');
 
             	    }
             	    break;
@@ -2411,7 +2411,7 @@
             // InternalOCLstdlib.g:9001:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
             // InternalOCLstdlib.g:9001:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
-            match("/*"); 
+            match("/*");
 
             // InternalOCLstdlib.g:9001:24: ( options {greedy=false; } : . )*
             loop6:
@@ -2440,7 +2440,7 @@
             	case 1 :
             	    // InternalOCLstdlib.g:9001:52: .
             	    {
-            	    matchAny(); 
+            	    matchAny();
 
             	    }
             	    break;
@@ -2450,7 +2450,7 @@
                 }
             } while (true);
 
-            match("*/"); 
+            match("*/");
 
 
             }
@@ -2471,7 +2471,7 @@
             // InternalOCLstdlib.g:9003:17: ( '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
             // InternalOCLstdlib.g:9003:19: '--' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
-            match("--"); 
+            match("--");
 
             // InternalOCLstdlib.g:9003:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop7:
@@ -2528,14 +2528,14 @@
                         case 1 :
                             // InternalOCLstdlib.g:9003:41: '\\r'
                             {
-                            match('\r'); 
+                            match('\r');
 
                             }
                             break;
 
                     }
 
-                    match('\n'); 
+                    match('\n');
 
                     }
                     break;
@@ -2618,7 +2618,7 @@
             // InternalOCLstdlib.g:9007:16: ( . )
             // InternalOCLstdlib.g:9007:18: .
             {
-            matchAny(); 
+            matchAny();
 
             }
 
@@ -2638,714 +2638,714 @@
             case 1 :
                 // InternalOCLstdlib.g:1:10: T__16
                 {
-                mT__16(); 
+                mT__16();
 
                 }
                 break;
             case 2 :
                 // InternalOCLstdlib.g:1:16: T__17
                 {
-                mT__17(); 
+                mT__17();
 
                 }
                 break;
             case 3 :
                 // InternalOCLstdlib.g:1:22: T__18
                 {
-                mT__18(); 
+                mT__18();
 
                 }
                 break;
             case 4 :
                 // InternalOCLstdlib.g:1:28: T__19
                 {
-                mT__19(); 
+                mT__19();
 
                 }
                 break;
             case 5 :
                 // InternalOCLstdlib.g:1:34: T__20
                 {
-                mT__20(); 
+                mT__20();
 
                 }
                 break;
             case 6 :
                 // InternalOCLstdlib.g:1:40: T__21
                 {
-                mT__21(); 
+                mT__21();
 
                 }
                 break;
             case 7 :
                 // InternalOCLstdlib.g:1:46: T__22
                 {
-                mT__22(); 
+                mT__22();
 
                 }
                 break;
             case 8 :
                 // InternalOCLstdlib.g:1:52: T__23
                 {
-                mT__23(); 
+                mT__23();
 
                 }
                 break;
             case 9 :
                 // InternalOCLstdlib.g:1:58: T__24
                 {
-                mT__24(); 
+                mT__24();
 
                 }
                 break;
             case 10 :
                 // InternalOCLstdlib.g:1:64: T__25
                 {
-                mT__25(); 
+                mT__25();
 
                 }
                 break;
             case 11 :
                 // InternalOCLstdlib.g:1:70: T__26
                 {
-                mT__26(); 
+                mT__26();
 
                 }
                 break;
             case 12 :
                 // InternalOCLstdlib.g:1:76: T__27
                 {
-                mT__27(); 
+                mT__27();
 
                 }
                 break;
             case 13 :
                 // InternalOCLstdlib.g:1:82: T__28
                 {
-                mT__28(); 
+                mT__28();
 
                 }
                 break;
             case 14 :
                 // InternalOCLstdlib.g:1:88: T__29
                 {
-                mT__29(); 
+                mT__29();
 
                 }
                 break;
             case 15 :
                 // InternalOCLstdlib.g:1:94: T__30
                 {
-                mT__30(); 
+                mT__30();
 
                 }
                 break;
             case 16 :
                 // InternalOCLstdlib.g:1:100: T__31
                 {
-                mT__31(); 
+                mT__31();
 
                 }
                 break;
             case 17 :
                 // InternalOCLstdlib.g:1:106: T__32
                 {
-                mT__32(); 
+                mT__32();
 
                 }
                 break;
             case 18 :
                 // InternalOCLstdlib.g:1:112: T__33
                 {
-                mT__33(); 
+                mT__33();
 
                 }
                 break;
             case 19 :
                 // InternalOCLstdlib.g:1:118: T__34
                 {
-                mT__34(); 
+                mT__34();
 
                 }
                 break;
             case 20 :
                 // InternalOCLstdlib.g:1:124: T__35
                 {
-                mT__35(); 
+                mT__35();
 
                 }
                 break;
             case 21 :
                 // InternalOCLstdlib.g:1:130: T__36
                 {
-                mT__36(); 
+                mT__36();
 
                 }
                 break;
             case 22 :
                 // InternalOCLstdlib.g:1:136: T__37
                 {
-                mT__37(); 
+                mT__37();
 
                 }
                 break;
             case 23 :
                 // InternalOCLstdlib.g:1:142: T__38
                 {
-                mT__38(); 
+                mT__38();
 
                 }
                 break;
             case 24 :
                 // InternalOCLstdlib.g:1:148: T__39
                 {
-                mT__39(); 
+                mT__39();
 
                 }
                 break;
             case 25 :
                 // InternalOCLstdlib.g:1:154: T__40
                 {
-                mT__40(); 
+                mT__40();
 
                 }
                 break;
             case 26 :
                 // InternalOCLstdlib.g:1:160: T__41
                 {
-                mT__41(); 
+                mT__41();
 
                 }
                 break;
             case 27 :
                 // InternalOCLstdlib.g:1:166: T__42
                 {
-                mT__42(); 
+                mT__42();
 
                 }
                 break;
             case 28 :
                 // InternalOCLstdlib.g:1:172: T__43
                 {
-                mT__43(); 
+                mT__43();
 
                 }
                 break;
             case 29 :
                 // InternalOCLstdlib.g:1:178: T__44
                 {
-                mT__44(); 
+                mT__44();
 
                 }
                 break;
             case 30 :
                 // InternalOCLstdlib.g:1:184: T__45
                 {
-                mT__45(); 
+                mT__45();
 
                 }
                 break;
             case 31 :
                 // InternalOCLstdlib.g:1:190: T__46
                 {
-                mT__46(); 
+                mT__46();
 
                 }
                 break;
             case 32 :
                 // InternalOCLstdlib.g:1:196: T__47
                 {
-                mT__47(); 
+                mT__47();
 
                 }
                 break;
             case 33 :
                 // InternalOCLstdlib.g:1:202: T__48
                 {
-                mT__48(); 
+                mT__48();
 
                 }
                 break;
             case 34 :
                 // InternalOCLstdlib.g:1:208: T__49
                 {
-                mT__49(); 
+                mT__49();
 
                 }
                 break;
             case 35 :
                 // InternalOCLstdlib.g:1:214: T__50
                 {
-                mT__50(); 
+                mT__50();
 
                 }
                 break;
             case 36 :
                 // InternalOCLstdlib.g:1:220: T__51
                 {
-                mT__51(); 
+                mT__51();
 
                 }
                 break;
             case 37 :
                 // InternalOCLstdlib.g:1:226: T__52
                 {
-                mT__52(); 
+                mT__52();
 
                 }
                 break;
             case 38 :
                 // InternalOCLstdlib.g:1:232: T__53
                 {
-                mT__53(); 
+                mT__53();
 
                 }
                 break;
             case 39 :
                 // InternalOCLstdlib.g:1:238: T__54
                 {
-                mT__54(); 
+                mT__54();
 
                 }
                 break;
             case 40 :
                 // InternalOCLstdlib.g:1:244: T__55
                 {
-                mT__55(); 
+                mT__55();
 
                 }
                 break;
             case 41 :
                 // InternalOCLstdlib.g:1:250: T__56
                 {
-                mT__56(); 
+                mT__56();
 
                 }
                 break;
             case 42 :
                 // InternalOCLstdlib.g:1:256: T__57
                 {
-                mT__57(); 
+                mT__57();
 
                 }
                 break;
             case 43 :
                 // InternalOCLstdlib.g:1:262: T__58
                 {
-                mT__58(); 
+                mT__58();
 
                 }
                 break;
             case 44 :
                 // InternalOCLstdlib.g:1:268: T__59
                 {
-                mT__59(); 
+                mT__59();
 
                 }
                 break;
             case 45 :
                 // InternalOCLstdlib.g:1:274: T__60
                 {
-                mT__60(); 
+                mT__60();
 
                 }
                 break;
             case 46 :
                 // InternalOCLstdlib.g:1:280: T__61
                 {
-                mT__61(); 
+                mT__61();
 
                 }
                 break;
             case 47 :
                 // InternalOCLstdlib.g:1:286: T__62
                 {
-                mT__62(); 
+                mT__62();
 
                 }
                 break;
             case 48 :
                 // InternalOCLstdlib.g:1:292: T__63
                 {
-                mT__63(); 
+                mT__63();
 
                 }
                 break;
             case 49 :
                 // InternalOCLstdlib.g:1:298: T__64
                 {
-                mT__64(); 
+                mT__64();
 
                 }
                 break;
             case 50 :
                 // InternalOCLstdlib.g:1:304: T__65
                 {
-                mT__65(); 
+                mT__65();
 
                 }
                 break;
             case 51 :
                 // InternalOCLstdlib.g:1:310: T__66
                 {
-                mT__66(); 
+                mT__66();
 
                 }
                 break;
             case 52 :
                 // InternalOCLstdlib.g:1:316: T__67
                 {
-                mT__67(); 
+                mT__67();
 
                 }
                 break;
             case 53 :
                 // InternalOCLstdlib.g:1:322: T__68
                 {
-                mT__68(); 
+                mT__68();
 
                 }
                 break;
             case 54 :
                 // InternalOCLstdlib.g:1:328: T__69
                 {
-                mT__69(); 
+                mT__69();
 
                 }
                 break;
             case 55 :
                 // InternalOCLstdlib.g:1:334: T__70
                 {
-                mT__70(); 
+                mT__70();
 
                 }
                 break;
             case 56 :
                 // InternalOCLstdlib.g:1:340: T__71
                 {
-                mT__71(); 
+                mT__71();
 
                 }
                 break;
             case 57 :
                 // InternalOCLstdlib.g:1:346: T__72
                 {
-                mT__72(); 
+                mT__72();
 
                 }
                 break;
             case 58 :
                 // InternalOCLstdlib.g:1:352: T__73
                 {
-                mT__73(); 
+                mT__73();
 
                 }
                 break;
             case 59 :
                 // InternalOCLstdlib.g:1:358: T__74
                 {
-                mT__74(); 
+                mT__74();
 
                 }
                 break;
             case 60 :
                 // InternalOCLstdlib.g:1:364: T__75
                 {
-                mT__75(); 
+                mT__75();
 
                 }
                 break;
             case 61 :
                 // InternalOCLstdlib.g:1:370: T__76
                 {
-                mT__76(); 
+                mT__76();
 
                 }
                 break;
             case 62 :
                 // InternalOCLstdlib.g:1:376: T__77
                 {
-                mT__77(); 
+                mT__77();
 
                 }
                 break;
             case 63 :
                 // InternalOCLstdlib.g:1:382: T__78
                 {
-                mT__78(); 
+                mT__78();
 
                 }
                 break;
             case 64 :
                 // InternalOCLstdlib.g:1:388: T__79
                 {
-                mT__79(); 
+                mT__79();
 
                 }
                 break;
             case 65 :
                 // InternalOCLstdlib.g:1:394: T__80
                 {
-                mT__80(); 
+                mT__80();
 
                 }
                 break;
             case 66 :
                 // InternalOCLstdlib.g:1:400: T__81
                 {
-                mT__81(); 
+                mT__81();
 
                 }
                 break;
             case 67 :
                 // InternalOCLstdlib.g:1:406: T__82
                 {
-                mT__82(); 
+                mT__82();
 
                 }
                 break;
             case 68 :
                 // InternalOCLstdlib.g:1:412: T__83
                 {
-                mT__83(); 
+                mT__83();
 
                 }
                 break;
             case 69 :
                 // InternalOCLstdlib.g:1:418: T__84
                 {
-                mT__84(); 
+                mT__84();
 
                 }
                 break;
             case 70 :
                 // InternalOCLstdlib.g:1:424: T__85
                 {
-                mT__85(); 
+                mT__85();
 
                 }
                 break;
             case 71 :
                 // InternalOCLstdlib.g:1:430: T__86
                 {
-                mT__86(); 
+                mT__86();
 
                 }
                 break;
             case 72 :
                 // InternalOCLstdlib.g:1:436: T__87
                 {
-                mT__87(); 
+                mT__87();
 
                 }
                 break;
             case 73 :
                 // InternalOCLstdlib.g:1:442: T__88
                 {
-                mT__88(); 
+                mT__88();
 
                 }
                 break;
             case 74 :
                 // InternalOCLstdlib.g:1:448: T__89
                 {
-                mT__89(); 
+                mT__89();
 
                 }
                 break;
             case 75 :
                 // InternalOCLstdlib.g:1:454: T__90
                 {
-                mT__90(); 
+                mT__90();
 
                 }
                 break;
             case 76 :
                 // InternalOCLstdlib.g:1:460: T__91
                 {
-                mT__91(); 
+                mT__91();
 
                 }
                 break;
             case 77 :
                 // InternalOCLstdlib.g:1:466: T__92
                 {
-                mT__92(); 
+                mT__92();
 
                 }
                 break;
             case 78 :
                 // InternalOCLstdlib.g:1:472: T__93
                 {
-                mT__93(); 
+                mT__93();
 
                 }
                 break;
             case 79 :
                 // InternalOCLstdlib.g:1:478: T__94
                 {
-                mT__94(); 
+                mT__94();
 
                 }
                 break;
             case 80 :
                 // InternalOCLstdlib.g:1:484: T__95
                 {
-                mT__95(); 
+                mT__95();
 
                 }
                 break;
             case 81 :
                 // InternalOCLstdlib.g:1:490: T__96
                 {
-                mT__96(); 
+                mT__96();
 
                 }
                 break;
             case 82 :
                 // InternalOCLstdlib.g:1:496: T__97
                 {
-                mT__97(); 
+                mT__97();
 
                 }
                 break;
             case 83 :
                 // InternalOCLstdlib.g:1:502: T__98
                 {
-                mT__98(); 
+                mT__98();
 
                 }
                 break;
             case 84 :
                 // InternalOCLstdlib.g:1:508: T__99
                 {
-                mT__99(); 
+                mT__99();
 
                 }
                 break;
             case 85 :
                 // InternalOCLstdlib.g:1:514: T__100
                 {
-                mT__100(); 
+                mT__100();
 
                 }
                 break;
             case 86 :
                 // InternalOCLstdlib.g:1:521: T__101
                 {
-                mT__101(); 
+                mT__101();
 
                 }
                 break;
             case 87 :
                 // InternalOCLstdlib.g:1:528: T__102
                 {
-                mT__102(); 
+                mT__102();
 
                 }
                 break;
             case 88 :
                 // InternalOCLstdlib.g:1:535: T__103
                 {
-                mT__103(); 
+                mT__103();
 
                 }
                 break;
             case 89 :
                 // InternalOCLstdlib.g:1:542: T__104
                 {
-                mT__104(); 
+                mT__104();
 
                 }
                 break;
             case 90 :
                 // InternalOCLstdlib.g:1:549: T__105
                 {
-                mT__105(); 
+                mT__105();
 
                 }
                 break;
             case 91 :
                 // InternalOCLstdlib.g:1:556: T__106
                 {
-                mT__106(); 
+                mT__106();
 
                 }
                 break;
             case 92 :
                 // InternalOCLstdlib.g:1:563: T__107
                 {
-                mT__107(); 
+                mT__107();
 
                 }
                 break;
             case 93 :
                 // InternalOCLstdlib.g:1:570: RULE_DOUBLE_QUOTED_STRING
                 {
-                mRULE_DOUBLE_QUOTED_STRING(); 
+                mRULE_DOUBLE_QUOTED_STRING();
 
                 }
                 break;
             case 94 :
                 // InternalOCLstdlib.g:1:596: RULE_SINGLE_QUOTED_STRING
                 {
-                mRULE_SINGLE_QUOTED_STRING(); 
+                mRULE_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 95 :
                 // InternalOCLstdlib.g:1:622: RULE_ML_SINGLE_QUOTED_STRING
                 {
-                mRULE_ML_SINGLE_QUOTED_STRING(); 
+                mRULE_ML_SINGLE_QUOTED_STRING();
 
                 }
                 break;
             case 96 :
                 // InternalOCLstdlib.g:1:651: RULE_SIMPLE_ID
                 {
-                mRULE_SIMPLE_ID(); 
+                mRULE_SIMPLE_ID();
 
                 }
                 break;
             case 97 :
                 // InternalOCLstdlib.g:1:666: RULE_ESCAPED_ID
                 {
-                mRULE_ESCAPED_ID(); 
+                mRULE_ESCAPED_ID();
 
                 }
                 break;
             case 98 :
                 // InternalOCLstdlib.g:1:682: RULE_INT
                 {
-                mRULE_INT(); 
+                mRULE_INT();
 
                 }
                 break;
             case 99 :
                 // InternalOCLstdlib.g:1:691: RULE_ML_COMMENT
                 {
-                mRULE_ML_COMMENT(); 
+                mRULE_ML_COMMENT();
 
                 }
                 break;
             case 100 :
                 // InternalOCLstdlib.g:1:707: RULE_SL_COMMENT
                 {
-                mRULE_SL_COMMENT(); 
+                mRULE_SL_COMMENT();
 
                 }
                 break;
             case 101 :
                 // InternalOCLstdlib.g:1:723: RULE_WS
                 {
-                mRULE_WS(); 
+                mRULE_WS();
 
                 }
                 break;
             case 102 :
                 // InternalOCLstdlib.g:1:731: RULE_ANY_OTHER
                 {
-                mRULE_ANY_OTHER(); 
+                mRULE_ANY_OTHER();
 
                 }
                 break;
@@ -3831,7 +3831,7 @@
             IntStream input = _input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA11_48 = input.LA(1);
 
                         s = -1;
@@ -3841,7 +3841,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA11_0 = input.LA(1);
 
                         s = -1;
@@ -3955,7 +3955,7 @@
 
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA11_49 = input.LA(1);
 
                         s = -1;
@@ -3972,6 +3972,6 @@
             throw nvae;
         }
     }
- 
+
 
 }
\ No newline at end of file
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 40a25b5..84a2c22 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
@@ -1,4 +1,4 @@
-package org.eclipse.ocl.xtext.oclstdlib.parser.antlr.internal; 
+package org.eclipse.ocl.xtext.oclstdlib.parser.antlr.internal;
 
 import org.eclipse.xtext.*;
 import org.eclipse.xtext.parser.*;
@@ -149,9 +149,9 @@
         }
         public InternalOCLstdlibParser(TokenStream input, RecognizerSharedState state) {
             super(input, state);
-             
+
         }
-        
+
 
     public String[] getTokenNames() { return InternalOCLstdlibParser.tokenNames; }
     public String getGrammarFileName() { return "InternalOCLstdlib.g"; }
@@ -162,20 +162,20 @@
       This grammar contains a lot of empty actions to work around a bug in ANTLR.
       Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases.
     */
-     
+
      	private OCLstdlibGrammarAccess grammarAccess;
-     	
+
         public InternalOCLstdlibParser(TokenStream input, OCLstdlibGrammarAccess grammarAccess) {
             this(input);
             this.grammarAccess = grammarAccess;
             registerRules(grammarAccess.getGrammar());
         }
-        
+
         @Override
         protected String getFirstRuleName() {
-        	return "Library";	
+        	return "Library";
        	}
-       	
+
        	@Override
        	protected OCLstdlibGrammarAccess getGrammarAccess() {
        		return grammarAccess;
@@ -196,7 +196,7 @@
             // InternalOCLstdlib.g:82:2: iv_ruleLibrary= ruleLibrary EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLibraryRule()); 
+               newCompositeNode(grammarAccess.getLibraryRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLibrary=ruleLibrary();
@@ -204,18 +204,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLibrary; 
+               current =iv_ruleLibrary;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -234,8 +234,8 @@
         EObject lv_ownedPackages_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:92:28: ( ( ( ( (lv_ownedImports_0_0= ruleImportCS ) ) otherlv_1= ';' )* ( (lv_ownedPackages_2_0= ruleLibPackageCS ) )* ) )
             // InternalOCLstdlib.g:93:1: ( ( ( (lv_ownedImports_0_0= ruleImportCS ) ) otherlv_1= ';' )* ( (lv_ownedPackages_2_0= ruleLibPackageCS ) )* )
@@ -265,9 +265,9 @@
             	    // InternalOCLstdlib.g:95:3: lv_ownedImports_0_0= ruleImportCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLibraryAccess().getOwnedImportsImportCSParserRuleCall_0_0_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLibraryAccess().getOwnedImportsImportCSParserRuleCall_0_0_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_3);
             	    lv_ownedImports_0_0=ruleImportCS();
@@ -280,12 +280,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLibraryRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedImports",
-            	              		lv_ownedImports_0_0, 
+            	              		lv_ownedImports_0_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ImportCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -297,7 +297,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getLibraryAccess().getSemicolonKeyword_0_1());
-            	          
+
             	    }
 
             	    }
@@ -327,9 +327,9 @@
             	    // InternalOCLstdlib.g:117:3: lv_ownedPackages_2_0= ruleLibPackageCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLibraryAccess().getOwnedPackagesLibPackageCSParserRuleCall_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLibraryAccess().getOwnedPackagesLibPackageCSParserRuleCall_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_5);
             	    lv_ownedPackages_2_0=ruleLibPackageCS();
@@ -342,12 +342,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLibraryRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPackages",
-            	              		lv_ownedPackages_2_0, 
+            	              		lv_ownedPackages_2_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPackageCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -368,14 +368,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -396,7 +396,7 @@
             // InternalOCLstdlib.g:143:2: iv_ruleIdentifier= ruleIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIdentifierRule()); 
+               newCompositeNode(grammarAccess.getIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleIdentifier=ruleIdentifier();
@@ -404,18 +404,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleIdentifier.getText(); 
+               current =iv_ruleIdentifier.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -433,8 +433,8 @@
         AntlrDatatypeRuleToken this_RestrictedKeywords_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:153:28: ( (this_ID_0= ruleID | this_RestrictedKeywords_1= ruleRestrictedKeywords ) )
             // InternalOCLstdlib.g:154:1: (this_ID_0= ruleID | this_RestrictedKeywords_1= ruleRestrictedKeywords )
@@ -461,9 +461,9 @@
                     // InternalOCLstdlib.g:155:5: this_ID_0= ruleID
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getIdentifierAccess().getIDParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_ID_0=ruleID();
@@ -473,12 +473,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_ID_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -487,9 +487,9 @@
                     // InternalOCLstdlib.g:167:5: this_RestrictedKeywords_1= ruleRestrictedKeywords
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getIdentifierAccess().getRestrictedKeywordsParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getIdentifierAccess().getRestrictedKeywordsParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_RestrictedKeywords_1=ruleRestrictedKeywords();
@@ -499,12 +499,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_RestrictedKeywords_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -516,14 +516,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -544,7 +544,7 @@
             // InternalOCLstdlib.g:187:2: iv_ruleRestrictedKeywords= ruleRestrictedKeywords EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getRestrictedKeywordsRule()); 
+               newCompositeNode(grammarAccess.getRestrictedKeywordsRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleRestrictedKeywords=ruleRestrictedKeywords();
@@ -552,18 +552,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleRestrictedKeywords.getText(); 
+               current =iv_ruleRestrictedKeywords.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -578,8 +578,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:197:28: ( (kw= 'abstract' | kw= 'annotation' | kw= 'conformsTo' | kw= 'documentation' | kw= 'extends' | kw= 'import' | kw= 'inv' | kw= 'invalidating' | kw= 'iteration' | kw= 'left' | kw= 'library' | kw= 'operation' | kw= 'package' | kw= 'post' | kw= 'pre' | kw= 'precedence' | kw= 'property' | kw= 'right' | kw= 'static' | kw= 'type' | kw= 'validating' ) )
             // InternalOCLstdlib.g:198:1: (kw= 'abstract' | kw= 'annotation' | kw= 'conformsTo' | kw= 'documentation' | kw= 'extends' | kw= 'import' | kw= 'inv' | kw= 'invalidating' | kw= 'iteration' | kw= 'left' | kw= 'library' | kw= 'operation' | kw= 'package' | kw= 'post' | kw= 'pre' | kw= 'precedence' | kw= 'property' | kw= 'right' | kw= 'static' | kw= 'type' | kw= 'validating' )
@@ -708,8 +708,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getAbstractKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getAbstractKeyword_0());
+
                     }
 
                     }
@@ -721,8 +721,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getAnnotationKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getAnnotationKeyword_1());
+
                     }
 
                     }
@@ -734,8 +734,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getConformsToKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getConformsToKeyword_2());
+
                     }
 
                     }
@@ -747,8 +747,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getDocumentationKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getDocumentationKeyword_3());
+
                     }
 
                     }
@@ -760,8 +760,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getExtendsKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getExtendsKeyword_4());
+
                     }
 
                     }
@@ -773,8 +773,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getImportKeyword_5()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getImportKeyword_5());
+
                     }
 
                     }
@@ -786,8 +786,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getInvKeyword_6()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getInvKeyword_6());
+
                     }
 
                     }
@@ -799,8 +799,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getInvalidatingKeyword_7()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getInvalidatingKeyword_7());
+
                     }
 
                     }
@@ -812,8 +812,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getIterationKeyword_8()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getIterationKeyword_8());
+
                     }
 
                     }
@@ -825,8 +825,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getLeftKeyword_9()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getLeftKeyword_9());
+
                     }
 
                     }
@@ -838,8 +838,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getLibraryKeyword_10()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getLibraryKeyword_10());
+
                     }
 
                     }
@@ -851,8 +851,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getOperationKeyword_11()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getOperationKeyword_11());
+
                     }
 
                     }
@@ -864,8 +864,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPackageKeyword_12()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPackageKeyword_12());
+
                     }
 
                     }
@@ -877,8 +877,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPostKeyword_13()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPostKeyword_13());
+
                     }
 
                     }
@@ -890,8 +890,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPreKeyword_14()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPreKeyword_14());
+
                     }
 
                     }
@@ -903,8 +903,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPrecedenceKeyword_15()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPrecedenceKeyword_15());
+
                     }
 
                     }
@@ -916,8 +916,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPropertyKeyword_16()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getPropertyKeyword_16());
+
                     }
 
                     }
@@ -929,8 +929,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getRightKeyword_17()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getRightKeyword_17());
+
                     }
 
                     }
@@ -942,8 +942,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getStaticKeyword_18()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getStaticKeyword_18());
+
                     }
 
                     }
@@ -955,8 +955,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getTypeKeyword_19()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getTypeKeyword_19());
+
                     }
 
                     }
@@ -968,8 +968,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getValidatingKeyword_20()); 
-                          
+                              newLeafNode(kw, grammarAccess.getRestrictedKeywordsAccess().getValidatingKeyword_20());
+
                     }
 
                     }
@@ -981,14 +981,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1009,7 +1009,7 @@
             // InternalOCLstdlib.g:354:2: iv_ruleName= ruleName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNameRule()); 
+               newCompositeNode(grammarAccess.getNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleName=ruleName();
@@ -1017,18 +1017,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleName.getText(); 
+               current =iv_ruleName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1051,8 +1051,8 @@
         AntlrDatatypeRuleToken this_CollectionTypeIdentifier_4 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:364:28: ( (this_Identifier_0= ruleIdentifier | this_DOUBLE_QUOTED_STRING_1= RULE_DOUBLE_QUOTED_STRING | this_EssentialOCLReservedKeyword_2= ruleEssentialOCLReservedKeyword | this_PrimitiveTypeIdentifier_3= rulePrimitiveTypeIdentifier | this_CollectionTypeIdentifier_4= ruleCollectionTypeIdentifier ) )
             // InternalOCLstdlib.g:365:1: (this_Identifier_0= ruleIdentifier | this_DOUBLE_QUOTED_STRING_1= RULE_DOUBLE_QUOTED_STRING | this_EssentialOCLReservedKeyword_2= ruleEssentialOCLReservedKeyword | this_PrimitiveTypeIdentifier_3= rulePrimitiveTypeIdentifier | this_CollectionTypeIdentifier_4= ruleCollectionTypeIdentifier )
@@ -1141,9 +1141,9 @@
                     // InternalOCLstdlib.g:366:5: this_Identifier_0= ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getNameAccess().getIdentifierParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getNameAccess().getIdentifierParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_Identifier_0=ruleIdentifier();
@@ -1153,12 +1153,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_Identifier_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1170,12 +1170,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_DOUBLE_QUOTED_STRING_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_DOUBLE_QUOTED_STRING_1, grammarAccess.getNameAccess().getDOUBLE_QUOTED_STRINGTerminalRuleCall_1()); 
-                          
+
+                          newLeafNode(this_DOUBLE_QUOTED_STRING_1, grammarAccess.getNameAccess().getDOUBLE_QUOTED_STRINGTerminalRuleCall_1());
+
                     }
 
                     }
@@ -1184,9 +1184,9 @@
                     // InternalOCLstdlib.g:386:5: this_EssentialOCLReservedKeyword_2= ruleEssentialOCLReservedKeyword
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getNameAccess().getEssentialOCLReservedKeywordParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getNameAccess().getEssentialOCLReservedKeywordParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_EssentialOCLReservedKeyword_2=ruleEssentialOCLReservedKeyword();
@@ -1196,12 +1196,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_EssentialOCLReservedKeyword_2);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1210,9 +1210,9 @@
                     // InternalOCLstdlib.g:398:5: this_PrimitiveTypeIdentifier_3= rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getNameAccess().getPrimitiveTypeIdentifierParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getNameAccess().getPrimitiveTypeIdentifierParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimitiveTypeIdentifier_3=rulePrimitiveTypeIdentifier();
@@ -1222,12 +1222,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_PrimitiveTypeIdentifier_3);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1236,9 +1236,9 @@
                     // InternalOCLstdlib.g:410:5: this_CollectionTypeIdentifier_4= ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getNameAccess().getCollectionTypeIdentifierParserRuleCall_4()); 
-                          
+
+                              newCompositeNode(grammarAccess.getNameAccess().getCollectionTypeIdentifierParserRuleCall_4());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CollectionTypeIdentifier_4=ruleCollectionTypeIdentifier();
@@ -1248,12 +1248,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_CollectionTypeIdentifier_4);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1265,14 +1265,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1293,7 +1293,7 @@
             // InternalOCLstdlib.g:430:2: iv_ruleAnyName= ruleAnyName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getAnyNameRule()); 
+               newCompositeNode(grammarAccess.getAnyNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleAnyName=ruleAnyName();
@@ -1301,18 +1301,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleAnyName.getText(); 
+               current =iv_ruleAnyName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1329,8 +1329,8 @@
         AntlrDatatypeRuleToken this_Name_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:440:28: ( (this_Name_0= ruleName | kw= 'Lambda' | kw= 'Map' | kw= 'Tuple' ) )
             // InternalOCLstdlib.g:441:1: (this_Name_0= ruleName | kw= 'Lambda' | kw= 'Map' | kw= 'Tuple' )
@@ -1418,9 +1418,9 @@
                     // InternalOCLstdlib.g:442:5: this_Name_0= ruleName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getAnyNameAccess().getNameParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getAnyNameAccess().getNameParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_Name_0=ruleName();
@@ -1430,12 +1430,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_Name_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -1447,8 +1447,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getAnyNameAccess().getLambdaKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getAnyNameAccess().getLambdaKeyword_1());
+
                     }
 
                     }
@@ -1460,8 +1460,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getAnyNameAccess().getMapKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getAnyNameAccess().getMapKeyword_2());
+
                     }
 
                     }
@@ -1473,8 +1473,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getAnyNameAccess().getTupleKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getAnyNameAccess().getTupleKeyword_3());
+
                     }
 
                     }
@@ -1486,14 +1486,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1514,7 +1514,7 @@
             // InternalOCLstdlib.g:483:2: iv_ruleLibPathNameCS= ruleLibPathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLibPathNameCSRule()); 
+               newCompositeNode(grammarAccess.getLibPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLibPathNameCS=ruleLibPathNameCS();
@@ -1522,18 +1522,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLibPathNameCS; 
+               current =iv_ruleLibPathNameCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1552,8 +1552,8 @@
         EObject lv_ownedPathElements_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:493:28: ( ( ( (lv_ownedPathElements_0_0= ruleLibPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleLibPathElementCS ) ) )* ) )
             // InternalOCLstdlib.g:494:1: ( ( (lv_ownedPathElements_0_0= ruleLibPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleLibPathElementCS ) ) )* )
@@ -1568,9 +1568,9 @@
             // InternalOCLstdlib.g:496:3: lv_ownedPathElements_0_0= ruleLibPathElementCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_6);
             lv_ownedPathElements_0_0=ruleLibPathElementCS();
@@ -1583,12 +1583,12 @@
               	            current = createModelElementForParent(grammarAccess.getLibPathNameCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedPathElements",
-                      		lv_ownedPathElements_0_0, 
+                      		lv_ownedPathElements_0_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPathElementCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -1615,7 +1615,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getLibPathNameCSAccess().getColonColonKeyword_1_0());
-            	          
+
             	    }
             	    // InternalOCLstdlib.g:516:1: ( (lv_ownedPathElements_2_0= ruleLibPathElementCS ) )
             	    // InternalOCLstdlib.g:517:1: (lv_ownedPathElements_2_0= ruleLibPathElementCS )
@@ -1624,9 +1624,9 @@
             	    // InternalOCLstdlib.g:518:3: lv_ownedPathElements_2_0= ruleLibPathElementCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLibPathNameCSAccess().getOwnedPathElementsLibPathElementCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_6);
             	    lv_ownedPathElements_2_0=ruleLibPathElementCS();
@@ -1639,12 +1639,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLibPathNameCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPathElements",
-            	              		lv_ownedPathElements_2_0, 
+            	              		lv_ownedPathElements_2_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPathElementCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -1668,14 +1668,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1696,7 +1696,7 @@
             // InternalOCLstdlib.g:544:2: iv_ruleLibPathElementCS= ruleLibPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLibPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getLibPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLibPathElementCS=ruleLibPathElementCS();
@@ -1704,18 +1704,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLibPathElementCS; 
+               current =iv_ruleLibPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1728,8 +1728,8 @@
     public final EObject ruleLibPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:554:28: ( ( ( ruleName ) ) )
             // InternalOCLstdlib.g:555:1: ( ( ruleName ) )
@@ -1741,21 +1741,21 @@
             // InternalOCLstdlib.g:557:3: ruleName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getLibPathElementCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleName();
@@ -1763,9 +1763,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -1777,14 +1777,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1805,7 +1805,7 @@
             // InternalOCLstdlib.g:583:2: iv_ruleAccumulatorCS= ruleAccumulatorCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getAccumulatorCSRule()); 
+               newCompositeNode(grammarAccess.getAccumulatorCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleAccumulatorCS=ruleAccumulatorCS();
@@ -1813,18 +1813,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleAccumulatorCS; 
+               current =iv_ruleAccumulatorCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1843,8 +1843,8 @@
         EObject lv_ownedType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:593:28: ( ( ( (lv_name_0_0= ruleIdentifier ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) ) )
             // InternalOCLstdlib.g:594:1: ( ( (lv_name_0_0= ruleIdentifier ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) )
@@ -1859,9 +1859,9 @@
             // InternalOCLstdlib.g:596:3: lv_name_0_0= ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getAccumulatorCSAccess().getNameIdentifierParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getAccumulatorCSAccess().getNameIdentifierParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_8);
             lv_name_0_0=ruleIdentifier();
@@ -1874,12 +1874,12 @@
               	            current = createModelElementForParent(grammarAccess.getAccumulatorCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -1891,7 +1891,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getAccumulatorCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:616:1: ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:617:1: (lv_ownedType_2_0= ruleTypedMultiplicityRefCS )
@@ -1900,9 +1900,9 @@
             // InternalOCLstdlib.g:618:3: lv_ownedType_2_0= ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getAccumulatorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getAccumulatorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedType_2_0=ruleTypedMultiplicityRefCS();
@@ -1915,12 +1915,12 @@
               	            current = createModelElementForParent(grammarAccess.getAccumulatorCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_2_0, 
+                      		lv_ownedType_2_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -1935,14 +1935,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -1963,7 +1963,7 @@
             // InternalOCLstdlib.g:644:2: iv_ruleAnnotationCS= ruleAnnotationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getAnnotationCSRule()); 
+               newCompositeNode(grammarAccess.getAnnotationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleAnnotationCS=ruleAnnotationCS();
@@ -1971,18 +1971,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleAnnotationCS; 
+               current =iv_ruleAnnotationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2012,8 +2012,8 @@
         EObject lv_ownedAnnotations_8_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:654:28: ( (otherlv_0= 'annotation' ( ( (lv_name_1_1= ruleIdentifier | lv_name_1_2= RULE_SINGLE_QUOTED_STRING ) ) ) (otherlv_2= '(' ( (lv_ownedDetails_3_0= ruleDetailCS ) ) (otherlv_4= ',' ( (lv_ownedDetails_5_0= ruleDetailCS ) ) )* otherlv_6= ')' )? ( (otherlv_7= '{' ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) ) otherlv_9= '}' ) | otherlv_10= ';' ) ) )
             // InternalOCLstdlib.g:655:1: (otherlv_0= 'annotation' ( ( (lv_name_1_1= ruleIdentifier | lv_name_1_2= RULE_SINGLE_QUOTED_STRING ) ) ) (otherlv_2= '(' ( (lv_ownedDetails_3_0= ruleDetailCS ) ) (otherlv_4= ',' ( (lv_ownedDetails_5_0= ruleDetailCS ) ) )* otherlv_6= ')' )? ( (otherlv_7= '{' ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) ) otherlv_9= '}' ) | otherlv_10= ';' ) )
@@ -2025,7 +2025,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getAnnotationCSAccess().getAnnotationKeyword_0());
-                  
+
             }
             // InternalOCLstdlib.g:659:1: ( ( (lv_name_1_1= ruleIdentifier | lv_name_1_2= RULE_SINGLE_QUOTED_STRING ) ) )
             // InternalOCLstdlib.g:660:1: ( (lv_name_1_1= ruleIdentifier | lv_name_1_2= RULE_SINGLE_QUOTED_STRING ) )
@@ -2055,9 +2055,9 @@
                     // InternalOCLstdlib.g:662:3: lv_name_1_1= ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getNameIdentifierParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getNameIdentifierParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_11);
                     lv_name_1_1=ruleIdentifier();
@@ -2070,12 +2070,12 @@
                       	            current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_1, 
+                              		lv_name_1_1,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2086,8 +2086,8 @@
                     lv_name_1_2=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_11); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_name_1_2, grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_1_0_1()); 
-                      		
+                      			newLeafNode(lv_name_1_2, grammarAccess.getAnnotationCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_1_0_1());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -2095,11 +2095,11 @@
                       	            current = createModelElement(grammarAccess.getAnnotationCSRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_2, 
+                              		lv_name_1_2,
                               		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
-                      	    
+
                     }
 
                     }
@@ -2128,7 +2128,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getAnnotationCSAccess().getLeftParenthesisKeyword_2_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:699:1: ( (lv_ownedDetails_3_0= ruleDetailCS ) )
                     // InternalOCLstdlib.g:700:1: (lv_ownedDetails_3_0= ruleDetailCS )
@@ -2137,9 +2137,9 @@
                     // InternalOCLstdlib.g:701:3: lv_ownedDetails_3_0= ruleDetailCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_13);
                     lv_ownedDetails_3_0=ruleDetailCS();
@@ -2152,12 +2152,12 @@
                       	            current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedDetails",
-                              		lv_ownedDetails_3_0, 
+                              		lv_ownedDetails_3_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.DetailCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2184,7 +2184,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_4, grammarAccess.getAnnotationCSAccess().getCommaKeyword_2_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLstdlib.g:721:1: ( (lv_ownedDetails_5_0= ruleDetailCS ) )
                     	    // InternalOCLstdlib.g:722:1: (lv_ownedDetails_5_0= ruleDetailCS )
@@ -2193,9 +2193,9 @@
                     	    // InternalOCLstdlib.g:723:3: lv_ownedDetails_5_0= ruleDetailCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedDetailsDetailCSParserRuleCall_2_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_13);
                     	    lv_ownedDetails_5_0=ruleDetailCS();
@@ -2208,12 +2208,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedDetails",
-                    	              		lv_ownedDetails_5_0, 
+                    	              		lv_ownedDetails_5_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.DetailCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -2234,7 +2234,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getAnnotationCSAccess().getRightParenthesisKeyword_2_3());
-                          
+
                     }
 
                     }
@@ -2270,7 +2270,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_7, grammarAccess.getAnnotationCSAccess().getLeftCurlyBracketKeyword_3_0_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:747:1: ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )
                     // InternalOCLstdlib.g:748:1: (lv_ownedAnnotations_8_0= ruleAnnotationElementCS )
@@ -2279,9 +2279,9 @@
                     // InternalOCLstdlib.g:749:3: lv_ownedAnnotations_8_0= ruleAnnotationElementCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getAnnotationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_3_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_16);
                     lv_ownedAnnotations_8_0=ruleAnnotationElementCS();
@@ -2294,12 +2294,12 @@
                       	            current = createModelElementForParent(grammarAccess.getAnnotationCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedAnnotations",
-                              		lv_ownedAnnotations_8_0, 
+                              		lv_ownedAnnotations_8_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2311,7 +2311,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_9, grammarAccess.getAnnotationCSAccess().getRightCurlyBracketKeyword_3_0_2());
-                          
+
                     }
 
                     }
@@ -2326,7 +2326,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_10, grammarAccess.getAnnotationCSAccess().getSemicolonKeyword_3_1());
-                          
+
                     }
 
                     }
@@ -2341,14 +2341,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2369,7 +2369,7 @@
             // InternalOCLstdlib.g:784:2: iv_ruleAnnotationElementCS= ruleAnnotationElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getAnnotationElementCSRule()); 
+               newCompositeNode(grammarAccess.getAnnotationElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleAnnotationElementCS=ruleAnnotationElementCS();
@@ -2377,18 +2377,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleAnnotationElementCS; 
+               current =iv_ruleAnnotationElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2406,8 +2406,8 @@
         EObject this_DocumentationCS_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:794:28: ( (this_AnnotationCS_0= ruleAnnotationCS | this_DocumentationCS_1= ruleDocumentationCS ) )
             // InternalOCLstdlib.g:795:1: (this_AnnotationCS_0= ruleAnnotationCS | this_DocumentationCS_1= ruleDocumentationCS )
@@ -2434,14 +2434,14 @@
                     // InternalOCLstdlib.g:796:2: this_AnnotationCS_0= ruleAnnotationCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getAnnotationCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_AnnotationCS_0=ruleAnnotationCS();
@@ -2449,10 +2449,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_AnnotationCS_0; 
+
+                              current = this_AnnotationCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -2461,14 +2461,14 @@
                     // InternalOCLstdlib.g:809:2: this_DocumentationCS_1= ruleDocumentationCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getAnnotationElementCSAccess().getDocumentationCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_DocumentationCS_1=ruleDocumentationCS();
@@ -2476,10 +2476,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_DocumentationCS_1; 
+
+                              current = this_DocumentationCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -2491,14 +2491,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2519,7 +2519,7 @@
             // InternalOCLstdlib.g:830:2: iv_ruleLibClassCS= ruleLibClassCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLibClassCSRule()); 
+               newCompositeNode(grammarAccess.getLibClassCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLibClassCS=ruleLibClassCS();
@@ -2527,18 +2527,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLibClassCS; 
+               current =iv_ruleLibClassCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -2575,8 +2575,8 @@
         EObject lv_ownedAnnotations_14_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:840:28: ( ( ( (lv_isAbstract_0_0= 'abstract' ) )? otherlv_1= 'type' ( (lv_name_2_0= ruleAnyName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= ':' ( ( ruleAnyName ) ) )? (otherlv_6= 'conformsTo' ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) (otherlv_8= ',' ( (lv_ownedSuperTypes_9_0= ruleTypedRefCS ) ) )* )? otherlv_10= '{' ( ( (lv_ownedOperations_11_0= ruleOperationCS ) ) | ( (lv_ownedProperties_12_0= ruleLibPropertyCS ) ) | ( (lv_ownedConstraints_13_0= ruleInvCS ) ) | ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) )* otherlv_15= '}' ) )
             // InternalOCLstdlib.g:841:1: ( ( (lv_isAbstract_0_0= 'abstract' ) )? otherlv_1= 'type' ( (lv_name_2_0= ruleAnyName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? (otherlv_4= ':' ( ( ruleAnyName ) ) )? (otherlv_6= 'conformsTo' ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) ) (otherlv_8= ',' ( (lv_ownedSuperTypes_9_0= ruleTypedRefCS ) ) )* )? otherlv_10= '{' ( ( (lv_ownedOperations_11_0= ruleOperationCS ) ) | ( (lv_ownedProperties_12_0= ruleLibPropertyCS ) ) | ( (lv_ownedConstraints_13_0= ruleInvCS ) ) | ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) )* otherlv_15= '}' )
@@ -2602,7 +2602,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isAbstract_0_0, grammarAccess.getLibClassCSAccess().getIsAbstractAbstractKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -2610,7 +2610,7 @@
                       	            current = createModelElement(grammarAccess.getLibClassCSRule());
                       	        }
                              		setWithLastConsumed(current, "isAbstract", true, "abstract");
-                      	    
+
                     }
 
                     }
@@ -2625,7 +2625,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getLibClassCSAccess().getTypeKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:860:1: ( (lv_name_2_0= ruleAnyName ) )
             // InternalOCLstdlib.g:861:1: (lv_name_2_0= ruleAnyName )
@@ -2634,9 +2634,9 @@
             // InternalOCLstdlib.g:862:3: lv_name_2_0= ruleAnyName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLibClassCSAccess().getNameAnyNameParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLibClassCSAccess().getNameAnyNameParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_19);
             lv_name_2_0=ruleAnyName();
@@ -2649,12 +2649,12 @@
               	            current = createModelElementForParent(grammarAccess.getLibClassCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_2_0, 
+                      		lv_name_2_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnyName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -2677,9 +2677,9 @@
                     // InternalOCLstdlib.g:880:3: lv_ownedSignature_3_0= ruleTemplateSignatureCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_20);
                     lv_ownedSignature_3_0=ruleTemplateSignatureCS();
@@ -2692,12 +2692,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLibClassCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedSignature",
-                              		lv_ownedSignature_3_0, 
+                              		lv_ownedSignature_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.TemplateSignatureCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2723,7 +2723,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_4, grammarAccess.getLibClassCSAccess().getColonKeyword_4_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:900:1: ( ( ruleAnyName ) )
                     // InternalOCLstdlib.g:901:1: ( ruleAnyName )
@@ -2732,21 +2732,21 @@
                     // InternalOCLstdlib.g:902:3: ruleAnyName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getLibClassCSRule());
                       	        }
-                              
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSCrossReference_4_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getMetaclassNameMetaclassNameCSCrossReference_4_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_21);
                     ruleAnyName();
@@ -2754,9 +2754,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2785,7 +2785,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getLibClassCSAccess().getConformsToKeyword_5_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:922:1: ( (lv_ownedSuperTypes_7_0= ruleTypedRefCS ) )
                     // InternalOCLstdlib.g:923:1: (lv_ownedSuperTypes_7_0= ruleTypedRefCS )
@@ -2794,9 +2794,9 @@
                     // InternalOCLstdlib.g:924:3: lv_ownedSuperTypes_7_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_22);
                     lv_ownedSuperTypes_7_0=ruleTypedRefCS();
@@ -2809,12 +2809,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLibClassCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedSuperTypes",
-                              		lv_ownedSuperTypes_7_0, 
+                              		lv_ownedSuperTypes_7_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -2841,7 +2841,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_8, grammarAccess.getLibClassCSAccess().getCommaKeyword_5_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLstdlib.g:944:1: ( (lv_ownedSuperTypes_9_0= ruleTypedRefCS ) )
                     	    // InternalOCLstdlib.g:945:1: (lv_ownedSuperTypes_9_0= ruleTypedRefCS )
@@ -2850,9 +2850,9 @@
                     	    // InternalOCLstdlib.g:946:3: lv_ownedSuperTypes_9_0= ruleTypedRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedSuperTypesTypedRefCSParserRuleCall_5_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_22);
                     	    lv_ownedSuperTypes_9_0=ruleTypedRefCS();
@@ -2865,12 +2865,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibClassCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedSuperTypes",
-                    	              		lv_ownedSuperTypes_9_0, 
+                    	              		lv_ownedSuperTypes_9_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedRefCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -2897,7 +2897,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_10, grammarAccess.getLibClassCSAccess().getLeftCurlyBracketKeyword_6());
-                  
+
             }
             // InternalOCLstdlib.g:966:1: ( ( (lv_ownedOperations_11_0= ruleOperationCS ) ) | ( (lv_ownedProperties_12_0= ruleLibPropertyCS ) ) | ( (lv_ownedConstraints_13_0= ruleInvCS ) ) | ( (lv_ownedAnnotations_14_0= ruleAnnotationElementCS ) ) )*
             loop18:
@@ -2955,9 +2955,9 @@
             	    // InternalOCLstdlib.g:968:3: lv_ownedOperations_11_0= ruleOperationCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedOperationsOperationCSParserRuleCall_7_0_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_23);
             	    lv_ownedOperations_11_0=ruleOperationCS();
@@ -2970,12 +2970,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLibClassCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedOperations",
-            	              		lv_ownedOperations_11_0, 
+            	              		lv_ownedOperations_11_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.OperationCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -2996,9 +2996,9 @@
             	    // InternalOCLstdlib.g:987:3: lv_ownedProperties_12_0= ruleLibPropertyCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedPropertiesLibPropertyCSParserRuleCall_7_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedPropertiesLibPropertyCSParserRuleCall_7_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_23);
             	    lv_ownedProperties_12_0=ruleLibPropertyCS();
@@ -3011,12 +3011,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLibClassCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedProperties",
-            	              		lv_ownedProperties_12_0, 
+            	              		lv_ownedProperties_12_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPropertyCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -3037,9 +3037,9 @@
             	    // InternalOCLstdlib.g:1006:3: lv_ownedConstraints_13_0= ruleInvCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedConstraintsInvCSParserRuleCall_7_2_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedConstraintsInvCSParserRuleCall_7_2_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_23);
             	    lv_ownedConstraints_13_0=ruleInvCS();
@@ -3052,12 +3052,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLibClassCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedConstraints",
-            	              		lv_ownedConstraints_13_0, 
+            	              		lv_ownedConstraints_13_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.InvCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -3078,9 +3078,9 @@
             	    // InternalOCLstdlib.g:1025:3: lv_ownedAnnotations_14_0= ruleAnnotationElementCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_3_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLibClassCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_3_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_23);
             	    lv_ownedAnnotations_14_0=ruleAnnotationElementCS();
@@ -3093,12 +3093,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLibClassCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedAnnotations",
-            	              		lv_ownedAnnotations_14_0, 
+            	              		lv_ownedAnnotations_14_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -3119,7 +3119,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_15, grammarAccess.getLibClassCSAccess().getRightCurlyBracketKeyword_8());
-                  
+
             }
 
             }
@@ -3128,14 +3128,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3156,7 +3156,7 @@
             // InternalOCLstdlib.g:1055:2: iv_ruleClassCS= ruleClassCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getClassCSRule()); 
+               newCompositeNode(grammarAccess.getClassCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleClassCS=ruleClassCS();
@@ -3164,18 +3164,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleClassCS; 
+               current =iv_ruleClassCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3191,21 +3191,21 @@
         EObject this_LibClassCS_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:1065:28: (this_LibClassCS_0= ruleLibClassCS )
             // InternalOCLstdlib.g:1067:2: this_LibClassCS_0= ruleLibClassCS
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getClassCSAccess().getLibClassCSParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getClassCSAccess().getLibClassCSParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_LibClassCS_0=ruleLibClassCS();
@@ -3213,23 +3213,23 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
-                      current = this_LibClassCS_0; 
+
+                      current = this_LibClassCS_0;
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3250,7 +3250,7 @@
             // InternalOCLstdlib.g:1088:2: iv_ruleDetailCS= ruleDetailCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getDetailCSRule()); 
+               newCompositeNode(grammarAccess.getDetailCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleDetailCS=ruleDetailCS();
@@ -3258,18 +3258,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleDetailCS; 
+               current =iv_ruleDetailCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3289,8 +3289,8 @@
         AntlrDatatypeRuleToken lv_name_0_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:1098:28: ( ( ( ( (lv_name_0_1= ruleName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) ) ) otherlv_1= '=' ( ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) )* ) )
             // InternalOCLstdlib.g:1099:1: ( ( ( (lv_name_0_1= ruleName | lv_name_0_2= RULE_SINGLE_QUOTED_STRING ) ) ) otherlv_1= '=' ( ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) )* )
@@ -3326,9 +3326,9 @@
                     // InternalOCLstdlib.g:1102:3: lv_name_0_1= ruleName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getDetailCSAccess().getNameNameParserRuleCall_0_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getDetailCSAccess().getNameNameParserRuleCall_0_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_24);
                     lv_name_0_1=ruleName();
@@ -3341,12 +3341,12 @@
                       	            current = createModelElementForParent(grammarAccess.getDetailCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_0_1, 
+                              		lv_name_0_1,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -3357,8 +3357,8 @@
                     lv_name_0_2=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_24); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_name_0_2, grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1()); 
-                      		
+                      			newLeafNode(lv_name_0_2, grammarAccess.getDetailCSAccess().getNameSINGLE_QUOTED_STRINGTerminalRuleCall_0_0_1());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -3366,11 +3366,11 @@
                       	            current = createModelElement(grammarAccess.getDetailCSRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_0_2, 
+                              		lv_name_0_2,
                               		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
-                      	    
+
                     }
 
                     }
@@ -3388,7 +3388,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getDetailCSAccess().getEqualsSignKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:1139:1: ( ( (lv_values_2_1= RULE_SINGLE_QUOTED_STRING | lv_values_2_2= RULE_ML_SINGLE_QUOTED_STRING ) ) )*
             loop21:
@@ -3432,8 +3432,8 @@
             	            lv_values_2_1=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_25); if (state.failed) return current;
             	            if ( state.backtracking==0 ) {
 
-            	              			newLeafNode(lv_values_2_1, grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0()); 
-            	              		
+            	              			newLeafNode(lv_values_2_1, grammarAccess.getDetailCSAccess().getValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0());
+
             	            }
             	            if ( state.backtracking==0 ) {
 
@@ -3441,11 +3441,11 @@
             	              	            current = createModelElement(grammarAccess.getDetailCSRule());
             	              	        }
             	                     		addWithLastConsumed(
-            	                     			current, 
+            	                     			current,
             	                     			"values",
-            	                      		lv_values_2_1, 
+            	                      		lv_values_2_1,
             	                      		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
-            	              	    
+
             	            }
 
             	            }
@@ -3456,8 +3456,8 @@
             	            lv_values_2_2=(Token)match(input,RULE_ML_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_25); if (state.failed) return current;
             	            if ( state.backtracking==0 ) {
 
-            	              			newLeafNode(lv_values_2_2, grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1()); 
-            	              		
+            	              			newLeafNode(lv_values_2_2, grammarAccess.getDetailCSAccess().getValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1());
+
             	            }
             	            if ( state.backtracking==0 ) {
 
@@ -3465,11 +3465,11 @@
             	              	            current = createModelElement(grammarAccess.getDetailCSRule());
             	              	        }
             	                     		addWithLastConsumed(
-            	                     			current, 
+            	                     			current,
             	                     			"values",
-            	                      		lv_values_2_2, 
+            	                      		lv_values_2_2,
             	                      		"org.eclipse.ocl.xtext.base.Base.ML_SINGLE_QUOTED_STRING");
-            	              	    
+
             	            }
 
             	            }
@@ -3496,14 +3496,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3524,7 +3524,7 @@
             // InternalOCLstdlib.g:1185:2: iv_ruleDocumentationCS= ruleDocumentationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getDocumentationCSRule()); 
+               newCompositeNode(grammarAccess.getDocumentationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleDocumentationCS=ruleDocumentationCS();
@@ -3532,18 +3532,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleDocumentationCS; 
+               current =iv_ruleDocumentationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3567,8 +3567,8 @@
         EObject lv_ownedDetails_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:1195:28: ( ( () otherlv_1= 'documentation' ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? otherlv_8= ';' ) )
             // InternalOCLstdlib.g:1196:1: ( () otherlv_1= 'documentation' ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? otherlv_8= ';' )
@@ -3577,19 +3577,19 @@
             // InternalOCLstdlib.g:1196:2: () otherlv_1= 'documentation' ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )? (otherlv_3= '(' ( (lv_ownedDetails_4_0= ruleDetailCS ) ) (otherlv_5= ',' ( (lv_ownedDetails_6_0= ruleDetailCS ) ) )* otherlv_7= ')' )? otherlv_8= ';'
             {
             // InternalOCLstdlib.g:1196:2: ()
-            // InternalOCLstdlib.g:1197:2: 
+            // InternalOCLstdlib.g:1197:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getDocumentationCSAccess().getDocumentationCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -3598,7 +3598,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getDocumentationCSAccess().getDocumentationKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:1209:1: ( (lv_value_2_0= RULE_SINGLE_QUOTED_STRING ) )?
             int alt22=2;
@@ -3617,8 +3617,8 @@
                     lv_value_2_0=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_27); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      			newLeafNode(lv_value_2_0, grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0()); 
-                      		
+                      			newLeafNode(lv_value_2_0, grammarAccess.getDocumentationCSAccess().getValueSINGLE_QUOTED_STRINGTerminalRuleCall_2_0());
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -3626,11 +3626,11 @@
                       	            current = createModelElement(grammarAccess.getDocumentationCSRule());
                       	        }
                              		setWithLastConsumed(
-                             			current, 
+                             			current,
                              			"value",
-                              		lv_value_2_0, 
+                              		lv_value_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.SINGLE_QUOTED_STRING");
-                      	    
+
                     }
 
                     }
@@ -3656,7 +3656,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getDocumentationCSAccess().getLeftParenthesisKeyword_3_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:1231:1: ( (lv_ownedDetails_4_0= ruleDetailCS ) )
                     // InternalOCLstdlib.g:1232:1: (lv_ownedDetails_4_0= ruleDetailCS )
@@ -3665,9 +3665,9 @@
                     // InternalOCLstdlib.g:1233:3: lv_ownedDetails_4_0= ruleDetailCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_13);
                     lv_ownedDetails_4_0=ruleDetailCS();
@@ -3680,12 +3680,12 @@
                       	            current = createModelElementForParent(grammarAccess.getDocumentationCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedDetails",
-                              		lv_ownedDetails_4_0, 
+                              		lv_ownedDetails_4_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.DetailCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -3712,7 +3712,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_5, grammarAccess.getDocumentationCSAccess().getCommaKeyword_3_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLstdlib.g:1253:1: ( (lv_ownedDetails_6_0= ruleDetailCS ) )
                     	    // InternalOCLstdlib.g:1254:1: (lv_ownedDetails_6_0= ruleDetailCS )
@@ -3721,9 +3721,9 @@
                     	    // InternalOCLstdlib.g:1255:3: lv_ownedDetails_6_0= ruleDetailCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getDocumentationCSAccess().getOwnedDetailsDetailCSParserRuleCall_3_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_13);
                     	    lv_ownedDetails_6_0=ruleDetailCS();
@@ -3736,12 +3736,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getDocumentationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedDetails",
-                    	              		lv_ownedDetails_6_0, 
+                    	              		lv_ownedDetails_6_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.DetailCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -3762,7 +3762,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_7, grammarAccess.getDocumentationCSAccess().getRightParenthesisKeyword_3_3());
-                          
+
                     }
 
                     }
@@ -3774,7 +3774,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_8, grammarAccess.getDocumentationCSAccess().getSemicolonKeyword_4());
-                  
+
             }
 
             }
@@ -3783,14 +3783,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3811,7 +3811,7 @@
             // InternalOCLstdlib.g:1289:2: iv_ruleImportCS= ruleImportCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getImportCSRule()); 
+               newCompositeNode(grammarAccess.getImportCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleImportCS=ruleImportCS();
@@ -3819,18 +3819,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleImportCS; 
+               current =iv_ruleImportCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -3851,8 +3851,8 @@
         EObject lv_ownedPathName_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:1299:28: ( (otherlv_0= 'import' ( ( (lv_name_1_0= ruleIdentifier ) ) otherlv_2= ':' )? ( (lv_ownedPathName_3_0= ruleURIPathNameCS ) ) ( (lv_isAll_4_0= '::*' ) )? ) )
             // InternalOCLstdlib.g:1300:1: (otherlv_0= 'import' ( ( (lv_name_1_0= ruleIdentifier ) ) otherlv_2= ':' )? ( (lv_ownedPathName_3_0= ruleURIPathNameCS ) ) ( (lv_isAll_4_0= '::*' ) )? )
@@ -3864,7 +3864,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getImportCSAccess().getImportKeyword_0());
-                  
+
             }
             // InternalOCLstdlib.g:1304:1: ( ( (lv_name_1_0= ruleIdentifier ) ) otherlv_2= ':' )?
             int alt25=2;
@@ -3880,9 +3880,9 @@
                     // InternalOCLstdlib.g:1306:3: lv_name_1_0= ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getImportCSAccess().getNameIdentifierParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_8);
                     lv_name_1_0=ruleIdentifier();
@@ -3895,12 +3895,12 @@
                       	            current = createModelElementForParent(grammarAccess.getImportCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -3912,7 +3912,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getImportCSAccess().getColonKeyword_1_1());
-                          
+
                     }
 
                     }
@@ -3927,9 +3927,9 @@
             // InternalOCLstdlib.g:1328:3: lv_ownedPathName_3_0= ruleURIPathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getImportCSAccess().getOwnedPathNameURIPathNameCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_28);
             lv_ownedPathName_3_0=ruleURIPathNameCS();
@@ -3942,12 +3942,12 @@
               	            current = createModelElementForParent(grammarAccess.getImportCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_3_0, 
+                      		lv_ownedPathName_3_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIPathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -3973,7 +3973,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isAll_4_0, grammarAccess.getImportCSAccess().getIsAllColonColonAsteriskKeyword_3_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -3981,7 +3981,7 @@
                       	            current = createModelElement(grammarAccess.getImportCSRule());
                       	        }
                              		setWithLastConsumed(current, "isAll", true, "::*");
-                      	    
+
                     }
 
                     }
@@ -3999,14 +3999,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4027,7 +4027,7 @@
             // InternalOCLstdlib.g:1369:2: iv_ruleInvCS= ruleInvCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getInvCSRule()); 
+               newCompositeNode(grammarAccess.getInvCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleInvCS=ruleInvCS();
@@ -4035,18 +4035,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleInvCS; 
+               current =iv_ruleInvCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4071,8 +4071,8 @@
         EObject lv_ownedSpecification_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:1379:28: ( ( ( (lv_stereotype_0_0= 'inv' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) ) otherlv_7= ';' ) )
             // InternalOCLstdlib.g:1380:1: ( ( (lv_stereotype_0_0= 'inv' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) ) otherlv_7= ';' )
@@ -4090,7 +4090,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_stereotype_0_0, grammarAccess.getInvCSAccess().getStereotypeInvKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -4098,7 +4098,7 @@
               	            current = createModelElement(grammarAccess.getInvCSRule());
               	        }
                      		setWithLastConsumed(current, "stereotype", lv_stereotype_0_0, "inv");
-              	    
+
             }
 
             }
@@ -4124,9 +4124,9 @@
                     // InternalOCLstdlib.g:1397:3: lv_name_1_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getInvCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getInvCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_30);
                     lv_name_1_0=ruleUnrestrictedName();
@@ -4139,12 +4139,12 @@
                       	            current = createModelElementForParent(grammarAccess.getInvCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -4167,7 +4167,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_2, grammarAccess.getInvCSAccess().getLeftParenthesisKeyword_1_1_0());
-                                  
+
                             }
                             // InternalOCLstdlib.g:1417:1: ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) )
                             // InternalOCLstdlib.g:1418:1: (lv_ownedMessageSpecification_3_0= ruleSpecificationCS )
@@ -4176,9 +4176,9 @@
                             // InternalOCLstdlib.g:1419:3: lv_ownedMessageSpecification_3_0= ruleSpecificationCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getInvCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_32);
                             lv_ownedMessageSpecification_3_0=ruleSpecificationCS();
@@ -4191,12 +4191,12 @@
                               	            current = createModelElementForParent(grammarAccess.getInvCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedMessageSpecification",
-                                      		lv_ownedMessageSpecification_3_0, 
+                                      		lv_ownedMessageSpecification_3_0,
                                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -4208,7 +4208,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getInvCSAccess().getRightParenthesisKeyword_1_1_2());
-                                  
+
                             }
 
                             }
@@ -4226,7 +4226,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getInvCSAccess().getColonKeyword_2());
-                  
+
             }
             // InternalOCLstdlib.g:1443:1: ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )
             // InternalOCLstdlib.g:1444:1: (lv_ownedSpecification_6_0= ruleSpecificationCS )
@@ -4235,9 +4235,9 @@
             // InternalOCLstdlib.g:1445:3: lv_ownedSpecification_6_0= ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getInvCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getInvCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_3);
             lv_ownedSpecification_6_0=ruleSpecificationCS();
@@ -4250,12 +4250,12 @@
               	            current = createModelElementForParent(grammarAccess.getInvCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedSpecification",
-                      		lv_ownedSpecification_6_0, 
+                      		lv_ownedSpecification_6_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -4267,7 +4267,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getInvCSAccess().getSemicolonKeyword_4());
-                  
+
             }
 
             }
@@ -4276,14 +4276,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4304,7 +4304,7 @@
             // InternalOCLstdlib.g:1475:2: iv_ruleLibCoercionCS= ruleLibCoercionCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLibCoercionCSRule()); 
+               newCompositeNode(grammarAccess.getLibCoercionCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLibCoercionCS=ruleLibCoercionCS();
@@ -4312,18 +4312,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLibCoercionCS; 
+               current =iv_ruleLibCoercionCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4356,8 +4356,8 @@
         EObject lv_ownedPostconditions_11_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:1485:28: ( (otherlv_0= 'coercion' ( (lv_name_1_0= ruleName ) ) otherlv_2= '(' otherlv_3= ')' otherlv_4= ':' ( (lv_ownedType_5_0= ruleTypedMultiplicityRefCS ) ) (otherlv_6= '=>' ( (otherlv_7= RULE_SINGLE_QUOTED_STRING ) ) )? ( (otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_10_0= rulePostCS ) ) | ( (lv_ownedPostconditions_11_0= rulePreCS ) ) )* otherlv_12= '}' ) | otherlv_13= ';' ) ) )
             // InternalOCLstdlib.g:1486:1: (otherlv_0= 'coercion' ( (lv_name_1_0= ruleName ) ) otherlv_2= '(' otherlv_3= ')' otherlv_4= ':' ( (lv_ownedType_5_0= ruleTypedMultiplicityRefCS ) ) (otherlv_6= '=>' ( (otherlv_7= RULE_SINGLE_QUOTED_STRING ) ) )? ( (otherlv_8= '{' ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_10_0= rulePostCS ) ) | ( (lv_ownedPostconditions_11_0= rulePreCS ) ) )* otherlv_12= '}' ) | otherlv_13= ';' ) )
@@ -4369,7 +4369,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getLibCoercionCSAccess().getCoercionKeyword_0());
-                  
+
             }
             // InternalOCLstdlib.g:1490:1: ( (lv_name_1_0= ruleName ) )
             // InternalOCLstdlib.g:1491:1: (lv_name_1_0= ruleName )
@@ -4378,9 +4378,9 @@
             // InternalOCLstdlib.g:1492:3: lv_name_1_0= ruleName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getNameNameParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getNameNameParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_33);
             lv_name_1_0=ruleName();
@@ -4393,12 +4393,12 @@
               	            current = createModelElementForParent(grammarAccess.getLibCoercionCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_1_0, 
+                      		lv_name_1_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -4410,19 +4410,19 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getLibCoercionCSAccess().getLeftParenthesisKeyword_2());
-                  
+
             }
             otherlv_3=(Token)match(input,45,FollowSets000.FOLLOW_8); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getLibCoercionCSAccess().getRightParenthesisKeyword_3());
-                  
+
             }
             otherlv_4=(Token)match(input,42,FollowSets000.FOLLOW_9); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getLibCoercionCSAccess().getColonKeyword_4());
-                  
+
             }
             // InternalOCLstdlib.g:1520:1: ( (lv_ownedType_5_0= ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:1521:1: (lv_ownedType_5_0= ruleTypedMultiplicityRefCS )
@@ -4431,9 +4431,9 @@
             // InternalOCLstdlib.g:1522:3: lv_ownedType_5_0= ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_5_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_5_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_34);
             lv_ownedType_5_0=ruleTypedMultiplicityRefCS();
@@ -4446,12 +4446,12 @@
               	            current = createModelElementForParent(grammarAccess.getLibCoercionCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_5_0, 
+                      		lv_ownedType_5_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -4474,7 +4474,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getLibCoercionCSAccess().getEqualsSignGreaterThanSignKeyword_6_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:1542:1: ( (otherlv_7= RULE_SINGLE_QUOTED_STRING ) )
                     // InternalOCLstdlib.g:1543:1: (otherlv_7= RULE_SINGLE_QUOTED_STRING )
@@ -4483,22 +4483,22 @@
                     // InternalOCLstdlib.g:1544:3: otherlv_7= RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getLibCoercionCSRule());
                       	        }
-                              
+
                     }
                     otherlv_7=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_14); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      		newLeafNode(otherlv_7, grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSCrossReference_6_1_0()); 
-                      	
+                      		newLeafNode(otherlv_7, grammarAccess.getLibCoercionCSAccess().getImplementationJavaClassCSCrossReference_6_1_0());
+
                     }
 
                     }
@@ -4540,7 +4540,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_8, grammarAccess.getLibCoercionCSAccess().getLeftCurlyBracketKeyword_7_0_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:1562:1: ( ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_10_0= rulePostCS ) ) | ( (lv_ownedPostconditions_11_0= rulePreCS ) ) )*
                     loop30:
@@ -4577,9 +4577,9 @@
                     	    // InternalOCLstdlib.g:1564:3: lv_ownedAnnotations_9_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_7_0_1_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_36);
                     	    lv_ownedAnnotations_9_0=ruleAnnotationElementCS();
@@ -4592,12 +4592,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibCoercionCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_9_0, 
+                    	              		lv_ownedAnnotations_9_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -4618,9 +4618,9 @@
                     	    // InternalOCLstdlib.g:1583:3: lv_ownedPreconditions_10_0= rulePostCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsPostCSParserRuleCall_7_0_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedPreconditionsPostCSParserRuleCall_7_0_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_36);
                     	    lv_ownedPreconditions_10_0=rulePostCS();
@@ -4633,12 +4633,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibCoercionCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedPreconditions",
-                    	              		lv_ownedPreconditions_10_0, 
+                    	              		lv_ownedPreconditions_10_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PostCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -4659,9 +4659,9 @@
                     	    // InternalOCLstdlib.g:1602:3: lv_ownedPostconditions_11_0= rulePreCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsPreCSParserRuleCall_7_0_1_2_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibCoercionCSAccess().getOwnedPostconditionsPreCSParserRuleCall_7_0_1_2_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_36);
                     	    lv_ownedPostconditions_11_0=rulePreCS();
@@ -4674,12 +4674,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibCoercionCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedPostconditions",
-                    	              		lv_ownedPostconditions_11_0, 
+                    	              		lv_ownedPostconditions_11_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PreCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -4700,7 +4700,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_12, grammarAccess.getLibCoercionCSAccess().getRightCurlyBracketKeyword_7_0_2());
-                          
+
                     }
 
                     }
@@ -4715,7 +4715,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_13, grammarAccess.getLibCoercionCSAccess().getSemicolonKeyword_7_1());
-                          
+
                     }
 
                     }
@@ -4730,14 +4730,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4758,7 +4758,7 @@
             // InternalOCLstdlib.g:1637:2: iv_ruleLibIterationCS= ruleLibIterationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLibIterationCSRule()); 
+               newCompositeNode(grammarAccess.getLibIterationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLibIterationCS=ruleLibIterationCS();
@@ -4766,18 +4766,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLibIterationCS; 
+               current =iv_ruleLibIterationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -4831,8 +4831,8 @@
         EObject lv_ownedPostconditions_25_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:1647:28: ( (otherlv_0= 'iteration' ( (lv_name_1_0= ruleName ) ) ( (lv_ownedSignature_2_0= ruleTemplateSignatureCS ) )? otherlv_3= '(' ( (lv_ownedIterators_4_0= ruleIteratorCS ) ) (otherlv_5= ',' ( (lv_ownedIterators_6_0= ruleIteratorCS ) ) )* (otherlv_7= ';' ( (lv_ownedAccumulators_8_0= ruleAccumulatorCS ) ) (otherlv_9= ',' ( (lv_ownedAccumulators_10_0= ruleAccumulatorCS ) ) )* )? (otherlv_11= '|' ( (lv_ownedParameters_12_0= ruleParameterCS ) ) (otherlv_13= ',' ( (lv_ownedParameters_14_0= ruleParameterCS ) ) )* )? otherlv_15= ')' otherlv_16= ':' ( (lv_ownedType_17_0= ruleTypedMultiplicityRefCS ) ) ( (lv_isInvalidating_18_0= 'invalidating' ) )? ( (lv_isValidating_19_0= 'validating' ) )? (otherlv_20= '=>' ( (otherlv_21= RULE_SINGLE_QUOTED_STRING ) ) )? ( (otherlv_22= '{' ( ( (lv_ownedAnnotations_23_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_24_0= rulePostCS ) ) | ( (lv_ownedPostconditions_25_0= rulePreCS ) ) )* otherlv_26= '}' ) | otherlv_27= ';' ) ) )
             // InternalOCLstdlib.g:1648:1: (otherlv_0= 'iteration' ( (lv_name_1_0= ruleName ) ) ( (lv_ownedSignature_2_0= ruleTemplateSignatureCS ) )? otherlv_3= '(' ( (lv_ownedIterators_4_0= ruleIteratorCS ) ) (otherlv_5= ',' ( (lv_ownedIterators_6_0= ruleIteratorCS ) ) )* (otherlv_7= ';' ( (lv_ownedAccumulators_8_0= ruleAccumulatorCS ) ) (otherlv_9= ',' ( (lv_ownedAccumulators_10_0= ruleAccumulatorCS ) ) )* )? (otherlv_11= '|' ( (lv_ownedParameters_12_0= ruleParameterCS ) ) (otherlv_13= ',' ( (lv_ownedParameters_14_0= ruleParameterCS ) ) )* )? otherlv_15= ')' otherlv_16= ':' ( (lv_ownedType_17_0= ruleTypedMultiplicityRefCS ) ) ( (lv_isInvalidating_18_0= 'invalidating' ) )? ( (lv_isValidating_19_0= 'validating' ) )? (otherlv_20= '=>' ( (otherlv_21= RULE_SINGLE_QUOTED_STRING ) ) )? ( (otherlv_22= '{' ( ( (lv_ownedAnnotations_23_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_24_0= rulePostCS ) ) | ( (lv_ownedPostconditions_25_0= rulePreCS ) ) )* otherlv_26= '}' ) | otherlv_27= ';' ) )
@@ -4844,7 +4844,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getLibIterationCSAccess().getIterationKeyword_0());
-                  
+
             }
             // InternalOCLstdlib.g:1652:1: ( (lv_name_1_0= ruleName ) )
             // InternalOCLstdlib.g:1653:1: (lv_name_1_0= ruleName )
@@ -4853,9 +4853,9 @@
             // InternalOCLstdlib.g:1654:3: lv_name_1_0= ruleName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getNameNameParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getNameNameParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_33);
             lv_name_1_0=ruleName();
@@ -4868,12 +4868,12 @@
               	            current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_1_0, 
+                      		lv_name_1_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -4892,9 +4892,9 @@
                     // InternalOCLstdlib.g:1672:3: lv_ownedSignature_2_0= ruleTemplateSignatureCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_33);
                     lv_ownedSignature_2_0=ruleTemplateSignatureCS();
@@ -4907,12 +4907,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedSignature",
-                              		lv_ownedSignature_2_0, 
+                              		lv_ownedSignature_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.TemplateSignatureCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -4927,7 +4927,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getLibIterationCSAccess().getLeftParenthesisKeyword_3());
-                  
+
             }
             // InternalOCLstdlib.g:1692:1: ( (lv_ownedIterators_4_0= ruleIteratorCS ) )
             // InternalOCLstdlib.g:1693:1: (lv_ownedIterators_4_0= ruleIteratorCS )
@@ -4936,9 +4936,9 @@
             // InternalOCLstdlib.g:1694:3: lv_ownedIterators_4_0= ruleIteratorCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_4_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_4_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_38);
             lv_ownedIterators_4_0=ruleIteratorCS();
@@ -4951,12 +4951,12 @@
               	            current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedIterators",
-                      		lv_ownedIterators_4_0, 
+                      		lv_ownedIterators_4_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.IteratorCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -4983,7 +4983,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_5, grammarAccess.getLibIterationCSAccess().getCommaKeyword_5_0());
-            	          
+
             	    }
             	    // InternalOCLstdlib.g:1714:1: ( (lv_ownedIterators_6_0= ruleIteratorCS ) )
             	    // InternalOCLstdlib.g:1715:1: (lv_ownedIterators_6_0= ruleIteratorCS )
@@ -4992,9 +4992,9 @@
             	    // InternalOCLstdlib.g:1716:3: lv_ownedIterators_6_0= ruleIteratorCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_5_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedIteratorsIteratorCSParserRuleCall_5_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_38);
             	    lv_ownedIterators_6_0=ruleIteratorCS();
@@ -5007,12 +5007,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedIterators",
-            	              		lv_ownedIterators_6_0, 
+            	              		lv_ownedIterators_6_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.IteratorCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -5044,7 +5044,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_7, grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_6_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:1736:1: ( (lv_ownedAccumulators_8_0= ruleAccumulatorCS ) )
                     // InternalOCLstdlib.g:1737:1: (lv_ownedAccumulators_8_0= ruleAccumulatorCS )
@@ -5053,9 +5053,9 @@
                     // InternalOCLstdlib.g:1738:3: lv_ownedAccumulators_8_0= ruleAccumulatorCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_39);
                     lv_ownedAccumulators_8_0=ruleAccumulatorCS();
@@ -5068,12 +5068,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedAccumulators",
-                              		lv_ownedAccumulators_8_0, 
+                              		lv_ownedAccumulators_8_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AccumulatorCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -5100,7 +5100,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_9, grammarAccess.getLibIterationCSAccess().getCommaKeyword_6_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLstdlib.g:1758:1: ( (lv_ownedAccumulators_10_0= ruleAccumulatorCS ) )
                     	    // InternalOCLstdlib.g:1759:1: (lv_ownedAccumulators_10_0= ruleAccumulatorCS )
@@ -5109,9 +5109,9 @@
                     	    // InternalOCLstdlib.g:1760:3: lv_ownedAccumulators_10_0= ruleAccumulatorCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedAccumulatorsAccumulatorCSParserRuleCall_6_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_39);
                     	    lv_ownedAccumulators_10_0=ruleAccumulatorCS();
@@ -5124,12 +5124,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAccumulators",
-                    	              		lv_ownedAccumulators_10_0, 
+                    	              		lv_ownedAccumulators_10_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AccumulatorCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -5167,7 +5167,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_11, grammarAccess.getLibIterationCSAccess().getVerticalLineKeyword_7_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:1780:1: ( (lv_ownedParameters_12_0= ruleParameterCS ) )
                     // InternalOCLstdlib.g:1781:1: (lv_ownedParameters_12_0= ruleParameterCS )
@@ -5176,9 +5176,9 @@
                     // InternalOCLstdlib.g:1782:3: lv_ownedParameters_12_0= ruleParameterCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_13);
                     lv_ownedParameters_12_0=ruleParameterCS();
@@ -5191,12 +5191,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParameters",
-                              		lv_ownedParameters_12_0, 
+                              		lv_ownedParameters_12_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ParameterCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -5223,7 +5223,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_13, grammarAccess.getLibIterationCSAccess().getCommaKeyword_7_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLstdlib.g:1802:1: ( (lv_ownedParameters_14_0= ruleParameterCS ) )
                     	    // InternalOCLstdlib.g:1803:1: (lv_ownedParameters_14_0= ruleParameterCS )
@@ -5232,9 +5232,9 @@
                     	    // InternalOCLstdlib.g:1804:3: lv_ownedParameters_14_0= ruleParameterCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedParametersParameterCSParserRuleCall_7_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_13);
                     	    lv_ownedParameters_14_0=ruleParameterCS();
@@ -5247,12 +5247,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParameters",
-                    	              		lv_ownedParameters_14_0, 
+                    	              		lv_ownedParameters_14_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ParameterCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -5279,13 +5279,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_15, grammarAccess.getLibIterationCSAccess().getRightParenthesisKeyword_8());
-                  
+
             }
             otherlv_16=(Token)match(input,42,FollowSets000.FOLLOW_9); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_16, grammarAccess.getLibIterationCSAccess().getColonKeyword_9());
-                  
+
             }
             // InternalOCLstdlib.g:1828:1: ( (lv_ownedType_17_0= ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:1829:1: (lv_ownedType_17_0= ruleTypedMultiplicityRefCS )
@@ -5294,9 +5294,9 @@
             // InternalOCLstdlib.g:1830:3: lv_ownedType_17_0= ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_10_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_10_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_40);
             lv_ownedType_17_0=ruleTypedMultiplicityRefCS();
@@ -5309,12 +5309,12 @@
               	            current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_17_0, 
+                      		lv_ownedType_17_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -5340,7 +5340,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isInvalidating_18_0, grammarAccess.getLibIterationCSAccess().getIsInvalidatingInvalidatingKeyword_11_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -5348,7 +5348,7 @@
                       	            current = createModelElement(grammarAccess.getLibIterationCSRule());
                       	        }
                              		setWithLastConsumed(current, "isInvalidating", true, "invalidating");
-                      	    
+
                     }
 
                     }
@@ -5377,7 +5377,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isValidating_19_0, grammarAccess.getLibIterationCSAccess().getIsValidatingValidatingKeyword_12_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -5385,7 +5385,7 @@
                       	            current = createModelElement(grammarAccess.getLibIterationCSRule());
                       	        }
                              		setWithLastConsumed(current, "isValidating", true, "validating");
-                      	    
+
                     }
 
                     }
@@ -5411,7 +5411,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_20, grammarAccess.getLibIterationCSAccess().getEqualsSignGreaterThanSignKeyword_13_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:1880:1: ( (otherlv_21= RULE_SINGLE_QUOTED_STRING ) )
                     // InternalOCLstdlib.g:1881:1: (otherlv_21= RULE_SINGLE_QUOTED_STRING )
@@ -5420,22 +5420,22 @@
                     // InternalOCLstdlib.g:1882:3: otherlv_21= RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getLibIterationCSRule());
                       	        }
-                              
+
                     }
                     otherlv_21=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_14); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      		newLeafNode(otherlv_21, grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSCrossReference_13_1_0()); 
-                      	
+                      		newLeafNode(otherlv_21, grammarAccess.getLibIterationCSAccess().getImplementationJavaClassCSCrossReference_13_1_0());
+
                     }
 
                     }
@@ -5477,7 +5477,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_22, grammarAccess.getLibIterationCSAccess().getLeftCurlyBracketKeyword_14_0_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:1900:1: ( ( (lv_ownedAnnotations_23_0= ruleAnnotationElementCS ) ) | ( (lv_ownedPreconditions_24_0= rulePostCS ) ) | ( (lv_ownedPostconditions_25_0= rulePreCS ) ) )*
                     loop41:
@@ -5514,9 +5514,9 @@
                     	    // InternalOCLstdlib.g:1902:3: lv_ownedAnnotations_23_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_14_0_1_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_14_0_1_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_36);
                     	    lv_ownedAnnotations_23_0=ruleAnnotationElementCS();
@@ -5529,12 +5529,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_23_0, 
+                    	              		lv_ownedAnnotations_23_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -5555,9 +5555,9 @@
                     	    // InternalOCLstdlib.g:1921:3: lv_ownedPreconditions_24_0= rulePostCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsPostCSParserRuleCall_14_0_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedPreconditionsPostCSParserRuleCall_14_0_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_36);
                     	    lv_ownedPreconditions_24_0=rulePostCS();
@@ -5570,12 +5570,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedPreconditions",
-                    	              		lv_ownedPreconditions_24_0, 
+                    	              		lv_ownedPreconditions_24_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PostCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -5596,9 +5596,9 @@
                     	    // InternalOCLstdlib.g:1940:3: lv_ownedPostconditions_25_0= rulePreCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsPreCSParserRuleCall_14_0_1_2_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibIterationCSAccess().getOwnedPostconditionsPreCSParserRuleCall_14_0_1_2_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_36);
                     	    lv_ownedPostconditions_25_0=rulePreCS();
@@ -5611,12 +5611,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibIterationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedPostconditions",
-                    	              		lv_ownedPostconditions_25_0, 
+                    	              		lv_ownedPostconditions_25_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PreCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -5637,7 +5637,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_26, grammarAccess.getLibIterationCSAccess().getRightCurlyBracketKeyword_14_0_2());
-                          
+
                     }
 
                     }
@@ -5652,7 +5652,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_27, grammarAccess.getLibIterationCSAccess().getSemicolonKeyword_14_1());
-                          
+
                     }
 
                     }
@@ -5667,14 +5667,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5695,7 +5695,7 @@
             // InternalOCLstdlib.g:1975:2: iv_ruleIteratorCS= ruleIteratorCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIteratorCSRule()); 
+               newCompositeNode(grammarAccess.getIteratorCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleIteratorCS=ruleIteratorCS();
@@ -5703,18 +5703,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleIteratorCS; 
+               current =iv_ruleIteratorCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5733,8 +5733,8 @@
         EObject lv_ownedType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:1985:28: ( ( ( (lv_name_0_0= ruleIdentifier ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) ) )
             // InternalOCLstdlib.g:1986:1: ( ( (lv_name_0_0= ruleIdentifier ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) )
@@ -5749,9 +5749,9 @@
             // InternalOCLstdlib.g:1988:3: lv_name_0_0= ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getIteratorCSAccess().getNameIdentifierParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getIteratorCSAccess().getNameIdentifierParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_8);
             lv_name_0_0=ruleIdentifier();
@@ -5764,12 +5764,12 @@
               	            current = createModelElementForParent(grammarAccess.getIteratorCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -5781,7 +5781,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getIteratorCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:2008:1: ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:2009:1: (lv_ownedType_2_0= ruleTypedMultiplicityRefCS )
@@ -5790,9 +5790,9 @@
             // InternalOCLstdlib.g:2010:3: lv_ownedType_2_0= ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getIteratorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getIteratorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedType_2_0=ruleTypedMultiplicityRefCS();
@@ -5805,12 +5805,12 @@
               	            current = createModelElementForParent(grammarAccess.getIteratorCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_2_0, 
+                      		lv_ownedType_2_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -5825,14 +5825,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5853,7 +5853,7 @@
             // InternalOCLstdlib.g:2036:2: iv_ruleLambdaTypeCS= ruleLambdaTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLambdaTypeCSRule()); 
+               newCompositeNode(grammarAccess.getLambdaTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLambdaTypeCS=ruleLambdaTypeCS();
@@ -5861,18 +5861,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLambdaTypeCS; 
+               current =iv_ruleLambdaTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -5901,8 +5901,8 @@
         EObject lv_ownedResultType_9_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:2046:28: ( ( ( (lv_name_0_0= 'Lambda' ) ) ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedContextType_2_0= ruleLambdaContextTypeRefCS ) ) otherlv_3= '(' ( ( (lv_ownedParameterTypes_4_0= ruleTypedMultiplicityRefCS ) ) (otherlv_5= ',' ( (lv_ownedParameterTypes_6_0= ruleTypedMultiplicityRefCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedResultType_9_0= ruleTypedRefCS ) ) ) )
             // InternalOCLstdlib.g:2047:1: ( ( (lv_name_0_0= 'Lambda' ) ) ( (lv_ownedSignature_1_0= ruleTemplateSignatureCS ) )? ( (lv_ownedContextType_2_0= ruleLambdaContextTypeRefCS ) ) otherlv_3= '(' ( ( (lv_ownedParameterTypes_4_0= ruleTypedMultiplicityRefCS ) ) (otherlv_5= ',' ( (lv_ownedParameterTypes_6_0= ruleTypedMultiplicityRefCS ) ) )* )? otherlv_7= ')' otherlv_8= ':' ( (lv_ownedResultType_9_0= ruleTypedRefCS ) ) )
@@ -5920,7 +5920,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_name_0_0, grammarAccess.getLambdaTypeCSAccess().getNameLambdaKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -5928,7 +5928,7 @@
               	            current = createModelElement(grammarAccess.getLambdaTypeCSRule());
               	        }
                      		setWithLastConsumed(current, "name", lv_name_0_0, "Lambda");
-              	    
+
             }
 
             }
@@ -5951,9 +5951,9 @@
                     // InternalOCLstdlib.g:2064:3: lv_ownedSignature_1_0= ruleTemplateSignatureCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_42);
                     lv_ownedSignature_1_0=ruleTemplateSignatureCS();
@@ -5966,12 +5966,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLambdaTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedSignature",
-                              		lv_ownedSignature_1_0, 
+                              		lv_ownedSignature_1_0,
                               		"org.eclipse.ocl.xtext.base.Base.TemplateSignatureCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -5989,9 +5989,9 @@
             // InternalOCLstdlib.g:2082:3: lv_ownedContextType_2_0= ruleLambdaContextTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeLambdaContextTypeRefCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedContextTypeLambdaContextTypeRefCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_33);
             lv_ownedContextType_2_0=ruleLambdaContextTypeRefCS();
@@ -6004,12 +6004,12 @@
               	            current = createModelElementForParent(grammarAccess.getLambdaTypeCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedContextType",
-                      		lv_ownedContextType_2_0, 
+                      		lv_ownedContextType_2_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LambdaContextTypeRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -6021,7 +6021,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getLambdaTypeCSAccess().getLeftParenthesisKeyword_3());
-                  
+
             }
             // InternalOCLstdlib.g:2102:1: ( ( (lv_ownedParameterTypes_4_0= ruleTypedMultiplicityRefCS ) ) (otherlv_5= ',' ( (lv_ownedParameterTypes_6_0= ruleTypedMultiplicityRefCS ) ) )* )?
             int alt45=2;
@@ -6041,9 +6041,9 @@
                     // InternalOCLstdlib.g:2104:3: lv_ownedParameterTypes_4_0= ruleTypedMultiplicityRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_13);
                     lv_ownedParameterTypes_4_0=ruleTypedMultiplicityRefCS();
@@ -6056,12 +6056,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLambdaTypeCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParameterTypes",
-                              		lv_ownedParameterTypes_4_0, 
+                              		lv_ownedParameterTypes_4_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -6088,7 +6088,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_5, grammarAccess.getLambdaTypeCSAccess().getCommaKeyword_4_1_0());
-                    	          
+
                     	    }
                     	    // InternalOCLstdlib.g:2124:1: ( (lv_ownedParameterTypes_6_0= ruleTypedMultiplicityRefCS ) )
                     	    // InternalOCLstdlib.g:2125:1: (lv_ownedParameterTypes_6_0= ruleTypedMultiplicityRefCS )
@@ -6097,9 +6097,9 @@
                     	    // InternalOCLstdlib.g:2126:3: lv_ownedParameterTypes_6_0= ruleTypedMultiplicityRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedParameterTypesTypedMultiplicityRefCSParserRuleCall_4_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_13);
                     	    lv_ownedParameterTypes_6_0=ruleTypedMultiplicityRefCS();
@@ -6112,12 +6112,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLambdaTypeCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParameterTypes",
-                    	              		lv_ownedParameterTypes_6_0, 
+                    	              		lv_ownedParameterTypes_6_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -6144,13 +6144,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getLambdaTypeCSAccess().getRightParenthesisKeyword_5());
-                  
+
             }
             otherlv_8=(Token)match(input,42,FollowSets000.FOLLOW_9); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_8, grammarAccess.getLambdaTypeCSAccess().getColonKeyword_6());
-                  
+
             }
             // InternalOCLstdlib.g:2150:1: ( (lv_ownedResultType_9_0= ruleTypedRefCS ) )
             // InternalOCLstdlib.g:2151:1: (lv_ownedResultType_9_0= ruleTypedRefCS )
@@ -6159,9 +6159,9 @@
             // InternalOCLstdlib.g:2152:3: lv_ownedResultType_9_0= ruleTypedRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeTypedRefCSParserRuleCall_7_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLambdaTypeCSAccess().getOwnedResultTypeTypedRefCSParserRuleCall_7_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedResultType_9_0=ruleTypedRefCS();
@@ -6174,12 +6174,12 @@
               	            current = createModelElementForParent(grammarAccess.getLambdaTypeCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedResultType",
-                      		lv_ownedResultType_9_0, 
+                      		lv_ownedResultType_9_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -6194,14 +6194,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6222,7 +6222,7 @@
             // InternalOCLstdlib.g:2178:2: iv_ruleLambdaContextTypeRefCS= ruleLambdaContextTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLambdaContextTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getLambdaContextTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLambdaContextTypeRefCS=ruleLambdaContextTypeRefCS();
@@ -6230,18 +6230,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLambdaContextTypeRefCS; 
+               current =iv_ruleLambdaContextTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6257,8 +6257,8 @@
         EObject lv_ownedPathName_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:2188:28: ( ( (lv_ownedPathName_0_0= ruleLibPathNameCS ) ) )
             // InternalOCLstdlib.g:2189:1: ( (lv_ownedPathName_0_0= ruleLibPathNameCS ) )
@@ -6270,9 +6270,9 @@
             // InternalOCLstdlib.g:2191:3: lv_ownedPathName_0_0= ruleLibPathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedPathName_0_0=ruleLibPathNameCS();
@@ -6285,12 +6285,12 @@
               	            current = createModelElementForParent(grammarAccess.getLambdaContextTypeRefCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_0_0, 
+                      		lv_ownedPathName_0_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -6302,14 +6302,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6330,7 +6330,7 @@
             // InternalOCLstdlib.g:2217:2: iv_ruleOperationCS= ruleOperationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getOperationCSRule()); 
+               newCompositeNode(grammarAccess.getOperationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleOperationCS=ruleOperationCS();
@@ -6338,18 +6338,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleOperationCS; 
+               current =iv_ruleOperationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6369,8 +6369,8 @@
         EObject this_LibOperationCS_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:2227:28: ( (this_LibCoercionCS_0= ruleLibCoercionCS | this_LibIterationCS_1= ruleLibIterationCS | this_LibOperationCS_2= ruleLibOperationCS ) )
             // InternalOCLstdlib.g:2228:1: (this_LibCoercionCS_0= ruleLibCoercionCS | this_LibIterationCS_1= ruleLibIterationCS | this_LibOperationCS_2= ruleLibOperationCS )
@@ -6407,14 +6407,14 @@
                     // InternalOCLstdlib.g:2229:2: this_LibCoercionCS_0= ruleLibCoercionCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getOperationCSAccess().getLibCoercionCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getOperationCSAccess().getLibCoercionCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_LibCoercionCS_0=ruleLibCoercionCS();
@@ -6422,10 +6422,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_LibCoercionCS_0; 
+
+                              current = this_LibCoercionCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -6434,14 +6434,14 @@
                     // InternalOCLstdlib.g:2242:2: this_LibIterationCS_1= ruleLibIterationCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getOperationCSAccess().getLibIterationCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getOperationCSAccess().getLibIterationCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_LibIterationCS_1=ruleLibIterationCS();
@@ -6449,10 +6449,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_LibIterationCS_1; 
+
+                              current = this_LibIterationCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -6461,14 +6461,14 @@
                     // InternalOCLstdlib.g:2255:2: this_LibOperationCS_2= ruleLibOperationCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getOperationCSAccess().getLibOperationCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getOperationCSAccess().getLibOperationCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_LibOperationCS_2=ruleLibOperationCS();
@@ -6476,10 +6476,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_LibOperationCS_2; 
+
+                              current = this_LibOperationCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -6491,14 +6491,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6519,7 +6519,7 @@
             // InternalOCLstdlib.g:2276:2: iv_ruleLibOperationCS= ruleLibOperationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLibOperationCSRule()); 
+               newCompositeNode(grammarAccess.getLibOperationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLibOperationCS=ruleLibOperationCS();
@@ -6527,18 +6527,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLibOperationCS; 
+               current =iv_ruleLibOperationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -6588,8 +6588,8 @@
         EObject lv_ownedPreconditions_26_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:2286:28: ( ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'operation' ( (lv_name_2_0= ruleName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? otherlv_4= '(' ( ( (lv_ownedParameters_5_0= ruleParameterCS ) ) (otherlv_6= ',' ( (lv_ownedParameters_7_0= ruleParameterCS ) ) )* )? otherlv_8= ')' otherlv_9= ':' ( (lv_ownedType_10_0= ruleTypedMultiplicityRefCS ) ) ( (lv_isValidating_11_0= 'validating' ) )? ( (lv_isInvalidating_12_0= 'invalidating' ) )? (otherlv_13= 'precedence' otherlv_14= '=' ( ( ruleName ) ) )? (otherlv_16= '=>' ( (otherlv_17= RULE_SINGLE_QUOTED_STRING ) ) )? ( (otherlv_18= '{' ( ( (lv_ownedAnnotations_19_0= ruleAnnotationElementCS ) ) | (otherlv_20= 'body' ( ruleUnrestrictedName )? otherlv_22= ':' ( (lv_ownedBodyExpressions_23_0= ruleSpecificationCS ) ) otherlv_24= ';' ) | ( (lv_ownedPostconditions_25_0= rulePostCS ) ) | ( (lv_ownedPreconditions_26_0= rulePreCS ) ) )* otherlv_27= '}' ) | otherlv_28= ';' ) ) )
             // InternalOCLstdlib.g:2287:1: ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'operation' ( (lv_name_2_0= ruleName ) ) ( (lv_ownedSignature_3_0= ruleTemplateSignatureCS ) )? otherlv_4= '(' ( ( (lv_ownedParameters_5_0= ruleParameterCS ) ) (otherlv_6= ',' ( (lv_ownedParameters_7_0= ruleParameterCS ) ) )* )? otherlv_8= ')' otherlv_9= ':' ( (lv_ownedType_10_0= ruleTypedMultiplicityRefCS ) ) ( (lv_isValidating_11_0= 'validating' ) )? ( (lv_isInvalidating_12_0= 'invalidating' ) )? (otherlv_13= 'precedence' otherlv_14= '=' ( ( ruleName ) ) )? (otherlv_16= '=>' ( (otherlv_17= RULE_SINGLE_QUOTED_STRING ) ) )? ( (otherlv_18= '{' ( ( (lv_ownedAnnotations_19_0= ruleAnnotationElementCS ) ) | (otherlv_20= 'body' ( ruleUnrestrictedName )? otherlv_22= ':' ( (lv_ownedBodyExpressions_23_0= ruleSpecificationCS ) ) otherlv_24= ';' ) | ( (lv_ownedPostconditions_25_0= rulePostCS ) ) | ( (lv_ownedPreconditions_26_0= rulePreCS ) ) )* otherlv_27= '}' ) | otherlv_28= ';' ) )
@@ -6615,7 +6615,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isStatic_0_0, grammarAccess.getLibOperationCSAccess().getIsStaticStaticKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -6623,7 +6623,7 @@
                       	            current = createModelElement(grammarAccess.getLibOperationCSRule());
                       	        }
                              		setWithLastConsumed(current, "isStatic", true, "static");
-                      	    
+
                     }
 
                     }
@@ -6638,7 +6638,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getLibOperationCSAccess().getOperationKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:2306:1: ( (lv_name_2_0= ruleName ) )
             // InternalOCLstdlib.g:2307:1: (lv_name_2_0= ruleName )
@@ -6647,9 +6647,9 @@
             // InternalOCLstdlib.g:2308:3: lv_name_2_0= ruleName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getNameNameParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getNameNameParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_33);
             lv_name_2_0=ruleName();
@@ -6662,12 +6662,12 @@
               	            current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_2_0, 
+                      		lv_name_2_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -6686,9 +6686,9 @@
                     // InternalOCLstdlib.g:2326:3: lv_ownedSignature_3_0= ruleTemplateSignatureCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedSignatureTemplateSignatureCSParserRuleCall_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_33);
                     lv_ownedSignature_3_0=ruleTemplateSignatureCS();
@@ -6701,12 +6701,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedSignature",
-                              		lv_ownedSignature_3_0, 
+                              		lv_ownedSignature_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.TemplateSignatureCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -6721,7 +6721,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getLibOperationCSAccess().getLeftParenthesisKeyword_4());
-                  
+
             }
             // InternalOCLstdlib.g:2346:1: ( ( (lv_ownedParameters_5_0= ruleParameterCS ) ) (otherlv_6= ',' ( (lv_ownedParameters_7_0= ruleParameterCS ) ) )* )?
             int alt50=2;
@@ -6741,9 +6741,9 @@
                     // InternalOCLstdlib.g:2348:3: lv_ownedParameters_5_0= ruleParameterCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_13);
                     lv_ownedParameters_5_0=ruleParameterCS();
@@ -6756,12 +6756,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParameters",
-                              		lv_ownedParameters_5_0, 
+                              		lv_ownedParameters_5_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ParameterCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -6788,7 +6788,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_6, grammarAccess.getLibOperationCSAccess().getCommaKeyword_5_1_0());
-                    	          
+
                     	    }
                     	    // InternalOCLstdlib.g:2368:1: ( (lv_ownedParameters_7_0= ruleParameterCS ) )
                     	    // InternalOCLstdlib.g:2369:1: (lv_ownedParameters_7_0= ruleParameterCS )
@@ -6797,9 +6797,9 @@
                     	    // InternalOCLstdlib.g:2370:3: lv_ownedParameters_7_0= ruleParameterCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedParametersParameterCSParserRuleCall_5_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_13);
                     	    lv_ownedParameters_7_0=ruleParameterCS();
@@ -6812,12 +6812,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParameters",
-                    	              		lv_ownedParameters_7_0, 
+                    	              		lv_ownedParameters_7_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ParameterCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -6844,13 +6844,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_8, grammarAccess.getLibOperationCSAccess().getRightParenthesisKeyword_6());
-                  
+
             }
             otherlv_9=(Token)match(input,42,FollowSets000.FOLLOW_9); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_9, grammarAccess.getLibOperationCSAccess().getColonKeyword_7());
-                  
+
             }
             // InternalOCLstdlib.g:2394:1: ( (lv_ownedType_10_0= ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:2395:1: (lv_ownedType_10_0= ruleTypedMultiplicityRefCS )
@@ -6859,9 +6859,9 @@
             // InternalOCLstdlib.g:2396:3: lv_ownedType_10_0= ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_8_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_8_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_46);
             lv_ownedType_10_0=ruleTypedMultiplicityRefCS();
@@ -6874,12 +6874,12 @@
               	            current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_10_0, 
+                      		lv_ownedType_10_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -6905,7 +6905,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isValidating_11_0, grammarAccess.getLibOperationCSAccess().getIsValidatingValidatingKeyword_9_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -6913,7 +6913,7 @@
                       	            current = createModelElement(grammarAccess.getLibOperationCSRule());
                       	        }
                              		setWithLastConsumed(current, "isValidating", true, "validating");
-                      	    
+
                     }
 
                     }
@@ -6942,7 +6942,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isInvalidating_12_0, grammarAccess.getLibOperationCSAccess().getIsInvalidatingInvalidatingKeyword_10_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -6950,7 +6950,7 @@
                       	            current = createModelElement(grammarAccess.getLibOperationCSRule());
                       	        }
                              		setWithLastConsumed(current, "isInvalidating", true, "invalidating");
-                      	    
+
                     }
 
                     }
@@ -6976,13 +6976,13 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_13, grammarAccess.getLibOperationCSAccess().getPrecedenceKeyword_11_0());
-                          
+
                     }
                     otherlv_14=(Token)match(input,48,FollowSets000.FOLLOW_7); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_14, grammarAccess.getLibOperationCSAccess().getEqualsSignKeyword_11_1());
-                          
+
                     }
                     // InternalOCLstdlib.g:2450:1: ( ( ruleName ) )
                     // InternalOCLstdlib.g:2451:1: ( ruleName )
@@ -6991,21 +6991,21 @@
                     // InternalOCLstdlib.g:2452:3: ruleName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getLibOperationCSRule());
                       	        }
-                              
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceCrossReference_11_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getPrecedencePrecedenceCrossReference_11_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_34);
                     ruleName();
@@ -7013,9 +7013,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7044,7 +7044,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_16, grammarAccess.getLibOperationCSAccess().getEqualsSignGreaterThanSignKeyword_12_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:2472:1: ( (otherlv_17= RULE_SINGLE_QUOTED_STRING ) )
                     // InternalOCLstdlib.g:2473:1: (otherlv_17= RULE_SINGLE_QUOTED_STRING )
@@ -7053,22 +7053,22 @@
                     // InternalOCLstdlib.g:2474:3: otherlv_17= RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getLibOperationCSRule());
                       	        }
-                              
+
                     }
                     otherlv_17=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_14); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      		newLeafNode(otherlv_17, grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSCrossReference_12_1_0()); 
-                      	
+                      		newLeafNode(otherlv_17, grammarAccess.getLibOperationCSAccess().getImplementationJavaClassCSCrossReference_12_1_0());
+
                     }
 
                     }
@@ -7110,7 +7110,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_18, grammarAccess.getLibOperationCSAccess().getLeftCurlyBracketKeyword_13_0_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:2492:1: ( ( (lv_ownedAnnotations_19_0= ruleAnnotationElementCS ) ) | (otherlv_20= 'body' ( ruleUnrestrictedName )? otherlv_22= ':' ( (lv_ownedBodyExpressions_23_0= ruleSpecificationCS ) ) otherlv_24= ';' ) | ( (lv_ownedPostconditions_25_0= rulePostCS ) ) | ( (lv_ownedPreconditions_26_0= rulePreCS ) ) )*
                     loop56:
@@ -7152,9 +7152,9 @@
                     	    // InternalOCLstdlib.g:2494:3: lv_ownedAnnotations_19_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_13_0_1_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_13_0_1_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_49);
                     	    lv_ownedAnnotations_19_0=ruleAnnotationElementCS();
@@ -7167,12 +7167,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_19_0, 
+                    	              		lv_ownedAnnotations_19_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -7193,7 +7193,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_20, grammarAccess.getLibOperationCSAccess().getBodyKeyword_13_0_1_1_0());
-                    	          
+
                     	    }
                     	    // InternalOCLstdlib.g:2515:1: ( ruleUnrestrictedName )?
                     	    int alt55=2;
@@ -7207,14 +7207,14 @@
                     	            // InternalOCLstdlib.g:2516:2: ruleUnrestrictedName
                     	            {
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	              	  /* */ 
-                    	              	
+
+                    	              	  /* */
+
                     	            }
                     	            if ( state.backtracking==0 ) {
-                    	               
-                    	                      newCompositeNode(grammarAccess.getLibOperationCSAccess().getUnrestrictedNameParserRuleCall_13_0_1_1_1()); 
-                    	                  
+
+                    	                      newCompositeNode(grammarAccess.getLibOperationCSAccess().getUnrestrictedNameParserRuleCall_13_0_1_1_1());
+
                     	            }
                     	            pushFollow(FollowSets000.FOLLOW_8);
                     	            ruleUnrestrictedName();
@@ -7222,9 +7222,9 @@
                     	            state._fsp--;
                     	            if (state.failed) return current;
                     	            if ( state.backtracking==0 ) {
-                    	               
+
                     	                      afterParserOrEnumRuleCall();
-                    	                  
+
                     	            }
 
                     	            }
@@ -7236,7 +7236,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_22, grammarAccess.getLibOperationCSAccess().getColonKeyword_13_0_1_1_2());
-                    	          
+
                     	    }
                     	    // InternalOCLstdlib.g:2530:1: ( (lv_ownedBodyExpressions_23_0= ruleSpecificationCS ) )
                     	    // InternalOCLstdlib.g:2531:1: (lv_ownedBodyExpressions_23_0= ruleSpecificationCS )
@@ -7245,9 +7245,9 @@
                     	    // InternalOCLstdlib.g:2532:3: lv_ownedBodyExpressions_23_0= ruleSpecificationCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_13_0_1_1_3_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedBodyExpressionsSpecificationCSParserRuleCall_13_0_1_1_3_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_3);
                     	    lv_ownedBodyExpressions_23_0=ruleSpecificationCS();
@@ -7260,12 +7260,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedBodyExpressions",
-                    	              		lv_ownedBodyExpressions_23_0, 
+                    	              		lv_ownedBodyExpressions_23_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -7277,7 +7277,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_24, grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_0_1_1_4());
-                    	          
+
                     	    }
 
                     	    }
@@ -7295,9 +7295,9 @@
                     	    // InternalOCLstdlib.g:2555:3: lv_ownedPostconditions_25_0= rulePostCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsPostCSParserRuleCall_13_0_1_2_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedPostconditionsPostCSParserRuleCall_13_0_1_2_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_49);
                     	    lv_ownedPostconditions_25_0=rulePostCS();
@@ -7310,12 +7310,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedPostconditions",
-                    	              		lv_ownedPostconditions_25_0, 
+                    	              		lv_ownedPostconditions_25_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PostCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -7336,9 +7336,9 @@
                     	    // InternalOCLstdlib.g:2574:3: lv_ownedPreconditions_26_0= rulePreCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsPreCSParserRuleCall_13_0_1_3_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibOperationCSAccess().getOwnedPreconditionsPreCSParserRuleCall_13_0_1_3_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_49);
                     	    lv_ownedPreconditions_26_0=rulePreCS();
@@ -7351,12 +7351,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibOperationCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedPreconditions",
-                    	              		lv_ownedPreconditions_26_0, 
+                    	              		lv_ownedPreconditions_26_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PreCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -7377,7 +7377,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_27, grammarAccess.getLibOperationCSAccess().getRightCurlyBracketKeyword_13_0_2());
-                          
+
                     }
 
                     }
@@ -7392,7 +7392,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_28, grammarAccess.getLibOperationCSAccess().getSemicolonKeyword_13_1());
-                          
+
                     }
 
                     }
@@ -7407,14 +7407,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7435,7 +7435,7 @@
             // InternalOCLstdlib.g:2609:2: iv_ruleLibPackageCS= ruleLibPackageCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLibPackageCSRule()); 
+               newCompositeNode(grammarAccess.getLibPackageCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLibPackageCS=ruleLibPackageCS();
@@ -7443,18 +7443,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLibPackageCS; 
+               current =iv_ruleLibPackageCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7489,8 +7489,8 @@
         EObject lv_ownedAnnotations_12_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:2619:28: ( (otherlv_0= 'library' ( (lv_name_1_0= ruleName ) ) (otherlv_2= ':' ( (lv_nsPrefix_3_0= ruleIdentifier ) ) otherlv_4= '=' ( (lv_nsURI_5_0= ruleURI ) ) )? otherlv_6= '{' ( ( (lv_ownedPackages_7_0= rulePackageCS ) ) | (otherlv_8= 'precedence' ( (lv_ownedPrecedences_9_0= rulePrecedenceCS ) )+ otherlv_10= ';' ) | ( (lv_ownedClasses_11_0= ruleClassCS ) ) | ( (lv_ownedAnnotations_12_0= ruleAnnotationElementCS ) ) )* otherlv_13= '}' ) )
             // InternalOCLstdlib.g:2620:1: (otherlv_0= 'library' ( (lv_name_1_0= ruleName ) ) (otherlv_2= ':' ( (lv_nsPrefix_3_0= ruleIdentifier ) ) otherlv_4= '=' ( (lv_nsURI_5_0= ruleURI ) ) )? otherlv_6= '{' ( ( (lv_ownedPackages_7_0= rulePackageCS ) ) | (otherlv_8= 'precedence' ( (lv_ownedPrecedences_9_0= rulePrecedenceCS ) )+ otherlv_10= ';' ) | ( (lv_ownedClasses_11_0= ruleClassCS ) ) | ( (lv_ownedAnnotations_12_0= ruleAnnotationElementCS ) ) )* otherlv_13= '}' )
@@ -7502,7 +7502,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getLibPackageCSAccess().getLibraryKeyword_0());
-                  
+
             }
             // InternalOCLstdlib.g:2624:1: ( (lv_name_1_0= ruleName ) )
             // InternalOCLstdlib.g:2625:1: (lv_name_1_0= ruleName )
@@ -7511,9 +7511,9 @@
             // InternalOCLstdlib.g:2626:3: lv_name_1_0= ruleName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getNameNameParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getNameNameParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_50);
             lv_name_1_0=ruleName();
@@ -7526,12 +7526,12 @@
               	            current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_1_0, 
+                      		lv_name_1_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -7554,7 +7554,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getLibPackageCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:2646:1: ( (lv_nsPrefix_3_0= ruleIdentifier ) )
                     // InternalOCLstdlib.g:2647:1: (lv_nsPrefix_3_0= ruleIdentifier )
@@ -7563,9 +7563,9 @@
                     // InternalOCLstdlib.g:2648:3: lv_nsPrefix_3_0= ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_24);
                     lv_nsPrefix_3_0=ruleIdentifier();
@@ -7578,12 +7578,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"nsPrefix",
-                              		lv_nsPrefix_3_0, 
+                              		lv_nsPrefix_3_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7595,7 +7595,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_4, grammarAccess.getLibPackageCSAccess().getEqualsSignKeyword_2_2());
-                          
+
                     }
                     // InternalOCLstdlib.g:2668:1: ( (lv_nsURI_5_0= ruleURI ) )
                     // InternalOCLstdlib.g:2669:1: (lv_nsURI_5_0= ruleURI )
@@ -7604,9 +7604,9 @@
                     // InternalOCLstdlib.g:2670:3: lv_nsURI_5_0= ruleURI
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getNsURIURIParserRuleCall_2_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getNsURIURIParserRuleCall_2_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_51);
                     lv_nsURI_5_0=ruleURI();
@@ -7619,12 +7619,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"nsURI",
-                              		lv_nsURI_5_0, 
+                              		lv_nsURI_5_0,
                               		"org.eclipse.ocl.xtext.base.Base.URI");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -7642,7 +7642,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_6, grammarAccess.getLibPackageCSAccess().getLeftCurlyBracketKeyword_3());
-                  
+
             }
             // InternalOCLstdlib.g:2690:1: ( ( (lv_ownedPackages_7_0= rulePackageCS ) ) | (otherlv_8= 'precedence' ( (lv_ownedPrecedences_9_0= rulePrecedenceCS ) )+ otherlv_10= ';' ) | ( (lv_ownedClasses_11_0= ruleClassCS ) ) | ( (lv_ownedAnnotations_12_0= ruleAnnotationElementCS ) ) )*
             loop60:
@@ -7685,9 +7685,9 @@
             	    // InternalOCLstdlib.g:2692:3: lv_ownedPackages_7_0= rulePackageCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_52);
             	    lv_ownedPackages_7_0=rulePackageCS();
@@ -7700,12 +7700,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPackages",
-            	              		lv_ownedPackages_7_0, 
+            	              		lv_ownedPackages_7_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PackageCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -7726,7 +7726,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_8, grammarAccess.getLibPackageCSAccess().getPrecedenceKeyword_4_1_0());
-            	          
+
             	    }
             	    // InternalOCLstdlib.g:2713:1: ( (lv_ownedPrecedences_9_0= rulePrecedenceCS ) )+
             	    int cnt59=0;
@@ -7748,9 +7748,9 @@
             	    	    // InternalOCLstdlib.g:2715:3: lv_ownedPrecedences_9_0= rulePrecedenceCS
             	    	    {
             	    	    if ( state.backtracking==0 ) {
-            	    	       
-            	    	      	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesPrecedenceCSParserRuleCall_4_1_1_0()); 
-            	    	      	    
+
+            	    	      	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedPrecedencesPrecedenceCSParserRuleCall_4_1_1_0());
+
             	    	    }
             	    	    pushFollow(FollowSets000.FOLLOW_54);
             	    	    lv_ownedPrecedences_9_0=rulePrecedenceCS();
@@ -7763,12 +7763,12 @@
             	    	      	            current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
             	    	      	        }
             	    	             		add(
-            	    	             			current, 
+            	    	             			current,
             	    	             			"ownedPrecedences",
-            	    	              		lv_ownedPrecedences_9_0, 
+            	    	              		lv_ownedPrecedences_9_0,
             	    	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PrecedenceCS");
             	    	      	        afterParserOrEnumRuleCall();
-            	    	      	    
+
             	    	    }
 
             	    	    }
@@ -7791,7 +7791,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_10, grammarAccess.getLibPackageCSAccess().getSemicolonKeyword_4_1_2());
-            	          
+
             	    }
 
             	    }
@@ -7809,9 +7809,9 @@
             	    // InternalOCLstdlib.g:2738:3: lv_ownedClasses_11_0= ruleClassCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_2_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_2_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_52);
             	    lv_ownedClasses_11_0=ruleClassCS();
@@ -7824,12 +7824,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedClasses",
-            	              		lv_ownedClasses_11_0, 
+            	              		lv_ownedClasses_11_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ClassCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -7850,9 +7850,9 @@
             	    // InternalOCLstdlib.g:2757:3: lv_ownedAnnotations_12_0= ruleAnnotationElementCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_3_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLibPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_3_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_52);
             	    lv_ownedAnnotations_12_0=ruleAnnotationElementCS();
@@ -7865,12 +7865,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLibPackageCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedAnnotations",
-            	              		lv_ownedAnnotations_12_0, 
+            	              		lv_ownedAnnotations_12_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -7891,7 +7891,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_13, grammarAccess.getLibPackageCSAccess().getRightCurlyBracketKeyword_5());
-                  
+
             }
 
             }
@@ -7900,14 +7900,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7928,7 +7928,7 @@
             // InternalOCLstdlib.g:2787:2: iv_rulePackageCS= rulePackageCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPackageCSRule()); 
+               newCompositeNode(grammarAccess.getPackageCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePackageCS=rulePackageCS();
@@ -7936,18 +7936,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePackageCS; 
+               current =iv_rulePackageCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -7978,8 +7978,8 @@
         EObject lv_ownedAnnotations_9_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:2797:28: ( (otherlv_0= 'package' ( (lv_name_1_0= ruleName ) ) (otherlv_2= ':' ( (lv_nsPrefix_3_0= ruleIdentifier ) ) otherlv_4= '=' ( (lv_nsURI_5_0= ruleURI ) ) )? otherlv_6= '{' ( ( (lv_ownedPackages_7_0= rulePackageCS ) ) | ( (lv_ownedClasses_8_0= ruleClassCS ) ) | ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) )* otherlv_10= '}' ) )
             // InternalOCLstdlib.g:2798:1: (otherlv_0= 'package' ( (lv_name_1_0= ruleName ) ) (otherlv_2= ':' ( (lv_nsPrefix_3_0= ruleIdentifier ) ) otherlv_4= '=' ( (lv_nsURI_5_0= ruleURI ) ) )? otherlv_6= '{' ( ( (lv_ownedPackages_7_0= rulePackageCS ) ) | ( (lv_ownedClasses_8_0= ruleClassCS ) ) | ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) )* otherlv_10= '}' )
@@ -7991,7 +7991,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getPackageCSAccess().getPackageKeyword_0());
-                  
+
             }
             // InternalOCLstdlib.g:2802:1: ( (lv_name_1_0= ruleName ) )
             // InternalOCLstdlib.g:2803:1: (lv_name_1_0= ruleName )
@@ -8000,9 +8000,9 @@
             // InternalOCLstdlib.g:2804:3: lv_name_1_0= ruleName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPackageCSAccess().getNameNameParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPackageCSAccess().getNameNameParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_50);
             lv_name_1_0=ruleName();
@@ -8015,12 +8015,12 @@
               	            current = createModelElementForParent(grammarAccess.getPackageCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_1_0, 
+                      		lv_name_1_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -8043,7 +8043,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getPackageCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:2824:1: ( (lv_nsPrefix_3_0= ruleIdentifier ) )
                     // InternalOCLstdlib.g:2825:1: (lv_nsPrefix_3_0= ruleIdentifier )
@@ -8052,9 +8052,9 @@
                     // InternalOCLstdlib.g:2826:3: lv_nsPrefix_3_0= ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsPrefixIdentifierParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_24);
                     lv_nsPrefix_3_0=ruleIdentifier();
@@ -8067,12 +8067,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPackageCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"nsPrefix",
-                              		lv_nsPrefix_3_0, 
+                              		lv_nsPrefix_3_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -8084,7 +8084,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_4, grammarAccess.getPackageCSAccess().getEqualsSignKeyword_2_2());
-                          
+
                     }
                     // InternalOCLstdlib.g:2846:1: ( (lv_nsURI_5_0= ruleURI ) )
                     // InternalOCLstdlib.g:2847:1: (lv_nsURI_5_0= ruleURI )
@@ -8093,9 +8093,9 @@
                     // InternalOCLstdlib.g:2848:3: lv_nsURI_5_0= ruleURI
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_2_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPackageCSAccess().getNsURIURIParserRuleCall_2_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_51);
                     lv_nsURI_5_0=ruleURI();
@@ -8108,12 +8108,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPackageCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"nsURI",
-                              		lv_nsURI_5_0, 
+                              		lv_nsURI_5_0,
                               		"org.eclipse.ocl.xtext.base.Base.URI");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -8131,7 +8131,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_6, grammarAccess.getPackageCSAccess().getLeftCurlyBracketKeyword_3());
-                  
+
             }
             // InternalOCLstdlib.g:2868:1: ( ( (lv_ownedPackages_7_0= rulePackageCS ) ) | ( (lv_ownedClasses_8_0= ruleClassCS ) ) | ( (lv_ownedAnnotations_9_0= ruleAnnotationElementCS ) ) )*
             loop62:
@@ -8169,9 +8169,9 @@
             	    // InternalOCLstdlib.g:2870:3: lv_ownedPackages_7_0= rulePackageCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedPackagesPackageCSParserRuleCall_4_0_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_55);
             	    lv_ownedPackages_7_0=rulePackageCS();
@@ -8184,12 +8184,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getPackageCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPackages",
-            	              		lv_ownedPackages_7_0, 
+            	              		lv_ownedPackages_7_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.PackageCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -8210,9 +8210,9 @@
             	    // InternalOCLstdlib.g:2889:3: lv_ownedClasses_8_0= ruleClassCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedClassesClassCSParserRuleCall_4_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_55);
             	    lv_ownedClasses_8_0=ruleClassCS();
@@ -8225,12 +8225,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getPackageCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedClasses",
-            	              		lv_ownedClasses_8_0, 
+            	              		lv_ownedClasses_8_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ClassCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -8251,9 +8251,9 @@
             	    // InternalOCLstdlib.g:2908:3: lv_ownedAnnotations_9_0= ruleAnnotationElementCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_2_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getPackageCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_4_2_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_55);
             	    lv_ownedAnnotations_9_0=ruleAnnotationElementCS();
@@ -8266,12 +8266,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getPackageCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedAnnotations",
-            	              		lv_ownedAnnotations_9_0, 
+            	              		lv_ownedAnnotations_9_0,
             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -8292,7 +8292,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_10, grammarAccess.getPackageCSAccess().getRightCurlyBracketKeyword_5());
-                  
+
             }
 
             }
@@ -8301,14 +8301,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8329,7 +8329,7 @@
             // InternalOCLstdlib.g:2938:2: iv_ruleParameterCS= ruleParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getParameterCSRule()); 
+               newCompositeNode(grammarAccess.getParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleParameterCS=ruleParameterCS();
@@ -8337,18 +8337,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleParameterCS; 
+               current =iv_ruleParameterCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8367,8 +8367,8 @@
         EObject lv_ownedType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:2948:28: ( ( ( (lv_name_0_0= ruleIdentifier ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) ) )
             // InternalOCLstdlib.g:2949:1: ( ( (lv_name_0_0= ruleIdentifier ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) )
@@ -8383,9 +8383,9 @@
             // InternalOCLstdlib.g:2951:3: lv_name_0_0= ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getParameterCSAccess().getNameIdentifierParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getParameterCSAccess().getNameIdentifierParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_8);
             lv_name_0_0=ruleIdentifier();
@@ -8398,12 +8398,12 @@
               	            current = createModelElementForParent(grammarAccess.getParameterCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -8415,7 +8415,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getParameterCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:2971:1: ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:2972:1: (lv_ownedType_2_0= ruleTypedMultiplicityRefCS )
@@ -8424,9 +8424,9 @@
             // InternalOCLstdlib.g:2973:3: lv_ownedType_2_0= ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedType_2_0=ruleTypedMultiplicityRefCS();
@@ -8439,12 +8439,12 @@
               	            current = createModelElementForParent(grammarAccess.getParameterCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_2_0, 
+                      		lv_ownedType_2_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -8459,14 +8459,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8487,7 +8487,7 @@
             // InternalOCLstdlib.g:2999:2: iv_ruleLibPropertyCS= ruleLibPropertyCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLibPropertyCSRule()); 
+               newCompositeNode(grammarAccess.getLibPropertyCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLibPropertyCS=ruleLibPropertyCS();
@@ -8495,18 +8495,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLibPropertyCS; 
+               current =iv_ruleLibPropertyCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8534,8 +8534,8 @@
         EObject lv_ownedAnnotations_8_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:3009:28: ( ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'property' ( (lv_name_2_0= ruleName ) ) otherlv_3= ':' ( (lv_ownedType_4_0= ruleTypedMultiplicityRefCS ) ) (otherlv_5= '=>' ( (otherlv_6= RULE_SINGLE_QUOTED_STRING ) ) )? ( (otherlv_7= '{' ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )* otherlv_9= '}' ) | otherlv_10= ';' ) ) )
             // InternalOCLstdlib.g:3010:1: ( ( (lv_isStatic_0_0= 'static' ) )? otherlv_1= 'property' ( (lv_name_2_0= ruleName ) ) otherlv_3= ':' ( (lv_ownedType_4_0= ruleTypedMultiplicityRefCS ) ) (otherlv_5= '=>' ( (otherlv_6= RULE_SINGLE_QUOTED_STRING ) ) )? ( (otherlv_7= '{' ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )* otherlv_9= '}' ) | otherlv_10= ';' ) )
@@ -8561,7 +8561,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isStatic_0_0, grammarAccess.getLibPropertyCSAccess().getIsStaticStaticKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -8569,7 +8569,7 @@
                       	            current = createModelElement(grammarAccess.getLibPropertyCSRule());
                       	        }
                              		setWithLastConsumed(current, "isStatic", true, "static");
-                      	    
+
                     }
 
                     }
@@ -8584,7 +8584,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getLibPropertyCSAccess().getPropertyKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:3029:1: ( (lv_name_2_0= ruleName ) )
             // InternalOCLstdlib.g:3030:1: (lv_name_2_0= ruleName )
@@ -8593,9 +8593,9 @@
             // InternalOCLstdlib.g:3031:3: lv_name_2_0= ruleName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLibPropertyCSAccess().getNameNameParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLibPropertyCSAccess().getNameNameParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_8);
             lv_name_2_0=ruleName();
@@ -8608,12 +8608,12 @@
               	            current = createModelElementForParent(grammarAccess.getLibPropertyCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_2_0, 
+                      		lv_name_2_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -8625,7 +8625,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getLibPropertyCSAccess().getColonKeyword_3());
-                  
+
             }
             // InternalOCLstdlib.g:3051:1: ( (lv_ownedType_4_0= ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:3052:1: (lv_ownedType_4_0= ruleTypedMultiplicityRefCS )
@@ -8634,9 +8634,9 @@
             // InternalOCLstdlib.g:3053:3: lv_ownedType_4_0= ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLibPropertyCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLibPropertyCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_4_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_34);
             lv_ownedType_4_0=ruleTypedMultiplicityRefCS();
@@ -8649,12 +8649,12 @@
               	            current = createModelElementForParent(grammarAccess.getLibPropertyCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_4_0, 
+                      		lv_ownedType_4_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -8677,7 +8677,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getLibPropertyCSAccess().getEqualsSignGreaterThanSignKeyword_5_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:3073:1: ( (otherlv_6= RULE_SINGLE_QUOTED_STRING ) )
                     // InternalOCLstdlib.g:3074:1: (otherlv_6= RULE_SINGLE_QUOTED_STRING )
@@ -8686,22 +8686,22 @@
                     // InternalOCLstdlib.g:3075:3: otherlv_6= RULE_SINGLE_QUOTED_STRING
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getLibPropertyCSRule());
                       	        }
-                              
+
                     }
                     otherlv_6=(Token)match(input,RULE_SINGLE_QUOTED_STRING,FollowSets000.FOLLOW_14); if (state.failed) return current;
                     if ( state.backtracking==0 ) {
 
-                      		newLeafNode(otherlv_6, grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSCrossReference_5_1_0()); 
-                      	
+                      		newLeafNode(otherlv_6, grammarAccess.getLibPropertyCSAccess().getImplementationJavaClassCSCrossReference_5_1_0());
+
                     }
 
                     }
@@ -8743,7 +8743,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_7, grammarAccess.getLibPropertyCSAccess().getLeftCurlyBracketKeyword_6_0_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:3093:1: ( (lv_ownedAnnotations_8_0= ruleAnnotationElementCS ) )*
                     loop65:
@@ -8764,9 +8764,9 @@
                     	    // InternalOCLstdlib.g:3095:3: lv_ownedAnnotations_8_0= ruleAnnotationElementCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getLibPropertyCSAccess().getOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_57);
                     	    lv_ownedAnnotations_8_0=ruleAnnotationElementCS();
@@ -8779,12 +8779,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getLibPropertyCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedAnnotations",
-                    	              		lv_ownedAnnotations_8_0, 
+                    	              		lv_ownedAnnotations_8_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.AnnotationElementCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -8802,7 +8802,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_9, grammarAccess.getLibPropertyCSAccess().getRightCurlyBracketKeyword_6_0_2());
-                          
+
                     }
 
                     }
@@ -8817,7 +8817,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_10, grammarAccess.getLibPropertyCSAccess().getSemicolonKeyword_6_1());
-                          
+
                     }
 
                     }
@@ -8832,14 +8832,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8860,7 +8860,7 @@
             // InternalOCLstdlib.g:3130:2: iv_rulePostCS= rulePostCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPostCSRule()); 
+               newCompositeNode(grammarAccess.getPostCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePostCS=rulePostCS();
@@ -8868,18 +8868,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePostCS; 
+               current =iv_rulePostCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -8904,8 +8904,8 @@
         EObject lv_ownedSpecification_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:3140:28: ( ( ( (lv_stereotype_0_0= 'post' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) ) otherlv_7= ';' ) )
             // InternalOCLstdlib.g:3141:1: ( ( (lv_stereotype_0_0= 'post' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) ) otherlv_7= ';' )
@@ -8923,7 +8923,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_stereotype_0_0, grammarAccess.getPostCSAccess().getStereotypePostKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -8931,7 +8931,7 @@
               	            current = createModelElement(grammarAccess.getPostCSRule());
               	        }
                      		setWithLastConsumed(current, "stereotype", lv_stereotype_0_0, "post");
-              	    
+
             }
 
             }
@@ -8957,9 +8957,9 @@
                     // InternalOCLstdlib.g:3158:3: lv_name_1_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPostCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPostCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_30);
                     lv_name_1_0=ruleUnrestrictedName();
@@ -8972,12 +8972,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPostCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -9000,7 +9000,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_2, grammarAccess.getPostCSAccess().getLeftParenthesisKeyword_1_1_0());
-                                  
+
                             }
                             // InternalOCLstdlib.g:3178:1: ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) )
                             // InternalOCLstdlib.g:3179:1: (lv_ownedMessageSpecification_3_0= ruleSpecificationCS )
@@ -9009,9 +9009,9 @@
                             // InternalOCLstdlib.g:3180:3: lv_ownedMessageSpecification_3_0= ruleSpecificationCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getPostCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_32);
                             lv_ownedMessageSpecification_3_0=ruleSpecificationCS();
@@ -9024,12 +9024,12 @@
                               	            current = createModelElementForParent(grammarAccess.getPostCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedMessageSpecification",
-                                      		lv_ownedMessageSpecification_3_0, 
+                                      		lv_ownedMessageSpecification_3_0,
                                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -9041,7 +9041,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getPostCSAccess().getRightParenthesisKeyword_1_1_2());
-                                  
+
                             }
 
                             }
@@ -9059,7 +9059,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getPostCSAccess().getColonKeyword_2());
-                  
+
             }
             // InternalOCLstdlib.g:3204:1: ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )
             // InternalOCLstdlib.g:3205:1: (lv_ownedSpecification_6_0= ruleSpecificationCS )
@@ -9068,9 +9068,9 @@
             // InternalOCLstdlib.g:3206:3: lv_ownedSpecification_6_0= ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPostCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPostCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_3);
             lv_ownedSpecification_6_0=ruleSpecificationCS();
@@ -9083,12 +9083,12 @@
               	            current = createModelElementForParent(grammarAccess.getPostCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedSpecification",
-                      		lv_ownedSpecification_6_0, 
+                      		lv_ownedSpecification_6_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -9100,7 +9100,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getPostCSAccess().getSemicolonKeyword_4());
-                  
+
             }
 
             }
@@ -9109,14 +9109,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9137,7 +9137,7 @@
             // InternalOCLstdlib.g:3236:2: iv_rulePreCS= rulePreCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPreCSRule()); 
+               newCompositeNode(grammarAccess.getPreCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePreCS=rulePreCS();
@@ -9145,18 +9145,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePreCS; 
+               current =iv_rulePreCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9181,8 +9181,8 @@
         EObject lv_ownedSpecification_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:3246:28: ( ( ( (lv_stereotype_0_0= 'pre' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) ) otherlv_7= ';' ) )
             // InternalOCLstdlib.g:3247:1: ( ( (lv_stereotype_0_0= 'pre' ) ) ( ( (lv_name_1_0= ruleUnrestrictedName ) ) (otherlv_2= '(' ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) ) otherlv_4= ')' )? )? otherlv_5= ':' ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) ) otherlv_7= ';' )
@@ -9200,7 +9200,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_stereotype_0_0, grammarAccess.getPreCSAccess().getStereotypePreKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -9208,7 +9208,7 @@
               	            current = createModelElement(grammarAccess.getPreCSRule());
               	        }
                      		setWithLastConsumed(current, "stereotype", lv_stereotype_0_0, "pre");
-              	    
+
             }
 
             }
@@ -9234,9 +9234,9 @@
                     // InternalOCLstdlib.g:3264:3: lv_name_1_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPreCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPreCSAccess().getNameUnrestrictedNameParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_30);
                     lv_name_1_0=ruleUnrestrictedName();
@@ -9249,12 +9249,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPreCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -9277,7 +9277,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_2, grammarAccess.getPreCSAccess().getLeftParenthesisKeyword_1_1_0());
-                                  
+
                             }
                             // InternalOCLstdlib.g:3284:1: ( (lv_ownedMessageSpecification_3_0= ruleSpecificationCS ) )
                             // InternalOCLstdlib.g:3285:1: (lv_ownedMessageSpecification_3_0= ruleSpecificationCS )
@@ -9286,9 +9286,9 @@
                             // InternalOCLstdlib.g:3286:3: lv_ownedMessageSpecification_3_0= ruleSpecificationCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getPreCSAccess().getOwnedMessageSpecificationSpecificationCSParserRuleCall_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_32);
                             lv_ownedMessageSpecification_3_0=ruleSpecificationCS();
@@ -9301,12 +9301,12 @@
                               	            current = createModelElementForParent(grammarAccess.getPreCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedMessageSpecification",
-                                      		lv_ownedMessageSpecification_3_0, 
+                                      		lv_ownedMessageSpecification_3_0,
                                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -9318,7 +9318,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getPreCSAccess().getRightParenthesisKeyword_1_1_2());
-                                  
+
                             }
 
                             }
@@ -9336,7 +9336,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getPreCSAccess().getColonKeyword_2());
-                  
+
             }
             // InternalOCLstdlib.g:3310:1: ( (lv_ownedSpecification_6_0= ruleSpecificationCS ) )
             // InternalOCLstdlib.g:3311:1: (lv_ownedSpecification_6_0= ruleSpecificationCS )
@@ -9345,9 +9345,9 @@
             // InternalOCLstdlib.g:3312:3: lv_ownedSpecification_6_0= ruleSpecificationCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPreCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPreCSAccess().getOwnedSpecificationSpecificationCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_3);
             lv_ownedSpecification_6_0=ruleSpecificationCS();
@@ -9360,12 +9360,12 @@
               	            current = createModelElementForParent(grammarAccess.getPreCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedSpecification",
-                      		lv_ownedSpecification_6_0, 
+                      		lv_ownedSpecification_6_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -9377,7 +9377,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getPreCSAccess().getSemicolonKeyword_4());
-                  
+
             }
 
             }
@@ -9386,14 +9386,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9414,7 +9414,7 @@
             // InternalOCLstdlib.g:3342:2: iv_rulePrecedenceCS= rulePrecedenceCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrecedenceCSRule()); 
+               newCompositeNode(grammarAccess.getPrecedenceCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrecedenceCS=rulePrecedenceCS();
@@ -9422,18 +9422,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrecedenceCS; 
+               current =iv_rulePrecedenceCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9452,8 +9452,8 @@
         AntlrDatatypeRuleToken lv_name_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:3352:28: ( ( (otherlv_0= 'left' | ( (lv_isRightAssociative_1_0= 'right' ) ) ) otherlv_2= ':' ( (lv_name_3_0= ruleName ) ) ) )
             // InternalOCLstdlib.g:3353:1: ( (otherlv_0= 'left' | ( (lv_isRightAssociative_1_0= 'right' ) ) ) otherlv_2= ':' ( (lv_name_3_0= ruleName ) ) )
@@ -9486,7 +9486,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_0, grammarAccess.getPrecedenceCSAccess().getLeftKeyword_0_0());
-                          
+
                     }
 
                     }
@@ -9504,7 +9504,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isRightAssociative_1_0, grammarAccess.getPrecedenceCSAccess().getIsRightAssociativeRightKeyword_0_1_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -9512,7 +9512,7 @@
                       	            current = createModelElement(grammarAccess.getPrecedenceCSRule());
                       	        }
                              		setWithLastConsumed(current, "isRightAssociative", true, "right");
-                      	    
+
                     }
 
                     }
@@ -9530,7 +9530,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getPrecedenceCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:3377:1: ( (lv_name_3_0= ruleName ) )
             // InternalOCLstdlib.g:3378:1: (lv_name_3_0= ruleName )
@@ -9539,9 +9539,9 @@
             // InternalOCLstdlib.g:3379:3: lv_name_3_0= ruleName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPrecedenceCSAccess().getNameNameParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPrecedenceCSAccess().getNameNameParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_name_3_0=ruleName();
@@ -9554,12 +9554,12 @@
               	            current = createModelElementForParent(grammarAccess.getPrecedenceCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_3_0, 
+                      		lv_name_3_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Name");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -9574,14 +9574,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9602,7 +9602,7 @@
             // InternalOCLstdlib.g:3405:2: iv_ruleSpecificationCS= ruleSpecificationCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getSpecificationCSRule()); 
+               newCompositeNode(grammarAccess.getSpecificationCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleSpecificationCS=ruleSpecificationCS();
@@ -9610,18 +9610,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleSpecificationCS; 
+               current =iv_ruleSpecificationCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9637,8 +9637,8 @@
         EObject lv_ownedExpression_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:3415:28: ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) )
             // InternalOCLstdlib.g:3416:1: ( (lv_ownedExpression_0_0= ruleExpCS ) )
@@ -9650,9 +9650,9 @@
             // InternalOCLstdlib.g:3418:3: lv_ownedExpression_0_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedExpression_0_0=ruleExpCS();
@@ -9665,12 +9665,12 @@
               	            current = createModelElementForParent(grammarAccess.getSpecificationCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedExpression",
-                      		lv_ownedExpression_0_0, 
+                      		lv_ownedExpression_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -9682,14 +9682,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9710,7 +9710,7 @@
             // InternalOCLstdlib.g:3444:2: iv_ruleTypedMultiplicityRefCS= ruleTypedMultiplicityRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypedMultiplicityRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypedMultiplicityRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypedMultiplicityRefCS=ruleTypedMultiplicityRefCS();
@@ -9718,18 +9718,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypedMultiplicityRefCS; 
+               current =iv_ruleTypedMultiplicityRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -9753,8 +9753,8 @@
         EObject lv_ownedMultiplicity_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:3454:28: ( ( (this_MapTypeCS_0= ruleMapTypeCS | this_TupleTypeCS_1= ruleTupleTypeCS | this_TypedTypeRefCS_2= ruleTypedTypeRefCS | this_LambdaTypeCS_3= ruleLambdaTypeCS ) ( (lv_ownedMultiplicity_4_0= ruleMultiplicityCS ) )? ) )
             // InternalOCLstdlib.g:3455:1: ( (this_MapTypeCS_0= ruleMapTypeCS | this_TupleTypeCS_1= ruleTupleTypeCS | this_TypedTypeRefCS_2= ruleTypedTypeRefCS | this_LambdaTypeCS_3= ruleLambdaTypeCS ) ( (lv_ownedMultiplicity_4_0= ruleMultiplicityCS ) )? )
@@ -9846,14 +9846,14 @@
                     // InternalOCLstdlib.g:3456:2: this_MapTypeCS_0= ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getMapTypeCSParserRuleCall_0_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getMapTypeCSParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_58);
                     this_MapTypeCS_0=ruleMapTypeCS();
@@ -9861,10 +9861,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MapTypeCS_0; 
+
+                              current = this_MapTypeCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -9873,14 +9873,14 @@
                     // InternalOCLstdlib.g:3469:2: this_TupleTypeCS_1= ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getTupleTypeCSParserRuleCall_0_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getTupleTypeCSParserRuleCall_0_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_58);
                     this_TupleTypeCS_1=ruleTupleTypeCS();
@@ -9888,10 +9888,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TupleTypeCS_1; 
+
+                              current = this_TupleTypeCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -9900,14 +9900,14 @@
                     // InternalOCLstdlib.g:3482:2: this_TypedTypeRefCS_2= ruleTypedTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedTypeRefCSParserRuleCall_0_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getTypedTypeRefCSParserRuleCall_0_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_58);
                     this_TypedTypeRefCS_2=ruleTypedTypeRefCS();
@@ -9915,10 +9915,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypedTypeRefCS_2; 
+
+                              current = this_TypedTypeRefCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -9927,14 +9927,14 @@
                     // InternalOCLstdlib.g:3495:2: this_LambdaTypeCS_3= ruleLambdaTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getLambdaTypeCSParserRuleCall_0_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getLambdaTypeCSParserRuleCall_0_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_58);
                     this_LambdaTypeCS_3=ruleLambdaTypeCS();
@@ -9942,10 +9942,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_LambdaTypeCS_3; 
+
+                              current = this_LambdaTypeCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -9968,9 +9968,9 @@
                     // InternalOCLstdlib.g:3508:3: lv_ownedMultiplicity_4_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypedMultiplicityRefCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_4_0=ruleMultiplicityCS();
@@ -9983,12 +9983,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypedMultiplicityRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_4_0, 
+                              		lv_ownedMultiplicity_4_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -10006,14 +10006,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10034,7 +10034,7 @@
             // InternalOCLstdlib.g:3534:2: iv_ruleTypedRefCS= ruleTypedRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypedRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypedRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypedRefCS=ruleTypedRefCS();
@@ -10042,18 +10042,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypedRefCS; 
+               current =iv_ruleTypedRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10075,8 +10075,8 @@
         EObject this_LambdaTypeCS_3 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:3544:28: ( (this_MapTypeCS_0= ruleMapTypeCS | this_TupleTypeCS_1= ruleTupleTypeCS | this_TypedTypeRefCS_2= ruleTypedTypeRefCS | this_LambdaTypeCS_3= ruleLambdaTypeCS ) )
             // InternalOCLstdlib.g:3545:1: (this_MapTypeCS_0= ruleMapTypeCS | this_TupleTypeCS_1= ruleTupleTypeCS | this_TypedTypeRefCS_2= ruleTypedTypeRefCS | this_LambdaTypeCS_3= ruleLambdaTypeCS )
@@ -10165,14 +10165,14 @@
                     // InternalOCLstdlib.g:3546:2: this_MapTypeCS_0= ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getMapTypeCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getMapTypeCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_MapTypeCS_0=ruleMapTypeCS();
@@ -10180,10 +10180,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MapTypeCS_0; 
+
+                              current = this_MapTypeCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -10192,14 +10192,14 @@
                     // InternalOCLstdlib.g:3559:2: this_TupleTypeCS_1= ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getTupleTypeCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getTupleTypeCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TupleTypeCS_1=ruleTupleTypeCS();
@@ -10207,10 +10207,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TupleTypeCS_1; 
+
+                              current = this_TupleTypeCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -10219,14 +10219,14 @@
                     // InternalOCLstdlib.g:3572:2: this_TypedTypeRefCS_2= ruleTypedTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getTypedTypeRefCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypedTypeRefCS_2=ruleTypedTypeRefCS();
@@ -10234,10 +10234,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypedTypeRefCS_2; 
+
+                              current = this_TypedTypeRefCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -10246,14 +10246,14 @@
                     // InternalOCLstdlib.g:3585:2: this_LambdaTypeCS_3= ruleLambdaTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getLambdaTypeCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypedRefCSAccess().getLambdaTypeCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_LambdaTypeCS_3=ruleLambdaTypeCS();
@@ -10261,10 +10261,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_LambdaTypeCS_3; 
+
+                              current = this_LambdaTypeCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -10276,14 +10276,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10304,7 +10304,7 @@
             // InternalOCLstdlib.g:3606:2: iv_ruleTypedTypeRefCS= ruleTypedTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypedTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypedTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypedTypeRefCS=ruleTypedTypeRefCS();
@@ -10312,18 +10312,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypedTypeRefCS; 
+               current =iv_ruleTypedTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10348,8 +10348,8 @@
         EObject lv_ownedBinding_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:3616:28: ( ( ( ( (lv_isTypeof_0_0= 'typeof' ) ) otherlv_1= '(' ( (lv_ownedPathName_2_0= ruleLibPathNameCS ) ) otherlv_3= ')' ) | ( ( (lv_ownedPathName_4_0= ruleLibPathNameCS ) ) (otherlv_5= '(' ( (lv_ownedBinding_6_0= ruleTemplateBindingCS ) ) otherlv_7= ')' )? ) ) )
             // InternalOCLstdlib.g:3617:1: ( ( ( (lv_isTypeof_0_0= 'typeof' ) ) otherlv_1= '(' ( (lv_ownedPathName_2_0= ruleLibPathNameCS ) ) otherlv_3= ')' ) | ( ( (lv_ownedPathName_4_0= ruleLibPathNameCS ) ) (otherlv_5= '(' ( (lv_ownedBinding_6_0= ruleTemplateBindingCS ) ) otherlv_7= ')' )? ) )
@@ -10388,7 +10388,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isTypeof_0_0, grammarAccess.getTypedTypeRefCSAccess().getIsTypeofTypeofKeyword_0_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -10396,7 +10396,7 @@
                       	            current = createModelElement(grammarAccess.getTypedTypeRefCSRule());
                       	        }
                              		setWithLastConsumed(current, "isTypeof", true, "typeof");
-                      	    
+
                     }
 
                     }
@@ -10408,7 +10408,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_0_1());
-                          
+
                     }
                     // InternalOCLstdlib.g:3636:1: ( (lv_ownedPathName_2_0= ruleLibPathNameCS ) )
                     // InternalOCLstdlib.g:3637:1: (lv_ownedPathName_2_0= ruleLibPathNameCS )
@@ -10417,9 +10417,9 @@
                     // InternalOCLstdlib.g:3638:3: lv_ownedPathName_2_0= ruleLibPathNameCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_32);
                     lv_ownedPathName_2_0=ruleLibPathNameCS();
@@ -10432,12 +10432,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedPathName",
-                              		lv_ownedPathName_2_0, 
+                              		lv_ownedPathName_2_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPathNameCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -10449,7 +10449,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_0_3());
-                          
+
                     }
 
                     }
@@ -10470,9 +10470,9 @@
                     // InternalOCLstdlib.g:3661:3: lv_ownedPathName_4_0= ruleLibPathNameCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_60);
                     lv_ownedPathName_4_0=ruleLibPathNameCS();
@@ -10485,12 +10485,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedPathName",
-                              		lv_ownedPathName_4_0, 
+                              		lv_ownedPathName_4_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LibPathNameCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -10513,7 +10513,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_5, grammarAccess.getTypedTypeRefCSAccess().getLeftParenthesisKeyword_1_1_0());
-                                  
+
                             }
                             // InternalOCLstdlib.g:3681:1: ( (lv_ownedBinding_6_0= ruleTemplateBindingCS ) )
                             // InternalOCLstdlib.g:3682:1: (lv_ownedBinding_6_0= ruleTemplateBindingCS )
@@ -10522,9 +10522,9 @@
                             // InternalOCLstdlib.g:3683:3: lv_ownedBinding_6_0= ruleTemplateBindingCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getTypedTypeRefCSAccess().getOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_32);
                             lv_ownedBinding_6_0=ruleTemplateBindingCS();
@@ -10537,12 +10537,12 @@
                               	            current = createModelElementForParent(grammarAccess.getTypedTypeRefCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedBinding",
-                                      		lv_ownedBinding_6_0, 
+                                      		lv_ownedBinding_6_0,
                                       		"org.eclipse.ocl.xtext.base.Base.TemplateBindingCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -10554,7 +10554,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_7, grammarAccess.getTypedTypeRefCSAccess().getRightParenthesisKeyword_1_1_2());
-                                  
+
                             }
 
                             }
@@ -10575,14 +10575,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10603,7 +10603,7 @@
             // InternalOCLstdlib.g:3713:2: iv_ruleTuplePartCS= ruleTuplePartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTuplePartCSRule()); 
+               newCompositeNode(grammarAccess.getTuplePartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTuplePartCS=ruleTuplePartCS();
@@ -10611,18 +10611,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTuplePartCS; 
+               current =iv_ruleTuplePartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10641,8 +10641,8 @@
         EObject lv_ownedType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:3723:28: ( ( ( (lv_name_0_0= ruleIdentifier ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) ) )
             // InternalOCLstdlib.g:3724:1: ( ( (lv_name_0_0= ruleIdentifier ) ) otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) ) )
@@ -10657,9 +10657,9 @@
             // InternalOCLstdlib.g:3726:3: lv_name_0_0= ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameIdentifierParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getNameIdentifierParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_8);
             lv_name_0_0=ruleIdentifier();
@@ -10672,12 +10672,12 @@
               	            current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -10689,7 +10689,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getTuplePartCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:3746:1: ( (lv_ownedType_2_0= ruleTypedMultiplicityRefCS ) )
             // InternalOCLstdlib.g:3747:1: (lv_ownedType_2_0= ruleTypedMultiplicityRefCS )
@@ -10698,9 +10698,9 @@
             // InternalOCLstdlib.g:3748:3: lv_ownedType_2_0= ruleTypedMultiplicityRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedType_2_0=ruleTypedMultiplicityRefCS();
@@ -10713,12 +10713,12 @@
               	            current = createModelElementForParent(grammarAccess.getTuplePartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_2_0, 
+                      		lv_ownedType_2_0,
                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedMultiplicityRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -10733,14 +10733,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10761,7 +10761,7 @@
             // InternalOCLstdlib.g:3776:2: iv_ruleEssentialOCLReservedKeyword= ruleEssentialOCLReservedKeyword EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLReservedKeywordRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLReservedKeywordRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLReservedKeyword=ruleEssentialOCLReservedKeyword();
@@ -10769,18 +10769,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLReservedKeyword.getText(); 
+               current =iv_ruleEssentialOCLReservedKeyword.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -10795,8 +10795,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:3786:28: ( (kw= 'and' | kw= 'else' | kw= 'endif' | kw= 'if' | kw= 'implies' | kw= 'in' | kw= 'let' | kw= 'not' | kw= 'or' | kw= 'then' | kw= 'xor' ) )
             // InternalOCLstdlib.g:3787:1: (kw= 'and' | kw= 'else' | kw= 'endif' | kw= 'if' | kw= 'implies' | kw= 'in' | kw= 'let' | kw= 'not' | kw= 'or' | kw= 'then' | kw= 'xor' )
@@ -10875,8 +10875,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getAndKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getAndKeyword_0());
+
                     }
 
                     }
@@ -10888,8 +10888,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getElseKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getElseKeyword_1());
+
                     }
 
                     }
@@ -10901,8 +10901,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getEndifKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getEndifKeyword_2());
+
                     }
 
                     }
@@ -10914,8 +10914,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getIfKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getIfKeyword_3());
+
                     }
 
                     }
@@ -10927,8 +10927,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getImpliesKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getImpliesKeyword_4());
+
                     }
 
                     }
@@ -10940,8 +10940,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getInKeyword_5()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getInKeyword_5());
+
                     }
 
                     }
@@ -10953,8 +10953,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getLetKeyword_6()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getLetKeyword_6());
+
                     }
 
                     }
@@ -10966,8 +10966,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getNotKeyword_7()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getNotKeyword_7());
+
                     }
 
                     }
@@ -10979,8 +10979,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getOrKeyword_8()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getOrKeyword_8());
+
                     }
 
                     }
@@ -10992,8 +10992,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getThenKeyword_9()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getThenKeyword_9());
+
                     }
 
                     }
@@ -11005,8 +11005,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getXorKeyword_10()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLReservedKeywordAccess().getXorKeyword_10());
+
                     }
 
                     }
@@ -11018,14 +11018,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11046,7 +11046,7 @@
             // InternalOCLstdlib.g:3873:2: iv_ruleEssentialOCLUnaryOperatorName= ruleEssentialOCLUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLUnaryOperatorName=ruleEssentialOCLUnaryOperatorName();
@@ -11054,18 +11054,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLUnaryOperatorName.getText(); 
+               current =iv_ruleEssentialOCLUnaryOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11080,8 +11080,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:3883:28: ( (kw= '-' | kw= 'not' ) )
             // InternalOCLstdlib.g:3884:1: (kw= '-' | kw= 'not' )
@@ -11111,8 +11111,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getHyphenMinusKeyword_0());
+
                     }
 
                     }
@@ -11124,8 +11124,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnaryOperatorNameAccess().getNotKeyword_1());
+
                     }
 
                     }
@@ -11137,14 +11137,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11165,7 +11165,7 @@
             // InternalOCLstdlib.g:3907:2: iv_ruleEssentialOCLInfixOperatorName= ruleEssentialOCLInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLInfixOperatorName=ruleEssentialOCLInfixOperatorName();
@@ -11173,18 +11173,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLInfixOperatorName.getText(); 
+               current =iv_ruleEssentialOCLInfixOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11199,8 +11199,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:3917:28: ( (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'or' | kw= 'xor' | kw= 'implies' ) )
             // InternalOCLstdlib.g:3918:1: (kw= '*' | kw= '/' | kw= '+' | kw= '-' | kw= '>' | kw= '<' | kw= '>=' | kw= '<=' | kw= '=' | kw= '<>' | kw= 'and' | kw= 'or' | kw= 'xor' | kw= 'implies' )
@@ -11294,8 +11294,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAsteriskKeyword_0());
+
                     }
 
                     }
@@ -11307,8 +11307,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getSolidusKeyword_1());
+
                     }
 
                     }
@@ -11320,8 +11320,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getPlusSignKeyword_2());
+
                     }
 
                     }
@@ -11333,8 +11333,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getHyphenMinusKeyword_3());
+
                     }
 
                     }
@@ -11346,8 +11346,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignKeyword_4());
+
                     }
 
                     }
@@ -11359,8 +11359,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignKeyword_5());
+
                     }
 
                     }
@@ -11372,8 +11372,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getGreaterThanSignEqualsSignKeyword_6());
+
                     }
 
                     }
@@ -11385,8 +11385,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignEqualsSignKeyword_7());
+
                     }
 
                     }
@@ -11398,8 +11398,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getEqualsSignKeyword_8());
+
                     }
 
                     }
@@ -11411,8 +11411,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getLessThanSignGreaterThanSignKeyword_9());
+
                     }
 
                     }
@@ -11424,8 +11424,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getAndKeyword_10());
+
                     }
 
                     }
@@ -11437,8 +11437,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getOrKeyword_11());
+
                     }
 
                     }
@@ -11450,8 +11450,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getXorKeyword_12());
+
                     }
 
                     }
@@ -11463,8 +11463,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLInfixOperatorNameAccess().getImpliesKeyword_13());
+
                     }
 
                     }
@@ -11476,14 +11476,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11504,7 +11504,7 @@
             // InternalOCLstdlib.g:4025:2: iv_ruleEssentialOCLNavigationOperatorName= ruleEssentialOCLNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLNavigationOperatorName=ruleEssentialOCLNavigationOperatorName();
@@ -11512,18 +11512,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLNavigationOperatorName.getText(); 
+               current =iv_ruleEssentialOCLNavigationOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11538,8 +11538,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4035:28: ( (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' ) )
             // InternalOCLstdlib.g:4036:1: (kw= '.' | kw= '->' | kw= '?.' | kw= '?->' )
@@ -11583,8 +11583,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getFullStopKeyword_0());
+
                     }
 
                     }
@@ -11596,8 +11596,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getHyphenMinusGreaterThanSignKeyword_1());
+
                     }
 
                     }
@@ -11609,8 +11609,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkFullStopKeyword_2());
+
                     }
 
                     }
@@ -11622,8 +11622,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLNavigationOperatorNameAccess().getQuestionMarkHyphenMinusGreaterThanSignKeyword_3());
+
                     }
 
                     }
@@ -11635,14 +11635,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11663,7 +11663,7 @@
             // InternalOCLstdlib.g:4073:2: iv_ruleBinaryOperatorName= ruleBinaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getBinaryOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getBinaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleBinaryOperatorName=ruleBinaryOperatorName();
@@ -11671,18 +11671,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleBinaryOperatorName.getText(); 
+               current =iv_ruleBinaryOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11700,8 +11700,8 @@
         AntlrDatatypeRuleToken this_NavigationOperatorName_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4083:28: ( (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName ) )
             // InternalOCLstdlib.g:4084:1: (this_InfixOperatorName_0= ruleInfixOperatorName | this_NavigationOperatorName_1= ruleNavigationOperatorName )
@@ -11728,9 +11728,9 @@
                     // InternalOCLstdlib.g:4085:5: this_InfixOperatorName_0= ruleInfixOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getInfixOperatorNameParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_InfixOperatorName_0=ruleInfixOperatorName();
@@ -11740,12 +11740,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_InfixOperatorName_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -11754,9 +11754,9 @@
                     // InternalOCLstdlib.g:4097:5: this_NavigationOperatorName_1= ruleNavigationOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getBinaryOperatorNameAccess().getNavigationOperatorNameParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NavigationOperatorName_1=ruleNavigationOperatorName();
@@ -11766,12 +11766,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_NavigationOperatorName_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -11783,14 +11783,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11811,7 +11811,7 @@
             // InternalOCLstdlib.g:4117:2: iv_ruleInfixOperatorName= ruleInfixOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getInfixOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getInfixOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleInfixOperatorName=ruleInfixOperatorName();
@@ -11819,18 +11819,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleInfixOperatorName.getText(); 
+               current =iv_ruleInfixOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11846,16 +11846,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLInfixOperatorName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4127:28: (this_EssentialOCLInfixOperatorName_0= ruleEssentialOCLInfixOperatorName )
             // InternalOCLstdlib.g:4129:5: this_EssentialOCLInfixOperatorName_0= ruleEssentialOCLInfixOperatorName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getInfixOperatorNameAccess().getEssentialOCLInfixOperatorNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLInfixOperatorName_0=ruleEssentialOCLInfixOperatorName();
@@ -11865,25 +11865,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLInfixOperatorName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11904,7 +11904,7 @@
             // InternalOCLstdlib.g:4149:2: iv_ruleNavigationOperatorName= ruleNavigationOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigationOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getNavigationOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigationOperatorName=ruleNavigationOperatorName();
@@ -11912,18 +11912,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigationOperatorName.getText(); 
+               current =iv_ruleNavigationOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11939,16 +11939,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLNavigationOperatorName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4159:28: (this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName )
             // InternalOCLstdlib.g:4161:5: this_EssentialOCLNavigationOperatorName_0= ruleEssentialOCLNavigationOperatorName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getNavigationOperatorNameAccess().getEssentialOCLNavigationOperatorNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLNavigationOperatorName_0=ruleEssentialOCLNavigationOperatorName();
@@ -11958,25 +11958,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLNavigationOperatorName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -11997,7 +11997,7 @@
             // InternalOCLstdlib.g:4181:2: iv_ruleUnaryOperatorName= ruleUnaryOperatorName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnaryOperatorNameRule()); 
+               newCompositeNode(grammarAccess.getUnaryOperatorNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnaryOperatorName=ruleUnaryOperatorName();
@@ -12005,18 +12005,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnaryOperatorName.getText(); 
+               current =iv_ruleUnaryOperatorName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12032,16 +12032,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLUnaryOperatorName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4191:28: (this_EssentialOCLUnaryOperatorName_0= ruleEssentialOCLUnaryOperatorName )
             // InternalOCLstdlib.g:4193:5: this_EssentialOCLUnaryOperatorName_0= ruleEssentialOCLUnaryOperatorName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getUnaryOperatorNameAccess().getEssentialOCLUnaryOperatorNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLUnaryOperatorName_0=ruleEssentialOCLUnaryOperatorName();
@@ -12051,25 +12051,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLUnaryOperatorName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12090,7 +12090,7 @@
             // InternalOCLstdlib.g:4213:2: iv_ruleEssentialOCLUnrestrictedName= ruleEssentialOCLUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLUnrestrictedName=ruleEssentialOCLUnrestrictedName();
@@ -12098,18 +12098,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLUnrestrictedName.getText(); 
+               current =iv_ruleEssentialOCLUnrestrictedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12125,16 +12125,16 @@
         AntlrDatatypeRuleToken this_Identifier_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4223:28: (this_Identifier_0= ruleIdentifier )
             // InternalOCLstdlib.g:4225:5: this_Identifier_0= ruleIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getEssentialOCLUnrestrictedNameAccess().getIdentifierParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_Identifier_0=ruleIdentifier();
@@ -12144,25 +12144,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_Identifier_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12183,7 +12183,7 @@
             // InternalOCLstdlib.g:4245:2: iv_ruleUnrestrictedName= ruleUnrestrictedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnrestrictedNameRule()); 
+               newCompositeNode(grammarAccess.getUnrestrictedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnrestrictedName=ruleUnrestrictedName();
@@ -12191,18 +12191,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnrestrictedName.getText(); 
+               current =iv_ruleUnrestrictedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12218,16 +12218,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLUnrestrictedName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4255:28: (this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName )
             // InternalOCLstdlib.g:4257:5: this_EssentialOCLUnrestrictedName_0= ruleEssentialOCLUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getUnrestrictedNameAccess().getEssentialOCLUnrestrictedNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLUnrestrictedName_0=ruleEssentialOCLUnrestrictedName();
@@ -12237,25 +12237,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLUnrestrictedName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12276,7 +12276,7 @@
             // InternalOCLstdlib.g:4277:2: iv_ruleEssentialOCLUnreservedName= ruleEssentialOCLUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule()); 
+               newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleEssentialOCLUnreservedName=ruleEssentialOCLUnreservedName();
@@ -12284,18 +12284,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleEssentialOCLUnreservedName.getText(); 
+               current =iv_ruleEssentialOCLUnreservedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12316,8 +12316,8 @@
         AntlrDatatypeRuleToken this_PrimitiveTypeIdentifier_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4287:28: ( (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' ) )
             // InternalOCLstdlib.g:4288:1: (this_UnrestrictedName_0= ruleUnrestrictedName | this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier | this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier | kw= 'Map' | kw= 'Tuple' )
@@ -12396,9 +12396,9 @@
                     // InternalOCLstdlib.g:4289:5: this_UnrestrictedName_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getUnrestrictedNameParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_UnrestrictedName_0=ruleUnrestrictedName();
@@ -12408,12 +12408,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_UnrestrictedName_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -12422,9 +12422,9 @@
                     // InternalOCLstdlib.g:4301:5: this_CollectionTypeIdentifier_1= ruleCollectionTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getCollectionTypeIdentifierParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CollectionTypeIdentifier_1=ruleCollectionTypeIdentifier();
@@ -12434,12 +12434,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_CollectionTypeIdentifier_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -12448,9 +12448,9 @@
                     // InternalOCLstdlib.g:4313:5: this_PrimitiveTypeIdentifier_2= rulePrimitiveTypeIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getEssentialOCLUnreservedNameAccess().getPrimitiveTypeIdentifierParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimitiveTypeIdentifier_2=rulePrimitiveTypeIdentifier();
@@ -12460,12 +12460,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_PrimitiveTypeIdentifier_2);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
+
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -12477,8 +12477,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getMapKeyword_3());
+
                     }
 
                     }
@@ -12490,8 +12490,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getEssentialOCLUnreservedNameAccess().getTupleKeyword_4());
+
                     }
 
                     }
@@ -12503,14 +12503,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12531,7 +12531,7 @@
             // InternalOCLstdlib.g:4347:2: iv_ruleUnreservedName= ruleUnreservedName EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnreservedNameRule()); 
+               newCompositeNode(grammarAccess.getUnreservedNameRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnreservedName=ruleUnreservedName();
@@ -12539,18 +12539,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnreservedName.getText(); 
+               current =iv_ruleUnreservedName.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12566,16 +12566,16 @@
         AntlrDatatypeRuleToken this_EssentialOCLUnreservedName_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4357:28: (this_EssentialOCLUnreservedName_0= ruleEssentialOCLUnreservedName )
             // InternalOCLstdlib.g:4359:5: this_EssentialOCLUnreservedName_0= ruleEssentialOCLUnreservedName
             {
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getUnreservedNameAccess().getEssentialOCLUnreservedNameParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_EssentialOCLUnreservedName_0=ruleEssentialOCLUnreservedName();
@@ -12585,25 +12585,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_EssentialOCLUnreservedName_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
+
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12624,7 +12624,7 @@
             // InternalOCLstdlib.g:4379:2: iv_ruleURIPathNameCS= ruleURIPathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getURIPathNameCSRule()); 
+               newCompositeNode(grammarAccess.getURIPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleURIPathNameCS=ruleURIPathNameCS();
@@ -12632,18 +12632,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleURIPathNameCS; 
+               current =iv_ruleURIPathNameCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12662,8 +12662,8 @@
         EObject lv_ownedPathElements_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4389:28: ( ( ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) )
             // InternalOCLstdlib.g:4390:1: ( ( (lv_ownedPathElements_0_0= ruleURIFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
@@ -12678,9 +12678,9 @@
             // InternalOCLstdlib.g:4392:3: lv_ownedPathElements_0_0= ruleURIFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsURIFirstPathElementCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_6);
             lv_ownedPathElements_0_0=ruleURIFirstPathElementCS();
@@ -12693,12 +12693,12 @@
               	            current = createModelElementForParent(grammarAccess.getURIPathNameCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedPathElements",
-                      		lv_ownedPathElements_0_0, 
+                      		lv_ownedPathElements_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.URIFirstPathElementCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -12725,7 +12725,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getURIPathNameCSAccess().getColonColonKeyword_1_0());
-            	          
+
             	    }
             	    // InternalOCLstdlib.g:4412:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
             	    // InternalOCLstdlib.g:4413:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
@@ -12734,9 +12734,9 @@
             	    // InternalOCLstdlib.g:4414:3: lv_ownedPathElements_2_0= ruleNextPathElementCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getURIPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_6);
             	    lv_ownedPathElements_2_0=ruleNextPathElementCS();
@@ -12749,12 +12749,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getURIPathNameCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPathElements",
-            	              		lv_ownedPathElements_2_0, 
+            	              		lv_ownedPathElements_2_0,
             	              		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -12778,14 +12778,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12806,7 +12806,7 @@
             // InternalOCLstdlib.g:4440:2: iv_ruleURIFirstPathElementCS= ruleURIFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getURIFirstPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getURIFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleURIFirstPathElementCS=ruleURIFirstPathElementCS();
@@ -12814,18 +12814,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleURIFirstPathElementCS; 
+               current =iv_ruleURIFirstPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -12838,8 +12838,8 @@
     public final EObject ruleURIFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4450:28: ( ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) ) )
             // InternalOCLstdlib.g:4451:1: ( ( ( ruleUnrestrictedName ) ) | ( () ( ( ruleURI ) ) ) )
@@ -12872,21 +12872,21 @@
                     // InternalOCLstdlib.g:4453:3: ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
                       	        }
-                              
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleUnrestrictedName();
@@ -12894,9 +12894,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -12914,19 +12914,19 @@
                     // InternalOCLstdlib.g:4470:7: () ( ( ruleURI ) )
                     {
                     // InternalOCLstdlib.g:4470:7: ()
-                    // InternalOCLstdlib.g:4471:2: 
+                    // InternalOCLstdlib.g:4471:2:
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                               current = forceCreateModelElement(
                                   grammarAccess.getURIFirstPathElementCSAccess().getPathElementWithURICSAction_1_0(),
                                   current);
-                          
+
                     }
 
                     }
@@ -12938,21 +12938,21 @@
                     // InternalOCLstdlib.g:4481:3: ruleURI
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      		  /* */ 
-                      		
+
+                      		  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                       			if (current==null) {
                       	            current = createModelElement(grammarAccess.getURIFirstPathElementCSRule());
                       	        }
-                              
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getURIFirstPathElementCSAccess().getReferredElementNamespaceCrossReference_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     ruleURI();
@@ -12960,9 +12960,9 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
+
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -12983,14 +12983,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13011,7 +13011,7 @@
             // InternalOCLstdlib.g:4507:2: iv_rulePrimitiveTypeIdentifier= rulePrimitiveTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule()); 
+               newCompositeNode(grammarAccess.getPrimitiveTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimitiveTypeIdentifier=rulePrimitiveTypeIdentifier();
@@ -13019,18 +13019,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimitiveTypeIdentifier.getText(); 
+               current =iv_rulePrimitiveTypeIdentifier.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13045,8 +13045,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4517:28: ( (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclVoid' ) )
             // InternalOCLstdlib.g:4518:1: (kw= 'Boolean' | kw= 'Integer' | kw= 'Real' | kw= 'String' | kw= 'UnlimitedNatural' | kw= 'OclAny' | kw= 'OclInvalid' | kw= 'OclVoid' )
@@ -13110,8 +13110,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getBooleanKeyword_0());
+
                     }
 
                     }
@@ -13123,8 +13123,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getIntegerKeyword_1());
+
                     }
 
                     }
@@ -13136,8 +13136,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getRealKeyword_2());
+
                     }
 
                     }
@@ -13149,8 +13149,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getStringKeyword_3());
+
                     }
 
                     }
@@ -13162,8 +13162,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getUnlimitedNaturalKeyword_4());
+
                     }
 
                     }
@@ -13175,8 +13175,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclAnyKeyword_5());
+
                     }
 
                     }
@@ -13188,8 +13188,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclInvalidKeyword_6());
+
                     }
 
                     }
@@ -13201,8 +13201,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7()); 
-                          
+                              newLeafNode(kw, grammarAccess.getPrimitiveTypeIdentifierAccess().getOclVoidKeyword_7());
+
                     }
 
                     }
@@ -13214,14 +13214,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13242,7 +13242,7 @@
             // InternalOCLstdlib.g:4583:2: iv_rulePrimitiveTypeCS= rulePrimitiveTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimitiveTypeCSRule()); 
+               newCompositeNode(grammarAccess.getPrimitiveTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimitiveTypeCS=rulePrimitiveTypeCS();
@@ -13250,18 +13250,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimitiveTypeCS; 
+               current =iv_rulePrimitiveTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13277,8 +13277,8 @@
         AntlrDatatypeRuleToken lv_name_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4593:28: ( ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) ) )
             // InternalOCLstdlib.g:4594:1: ( (lv_name_0_0= rulePrimitiveTypeIdentifier ) )
@@ -13290,9 +13290,9 @@
             // InternalOCLstdlib.g:4596:3: lv_name_0_0= rulePrimitiveTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPrimitiveTypeCSAccess().getNamePrimitiveTypeIdentifierParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_name_0_0=rulePrimitiveTypeIdentifier();
@@ -13305,12 +13305,12 @@
               	            current = createModelElementForParent(grammarAccess.getPrimitiveTypeCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrimitiveTypeIdentifier");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -13322,14 +13322,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13350,7 +13350,7 @@
             // InternalOCLstdlib.g:4622:2: iv_ruleCollectionTypeIdentifier= ruleCollectionTypeIdentifier EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule()); 
+               newCompositeNode(grammarAccess.getCollectionTypeIdentifierRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionTypeIdentifier=ruleCollectionTypeIdentifier();
@@ -13358,18 +13358,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionTypeIdentifier.getText(); 
+               current =iv_ruleCollectionTypeIdentifier.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13384,8 +13384,8 @@
 
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4632:28: ( (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' ) )
             // InternalOCLstdlib.g:4633:1: (kw= 'Set' | kw= 'Bag' | kw= 'Sequence' | kw= 'Collection' | kw= 'OrderedSet' )
@@ -13434,8 +13434,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSetKeyword_0());
+
                     }
 
                     }
@@ -13447,8 +13447,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getBagKeyword_1());
+
                     }
 
                     }
@@ -13460,8 +13460,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getSequenceKeyword_2());
+
                     }
 
                     }
@@ -13473,8 +13473,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getCollectionKeyword_3());
+
                     }
 
                     }
@@ -13486,8 +13486,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4()); 
-                          
+                              newLeafNode(kw, grammarAccess.getCollectionTypeIdentifierAccess().getOrderedSetKeyword_4());
+
                     }
 
                     }
@@ -13499,14 +13499,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13527,7 +13527,7 @@
             // InternalOCLstdlib.g:4677:2: iv_ruleCollectionTypeCS= ruleCollectionTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionTypeCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionTypeCS=ruleCollectionTypeCS();
@@ -13535,18 +13535,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionTypeCS; 
+               current =iv_ruleCollectionTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13566,8 +13566,8 @@
         EObject lv_ownedType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4687:28: ( ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) otherlv_3= ')' )? ) )
             // InternalOCLstdlib.g:4688:1: ( ( (lv_name_0_0= ruleCollectionTypeIdentifier ) ) (otherlv_1= '(' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) otherlv_3= ')' )? )
@@ -13582,9 +13582,9 @@
             // InternalOCLstdlib.g:4690:3: lv_name_0_0= ruleCollectionTypeIdentifier
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getNameCollectionTypeIdentifierParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_60);
             lv_name_0_0=ruleCollectionTypeIdentifier();
@@ -13597,12 +13597,12 @@
               	            current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeIdentifier");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -13625,7 +13625,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getCollectionTypeCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:4710:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                     // InternalOCLstdlib.g:4711:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -13634,9 +13634,9 @@
                     // InternalOCLstdlib.g:4712:3: lv_ownedType_2_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionTypeCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_32);
                     lv_ownedType_2_0=ruleTypeExpCS();
@@ -13649,12 +13649,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_2_0, 
+                              		lv_ownedType_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -13666,7 +13666,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getCollectionTypeCSAccess().getRightParenthesisKeyword_1_2());
-                          
+
                     }
 
                     }
@@ -13681,14 +13681,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13709,7 +13709,7 @@
             // InternalOCLstdlib.g:4742:2: iv_ruleMapTypeCS= ruleMapTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMapTypeCSRule()); 
+               newCompositeNode(grammarAccess.getMapTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMapTypeCS=ruleMapTypeCS();
@@ -13717,18 +13717,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMapTypeCS; 
+               current =iv_ruleMapTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13750,8 +13750,8 @@
         EObject lv_ownedValueType_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4752:28: ( ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? ) )
             // InternalOCLstdlib.g:4753:1: ( ( (lv_name_0_0= 'Map' ) ) (otherlv_1= '(' ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) ) otherlv_3= ',' ( (lv_ownedValueType_4_0= ruleTypeExpCS ) ) otherlv_5= ')' )? )
@@ -13769,7 +13769,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_name_0_0, grammarAccess.getMapTypeCSAccess().getNameMapKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -13777,7 +13777,7 @@
               	            current = createModelElement(grammarAccess.getMapTypeCSRule());
               	        }
                      		setWithLastConsumed(current, "name", lv_name_0_0, "Map");
-              	    
+
             }
 
             }
@@ -13800,7 +13800,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getMapTypeCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:4772:1: ( (lv_ownedKeyType_2_0= ruleTypeExpCS ) )
                     // InternalOCLstdlib.g:4773:1: (lv_ownedKeyType_2_0= ruleTypeExpCS )
@@ -13809,9 +13809,9 @@
                     // InternalOCLstdlib.g:4774:3: lv_ownedKeyType_2_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedKeyTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_63);
                     lv_ownedKeyType_2_0=ruleTypeExpCS();
@@ -13824,12 +13824,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedKeyType",
-                              		lv_ownedKeyType_2_0, 
+                              		lv_ownedKeyType_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -13841,7 +13841,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getMapTypeCSAccess().getCommaKeyword_1_2());
-                          
+
                     }
                     // InternalOCLstdlib.g:4794:1: ( (lv_ownedValueType_4_0= ruleTypeExpCS ) )
                     // InternalOCLstdlib.g:4795:1: (lv_ownedValueType_4_0= ruleTypeExpCS )
@@ -13850,9 +13850,9 @@
                     // InternalOCLstdlib.g:4796:3: lv_ownedValueType_4_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMapTypeCSAccess().getOwnedValueTypeTypeExpCSParserRuleCall_1_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_32);
                     lv_ownedValueType_4_0=ruleTypeExpCS();
@@ -13865,12 +13865,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMapTypeCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedValueType",
-                              		lv_ownedValueType_4_0, 
+                              		lv_ownedValueType_4_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -13882,7 +13882,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getMapTypeCSAccess().getRightParenthesisKeyword_1_4());
-                          
+
                     }
 
                     }
@@ -13897,14 +13897,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13925,7 +13925,7 @@
             // InternalOCLstdlib.g:4826:2: iv_ruleTupleTypeCS= ruleTupleTypeCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTupleTypeCSRule()); 
+               newCompositeNode(grammarAccess.getTupleTypeCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTupleTypeCS=ruleTupleTypeCS();
@@ -13933,18 +13933,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTupleTypeCS; 
+               current =iv_ruleTupleTypeCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -13966,8 +13966,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4836:28: ( ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? ) )
             // InternalOCLstdlib.g:4837:1: ( ( (lv_name_0_0= 'Tuple' ) ) (otherlv_1= '(' ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )? otherlv_5= ')' )? )
@@ -13985,7 +13985,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_name_0_0, grammarAccess.getTupleTypeCSAccess().getNameTupleKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -13993,7 +13993,7 @@
               	            current = createModelElement(grammarAccess.getTupleTypeCSRule());
               	        }
                      		setWithLastConsumed(current, "name", lv_name_0_0, "Tuple");
-              	    
+
             }
 
             }
@@ -14016,7 +14016,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:4856:1: ( ( (lv_ownedParts_2_0= ruleTuplePartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTuplePartCS ) ) )* )?
                     int alt90=2;
@@ -14036,9 +14036,9 @@
                             // InternalOCLstdlib.g:4858:3: lv_ownedParts_2_0= ruleTuplePartCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_0_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_13);
                             lv_ownedParts_2_0=ruleTuplePartCS();
@@ -14051,12 +14051,12 @@
                               	            current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
                               	        }
                                      		add(
-                                     			current, 
+                                     			current,
                                      			"ownedParts",
-                                      		lv_ownedParts_2_0, 
+                                      		lv_ownedParts_2_0,
                                       		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TuplePartCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -14083,7 +14083,7 @@
                             	    if ( state.backtracking==0 ) {
 
                             	          	newLeafNode(otherlv_3, grammarAccess.getTupleTypeCSAccess().getCommaKeyword_1_1_1_0());
-                            	          
+
                             	    }
                             	    // InternalOCLstdlib.g:4878:1: ( (lv_ownedParts_4_0= ruleTuplePartCS ) )
                             	    // InternalOCLstdlib.g:4879:1: (lv_ownedParts_4_0= ruleTuplePartCS )
@@ -14092,9 +14092,9 @@
                             	    // InternalOCLstdlib.g:4880:3: lv_ownedParts_4_0= ruleTuplePartCS
                             	    {
                             	    if ( state.backtracking==0 ) {
-                            	       
-                            	      	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0()); 
-                            	      	    
+
+                            	      	        newCompositeNode(grammarAccess.getTupleTypeCSAccess().getOwnedPartsTuplePartCSParserRuleCall_1_1_1_1_0());
+
                             	    }
                             	    pushFollow(FollowSets000.FOLLOW_13);
                             	    lv_ownedParts_4_0=ruleTuplePartCS();
@@ -14107,12 +14107,12 @@
                             	      	            current = createModelElementForParent(grammarAccess.getTupleTypeCSRule());
                             	      	        }
                             	             		add(
-                            	             			current, 
+                            	             			current,
                             	             			"ownedParts",
-                            	              		lv_ownedParts_4_0, 
+                            	              		lv_ownedParts_4_0,
                             	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TuplePartCS");
                             	      	        afterParserOrEnumRuleCall();
-                            	      	    
+
                             	    }
 
                             	    }
@@ -14139,7 +14139,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2());
-                          
+
                     }
 
                     }
@@ -14154,14 +14154,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14182,7 +14182,7 @@
             // InternalOCLstdlib.g:4910:2: iv_ruleCollectionLiteralExpCS= ruleCollectionLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionLiteralExpCS=ruleCollectionLiteralExpCS();
@@ -14190,18 +14190,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionLiteralExpCS; 
+               current =iv_ruleCollectionLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14224,8 +14224,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:4920:28: ( ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' ) )
             // InternalOCLstdlib.g:4921:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )? otherlv_5= '}' )
@@ -14240,9 +14240,9 @@
             // InternalOCLstdlib.g:4923:3: lv_ownedType_0_0= ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_51);
             lv_ownedType_0_0=ruleCollectionTypeCS();
@@ -14255,12 +14255,12 @@
               	            current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -14272,7 +14272,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:4943:1: ( ( (lv_ownedParts_2_0= ruleCollectionLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) ) )* )?
             int alt93=2;
@@ -14292,9 +14292,9 @@
                     // InternalOCLstdlib.g:4945:3: lv_ownedParts_2_0= ruleCollectionLiteralPartCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_65);
                     lv_ownedParts_2_0=ruleCollectionLiteralPartCS();
@@ -14307,12 +14307,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParts",
-                              		lv_ownedParts_2_0, 
+                              		lv_ownedParts_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -14339,7 +14339,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getCollectionLiteralExpCSAccess().getCommaKeyword_2_1_0());
-                    	          
+
                     	    }
                     	    // InternalOCLstdlib.g:4965:1: ( (lv_ownedParts_4_0= ruleCollectionLiteralPartCS ) )
                     	    // InternalOCLstdlib.g:4966:1: (lv_ownedParts_4_0= ruleCollectionLiteralPartCS )
@@ -14348,9 +14348,9 @@
                     	    // InternalOCLstdlib.g:4967:3: lv_ownedParts_4_0= ruleCollectionLiteralPartCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getCollectionLiteralExpCSAccess().getOwnedPartsCollectionLiteralPartCSParserRuleCall_2_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_65);
                     	    lv_ownedParts_4_0=ruleCollectionLiteralPartCS();
@@ -14363,12 +14363,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getCollectionLiteralExpCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParts",
-                    	              		lv_ownedParts_4_0, 
+                    	              		lv_ownedParts_4_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionLiteralPartCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -14395,7 +14395,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getCollectionLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -14404,14 +14404,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14432,7 +14432,7 @@
             // InternalOCLstdlib.g:4997:2: iv_ruleCollectionLiteralPartCS= ruleCollectionLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionLiteralPartCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionLiteralPartCS=ruleCollectionLiteralPartCS();
@@ -14440,18 +14440,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionLiteralPartCS; 
+               current =iv_ruleCollectionLiteralPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14472,8 +14472,8 @@
         EObject lv_ownedExpression_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5007:28: ( ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) ) )
             // InternalOCLstdlib.g:5008:1: ( ( ( (lv_ownedExpression_0_0= ruleExpCS ) ) (otherlv_1= '..' ( (lv_ownedLastExpression_2_0= ruleExpCS ) ) )? ) | ( (lv_ownedExpression_3_0= rulePatternExpCS ) ) )
@@ -14495,9 +14495,9 @@
                     // InternalOCLstdlib.g:5010:3: lv_ownedExpression_0_0= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionExpCSParserRuleCall_0_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_67);
                     lv_ownedExpression_0_0=ruleExpCS();
@@ -14510,12 +14510,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExpression",
-                              		lv_ownedExpression_0_0, 
+                              		lv_ownedExpression_0_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -14538,7 +14538,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_1, grammarAccess.getCollectionLiteralPartCSAccess().getFullStopFullStopKeyword_0_1_0());
-                                  
+
                             }
                             // InternalOCLstdlib.g:5030:1: ( (lv_ownedLastExpression_2_0= ruleExpCS ) )
                             // InternalOCLstdlib.g:5031:1: (lv_ownedLastExpression_2_0= ruleExpCS )
@@ -14547,9 +14547,9 @@
                             // InternalOCLstdlib.g:5032:3: lv_ownedLastExpression_2_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedLastExpressionExpCSParserRuleCall_0_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedLastExpression_2_0=ruleExpCS();
@@ -14562,12 +14562,12 @@
                               	            current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedLastExpression",
-                                      		lv_ownedLastExpression_2_0, 
+                                      		lv_ownedLastExpression_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -14597,9 +14597,9 @@
                     // InternalOCLstdlib.g:5051:3: lv_ownedExpression_3_0= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionLiteralPartCSAccess().getOwnedExpressionPatternExpCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedExpression_3_0=rulePatternExpCS();
@@ -14612,12 +14612,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionLiteralPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExpression",
-                              		lv_ownedExpression_3_0, 
+                              		lv_ownedExpression_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -14635,14 +14635,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14663,7 +14663,7 @@
             // InternalOCLstdlib.g:5077:2: iv_ruleCollectionPatternCS= ruleCollectionPatternCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCollectionPatternCSRule()); 
+               newCompositeNode(grammarAccess.getCollectionPatternCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCollectionPatternCS=ruleCollectionPatternCS();
@@ -14671,18 +14671,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCollectionPatternCS; 
+               current =iv_ruleCollectionPatternCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14708,8 +14708,8 @@
         AntlrDatatypeRuleToken lv_restVariableName_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5087:28: ( ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? otherlv_7= '}' ) )
             // InternalOCLstdlib.g:5088:1: ( ( (lv_ownedType_0_0= ruleCollectionTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )? otherlv_7= '}' )
@@ -14724,9 +14724,9 @@
             // InternalOCLstdlib.g:5090:3: lv_ownedType_0_0= ruleCollectionTypeCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedTypeCollectionTypeCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_51);
             lv_ownedType_0_0=ruleCollectionTypeCS();
@@ -14739,12 +14739,12 @@
               	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CollectionTypeCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -14756,7 +14756,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getCollectionPatternCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:5110:1: ( ( (lv_ownedParts_2_0= rulePatternExpCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= rulePatternExpCS ) ) )* (otherlv_5= '++' ( (lv_restVariableName_6_0= ruleIdentifier ) ) ) )?
             int alt97=2;
@@ -14776,9 +14776,9 @@
                     // InternalOCLstdlib.g:5112:3: lv_ownedParts_2_0= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_68);
                     lv_ownedParts_2_0=rulePatternExpCS();
@@ -14791,12 +14791,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParts",
-                              		lv_ownedParts_2_0, 
+                              		lv_ownedParts_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -14823,7 +14823,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getCollectionPatternCSAccess().getCommaKeyword_2_1_0());
-                    	          
+
                     	    }
                     	    // InternalOCLstdlib.g:5132:1: ( (lv_ownedParts_4_0= rulePatternExpCS ) )
                     	    // InternalOCLstdlib.g:5133:1: (lv_ownedParts_4_0= rulePatternExpCS )
@@ -14832,9 +14832,9 @@
                     	    // InternalOCLstdlib.g:5134:3: lv_ownedParts_4_0= rulePatternExpCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getOwnedPartsPatternExpCSParserRuleCall_2_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_68);
                     	    lv_ownedParts_4_0=rulePatternExpCS();
@@ -14847,12 +14847,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParts",
-                    	              		lv_ownedParts_4_0, 
+                    	              		lv_ownedParts_4_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -14876,7 +14876,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getCollectionPatternCSAccess().getPlusSignPlusSignKeyword_2_2_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:5154:1: ( (lv_restVariableName_6_0= ruleIdentifier ) )
                     // InternalOCLstdlib.g:5155:1: (lv_restVariableName_6_0= ruleIdentifier )
@@ -14885,9 +14885,9 @@
                     // InternalOCLstdlib.g:5156:3: lv_restVariableName_6_0= ruleIdentifier
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCollectionPatternCSAccess().getRestVariableNameIdentifierParserRuleCall_2_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_16);
                     lv_restVariableName_6_0=ruleIdentifier();
@@ -14900,12 +14900,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCollectionPatternCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"restVariableName",
-                              		lv_restVariableName_6_0, 
+                              		lv_restVariableName_6_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Identifier");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -14926,7 +14926,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getCollectionPatternCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -14935,14 +14935,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -14963,7 +14963,7 @@
             // InternalOCLstdlib.g:5186:2: iv_ruleShadowPartCS= ruleShadowPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getShadowPartCSRule()); 
+               newCompositeNode(grammarAccess.getShadowPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleShadowPartCS=ruleShadowPartCS();
@@ -14971,18 +14971,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleShadowPartCS; 
+               current =iv_ruleShadowPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15001,8 +15001,8 @@
         EObject lv_ownedInitExpression_2_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5196:28: ( ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) ) )
             // InternalOCLstdlib.g:5197:1: ( ( ( ruleUnrestrictedName ) ) otherlv_1= '=' ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) ) )
@@ -15017,21 +15017,21 @@
             // InternalOCLstdlib.g:5199:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getShadowPartCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getReferredPropertyPropertyCrossReference_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_24);
             ruleUnrestrictedName();
@@ -15039,9 +15039,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -15053,7 +15053,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getShadowPartCSAccess().getEqualsSignKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:5219:1: ( ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) ) )
             // InternalOCLstdlib.g:5220:1: ( (lv_ownedInitExpression_2_1= ruleExpCS | lv_ownedInitExpression_2_2= rulePatternExpCS ) )
@@ -15069,9 +15069,9 @@
                     // InternalOCLstdlib.g:5222:3: lv_ownedInitExpression_2_1= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedInitExpression_2_1=ruleExpCS();
@@ -15084,12 +15084,12 @@
                       	            current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedInitExpression",
-                              		lv_ownedInitExpression_2_1, 
+                              		lv_ownedInitExpression_2_1,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -15098,9 +15098,9 @@
                     // InternalOCLstdlib.g:5237:8: lv_ownedInitExpression_2_2= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getShadowPartCSAccess().getOwnedInitExpressionPatternExpCSParserRuleCall_2_0_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedInitExpression_2_2=rulePatternExpCS();
@@ -15113,12 +15113,12 @@
                       	            current = createModelElementForParent(grammarAccess.getShadowPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedInitExpression",
-                              		lv_ownedInitExpression_2_2, 
+                              		lv_ownedInitExpression_2_2,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -15139,14 +15139,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15167,7 +15167,7 @@
             // InternalOCLstdlib.g:5265:2: iv_rulePatternExpCS= rulePatternExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPatternExpCSRule()); 
+               newCompositeNode(grammarAccess.getPatternExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePatternExpCS=rulePatternExpCS();
@@ -15175,18 +15175,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePatternExpCS; 
+               current =iv_rulePatternExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15205,8 +15205,8 @@
         EObject lv_ownedPatternType_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5275:28: ( ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) ) )
             // InternalOCLstdlib.g:5276:1: ( ( (lv_patternVariableName_0_0= ruleUnrestrictedName ) )? otherlv_1= ':' ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) ) )
@@ -15229,9 +15229,9 @@
                     // InternalOCLstdlib.g:5278:3: lv_patternVariableName_0_0= ruleUnrestrictedName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getPatternVariableNameUnrestrictedNameParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_8);
                     lv_patternVariableName_0_0=ruleUnrestrictedName();
@@ -15244,12 +15244,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"patternVariableName",
-                              		lv_patternVariableName_0_0, 
+                              		lv_patternVariableName_0_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -15264,7 +15264,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getPatternExpCSAccess().getColonKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:5298:1: ( (lv_ownedPatternType_2_0= ruleTypeExpCS ) )
             // InternalOCLstdlib.g:5299:1: (lv_ownedPatternType_2_0= ruleTypeExpCS )
@@ -15273,9 +15273,9 @@
             // InternalOCLstdlib.g:5300:3: lv_ownedPatternType_2_0= ruleTypeExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPatternExpCSAccess().getOwnedPatternTypeTypeExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedPatternType_2_0=ruleTypeExpCS();
@@ -15288,12 +15288,12 @@
               	            current = createModelElementForParent(grammarAccess.getPatternExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPatternType",
-                      		lv_ownedPatternType_2_0, 
+                      		lv_ownedPatternType_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -15308,14 +15308,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15336,7 +15336,7 @@
             // InternalOCLstdlib.g:5326:2: iv_ruleLambdaLiteralExpCS= ruleLambdaLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLambdaLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getLambdaLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLambdaLiteralExpCS=ruleLambdaLiteralExpCS();
@@ -15344,18 +15344,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLambdaLiteralExpCS; 
+               current =iv_ruleLambdaLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15374,8 +15374,8 @@
         EObject lv_ownedExpressionCS_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5336:28: ( (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' ) )
             // InternalOCLstdlib.g:5337:1: (otherlv_0= 'Lambda' otherlv_1= '{' ( (lv_ownedExpressionCS_2_0= ruleExpCS ) ) otherlv_3= '}' )
@@ -15387,13 +15387,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getLambdaLiteralExpCSAccess().getLambdaKeyword_0());
-                  
+
             }
             otherlv_1=(Token)match(input,46,FollowSets000.FOLLOW_31); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getLambdaLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:5345:1: ( (lv_ownedExpressionCS_2_0= ruleExpCS ) )
             // InternalOCLstdlib.g:5346:1: (lv_ownedExpressionCS_2_0= ruleExpCS )
@@ -15402,9 +15402,9 @@
             // InternalOCLstdlib.g:5347:3: lv_ownedExpressionCS_2_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLambdaLiteralExpCSAccess().getOwnedExpressionCSExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_16);
             lv_ownedExpressionCS_2_0=ruleExpCS();
@@ -15417,12 +15417,12 @@
               	            current = createModelElementForParent(grammarAccess.getLambdaLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedExpressionCS",
-                      		lv_ownedExpressionCS_2_0, 
+                      		lv_ownedExpressionCS_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -15434,7 +15434,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getLambdaLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -15443,14 +15443,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15471,7 +15471,7 @@
             // InternalOCLstdlib.g:5377:2: iv_ruleMapLiteralExpCS= ruleMapLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMapLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getMapLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMapLiteralExpCS=ruleMapLiteralExpCS();
@@ -15479,18 +15479,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMapLiteralExpCS; 
+               current =iv_ruleMapLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15513,8 +15513,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5387:28: ( ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' ) )
             // InternalOCLstdlib.g:5388:1: ( ( (lv_ownedType_0_0= ruleMapTypeCS ) ) otherlv_1= '{' ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )? otherlv_5= '}' )
@@ -15529,9 +15529,9 @@
             // InternalOCLstdlib.g:5390:3: lv_ownedType_0_0= ruleMapTypeCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedTypeMapTypeCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_51);
             lv_ownedType_0_0=ruleMapTypeCS();
@@ -15544,12 +15544,12 @@
               	            current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapTypeCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -15561,7 +15561,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getMapLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:5410:1: ( ( (lv_ownedParts_2_0= ruleMapLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) ) )* )?
             int alt101=2;
@@ -15581,9 +15581,9 @@
                     // InternalOCLstdlib.g:5412:3: lv_ownedParts_2_0= ruleMapLiteralPartCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_65);
                     lv_ownedParts_2_0=ruleMapLiteralPartCS();
@@ -15596,12 +15596,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedParts",
-                              		lv_ownedParts_2_0, 
+                              		lv_ownedParts_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -15628,7 +15628,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getMapLiteralExpCSAccess().getCommaKeyword_2_1_0());
-                    	          
+
                     	    }
                     	    // InternalOCLstdlib.g:5432:1: ( (lv_ownedParts_4_0= ruleMapLiteralPartCS ) )
                     	    // InternalOCLstdlib.g:5433:1: (lv_ownedParts_4_0= ruleMapLiteralPartCS )
@@ -15637,9 +15637,9 @@
                     	    // InternalOCLstdlib.g:5434:3: lv_ownedParts_4_0= ruleMapLiteralPartCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getMapLiteralExpCSAccess().getOwnedPartsMapLiteralPartCSParserRuleCall_2_1_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_65);
                     	    lv_ownedParts_4_0=ruleMapLiteralPartCS();
@@ -15652,12 +15652,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getMapLiteralExpCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedParts",
-                    	              		lv_ownedParts_4_0, 
+                    	              		lv_ownedParts_4_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.MapLiteralPartCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -15684,7 +15684,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getMapLiteralExpCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -15693,14 +15693,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15721,7 +15721,7 @@
             // InternalOCLstdlib.g:5464:2: iv_ruleMapLiteralPartCS= ruleMapLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMapLiteralPartCSRule()); 
+               newCompositeNode(grammarAccess.getMapLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMapLiteralPartCS=ruleMapLiteralPartCS();
@@ -15729,18 +15729,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMapLiteralPartCS; 
+               current =iv_ruleMapLiteralPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15759,8 +15759,8 @@
         EObject lv_ownedValue_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5474:28: ( ( ( (lv_ownedKey_0_0= ruleExpCS ) ) otherlv_1= '<-' ( (lv_ownedValue_2_0= ruleExpCS ) ) ) )
             // InternalOCLstdlib.g:5475:1: ( ( (lv_ownedKey_0_0= ruleExpCS ) ) otherlv_1= '<-' ( (lv_ownedValue_2_0= ruleExpCS ) ) )
@@ -15775,9 +15775,9 @@
             // InternalOCLstdlib.g:5477:3: lv_ownedKey_0_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedKeyExpCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_70);
             lv_ownedKey_0_0=ruleExpCS();
@@ -15790,12 +15790,12 @@
               	            current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedKey",
-                      		lv_ownedKey_0_0, 
+                      		lv_ownedKey_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -15807,7 +15807,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getMapLiteralPartCSAccess().getLessThanSignHyphenMinusKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:5497:1: ( (lv_ownedValue_2_0= ruleExpCS ) )
             // InternalOCLstdlib.g:5498:1: (lv_ownedValue_2_0= ruleExpCS )
@@ -15816,9 +15816,9 @@
             // InternalOCLstdlib.g:5499:3: lv_ownedValue_2_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMapLiteralPartCSAccess().getOwnedValueExpCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedValue_2_0=ruleExpCS();
@@ -15831,12 +15831,12 @@
               	            current = createModelElementForParent(grammarAccess.getMapLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedValue",
-                      		lv_ownedValue_2_0, 
+                      		lv_ownedValue_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -15851,14 +15851,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15879,7 +15879,7 @@
             // InternalOCLstdlib.g:5525:2: iv_rulePrimitiveLiteralExpCS= rulePrimitiveLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimitiveLiteralExpCS=rulePrimitiveLiteralExpCS();
@@ -15887,18 +15887,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimitiveLiteralExpCS; 
+               current =iv_rulePrimitiveLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -15924,8 +15924,8 @@
         EObject this_NullLiteralExpCS_5 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5535:28: ( (this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS | this_StringLiteralExpCS_1= ruleStringLiteralExpCS | this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS | this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS | this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS | this_NullLiteralExpCS_5= ruleNullLiteralExpCS ) )
             // InternalOCLstdlib.g:5536:1: (this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS | this_StringLiteralExpCS_1= ruleStringLiteralExpCS | this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS | this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS | this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS | this_NullLiteralExpCS_5= ruleNullLiteralExpCS )
@@ -15977,14 +15977,14 @@
                     // InternalOCLstdlib.g:5537:2: this_NumberLiteralExpCS_0= ruleNumberLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNumberLiteralExpCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NumberLiteralExpCS_0=ruleNumberLiteralExpCS();
@@ -15992,10 +15992,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NumberLiteralExpCS_0; 
+
+                              current = this_NumberLiteralExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -16004,14 +16004,14 @@
                     // InternalOCLstdlib.g:5550:2: this_StringLiteralExpCS_1= ruleStringLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getStringLiteralExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_StringLiteralExpCS_1=ruleStringLiteralExpCS();
@@ -16019,10 +16019,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_StringLiteralExpCS_1; 
+
+                              current = this_StringLiteralExpCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -16031,14 +16031,14 @@
                     // InternalOCLstdlib.g:5563:2: this_BooleanLiteralExpCS_2= ruleBooleanLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getBooleanLiteralExpCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_BooleanLiteralExpCS_2=ruleBooleanLiteralExpCS();
@@ -16046,10 +16046,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_BooleanLiteralExpCS_2; 
+
+                              current = this_BooleanLiteralExpCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -16058,14 +16058,14 @@
                     // InternalOCLstdlib.g:5576:2: this_UnlimitedNaturalLiteralExpCS_3= ruleUnlimitedNaturalLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_UnlimitedNaturalLiteralExpCS_3=ruleUnlimitedNaturalLiteralExpCS();
@@ -16073,10 +16073,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_UnlimitedNaturalLiteralExpCS_3; 
+
+                              current = this_UnlimitedNaturalLiteralExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -16085,14 +16085,14 @@
                     // InternalOCLstdlib.g:5589:2: this_InvalidLiteralExpCS_4= ruleInvalidLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getInvalidLiteralExpCSParserRuleCall_4());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_InvalidLiteralExpCS_4=ruleInvalidLiteralExpCS();
@@ -16100,10 +16100,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_InvalidLiteralExpCS_4; 
+
+                              current = this_InvalidLiteralExpCS_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -16112,14 +16112,14 @@
                     // InternalOCLstdlib.g:5602:2: this_NullLiteralExpCS_5= ruleNullLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimitiveLiteralExpCSAccess().getNullLiteralExpCSParserRuleCall_5());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NullLiteralExpCS_5=ruleNullLiteralExpCS();
@@ -16127,10 +16127,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NullLiteralExpCS_5; 
+
+                              current = this_NullLiteralExpCS_5;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -16142,14 +16142,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16170,7 +16170,7 @@
             // InternalOCLstdlib.g:5623:2: iv_ruleTupleLiteralExpCS= ruleTupleLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTupleLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getTupleLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTupleLiteralExpCS=ruleTupleLiteralExpCS();
@@ -16178,18 +16178,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTupleLiteralExpCS; 
+               current =iv_ruleTupleLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16211,8 +16211,8 @@
         EObject lv_ownedParts_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5633:28: ( (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' ) )
             // InternalOCLstdlib.g:5634:1: (otherlv_0= 'Tuple' otherlv_1= '{' ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) ) )* otherlv_5= '}' )
@@ -16224,13 +16224,13 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getTupleLiteralExpCSAccess().getTupleKeyword_0());
-                  
+
             }
             otherlv_1=(Token)match(input,46,FollowSets000.FOLLOW_37); if (state.failed) return current;
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralExpCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:5642:1: ( (lv_ownedParts_2_0= ruleTupleLiteralPartCS ) )
             // InternalOCLstdlib.g:5643:1: (lv_ownedParts_2_0= ruleTupleLiteralPartCS )
@@ -16239,9 +16239,9 @@
             // InternalOCLstdlib.g:5644:3: lv_ownedParts_2_0= ruleTupleLiteralPartCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_2_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_65);
             lv_ownedParts_2_0=ruleTupleLiteralPartCS();
@@ -16254,12 +16254,12 @@
               	            current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedParts",
-                      		lv_ownedParts_2_0, 
+                      		lv_ownedParts_2_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -16286,7 +16286,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralExpCSAccess().getCommaKeyword_3_0());
-            	          
+
             	    }
             	    // InternalOCLstdlib.g:5664:1: ( (lv_ownedParts_4_0= ruleTupleLiteralPartCS ) )
             	    // InternalOCLstdlib.g:5665:1: (lv_ownedParts_4_0= ruleTupleLiteralPartCS )
@@ -16295,9 +16295,9 @@
             	    // InternalOCLstdlib.g:5666:3: lv_ownedParts_4_0= ruleTupleLiteralPartCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getTupleLiteralExpCSAccess().getOwnedPartsTupleLiteralPartCSParserRuleCall_3_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_65);
             	    lv_ownedParts_4_0=ruleTupleLiteralPartCS();
@@ -16310,12 +16310,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getTupleLiteralExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedParts",
-            	              		lv_ownedParts_4_0, 
+            	              		lv_ownedParts_4_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TupleLiteralPartCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -16336,7 +16336,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getTupleLiteralExpCSAccess().getRightCurlyBracketKeyword_4());
-                  
+
             }
 
             }
@@ -16345,14 +16345,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16373,7 +16373,7 @@
             // InternalOCLstdlib.g:5696:2: iv_ruleTupleLiteralPartCS= ruleTupleLiteralPartCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTupleLiteralPartCSRule()); 
+               newCompositeNode(grammarAccess.getTupleLiteralPartCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTupleLiteralPartCS=ruleTupleLiteralPartCS();
@@ -16381,18 +16381,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTupleLiteralPartCS; 
+               current =iv_ruleTupleLiteralPartCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16414,8 +16414,8 @@
         EObject lv_ownedInitExpression_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5706:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) ) )
             // InternalOCLstdlib.g:5707:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) )? otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )
@@ -16430,9 +16430,9 @@
             // InternalOCLstdlib.g:5709:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_71);
             lv_name_0_0=ruleUnrestrictedName();
@@ -16445,12 +16445,12 @@
               	            current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -16473,7 +16473,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTupleLiteralPartCSAccess().getColonKeyword_1_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:5729:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                     // InternalOCLstdlib.g:5730:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -16482,9 +16482,9 @@
                     // InternalOCLstdlib.g:5731:3: lv_ownedType_2_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_24);
                     lv_ownedType_2_0=ruleTypeExpCS();
@@ -16497,12 +16497,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_2_0, 
+                              		lv_ownedType_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -16520,7 +16520,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_3, grammarAccess.getTupleLiteralPartCSAccess().getEqualsSignKeyword_2());
-                  
+
             }
             // InternalOCLstdlib.g:5751:1: ( (lv_ownedInitExpression_4_0= ruleExpCS ) )
             // InternalOCLstdlib.g:5752:1: (lv_ownedInitExpression_4_0= ruleExpCS )
@@ -16529,9 +16529,9 @@
             // InternalOCLstdlib.g:5753:3: lv_ownedInitExpression_4_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTupleLiteralPartCSAccess().getOwnedInitExpressionExpCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedInitExpression_4_0=ruleExpCS();
@@ -16544,12 +16544,12 @@
               	            current = createModelElementForParent(grammarAccess.getTupleLiteralPartCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedInitExpression",
-                      		lv_ownedInitExpression_4_0, 
+                      		lv_ownedInitExpression_4_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -16564,14 +16564,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16592,7 +16592,7 @@
             // InternalOCLstdlib.g:5779:2: iv_ruleNumberLiteralExpCS= ruleNumberLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNumberLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getNumberLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNumberLiteralExpCS=ruleNumberLiteralExpCS();
@@ -16600,18 +16600,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNumberLiteralExpCS; 
+               current =iv_ruleNumberLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16627,8 +16627,8 @@
         AntlrDatatypeRuleToken lv_symbol_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5789:28: ( ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) ) )
             // InternalOCLstdlib.g:5790:1: ( (lv_symbol_0_0= ruleNUMBER_LITERAL ) )
@@ -16640,9 +16640,9 @@
             // InternalOCLstdlib.g:5792:3: lv_symbol_0_0= ruleNUMBER_LITERAL
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNumberLiteralExpCSAccess().getSymbolNUMBER_LITERALParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_symbol_0_0=ruleNUMBER_LITERAL();
@@ -16655,12 +16655,12 @@
               	            current = createModelElementForParent(grammarAccess.getNumberLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"symbol",
-                      		lv_symbol_0_0, 
+                      		lv_symbol_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.NUMBER_LITERAL");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -16672,14 +16672,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16700,7 +16700,7 @@
             // InternalOCLstdlib.g:5818:2: iv_ruleStringLiteralExpCS= ruleStringLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getStringLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getStringLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleStringLiteralExpCS=ruleStringLiteralExpCS();
@@ -16708,18 +16708,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleStringLiteralExpCS; 
+               current =iv_ruleStringLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16735,8 +16735,8 @@
         AntlrDatatypeRuleToken lv_segments_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5828:28: ( ( (lv_segments_0_0= ruleStringLiteral ) )+ )
             // InternalOCLstdlib.g:5829:1: ( (lv_segments_0_0= ruleStringLiteral ) )+
@@ -16761,9 +16761,9 @@
             	    // InternalOCLstdlib.g:5831:3: lv_segments_0_0= ruleStringLiteral
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getStringLiteralExpCSAccess().getSegmentsStringLiteralParserRuleCall_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_72);
             	    lv_segments_0_0=ruleStringLiteral();
@@ -16776,12 +16776,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getStringLiteralExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"segments",
-            	              		lv_segments_0_0, 
+            	              		lv_segments_0_0,
             	              		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -16804,14 +16804,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16832,7 +16832,7 @@
             // InternalOCLstdlib.g:5857:2: iv_ruleBooleanLiteralExpCS= ruleBooleanLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getBooleanLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getBooleanLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleBooleanLiteralExpCS=ruleBooleanLiteralExpCS();
@@ -16840,18 +16840,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleBooleanLiteralExpCS; 
+               current =iv_ruleBooleanLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16867,8 +16867,8 @@
         Token lv_symbol_0_0=null;
         Token lv_symbol_1_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5867:28: ( ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) ) )
             // InternalOCLstdlib.g:5868:1: ( ( (lv_symbol_0_0= 'true' ) ) | ( (lv_symbol_1_0= 'false' ) ) )
@@ -16904,7 +16904,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_symbol_0_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolTrueKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -16912,7 +16912,7 @@
                       	            current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
                       	        }
                              		setWithLastConsumed(current, "symbol", lv_symbol_0_0, "true");
-                      	    
+
                     }
 
                     }
@@ -16936,7 +16936,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_symbol_1_0, grammarAccess.getBooleanLiteralExpCSAccess().getSymbolFalseKeyword_1_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -16944,7 +16944,7 @@
                       	            current = createModelElement(grammarAccess.getBooleanLiteralExpCSRule());
                       	        }
                              		setWithLastConsumed(current, "symbol", lv_symbol_1_0, "false");
-                      	    
+
                     }
 
                     }
@@ -16962,14 +16962,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -16990,7 +16990,7 @@
             // InternalOCLstdlib.g:5909:2: iv_ruleUnlimitedNaturalLiteralExpCS= ruleUnlimitedNaturalLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUnlimitedNaturalLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getUnlimitedNaturalLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUnlimitedNaturalLiteralExpCS=ruleUnlimitedNaturalLiteralExpCS();
@@ -16998,18 +16998,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUnlimitedNaturalLiteralExpCS; 
+               current =iv_ruleUnlimitedNaturalLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17024,8 +17024,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5919:28: ( ( () otherlv_1= '*' ) )
             // InternalOCLstdlib.g:5920:1: ( () otherlv_1= '*' )
@@ -17034,19 +17034,19 @@
             // InternalOCLstdlib.g:5920:2: () otherlv_1= '*'
             {
             // InternalOCLstdlib.g:5920:2: ()
-            // InternalOCLstdlib.g:5921:2: 
+            // InternalOCLstdlib.g:5921:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getUnlimitedNaturalLiteralExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -17055,7 +17055,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getUnlimitedNaturalLiteralExpCSAccess().getAsteriskKeyword_1());
-                  
+
             }
 
             }
@@ -17064,14 +17064,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17092,7 +17092,7 @@
             // InternalOCLstdlib.g:5943:2: iv_ruleInvalidLiteralExpCS= ruleInvalidLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getInvalidLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getInvalidLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleInvalidLiteralExpCS=ruleInvalidLiteralExpCS();
@@ -17100,18 +17100,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleInvalidLiteralExpCS; 
+               current =iv_ruleInvalidLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17126,8 +17126,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5953:28: ( ( () otherlv_1= 'invalid' ) )
             // InternalOCLstdlib.g:5954:1: ( () otherlv_1= 'invalid' )
@@ -17136,19 +17136,19 @@
             // InternalOCLstdlib.g:5954:2: () otherlv_1= 'invalid'
             {
             // InternalOCLstdlib.g:5954:2: ()
-            // InternalOCLstdlib.g:5955:2: 
+            // InternalOCLstdlib.g:5955:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getInvalidLiteralExpCSAccess().getInvalidLiteralExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -17157,7 +17157,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getInvalidLiteralExpCSAccess().getInvalidKeyword_1());
-                  
+
             }
 
             }
@@ -17166,14 +17166,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17194,7 +17194,7 @@
             // InternalOCLstdlib.g:5977:2: iv_ruleNullLiteralExpCS= ruleNullLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNullLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getNullLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNullLiteralExpCS=ruleNullLiteralExpCS();
@@ -17202,18 +17202,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNullLiteralExpCS; 
+               current =iv_ruleNullLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17228,8 +17228,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:5987:28: ( ( () otherlv_1= 'null' ) )
             // InternalOCLstdlib.g:5988:1: ( () otherlv_1= 'null' )
@@ -17238,19 +17238,19 @@
             // InternalOCLstdlib.g:5988:2: () otherlv_1= 'null'
             {
             // InternalOCLstdlib.g:5988:2: ()
-            // InternalOCLstdlib.g:5989:2: 
+            // InternalOCLstdlib.g:5989:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getNullLiteralExpCSAccess().getNullLiteralExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -17259,7 +17259,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getNullLiteralExpCSAccess().getNullKeyword_1());
-                  
+
             }
 
             }
@@ -17268,14 +17268,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17296,7 +17296,7 @@
             // InternalOCLstdlib.g:6011:2: iv_ruleTypeLiteralCS= ruleTypeLiteralCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeLiteralCSRule()); 
+               newCompositeNode(grammarAccess.getTypeLiteralCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeLiteralCS=ruleTypeLiteralCS();
@@ -17304,18 +17304,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeLiteralCS; 
+               current =iv_ruleTypeLiteralCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17337,8 +17337,8 @@
         EObject this_TupleTypeCS_3 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:6021:28: ( (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS ) )
             // InternalOCLstdlib.g:6022:1: (this_PrimitiveTypeCS_0= rulePrimitiveTypeCS | this_CollectionTypeCS_1= ruleCollectionTypeCS | this_MapTypeCS_2= ruleMapTypeCS | this_TupleTypeCS_3= ruleTupleTypeCS )
@@ -17390,14 +17390,14 @@
                     // InternalOCLstdlib.g:6023:2: this_PrimitiveTypeCS_0= rulePrimitiveTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getPrimitiveTypeCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimitiveTypeCS_0=rulePrimitiveTypeCS();
@@ -17405,10 +17405,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrimitiveTypeCS_0; 
+
+                              current = this_PrimitiveTypeCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -17417,14 +17417,14 @@
                     // InternalOCLstdlib.g:6036:2: this_CollectionTypeCS_1= ruleCollectionTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getCollectionTypeCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CollectionTypeCS_1=ruleCollectionTypeCS();
@@ -17432,10 +17432,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_CollectionTypeCS_1; 
+
+                              current = this_CollectionTypeCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -17444,14 +17444,14 @@
                     // InternalOCLstdlib.g:6049:2: this_MapTypeCS_2= ruleMapTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getMapTypeCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_MapTypeCS_2=ruleMapTypeCS();
@@ -17459,10 +17459,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MapTypeCS_2; 
+
+                              current = this_MapTypeCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -17471,14 +17471,14 @@
                     // InternalOCLstdlib.g:6062:2: this_TupleTypeCS_3= ruleTupleTypeCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeLiteralCSAccess().getTupleTypeCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TupleTypeCS_3=ruleTupleTypeCS();
@@ -17486,10 +17486,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TupleTypeCS_3; 
+
+                              current = this_TupleTypeCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -17501,14 +17501,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17529,7 +17529,7 @@
             // InternalOCLstdlib.g:6083:2: iv_ruleTypeLiteralWithMultiplicityCS= ruleTypeLiteralWithMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSRule()); 
+               newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeLiteralWithMultiplicityCS=ruleTypeLiteralWithMultiplicityCS();
@@ -17537,18 +17537,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeLiteralWithMultiplicityCS; 
+               current =iv_ruleTypeLiteralWithMultiplicityCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17566,8 +17566,8 @@
         EObject lv_ownedMultiplicity_1_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:6093:28: ( (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? ) )
             // InternalOCLstdlib.g:6094:1: (this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )? )
@@ -17576,14 +17576,14 @@
             // InternalOCLstdlib.g:6095:2: this_TypeLiteralCS_0= ruleTypeLiteralCS ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )?
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0()); 
-                  
+
+                      newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getTypeLiteralCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_58);
             this_TypeLiteralCS_0=ruleTypeLiteralCS();
@@ -17591,10 +17591,10 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
-                      current = this_TypeLiteralCS_0; 
+
+                      current = this_TypeLiteralCS_0;
                       afterParserOrEnumRuleCall();
-                  
+
             }
             // InternalOCLstdlib.g:6106:1: ( (lv_ownedMultiplicity_1_0= ruleMultiplicityCS ) )?
             int alt108=2;
@@ -17611,9 +17611,9 @@
                     // InternalOCLstdlib.g:6108:3: lv_ownedMultiplicity_1_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeLiteralWithMultiplicityCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_1_0=ruleMultiplicityCS();
@@ -17626,12 +17626,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeLiteralWithMultiplicityCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_1_0, 
+                              		lv_ownedMultiplicity_1_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -17649,14 +17649,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17677,7 +17677,7 @@
             // InternalOCLstdlib.g:6134:2: iv_ruleTypeLiteralExpCS= ruleTypeLiteralExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeLiteralExpCSRule()); 
+               newCompositeNode(grammarAccess.getTypeLiteralExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeLiteralExpCS=ruleTypeLiteralExpCS();
@@ -17685,18 +17685,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeLiteralExpCS; 
+               current =iv_ruleTypeLiteralExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17712,8 +17712,8 @@
         EObject lv_ownedType_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:6144:28: ( ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) ) )
             // InternalOCLstdlib.g:6145:1: ( (lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS ) )
@@ -17725,9 +17725,9 @@
             // InternalOCLstdlib.g:6147:3: lv_ownedType_0_0= ruleTypeLiteralWithMultiplicityCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypeLiteralExpCSAccess().getOwnedTypeTypeLiteralWithMultiplicityCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedType_0_0=ruleTypeLiteralWithMultiplicityCS();
@@ -17740,12 +17740,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypeLiteralExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedType",
-                      		lv_ownedType_0_0, 
+                      		lv_ownedType_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeLiteralWithMultiplicityCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -17757,14 +17757,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17785,7 +17785,7 @@
             // InternalOCLstdlib.g:6173:2: iv_ruleTypeNameExpCS= ruleTypeNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeNameExpCSRule()); 
+               newCompositeNode(grammarAccess.getTypeNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeNameExpCS=ruleTypeNameExpCS();
@@ -17793,18 +17793,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeNameExpCS; 
+               current =iv_ruleTypeNameExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -17826,8 +17826,8 @@
         EObject lv_ownedPatternGuard_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:6183:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? ) )
             // InternalOCLstdlib.g:6184:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( ( (lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS ) ) (otherlv_2= '{' ( (lv_ownedPatternGuard_3_0= ruleExpCS ) ) otherlv_4= '}' )? )? )
@@ -17842,9 +17842,9 @@
             // InternalOCLstdlib.g:6186:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_73);
             lv_ownedPathName_0_0=rulePathNameCS();
@@ -17857,12 +17857,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_0_0, 
+                      		lv_ownedPathName_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -17888,9 +17888,9 @@
                     // InternalOCLstdlib.g:6204:3: lv_ownedCurlyBracketedClause_1_0= ruleCurlyBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_73);
                     lv_ownedCurlyBracketedClause_1_0=ruleCurlyBracketedClauseCS();
@@ -17903,12 +17903,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCurlyBracketedClause",
-                              		lv_ownedCurlyBracketedClause_1_0, 
+                              		lv_ownedCurlyBracketedClause_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -17931,7 +17931,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_2, grammarAccess.getTypeNameExpCSAccess().getLeftCurlyBracketKeyword_1_1_0());
-                                  
+
                             }
                             // InternalOCLstdlib.g:6224:1: ( (lv_ownedPatternGuard_3_0= ruleExpCS ) )
                             // InternalOCLstdlib.g:6225:1: (lv_ownedPatternGuard_3_0= ruleExpCS )
@@ -17940,9 +17940,9 @@
                             // InternalOCLstdlib.g:6226:3: lv_ownedPatternGuard_3_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getTypeNameExpCSAccess().getOwnedPatternGuardExpCSParserRuleCall_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_16);
                             lv_ownedPatternGuard_3_0=ruleExpCS();
@@ -17955,12 +17955,12 @@
                               	            current = createModelElementForParent(grammarAccess.getTypeNameExpCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedPatternGuard",
-                                      		lv_ownedPatternGuard_3_0, 
+                                      		lv_ownedPatternGuard_3_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -17972,7 +17972,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getTypeNameExpCSAccess().getRightCurlyBracketKeyword_1_1_2());
-                                  
+
                             }
 
                             }
@@ -17993,14 +17993,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18021,7 +18021,7 @@
             // InternalOCLstdlib.g:6256:2: iv_ruleTypeExpCS= ruleTypeExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeExpCSRule()); 
+               newCompositeNode(grammarAccess.getTypeExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeExpCS=ruleTypeExpCS();
@@ -18029,18 +18029,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeExpCS; 
+               current =iv_ruleTypeExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18062,8 +18062,8 @@
         EObject lv_ownedMultiplicity_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:6266:28: ( ( (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS ) ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
             // InternalOCLstdlib.g:6267:1: ( (this_TypeNameExpCS_0= ruleTypeNameExpCS | this_TypeLiteralCS_1= ruleTypeLiteralCS | this_CollectionPatternCS_2= ruleCollectionPatternCS ) ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
@@ -18079,14 +18079,14 @@
                     // InternalOCLstdlib.g:6268:2: this_TypeNameExpCS_0= ruleTypeNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeNameExpCSParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_58);
                     this_TypeNameExpCS_0=ruleTypeNameExpCS();
@@ -18094,10 +18094,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeNameExpCS_0; 
+
+                              current = this_TypeNameExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -18106,14 +18106,14 @@
                     // InternalOCLstdlib.g:6281:2: this_TypeLiteralCS_1= ruleTypeLiteralCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getTypeLiteralCSParserRuleCall_0_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_58);
                     this_TypeLiteralCS_1=ruleTypeLiteralCS();
@@ -18121,10 +18121,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeLiteralCS_1; 
+
+                              current = this_TypeLiteralCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -18133,14 +18133,14 @@
                     // InternalOCLstdlib.g:6294:2: this_CollectionPatternCS_2= ruleCollectionPatternCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeExpCSAccess().getCollectionPatternCSParserRuleCall_0_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_58);
                     this_CollectionPatternCS_2=ruleCollectionPatternCS();
@@ -18148,10 +18148,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_CollectionPatternCS_2; 
+
+                              current = this_CollectionPatternCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -18174,9 +18174,9 @@
                     // InternalOCLstdlib.g:6307:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeExpCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_3_0=ruleMultiplicityCS();
@@ -18189,12 +18189,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_3_0, 
+                              		lv_ownedMultiplicity_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -18212,14 +18212,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18240,7 +18240,7 @@
             // InternalOCLstdlib.g:6333:2: iv_ruleExpCS= ruleExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getExpCSRule()); 
+               newCompositeNode(grammarAccess.getExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleExpCS=ruleExpCS();
@@ -18248,18 +18248,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleExpCS; 
+               current =iv_ruleExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18281,8 +18281,8 @@
         EObject this_PrefixedLetExpCS_4 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:6343:28: ( ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS ) )
             // InternalOCLstdlib.g:6344:1: ( (this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )? ) | this_PrefixedLetExpCS_4= rulePrefixedLetExpCS )
@@ -18298,14 +18298,14 @@
                     // InternalOCLstdlib.g:6345:2: this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedPrimaryExpCSParserRuleCall_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_74);
                     this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS();
@@ -18313,10 +18313,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrefixedPrimaryExpCS_0; 
+
+                              current = this_PrefixedPrimaryExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
                     // InternalOCLstdlib.g:6356:1: ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
                     int alt113=2;
@@ -18330,19 +18330,19 @@
                             // InternalOCLstdlib.g:6356:2: () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) )
                             {
                             // InternalOCLstdlib.g:6356:2: ()
-                            // InternalOCLstdlib.g:6357:2: 
+                            // InternalOCLstdlib.g:6357:2:
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	  /* */ 
-                              	
+
+                              	  /* */
+
                             }
                             if ( state.backtracking==0 ) {
 
                                       current = forceCreateModelElementAndSet(
                                           grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0(),
                                           current);
-                                  
+
                             }
 
                             }
@@ -18354,9 +18354,9 @@
                             // InternalOCLstdlib.g:6367:3: lv_name_2_0= ruleBinaryOperatorName
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_31);
                             lv_name_2_0=ruleBinaryOperatorName();
@@ -18369,12 +18369,12 @@
                               	            current = createModelElementForParent(grammarAccess.getExpCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"name",
-                                      		lv_name_2_0, 
+                                      		lv_name_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.BinaryOperatorName");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -18389,9 +18389,9 @@
                             // InternalOCLstdlib.g:6385:3: lv_ownedRight_3_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedRight_3_0=ruleExpCS();
@@ -18404,12 +18404,12 @@
                               	            current = createModelElementForParent(grammarAccess.getExpCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedRight",
-                                      		lv_ownedRight_3_0, 
+                                      		lv_ownedRight_3_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -18433,14 +18433,14 @@
                     // InternalOCLstdlib.g:6403:2: this_PrefixedLetExpCS_4= rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getExpCSAccess().getPrefixedLetExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrefixedLetExpCS_4=rulePrefixedLetExpCS();
@@ -18448,10 +18448,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrefixedLetExpCS_4; 
+
+                              current = this_PrefixedLetExpCS_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -18463,14 +18463,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18491,7 +18491,7 @@
             // InternalOCLstdlib.g:6424:2: iv_rulePrefixedLetExpCS= rulePrefixedLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrefixedLetExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrefixedLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrefixedLetExpCS=rulePrefixedLetExpCS();
@@ -18499,18 +18499,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrefixedLetExpCS; 
+               current =iv_rulePrefixedLetExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18530,8 +18530,8 @@
         EObject this_LetExpCS_3 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:6434:28: ( ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS ) )
             // InternalOCLstdlib.g:6435:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) ) ) | this_LetExpCS_3= ruleLetExpCS )
@@ -18561,19 +18561,19 @@
                     // InternalOCLstdlib.g:6435:3: () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedLetExpCS ) )
                     {
                     // InternalOCLstdlib.g:6435:3: ()
-                    // InternalOCLstdlib.g:6436:2: 
+                    // InternalOCLstdlib.g:6436:2:
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                               current = forceCreateModelElement(
                                   grammarAccess.getPrefixedLetExpCSAccess().getPrefixExpCSAction_0_0(),
                                   current);
-                          
+
                     }
 
                     }
@@ -18585,9 +18585,9 @@
                     // InternalOCLstdlib.g:6446:3: lv_name_1_0= ruleUnaryOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_31);
                     lv_name_1_0=ruleUnaryOperatorName();
@@ -18600,12 +18600,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -18620,9 +18620,9 @@
                     // InternalOCLstdlib.g:6464:3: lv_ownedRight_2_0= rulePrefixedLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getOwnedRightPrefixedLetExpCSParserRuleCall_0_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedRight_2_0=rulePrefixedLetExpCS();
@@ -18635,12 +18635,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedLetExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRight",
-                              		lv_ownedRight_2_0, 
+                              		lv_ownedRight_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedLetExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -18658,14 +18658,14 @@
                     // InternalOCLstdlib.g:6482:2: this_LetExpCS_3= ruleLetExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrefixedLetExpCSAccess().getLetExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_LetExpCS_3=ruleLetExpCS();
@@ -18673,10 +18673,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_LetExpCS_3; 
+
+                              current = this_LetExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -18688,14 +18688,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18716,7 +18716,7 @@
             // InternalOCLstdlib.g:6503:2: iv_rulePrefixedPrimaryExpCS= rulePrefixedPrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrefixedPrimaryExpCS=rulePrefixedPrimaryExpCS();
@@ -18724,18 +18724,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrefixedPrimaryExpCS; 
+               current =iv_rulePrefixedPrimaryExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18755,8 +18755,8 @@
         EObject this_PrimaryExpCS_3 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:6513:28: ( ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS ) )
             // InternalOCLstdlib.g:6514:1: ( ( () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) ) ) | this_PrimaryExpCS_3= rulePrimaryExpCS )
@@ -18786,19 +18786,19 @@
                     // InternalOCLstdlib.g:6514:3: () ( (lv_name_1_0= ruleUnaryOperatorName ) ) ( (lv_ownedRight_2_0= rulePrefixedPrimaryExpCS ) )
                     {
                     // InternalOCLstdlib.g:6514:3: ()
-                    // InternalOCLstdlib.g:6515:2: 
+                    // InternalOCLstdlib.g:6515:2:
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
 
                               current = forceCreateModelElement(
                                   grammarAccess.getPrefixedPrimaryExpCSAccess().getPrefixExpCSAction_0_0(),
                                   current);
-                          
+
                     }
 
                     }
@@ -18810,9 +18810,9 @@
                     // InternalOCLstdlib.g:6525:3: lv_name_1_0= ruleUnaryOperatorName
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getNameUnaryOperatorNameParserRuleCall_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_31);
                     lv_name_1_0=ruleUnaryOperatorName();
@@ -18825,12 +18825,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"name",
-                              		lv_name_1_0, 
+                              		lv_name_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnaryOperatorName");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -18845,9 +18845,9 @@
                     // InternalOCLstdlib.g:6543:3: lv_ownedRight_2_0= rulePrefixedPrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getOwnedRightPrefixedPrimaryExpCSParserRuleCall_0_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedRight_2_0=rulePrefixedPrimaryExpCS();
@@ -18860,12 +18860,12 @@
                       	            current = createModelElementForParent(grammarAccess.getPrefixedPrimaryExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRight",
-                              		lv_ownedRight_2_0, 
+                              		lv_ownedRight_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PrefixedPrimaryExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -18883,14 +18883,14 @@
                     // InternalOCLstdlib.g:6561:2: this_PrimaryExpCS_3= rulePrimaryExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrefixedPrimaryExpCSAccess().getPrimaryExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimaryExpCS_3=rulePrimaryExpCS();
@@ -18898,10 +18898,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrimaryExpCS_3; 
+
+                              current = this_PrimaryExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -18913,14 +18913,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18941,7 +18941,7 @@
             // InternalOCLstdlib.g:6582:2: iv_rulePrimaryExpCS= rulePrimaryExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPrimaryExpCSRule()); 
+               newCompositeNode(grammarAccess.getPrimaryExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePrimaryExpCS=rulePrimaryExpCS();
@@ -18949,18 +18949,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePrimaryExpCS; 
+               current =iv_rulePrimaryExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -18994,8 +18994,8 @@
         EObject this_NameExpCS_9 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:6592:28: ( (this_NestedExpCS_0= ruleNestedExpCS | this_IfExpCS_1= ruleIfExpCS | this_SelfExpCS_2= ruleSelfExpCS | this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS | this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS | this_MapLiteralExpCS_5= ruleMapLiteralExpCS | this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS | this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS | this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS | this_NameExpCS_9= ruleNameExpCS ) )
             // InternalOCLstdlib.g:6593:1: (this_NestedExpCS_0= ruleNestedExpCS | this_IfExpCS_1= ruleIfExpCS | this_SelfExpCS_2= ruleSelfExpCS | this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS | this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS | this_MapLiteralExpCS_5= ruleMapLiteralExpCS | this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS | this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS | this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS | this_NameExpCS_9= ruleNameExpCS )
@@ -19008,14 +19008,14 @@
                     // InternalOCLstdlib.g:6594:2: this_NestedExpCS_0= ruleNestedExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNestedExpCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NestedExpCS_0=ruleNestedExpCS();
@@ -19023,10 +19023,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NestedExpCS_0; 
+
+                              current = this_NestedExpCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19035,14 +19035,14 @@
                     // InternalOCLstdlib.g:6607:2: this_IfExpCS_1= ruleIfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getIfExpCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_IfExpCS_1=ruleIfExpCS();
@@ -19050,10 +19050,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_IfExpCS_1; 
+
+                              current = this_IfExpCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19062,14 +19062,14 @@
                     // InternalOCLstdlib.g:6620:2: this_SelfExpCS_2= ruleSelfExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getSelfExpCSParserRuleCall_2());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_SelfExpCS_2=ruleSelfExpCS();
@@ -19077,10 +19077,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_SelfExpCS_2; 
+
+                              current = this_SelfExpCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19089,14 +19089,14 @@
                     // InternalOCLstdlib.g:6633:2: this_PrimitiveLiteralExpCS_3= rulePrimitiveLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getPrimitiveLiteralExpCSParserRuleCall_3());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_PrimitiveLiteralExpCS_3=rulePrimitiveLiteralExpCS();
@@ -19104,10 +19104,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_PrimitiveLiteralExpCS_3; 
+
+                              current = this_PrimitiveLiteralExpCS_3;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19116,14 +19116,14 @@
                     // InternalOCLstdlib.g:6646:2: this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTupleLiteralExpCSParserRuleCall_4());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS();
@@ -19131,10 +19131,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TupleLiteralExpCS_4; 
+
+                              current = this_TupleLiteralExpCS_4;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19143,14 +19143,14 @@
                     // InternalOCLstdlib.g:6659:2: this_MapLiteralExpCS_5= ruleMapLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getMapLiteralExpCSParserRuleCall_5());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_MapLiteralExpCS_5=ruleMapLiteralExpCS();
@@ -19158,10 +19158,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MapLiteralExpCS_5; 
+
+                              current = this_MapLiteralExpCS_5;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19170,14 +19170,14 @@
                     // InternalOCLstdlib.g:6672:2: this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getCollectionLiteralExpCSParserRuleCall_6());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS();
@@ -19185,10 +19185,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_CollectionLiteralExpCS_6; 
+
+                              current = this_CollectionLiteralExpCS_6;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19197,14 +19197,14 @@
                     // InternalOCLstdlib.g:6685:2: this_LambdaLiteralExpCS_7= ruleLambdaLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getLambdaLiteralExpCSParserRuleCall_7());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_LambdaLiteralExpCS_7=ruleLambdaLiteralExpCS();
@@ -19212,10 +19212,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_LambdaLiteralExpCS_7; 
+
+                              current = this_LambdaLiteralExpCS_7;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19224,14 +19224,14 @@
                     // InternalOCLstdlib.g:6698:2: this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getTypeLiteralExpCSParserRuleCall_8());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS();
@@ -19239,10 +19239,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypeLiteralExpCS_8; 
+
+                              current = this_TypeLiteralExpCS_8;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19251,14 +19251,14 @@
                     // InternalOCLstdlib.g:6711:2: this_NameExpCS_9= ruleNameExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9()); 
-                          
+
+                              newCompositeNode(grammarAccess.getPrimaryExpCSAccess().getNameExpCSParserRuleCall_9());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_NameExpCS_9=ruleNameExpCS();
@@ -19266,10 +19266,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_NameExpCS_9; 
+
+                              current = this_NameExpCS_9;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -19281,14 +19281,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19309,7 +19309,7 @@
             // InternalOCLstdlib.g:6732:2: iv_ruleNameExpCS= ruleNameExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNameExpCSRule()); 
+               newCompositeNode(grammarAccess.getNameExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNameExpCS=ruleNameExpCS();
@@ -19317,18 +19317,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNameExpCS; 
+               current =iv_ruleNameExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19352,8 +19352,8 @@
         EObject lv_ownedCurlyBracketedClause_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:6742:28: ( ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? ) )
             // InternalOCLstdlib.g:6743:1: ( ( (lv_ownedPathName_0_0= rulePathNameCS ) ) ( (lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS ) )* ( (lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS ) )? ( (lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS ) )? ( ( (lv_isPre_4_0= '@' ) ) otherlv_5= 'pre' )? )
@@ -19368,9 +19368,9 @@
             // InternalOCLstdlib.g:6745:3: lv_ownedPathName_0_0= rulePathNameCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedPathNamePathNameCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_75);
             lv_ownedPathName_0_0=rulePathNameCS();
@@ -19383,12 +19383,12 @@
               	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedPathName",
-                      		lv_ownedPathName_0_0, 
+                      		lv_ownedPathName_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.PathNameCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -19415,9 +19415,9 @@
             	    // InternalOCLstdlib.g:6763:3: lv_ownedSquareBracketedClauses_1_0= ruleSquareBracketedClauseCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedSquareBracketedClausesSquareBracketedClauseCSParserRuleCall_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_75);
             	    lv_ownedSquareBracketedClauses_1_0=ruleSquareBracketedClauseCS();
@@ -19430,12 +19430,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedSquareBracketedClauses",
-            	              		lv_ownedSquareBracketedClauses_1_0, 
+            	              		lv_ownedSquareBracketedClauses_1_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.SquareBracketedClauseCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -19464,9 +19464,9 @@
                     // InternalOCLstdlib.g:6781:3: lv_ownedRoundBracketedClause_2_0= ruleRoundBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_76);
                     lv_ownedRoundBracketedClause_2_0=ruleRoundBracketedClauseCS();
@@ -19479,12 +19479,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRoundBracketedClause",
-                              		lv_ownedRoundBracketedClause_2_0, 
+                              		lv_ownedRoundBracketedClause_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -19510,9 +19510,9 @@
                     // InternalOCLstdlib.g:6799:3: lv_ownedCurlyBracketedClause_3_0= ruleCurlyBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNameExpCSAccess().getOwnedCurlyBracketedClauseCurlyBracketedClauseCSParserRuleCall_3_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_77);
                     lv_ownedCurlyBracketedClause_3_0=ruleCurlyBracketedClauseCS();
@@ -19525,12 +19525,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNameExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCurlyBracketedClause",
-                              		lv_ownedCurlyBracketedClause_3_0, 
+                              		lv_ownedCurlyBracketedClause_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.CurlyBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -19562,7 +19562,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isPre_4_0, grammarAccess.getNameExpCSAccess().getIsPreCommercialAtKeyword_4_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -19570,7 +19570,7 @@
                       	            current = createModelElement(grammarAccess.getNameExpCSRule());
                       	        }
                              		setWithLastConsumed(current, "isPre", true, "@");
-                      	    
+
                     }
 
                     }
@@ -19582,7 +19582,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_5, grammarAccess.getNameExpCSAccess().getPreKeyword_4_1());
-                          
+
                     }
 
                     }
@@ -19597,14 +19597,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19625,7 +19625,7 @@
             // InternalOCLstdlib.g:6844:2: iv_ruleCurlyBracketedClauseCS= ruleCurlyBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getCurlyBracketedClauseCSRule()); 
+               newCompositeNode(grammarAccess.getCurlyBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleCurlyBracketedClauseCS=ruleCurlyBracketedClauseCS();
@@ -19633,18 +19633,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleCurlyBracketedClauseCS; 
+               current =iv_ruleCurlyBracketedClauseCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19667,8 +19667,8 @@
         AntlrDatatypeRuleToken lv_value_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:6854:28: ( ( () otherlv_1= '{' ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) ) otherlv_6= '}' ) )
             // InternalOCLstdlib.g:6855:1: ( () otherlv_1= '{' ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) ) otherlv_6= '}' )
@@ -19677,19 +19677,19 @@
             // InternalOCLstdlib.g:6855:2: () otherlv_1= '{' ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) ) otherlv_6= '}'
             {
             // InternalOCLstdlib.g:6855:2: ()
-            // InternalOCLstdlib.g:6856:2: 
+            // InternalOCLstdlib.g:6856:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getCurlyBracketedClauseCSAccess().getCurlyBracketedClauseCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -19698,7 +19698,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getCurlyBracketedClauseCSAccess().getLeftCurlyBracketKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:6868:1: ( ( ( (lv_ownedParts_2_0= ruleShadowPartCS ) ) (otherlv_3= ',' ( (lv_ownedParts_4_0= ruleShadowPartCS ) ) )* )? | ( (lv_value_5_0= ruleStringLiteral ) ) )
             int alt124=2;
@@ -19739,9 +19739,9 @@
                             // InternalOCLstdlib.g:6870:3: lv_ownedParts_2_0= ruleShadowPartCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_0_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_65);
                             lv_ownedParts_2_0=ruleShadowPartCS();
@@ -19754,12 +19754,12 @@
                               	            current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
                               	        }
                                      		add(
-                                     			current, 
+                                     			current,
                                      			"ownedParts",
-                                      		lv_ownedParts_2_0, 
+                                      		lv_ownedParts_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -19786,7 +19786,7 @@
                             	    if ( state.backtracking==0 ) {
 
                             	          	newLeafNode(otherlv_3, grammarAccess.getCurlyBracketedClauseCSAccess().getCommaKeyword_2_0_1_0());
-                            	          
+
                             	    }
                             	    // InternalOCLstdlib.g:6890:1: ( (lv_ownedParts_4_0= ruleShadowPartCS ) )
                             	    // InternalOCLstdlib.g:6891:1: (lv_ownedParts_4_0= ruleShadowPartCS )
@@ -19795,9 +19795,9 @@
                             	    // InternalOCLstdlib.g:6892:3: lv_ownedParts_4_0= ruleShadowPartCS
                             	    {
                             	    if ( state.backtracking==0 ) {
-                            	       
-                            	      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0()); 
-                            	      	    
+
+                            	      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getOwnedPartsShadowPartCSParserRuleCall_2_0_1_1_0());
+
                             	    }
                             	    pushFollow(FollowSets000.FOLLOW_65);
                             	    lv_ownedParts_4_0=ruleShadowPartCS();
@@ -19810,12 +19810,12 @@
                             	      	            current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
                             	      	        }
                             	             		add(
-                            	             			current, 
+                            	             			current,
                             	             			"ownedParts",
-                            	              		lv_ownedParts_4_0, 
+                            	              		lv_ownedParts_4_0,
                             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ShadowPartCS");
                             	      	        afterParserOrEnumRuleCall();
-                            	      	    
+
                             	    }
 
                             	    }
@@ -19851,9 +19851,9 @@
                     // InternalOCLstdlib.g:6911:3: lv_value_5_0= ruleStringLiteral
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getCurlyBracketedClauseCSAccess().getValueStringLiteralParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_16);
                     lv_value_5_0=ruleStringLiteral();
@@ -19866,12 +19866,12 @@
                       	            current = createModelElementForParent(grammarAccess.getCurlyBracketedClauseCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"value",
-                              		lv_value_5_0, 
+                              		lv_value_5_0,
                               		"org.eclipse.ocl.xtext.base.Base.StringLiteral");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -19889,7 +19889,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_6, grammarAccess.getCurlyBracketedClauseCSAccess().getRightCurlyBracketKeyword_3());
-                  
+
             }
 
             }
@@ -19898,14 +19898,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19926,7 +19926,7 @@
             // InternalOCLstdlib.g:6941:2: iv_ruleRoundBracketedClauseCS= ruleRoundBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getRoundBracketedClauseCSRule()); 
+               newCompositeNode(grammarAccess.getRoundBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleRoundBracketedClauseCS=ruleRoundBracketedClauseCS();
@@ -19934,18 +19934,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleRoundBracketedClauseCS; 
+               current =iv_ruleRoundBracketedClauseCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -19973,8 +19973,8 @@
         EObject lv_ownedArguments_7_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:6951:28: ( ( () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )? otherlv_8= ')' ) )
             // InternalOCLstdlib.g:6952:1: ( () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )? otherlv_8= ')' )
@@ -19983,19 +19983,19 @@
             // InternalOCLstdlib.g:6952:2: () otherlv_1= '(' ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )? otherlv_8= ')'
             {
             // InternalOCLstdlib.g:6952:2: ()
-            // InternalOCLstdlib.g:6953:2: 
+            // InternalOCLstdlib.g:6953:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getRoundBracketedClauseCSAccess().getRoundBracketedClauseCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -20004,7 +20004,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getRoundBracketedClauseCSAccess().getLeftParenthesisKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:6965:1: ( ( (lv_ownedArguments_2_0= ruleNavigatingArgCS ) ) ( (lv_ownedArguments_3_0= ruleNavigatingCommaArgCS ) )* ( ( (lv_ownedArguments_4_0= ruleNavigatingSemiArgCS ) ) ( (lv_ownedArguments_5_0= ruleNavigatingCommaArgCS ) )* )? ( ( (lv_ownedArguments_6_0= ruleNavigatingBarArgCS ) ) ( (lv_ownedArguments_7_0= ruleNavigatingCommaArgCS ) )* )* )?
             int alt130=2;
@@ -20024,9 +20024,9 @@
                     // InternalOCLstdlib.g:6967:3: lv_ownedArguments_2_0= ruleNavigatingArgCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingArgCSParserRuleCall_2_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_38);
                     lv_ownedArguments_2_0=ruleNavigatingArgCS();
@@ -20039,12 +20039,12 @@
                       	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedArguments",
-                              		lv_ownedArguments_2_0, 
+                              		lv_ownedArguments_2_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -20071,9 +20071,9 @@
                     	    // InternalOCLstdlib.g:6985:3: lv_ownedArguments_3_0= ruleNavigatingCommaArgCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_38);
                     	    lv_ownedArguments_3_0=ruleNavigatingCommaArgCS();
@@ -20086,12 +20086,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedArguments",
-                    	              		lv_ownedArguments_3_0, 
+                    	              		lv_ownedArguments_3_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -20123,9 +20123,9 @@
                             // InternalOCLstdlib.g:7003:3: lv_ownedArguments_4_0= ruleNavigatingSemiArgCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingSemiArgCSParserRuleCall_2_2_0_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_39);
                             lv_ownedArguments_4_0=ruleNavigatingSemiArgCS();
@@ -20138,12 +20138,12 @@
                               	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                               	        }
                                      		add(
-                                     			current, 
+                                     			current,
                                      			"ownedArguments",
-                                      		lv_ownedArguments_4_0, 
+                                      		lv_ownedArguments_4_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingSemiArgCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -20170,9 +20170,9 @@
                             	    // InternalOCLstdlib.g:7021:3: lv_ownedArguments_5_0= ruleNavigatingCommaArgCS
                             	    {
                             	    if ( state.backtracking==0 ) {
-                            	       
-                            	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0()); 
-                            	      	    
+
+                            	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_2_1_0());
+
                             	    }
                             	    pushFollow(FollowSets000.FOLLOW_39);
                             	    lv_ownedArguments_5_0=ruleNavigatingCommaArgCS();
@@ -20185,12 +20185,12 @@
                             	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                             	      	        }
                             	             		add(
-                            	             			current, 
+                            	             			current,
                             	             			"ownedArguments",
-                            	              		lv_ownedArguments_5_0, 
+                            	              		lv_ownedArguments_5_0,
                             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
                             	      	        afterParserOrEnumRuleCall();
-                            	      	    
+
                             	    }
 
                             	    }
@@ -20232,9 +20232,9 @@
                     	    // InternalOCLstdlib.g:7039:3: lv_ownedArguments_6_0= ruleNavigatingBarArgCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingBarArgCSParserRuleCall_2_3_0_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_39);
                     	    lv_ownedArguments_6_0=ruleNavigatingBarArgCS();
@@ -20247,12 +20247,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedArguments",
-                    	              		lv_ownedArguments_6_0, 
+                    	              		lv_ownedArguments_6_0,
                     	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingBarArgCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -20279,9 +20279,9 @@
                     	    	    // InternalOCLstdlib.g:7057:3: lv_ownedArguments_7_0= ruleNavigatingCommaArgCS
                     	    	    {
                     	    	    if ( state.backtracking==0 ) {
-                    	    	       
-                    	    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0()); 
-                    	    	      	    
+
+                    	    	      	        newCompositeNode(grammarAccess.getRoundBracketedClauseCSAccess().getOwnedArgumentsNavigatingCommaArgCSParserRuleCall_2_3_1_0());
+
                     	    	    }
                     	    	    pushFollow(FollowSets000.FOLLOW_39);
                     	    	    lv_ownedArguments_7_0=ruleNavigatingCommaArgCS();
@@ -20294,12 +20294,12 @@
                     	    	      	            current = createModelElementForParent(grammarAccess.getRoundBracketedClauseCSRule());
                     	    	      	        }
                     	    	             		add(
-                    	    	             			current, 
+                    	    	             			current,
                     	    	             			"ownedArguments",
-                    	    	              		lv_ownedArguments_7_0, 
+                    	    	              		lv_ownedArguments_7_0,
                     	    	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingCommaArgCS");
                     	    	      	        afterParserOrEnumRuleCall();
-                    	    	      	    
+
                     	    	    }
 
                     	    	    }
@@ -20332,7 +20332,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_8, grammarAccess.getRoundBracketedClauseCSAccess().getRightParenthesisKeyword_3());
-                  
+
             }
 
             }
@@ -20341,14 +20341,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20369,7 +20369,7 @@
             // InternalOCLstdlib.g:7087:2: iv_ruleSquareBracketedClauseCS= ruleSquareBracketedClauseCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getSquareBracketedClauseCSRule()); 
+               newCompositeNode(grammarAccess.getSquareBracketedClauseCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleSquareBracketedClauseCS=ruleSquareBracketedClauseCS();
@@ -20377,18 +20377,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleSquareBracketedClauseCS; 
+               current =iv_ruleSquareBracketedClauseCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20409,8 +20409,8 @@
         EObject lv_ownedTerms_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:7097:28: ( (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' ) )
             // InternalOCLstdlib.g:7098:1: (otherlv_0= '[' ( (lv_ownedTerms_1_0= ruleExpCS ) ) (otherlv_2= ',' ( (lv_ownedTerms_3_0= ruleExpCS ) ) )* otherlv_4= ']' )
@@ -20422,7 +20422,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getSquareBracketedClauseCSAccess().getLeftSquareBracketKeyword_0());
-                  
+
             }
             // InternalOCLstdlib.g:7102:1: ( (lv_ownedTerms_1_0= ruleExpCS ) )
             // InternalOCLstdlib.g:7103:1: (lv_ownedTerms_1_0= ruleExpCS )
@@ -20431,9 +20431,9 @@
             // InternalOCLstdlib.g:7104:3: lv_ownedTerms_1_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_81);
             lv_ownedTerms_1_0=ruleExpCS();
@@ -20446,12 +20446,12 @@
               	            current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedTerms",
-                      		lv_ownedTerms_1_0, 
+                      		lv_ownedTerms_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -20478,7 +20478,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_2, grammarAccess.getSquareBracketedClauseCSAccess().getCommaKeyword_2_0());
-            	          
+
             	    }
             	    // InternalOCLstdlib.g:7124:1: ( (lv_ownedTerms_3_0= ruleExpCS ) )
             	    // InternalOCLstdlib.g:7125:1: (lv_ownedTerms_3_0= ruleExpCS )
@@ -20487,9 +20487,9 @@
             	    // InternalOCLstdlib.g:7126:3: lv_ownedTerms_3_0= ruleExpCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getSquareBracketedClauseCSAccess().getOwnedTermsExpCSParserRuleCall_2_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_81);
             	    lv_ownedTerms_3_0=ruleExpCS();
@@ -20502,12 +20502,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getSquareBracketedClauseCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedTerms",
-            	              		lv_ownedTerms_3_0, 
+            	              		lv_ownedTerms_3_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -20528,7 +20528,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getSquareBracketedClauseCSAccess().getRightSquareBracketKeyword_3());
-                  
+
             }
 
             }
@@ -20537,14 +20537,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20565,7 +20565,7 @@
             // InternalOCLstdlib.g:7156:2: iv_ruleNavigatingArgCS= ruleNavigatingArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingArgCS=ruleNavigatingArgCS();
@@ -20573,18 +20573,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingArgCS; 
+               current =iv_ruleNavigatingArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20612,8 +20612,8 @@
         EObject lv_ownedType_8_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:7166:28: ( ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= 'in' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ) ) )
             // InternalOCLstdlib.g:7167:1: ( ( ( (lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS ) ) ( (otherlv_1= ':' ( (lv_ownedType_2_0= ruleTypeExpCS ) ) (otherlv_3= '=' ( (lv_ownedInitExpression_4_0= ruleExpCS ) ) )? ) | (otherlv_5= 'in' ( (lv_ownedInitExpression_6_0= ruleExpCS ) ) ) )? ) | (otherlv_7= ':' ( (lv_ownedType_8_0= ruleTypeExpCS ) ) ) )
@@ -20649,9 +20649,9 @@
                     // InternalOCLstdlib.g:7169:3: lv_ownedNameExpression_0_0= ruleNavigatingArgExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_0_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_82);
                     lv_ownedNameExpression_0_0=ruleNavigatingArgExpCS();
@@ -20664,12 +20664,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedNameExpression",
-                              		lv_ownedNameExpression_0_0, 
+                              		lv_ownedNameExpression_0_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -20698,7 +20698,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_1, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_0_1_0_0());
-                                  
+
                             }
                             // InternalOCLstdlib.g:7189:1: ( (lv_ownedType_2_0= ruleTypeExpCS ) )
                             // InternalOCLstdlib.g:7190:1: (lv_ownedType_2_0= ruleTypeExpCS )
@@ -20707,9 +20707,9 @@
                             // InternalOCLstdlib.g:7191:3: lv_ownedType_2_0= ruleTypeExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_0_1_0_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_83);
                             lv_ownedType_2_0=ruleTypeExpCS();
@@ -20722,12 +20722,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedType",
-                                      		lv_ownedType_2_0, 
+                                      		lv_ownedType_2_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -20750,7 +20750,7 @@
                                     if ( state.backtracking==0 ) {
 
                                           	newLeafNode(otherlv_3, grammarAccess.getNavigatingArgCSAccess().getEqualsSignKeyword_0_1_0_2_0());
-                                          
+
                                     }
                                     // InternalOCLstdlib.g:7211:1: ( (lv_ownedInitExpression_4_0= ruleExpCS ) )
                                     // InternalOCLstdlib.g:7212:1: (lv_ownedInitExpression_4_0= ruleExpCS )
@@ -20759,9 +20759,9 @@
                                     // InternalOCLstdlib.g:7213:3: lv_ownedInitExpression_4_0= ruleExpCS
                                     {
                                     if ( state.backtracking==0 ) {
-                                       
-                                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0()); 
-                                      	    
+
+                                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_0_2_1_0());
+
                                     }
                                     pushFollow(FollowSets000.FOLLOW_2);
                                     lv_ownedInitExpression_4_0=ruleExpCS();
@@ -20774,12 +20774,12 @@
                                       	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                                       	        }
                                              		set(
-                                             			current, 
+                                             			current,
                                              			"ownedInitExpression",
-                                              		lv_ownedInitExpression_4_0, 
+                                              		lv_ownedInitExpression_4_0,
                                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                                       	        afterParserOrEnumRuleCall();
-                                      	    
+
                                     }
 
                                     }
@@ -20809,7 +20809,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_5, grammarAccess.getNavigatingArgCSAccess().getInKeyword_0_1_1_0());
-                                  
+
                             }
                             // InternalOCLstdlib.g:7234:1: ( (lv_ownedInitExpression_6_0= ruleExpCS ) )
                             // InternalOCLstdlib.g:7235:1: (lv_ownedInitExpression_6_0= ruleExpCS )
@@ -20818,9 +20818,9 @@
                             // InternalOCLstdlib.g:7236:3: lv_ownedInitExpression_6_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_0_1_1_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_6_0=ruleExpCS();
@@ -20833,12 +20833,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_6_0, 
+                                      		lv_ownedInitExpression_6_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -20871,7 +20871,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_7, grammarAccess.getNavigatingArgCSAccess().getColonKeyword_1_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:7257:1: ( (lv_ownedType_8_0= ruleTypeExpCS ) )
                     // InternalOCLstdlib.g:7258:1: (lv_ownedType_8_0= ruleTypeExpCS )
@@ -20880,9 +20880,9 @@
                     // InternalOCLstdlib.g:7259:3: lv_ownedType_8_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedType_8_0=ruleTypeExpCS();
@@ -20895,12 +20895,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_8_0, 
+                              		lv_ownedType_8_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -20921,14 +20921,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20949,7 +20949,7 @@
             // InternalOCLstdlib.g:7285:2: iv_ruleNavigatingBarArgCS= ruleNavigatingBarArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingBarArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingBarArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingBarArgCS=ruleNavigatingBarArgCS();
@@ -20957,18 +20957,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingBarArgCS; 
+               current =iv_ruleNavigatingBarArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -20991,8 +20991,8 @@
         EObject lv_ownedInitExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:7295:28: ( ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) )
             // InternalOCLstdlib.g:7296:1: ( ( (lv_prefix_0_0= '|' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? )
@@ -21010,7 +21010,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingBarArgCSAccess().getPrefixVerticalLineKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -21018,7 +21018,7 @@
               	            current = createModelElement(grammarAccess.getNavigatingBarArgCSRule());
               	        }
                      		setWithLastConsumed(current, "prefix", lv_prefix_0_0, "|");
-              	    
+
             }
 
             }
@@ -21033,9 +21033,9 @@
             // InternalOCLstdlib.g:7313:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_84);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
@@ -21048,12 +21048,12 @@
               	            current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedNameExpression",
-                      		lv_ownedNameExpression_1_0, 
+                      		lv_ownedNameExpression_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -21076,7 +21076,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingBarArgCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:7333:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalOCLstdlib.g:7334:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -21085,9 +21085,9 @@
                     // InternalOCLstdlib.g:7335:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_83);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -21100,12 +21100,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -21128,7 +21128,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getNavigatingBarArgCSAccess().getEqualsSignKeyword_2_2_0());
-                                  
+
                             }
                             // InternalOCLstdlib.g:7355:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
                             // InternalOCLstdlib.g:7356:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -21137,9 +21137,9 @@
                             // InternalOCLstdlib.g:7357:3: lv_ownedInitExpression_5_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingBarArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -21152,12 +21152,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingBarArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_5_0, 
+                                      		lv_ownedInitExpression_5_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -21184,14 +21184,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21212,7 +21212,7 @@
             // InternalOCLstdlib.g:7383:2: iv_ruleNavigatingCommaArgCS= ruleNavigatingCommaArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingCommaArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingCommaArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingCommaArgCS=ruleNavigatingCommaArgCS();
@@ -21220,18 +21220,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingCommaArgCS; 
+               current =iv_ruleNavigatingCommaArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21257,8 +21257,8 @@
         EObject lv_ownedInitExpression_7_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:7393:28: ( ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= 'in' ( (lv_ownedInitExpression_7_0= ruleExpCS ) ) ) )? ) )
             // InternalOCLstdlib.g:7394:1: ( ( (lv_prefix_0_0= ',' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) ( (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? ) | (otherlv_6= 'in' ( (lv_ownedInitExpression_7_0= ruleExpCS ) ) ) )? )
@@ -21276,7 +21276,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingCommaArgCSAccess().getPrefixCommaKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -21284,7 +21284,7 @@
               	            current = createModelElement(grammarAccess.getNavigatingCommaArgCSRule());
               	        }
                      		setWithLastConsumed(current, "prefix", lv_prefix_0_0, ",");
-              	    
+
             }
 
             }
@@ -21299,9 +21299,9 @@
             // InternalOCLstdlib.g:7411:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_82);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
@@ -21314,12 +21314,12 @@
               	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedNameExpression",
-                      		lv_ownedNameExpression_1_0, 
+                      		lv_ownedNameExpression_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -21348,7 +21348,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingCommaArgCSAccess().getColonKeyword_2_0_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:7431:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalOCLstdlib.g:7432:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -21357,9 +21357,9 @@
                     // InternalOCLstdlib.g:7433:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_0_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_83);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -21372,12 +21372,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -21400,7 +21400,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getNavigatingCommaArgCSAccess().getEqualsSignKeyword_2_0_2_0());
-                                  
+
                             }
                             // InternalOCLstdlib.g:7453:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
                             // InternalOCLstdlib.g:7454:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -21409,9 +21409,9 @@
                             // InternalOCLstdlib.g:7455:3: lv_ownedInitExpression_5_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_0_2_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -21424,12 +21424,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_5_0, 
+                                      		lv_ownedInitExpression_5_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -21459,7 +21459,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_6, grammarAccess.getNavigatingCommaArgCSAccess().getInKeyword_2_1_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:7476:1: ( (lv_ownedInitExpression_7_0= ruleExpCS ) )
                     // InternalOCLstdlib.g:7477:1: (lv_ownedInitExpression_7_0= ruleExpCS )
@@ -21468,9 +21468,9 @@
                     // InternalOCLstdlib.g:7478:3: lv_ownedInitExpression_7_0= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingCommaArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedInitExpression_7_0=ruleExpCS();
@@ -21483,12 +21483,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingCommaArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedInitExpression",
-                              		lv_ownedInitExpression_7_0, 
+                              		lv_ownedInitExpression_7_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -21512,14 +21512,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21540,7 +21540,7 @@
             // InternalOCLstdlib.g:7504:2: iv_ruleNavigatingSemiArgCS= ruleNavigatingSemiArgCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingSemiArgCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingSemiArgCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingSemiArgCS=ruleNavigatingSemiArgCS();
@@ -21548,18 +21548,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingSemiArgCS; 
+               current =iv_ruleNavigatingSemiArgCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21582,8 +21582,8 @@
         EObject lv_ownedInitExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:7514:28: ( ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? ) )
             // InternalOCLstdlib.g:7515:1: ( ( (lv_prefix_0_0= ';' ) ) ( (lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS ) ) (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) (otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )? )? )
@@ -21601,7 +21601,7 @@
             if ( state.backtracking==0 ) {
 
                       newLeafNode(lv_prefix_0_0, grammarAccess.getNavigatingSemiArgCSAccess().getPrefixSemicolonKeyword_0_0());
-                  
+
             }
             if ( state.backtracking==0 ) {
 
@@ -21609,7 +21609,7 @@
               	            current = createModelElement(grammarAccess.getNavigatingSemiArgCSRule());
               	        }
                      		setWithLastConsumed(current, "prefix", lv_prefix_0_0, ";");
-              	    
+
             }
 
             }
@@ -21624,9 +21624,9 @@
             // InternalOCLstdlib.g:7532:3: lv_ownedNameExpression_1_0= ruleNavigatingArgExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedNameExpressionNavigatingArgExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_84);
             lv_ownedNameExpression_1_0=ruleNavigatingArgExpCS();
@@ -21639,12 +21639,12 @@
               	            current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedNameExpression",
-                      		lv_ownedNameExpression_1_0, 
+                      		lv_ownedNameExpression_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.NavigatingArgExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -21667,7 +21667,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getNavigatingSemiArgCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:7552:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalOCLstdlib.g:7553:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -21676,9 +21676,9 @@
                     // InternalOCLstdlib.g:7554:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_83);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -21691,12 +21691,12 @@
                       	            current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -21719,7 +21719,7 @@
                             if ( state.backtracking==0 ) {
 
                                   	newLeafNode(otherlv_4, grammarAccess.getNavigatingSemiArgCSAccess().getEqualsSignKeyword_2_2_0());
-                                  
+
                             }
                             // InternalOCLstdlib.g:7574:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
                             // InternalOCLstdlib.g:7575:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -21728,9 +21728,9 @@
                             // InternalOCLstdlib.g:7576:3: lv_ownedInitExpression_5_0= ruleExpCS
                             {
                             if ( state.backtracking==0 ) {
-                               
-                              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0()); 
-                              	    
+
+                              	        newCompositeNode(grammarAccess.getNavigatingSemiArgCSAccess().getOwnedInitExpressionExpCSParserRuleCall_2_2_1_0());
+
                             }
                             pushFollow(FollowSets000.FOLLOW_2);
                             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -21743,12 +21743,12 @@
                               	            current = createModelElementForParent(grammarAccess.getNavigatingSemiArgCSRule());
                               	        }
                                      		set(
-                                     			current, 
+                                     			current,
                                      			"ownedInitExpression",
-                                      		lv_ownedInitExpression_5_0, 
+                                      		lv_ownedInitExpression_5_0,
                                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                               	        afterParserOrEnumRuleCall();
-                              	    
+
                             }
 
                             }
@@ -21775,14 +21775,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21803,7 +21803,7 @@
             // InternalOCLstdlib.g:7602:2: iv_ruleNavigatingArgExpCS= ruleNavigatingArgExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNavigatingArgExpCSRule()); 
+               newCompositeNode(grammarAccess.getNavigatingArgExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNavigatingArgExpCS=ruleNavigatingArgExpCS();
@@ -21811,18 +21811,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNavigatingArgExpCS; 
+               current =iv_ruleNavigatingArgExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21838,21 +21838,21 @@
         EObject this_ExpCS_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:7612:28: (this_ExpCS_0= ruleExpCS )
             // InternalOCLstdlib.g:7614:2: this_ExpCS_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
-               
-                      newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall()); 
-                  
+
+                      newCompositeNode(grammarAccess.getNavigatingArgExpCSAccess().getExpCSParserRuleCall());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             this_ExpCS_0=ruleExpCS();
@@ -21860,23 +21860,23 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
-                      current = this_ExpCS_0; 
+
+                      current = this_ExpCS_0;
                       afterParserOrEnumRuleCall();
-                  
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21897,7 +21897,7 @@
             // InternalOCLstdlib.g:7635:2: iv_ruleIfExpCS= ruleIfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIfExpCSRule()); 
+               newCompositeNode(grammarAccess.getIfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleIfExpCS=ruleIfExpCS();
@@ -21905,18 +21905,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleIfExpCS; 
+               current =iv_ruleIfExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -21944,8 +21944,8 @@
         EObject lv_ownedElseExpression_6_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:7645:28: ( (otherlv_0= 'if' ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* otherlv_5= 'else' ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) otherlv_7= 'endif' ) )
             // InternalOCLstdlib.g:7646:1: (otherlv_0= 'if' ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ( (lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS ) )* otherlv_5= 'else' ( (lv_ownedElseExpression_6_0= ruleExpCS ) ) otherlv_7= 'endif' )
@@ -21957,7 +21957,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getIfExpCSAccess().getIfKeyword_0());
-                  
+
             }
             // InternalOCLstdlib.g:7650:1: ( ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) ) )
             // InternalOCLstdlib.g:7651:1: ( (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS ) )
@@ -21973,9 +21973,9 @@
                     // InternalOCLstdlib.g:7653:3: lv_ownedCondition_1_1= ruleExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_85);
                     lv_ownedCondition_1_1=ruleExpCS();
@@ -21988,12 +21988,12 @@
                       	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCondition",
-                              		lv_ownedCondition_1_1, 
+                              		lv_ownedCondition_1_1,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -22002,9 +22002,9 @@
                     // InternalOCLstdlib.g:7668:8: lv_ownedCondition_1_2= rulePatternExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedConditionPatternExpCSParserRuleCall_1_0_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_85);
                     lv_ownedCondition_1_2=rulePatternExpCS();
@@ -22017,12 +22017,12 @@
                       	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedCondition",
-                              		lv_ownedCondition_1_2, 
+                              		lv_ownedCondition_1_2,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.PatternExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -22040,7 +22040,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getIfExpCSAccess().getThenKeyword_2());
-                  
+
             }
             // InternalOCLstdlib.g:7690:1: ( (lv_ownedThenExpression_3_0= ruleExpCS ) )
             // InternalOCLstdlib.g:7691:1: (lv_ownedThenExpression_3_0= ruleExpCS )
@@ -22049,9 +22049,9 @@
             // InternalOCLstdlib.g:7692:3: lv_ownedThenExpression_3_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_86);
             lv_ownedThenExpression_3_0=ruleExpCS();
@@ -22064,12 +22064,12 @@
               	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedThenExpression",
-                      		lv_ownedThenExpression_3_0, 
+                      		lv_ownedThenExpression_3_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -22096,9 +22096,9 @@
             	    // InternalOCLstdlib.g:7710:3: lv_ownedIfThenExpressions_4_0= ruleElseIfThenExpCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedIfThenExpressionsElseIfThenExpCSParserRuleCall_4_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_86);
             	    lv_ownedIfThenExpressions_4_0=ruleElseIfThenExpCS();
@@ -22111,12 +22111,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedIfThenExpressions",
-            	              		lv_ownedIfThenExpressions_4_0, 
+            	              		lv_ownedIfThenExpressions_4_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ElseIfThenExpCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -22134,7 +22134,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getIfExpCSAccess().getElseKeyword_5());
-                  
+
             }
             // InternalOCLstdlib.g:7730:1: ( (lv_ownedElseExpression_6_0= ruleExpCS ) )
             // InternalOCLstdlib.g:7731:1: (lv_ownedElseExpression_6_0= ruleExpCS )
@@ -22143,9 +22143,9 @@
             // InternalOCLstdlib.g:7732:3: lv_ownedElseExpression_6_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getIfExpCSAccess().getOwnedElseExpressionExpCSParserRuleCall_6_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_87);
             lv_ownedElseExpression_6_0=ruleExpCS();
@@ -22158,12 +22158,12 @@
               	            current = createModelElementForParent(grammarAccess.getIfExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedElseExpression",
-                      		lv_ownedElseExpression_6_0, 
+                      		lv_ownedElseExpression_6_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -22175,7 +22175,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_7, grammarAccess.getIfExpCSAccess().getEndifKeyword_7());
-                  
+
             }
 
             }
@@ -22184,14 +22184,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22212,7 +22212,7 @@
             // InternalOCLstdlib.g:7762:2: iv_ruleElseIfThenExpCS= ruleElseIfThenExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getElseIfThenExpCSRule()); 
+               newCompositeNode(grammarAccess.getElseIfThenExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleElseIfThenExpCS=ruleElseIfThenExpCS();
@@ -22220,18 +22220,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleElseIfThenExpCS; 
+               current =iv_ruleElseIfThenExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22251,8 +22251,8 @@
         EObject lv_ownedThenExpression_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:7772:28: ( (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) ) )
             // InternalOCLstdlib.g:7773:1: (otherlv_0= 'elseif' ( (lv_ownedCondition_1_0= ruleExpCS ) ) otherlv_2= 'then' ( (lv_ownedThenExpression_3_0= ruleExpCS ) ) )
@@ -22264,7 +22264,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getElseIfThenExpCSAccess().getElseifKeyword_0());
-                  
+
             }
             // InternalOCLstdlib.g:7777:1: ( (lv_ownedCondition_1_0= ruleExpCS ) )
             // InternalOCLstdlib.g:7778:1: (lv_ownedCondition_1_0= ruleExpCS )
@@ -22273,9 +22273,9 @@
             // InternalOCLstdlib.g:7779:3: lv_ownedCondition_1_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedConditionExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_85);
             lv_ownedCondition_1_0=ruleExpCS();
@@ -22288,12 +22288,12 @@
               	            current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedCondition",
-                      		lv_ownedCondition_1_0, 
+                      		lv_ownedCondition_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -22305,7 +22305,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getElseIfThenExpCSAccess().getThenKeyword_2());
-                  
+
             }
             // InternalOCLstdlib.g:7799:1: ( (lv_ownedThenExpression_3_0= ruleExpCS ) )
             // InternalOCLstdlib.g:7800:1: (lv_ownedThenExpression_3_0= ruleExpCS )
@@ -22314,9 +22314,9 @@
             // InternalOCLstdlib.g:7801:3: lv_ownedThenExpression_3_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getElseIfThenExpCSAccess().getOwnedThenExpressionExpCSParserRuleCall_3_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedThenExpression_3_0=ruleExpCS();
@@ -22329,12 +22329,12 @@
               	            current = createModelElementForParent(grammarAccess.getElseIfThenExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedThenExpression",
-                      		lv_ownedThenExpression_3_0, 
+                      		lv_ownedThenExpression_3_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -22349,14 +22349,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22377,7 +22377,7 @@
             // InternalOCLstdlib.g:7827:2: iv_ruleLetExpCS= ruleLetExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLetExpCSRule()); 
+               newCompositeNode(grammarAccess.getLetExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLetExpCS=ruleLetExpCS();
@@ -22385,18 +22385,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLetExpCS; 
+               current =iv_ruleLetExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22419,8 +22419,8 @@
         EObject lv_ownedInExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:7837:28: ( (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) ) )
             // InternalOCLstdlib.g:7838:1: (otherlv_0= 'let' ( (lv_ownedVariables_1_0= ruleLetVariableCS ) ) (otherlv_2= ',' ( (lv_ownedVariables_3_0= ruleLetVariableCS ) ) )* otherlv_4= 'in' ( (lv_ownedInExpression_5_0= ruleExpCS ) ) )
@@ -22432,7 +22432,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getLetExpCSAccess().getLetKeyword_0());
-                  
+
             }
             // InternalOCLstdlib.g:7842:1: ( (lv_ownedVariables_1_0= ruleLetVariableCS ) )
             // InternalOCLstdlib.g:7843:1: (lv_ownedVariables_1_0= ruleLetVariableCS )
@@ -22441,9 +22441,9 @@
             // InternalOCLstdlib.g:7844:3: lv_ownedVariables_1_0= ruleLetVariableCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_88);
             lv_ownedVariables_1_0=ruleLetVariableCS();
@@ -22456,12 +22456,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetExpCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedVariables",
-                      		lv_ownedVariables_1_0, 
+                      		lv_ownedVariables_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -22488,7 +22488,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_2, grammarAccess.getLetExpCSAccess().getCommaKeyword_2_0());
-            	          
+
             	    }
             	    // InternalOCLstdlib.g:7864:1: ( (lv_ownedVariables_3_0= ruleLetVariableCS ) )
             	    // InternalOCLstdlib.g:7865:1: (lv_ownedVariables_3_0= ruleLetVariableCS )
@@ -22497,9 +22497,9 @@
             	    // InternalOCLstdlib.g:7866:3: lv_ownedVariables_3_0= ruleLetVariableCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedVariablesLetVariableCSParserRuleCall_2_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_88);
             	    lv_ownedVariables_3_0=ruleLetVariableCS();
@@ -22512,12 +22512,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getLetExpCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedVariables",
-            	              		lv_ownedVariables_3_0, 
+            	              		lv_ownedVariables_3_0,
             	              		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.LetVariableCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -22538,7 +22538,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getLetExpCSAccess().getInKeyword_3());
-                  
+
             }
             // InternalOCLstdlib.g:7886:1: ( (lv_ownedInExpression_5_0= ruleExpCS ) )
             // InternalOCLstdlib.g:7887:1: (lv_ownedInExpression_5_0= ruleExpCS )
@@ -22547,9 +22547,9 @@
             // InternalOCLstdlib.g:7888:3: lv_ownedInExpression_5_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetExpCSAccess().getOwnedInExpressionExpCSParserRuleCall_4_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedInExpression_5_0=ruleExpCS();
@@ -22562,12 +22562,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedInExpression",
-                      		lv_ownedInExpression_5_0, 
+                      		lv_ownedInExpression_5_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -22582,14 +22582,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22610,7 +22610,7 @@
             // InternalOCLstdlib.g:7914:2: iv_ruleLetVariableCS= ruleLetVariableCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLetVariableCSRule()); 
+               newCompositeNode(grammarAccess.getLetVariableCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLetVariableCS=ruleLetVariableCS();
@@ -22618,18 +22618,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLetVariableCS; 
+               current =iv_ruleLetVariableCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22653,8 +22653,8 @@
         EObject lv_ownedInitExpression_5_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:7924:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) ) )
             // InternalOCLstdlib.g:7925:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) ( (lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS ) )? (otherlv_2= ':' ( (lv_ownedType_3_0= ruleTypeExpCS ) ) )? otherlv_4= '=' ( (lv_ownedInitExpression_5_0= ruleExpCS ) ) )
@@ -22669,9 +22669,9 @@
             // InternalOCLstdlib.g:7927:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_89);
             lv_name_0_0=ruleUnrestrictedName();
@@ -22684,12 +22684,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -22712,9 +22712,9 @@
                     // InternalOCLstdlib.g:7945:3: lv_ownedRoundBracketedClause_1_0= ruleRoundBracketedClauseCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedRoundBracketedClauseRoundBracketedClauseCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_71);
                     lv_ownedRoundBracketedClause_1_0=ruleRoundBracketedClauseCS();
@@ -22727,12 +22727,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedRoundBracketedClause",
-                              		lv_ownedRoundBracketedClause_1_0, 
+                              		lv_ownedRoundBracketedClause_1_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.RoundBracketedClauseCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -22758,7 +22758,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getLetVariableCSAccess().getColonKeyword_2_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:7965:1: ( (lv_ownedType_3_0= ruleTypeExpCS ) )
                     // InternalOCLstdlib.g:7966:1: (lv_ownedType_3_0= ruleTypeExpCS )
@@ -22767,9 +22767,9 @@
                     // InternalOCLstdlib.g:7967:3: lv_ownedType_3_0= ruleTypeExpCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedTypeTypeExpCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_24);
                     lv_ownedType_3_0=ruleTypeExpCS();
@@ -22782,12 +22782,12 @@
                       	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedType",
-                              		lv_ownedType_3_0, 
+                              		lv_ownedType_3_0,
                               		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.TypeExpCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -22805,7 +22805,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getLetVariableCSAccess().getEqualsSignKeyword_3());
-                  
+
             }
             // InternalOCLstdlib.g:7987:1: ( (lv_ownedInitExpression_5_0= ruleExpCS ) )
             // InternalOCLstdlib.g:7988:1: (lv_ownedInitExpression_5_0= ruleExpCS )
@@ -22814,9 +22814,9 @@
             // InternalOCLstdlib.g:7989:3: lv_ownedInitExpression_5_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getLetVariableCSAccess().getOwnedInitExpressionExpCSParserRuleCall_4_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedInitExpression_5_0=ruleExpCS();
@@ -22829,12 +22829,12 @@
               	            current = createModelElementForParent(grammarAccess.getLetVariableCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedInitExpression",
-                      		lv_ownedInitExpression_5_0, 
+                      		lv_ownedInitExpression_5_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -22849,14 +22849,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22877,7 +22877,7 @@
             // InternalOCLstdlib.g:8015:2: iv_ruleNestedExpCS= ruleNestedExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNestedExpCSRule()); 
+               newCompositeNode(grammarAccess.getNestedExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNestedExpCS=ruleNestedExpCS();
@@ -22885,18 +22885,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNestedExpCS; 
+               current =iv_ruleNestedExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -22914,8 +22914,8 @@
         EObject lv_ownedExpression_1_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8025:28: ( (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' ) )
             // InternalOCLstdlib.g:8026:1: (otherlv_0= '(' ( (lv_ownedExpression_1_0= ruleExpCS ) ) otherlv_2= ')' )
@@ -22927,7 +22927,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getNestedExpCSAccess().getLeftParenthesisKeyword_0());
-                  
+
             }
             // InternalOCLstdlib.g:8030:1: ( (lv_ownedExpression_1_0= ruleExpCS ) )
             // InternalOCLstdlib.g:8031:1: (lv_ownedExpression_1_0= ruleExpCS )
@@ -22936,9 +22936,9 @@
             // InternalOCLstdlib.g:8032:3: lv_ownedExpression_1_0= ruleExpCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNestedExpCSAccess().getOwnedExpressionExpCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_32);
             lv_ownedExpression_1_0=ruleExpCS();
@@ -22951,12 +22951,12 @@
               	            current = createModelElementForParent(grammarAccess.getNestedExpCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedExpression",
-                      		lv_ownedExpression_1_0, 
+                      		lv_ownedExpression_1_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.ExpCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -22968,7 +22968,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_2, grammarAccess.getNestedExpCSAccess().getRightParenthesisKeyword_2());
-                  
+
             }
 
             }
@@ -22977,14 +22977,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23005,7 +23005,7 @@
             // InternalOCLstdlib.g:8062:2: iv_ruleSelfExpCS= ruleSelfExpCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getSelfExpCSRule()); 
+               newCompositeNode(grammarAccess.getSelfExpCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleSelfExpCS=ruleSelfExpCS();
@@ -23013,18 +23013,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleSelfExpCS; 
+               current =iv_ruleSelfExpCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23039,8 +23039,8 @@
 
         Token otherlv_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8072:28: ( ( () otherlv_1= 'self' ) )
             // InternalOCLstdlib.g:8073:1: ( () otherlv_1= 'self' )
@@ -23049,19 +23049,19 @@
             // InternalOCLstdlib.g:8073:2: () otherlv_1= 'self'
             {
             // InternalOCLstdlib.g:8073:2: ()
-            // InternalOCLstdlib.g:8074:2: 
+            // InternalOCLstdlib.g:8074:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getSelfExpCSAccess().getSelfExpCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -23070,7 +23070,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getSelfExpCSAccess().getSelfKeyword_1());
-                  
+
             }
 
             }
@@ -23079,14 +23079,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23107,7 +23107,7 @@
             // InternalOCLstdlib.g:8096:2: iv_ruleMultiplicityBoundsCS= ruleMultiplicityBoundsCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityBoundsCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityBoundsCS=ruleMultiplicityBoundsCS();
@@ -23115,18 +23115,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityBoundsCS; 
+               current =iv_ruleMultiplicityBoundsCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23145,8 +23145,8 @@
         AntlrDatatypeRuleToken lv_upperBound_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8106:28: ( ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? ) )
             // InternalOCLstdlib.g:8107:1: ( ( (lv_lowerBound_0_0= ruleLOWER ) ) (otherlv_1= '..' ( (lv_upperBound_2_0= ruleUPPER ) ) )? )
@@ -23161,9 +23161,9 @@
             // InternalOCLstdlib.g:8109:3: lv_lowerBound_0_0= ruleLOWER
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getLowerBoundLOWERParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_67);
             lv_lowerBound_0_0=ruleLOWER();
@@ -23176,12 +23176,12 @@
               	            current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"lowerBound",
-                      		lv_lowerBound_0_0, 
+                      		lv_lowerBound_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.LOWER");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -23204,7 +23204,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getMultiplicityBoundsCSAccess().getFullStopFullStopKeyword_1_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:8129:1: ( (lv_upperBound_2_0= ruleUPPER ) )
                     // InternalOCLstdlib.g:8130:1: (lv_upperBound_2_0= ruleUPPER )
@@ -23213,9 +23213,9 @@
                     // InternalOCLstdlib.g:8131:3: lv_upperBound_2_0= ruleUPPER
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getMultiplicityBoundsCSAccess().getUpperBoundUPPERParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_upperBound_2_0=ruleUPPER();
@@ -23228,12 +23228,12 @@
                       	            current = createModelElementForParent(grammarAccess.getMultiplicityBoundsCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"upperBound",
-                              		lv_upperBound_2_0, 
+                              		lv_upperBound_2_0,
                               		"org.eclipse.ocl.xtext.base.Base.UPPER");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -23254,14 +23254,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23282,7 +23282,7 @@
             // InternalOCLstdlib.g:8157:2: iv_ruleMultiplicityCS= ruleMultiplicityCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityCS=ruleMultiplicityCS();
@@ -23290,18 +23290,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityCS; 
+               current =iv_ruleMultiplicityCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23323,8 +23323,8 @@
         EObject this_MultiplicityStringCS_2 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8167:28: ( (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' ) )
             // InternalOCLstdlib.g:8168:1: (otherlv_0= '[' (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS ) (otherlv_3= '|?' | ( (lv_isNullFree_4_0= '|1' ) ) )? otherlv_5= ']' )
@@ -23336,7 +23336,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getMultiplicityCSAccess().getLeftSquareBracketKeyword_0());
-                  
+
             }
             // InternalOCLstdlib.g:8172:1: (this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS | this_MultiplicityStringCS_2= ruleMultiplicityStringCS )
             int alt147=2;
@@ -23360,14 +23360,14 @@
                     // InternalOCLstdlib.g:8173:2: this_MultiplicityBoundsCS_1= ruleMultiplicityBoundsCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityBoundsCSParserRuleCall_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_92);
                     this_MultiplicityBoundsCS_1=ruleMultiplicityBoundsCS();
@@ -23375,10 +23375,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MultiplicityBoundsCS_1; 
+
+                              current = this_MultiplicityBoundsCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -23387,14 +23387,14 @@
                     // InternalOCLstdlib.g:8186:2: this_MultiplicityStringCS_2= ruleMultiplicityStringCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getMultiplicityCSAccess().getMultiplicityStringCSParserRuleCall_1_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_92);
                     this_MultiplicityStringCS_2=ruleMultiplicityStringCS();
@@ -23402,10 +23402,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_MultiplicityStringCS_2; 
+
+                              current = this_MultiplicityStringCS_2;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -23431,7 +23431,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_3, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
-                          
+
                     }
 
                     }
@@ -23449,7 +23449,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_isNullFree_4_0, grammarAccess.getMultiplicityCSAccess().getIsNullFree1Keyword_2_1_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -23457,7 +23457,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityCSRule());
                       	        }
                              		setWithLastConsumed(current, "isNullFree", true, "|1");
-                      	    
+
                     }
 
                     }
@@ -23475,7 +23475,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_5, grammarAccess.getMultiplicityCSAccess().getRightSquareBracketKeyword_3());
-                  
+
             }
 
             }
@@ -23484,14 +23484,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23512,7 +23512,7 @@
             // InternalOCLstdlib.g:8231:2: iv_ruleMultiplicityStringCS= ruleMultiplicityStringCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getMultiplicityStringCSRule()); 
+               newCompositeNode(grammarAccess.getMultiplicityStringCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleMultiplicityStringCS=ruleMultiplicityStringCS();
@@ -23520,18 +23520,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleMultiplicityStringCS; 
+               current =iv_ruleMultiplicityStringCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23548,8 +23548,8 @@
         Token lv_stringBounds_0_2=null;
         Token lv_stringBounds_0_3=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8241:28: ( ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) ) )
             // InternalOCLstdlib.g:8242:1: ( ( (lv_stringBounds_0_1= '*' | lv_stringBounds_0_2= '+' | lv_stringBounds_0_3= '?' ) ) )
@@ -23594,7 +23594,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_1, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsAsteriskKeyword_0_0());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -23602,7 +23602,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_1, null);
-                      	    
+
                     }
 
                     }
@@ -23614,7 +23614,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_2, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsPlusSignKeyword_0_1());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -23622,7 +23622,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_2, null);
-                      	    
+
                     }
 
                     }
@@ -23634,7 +23634,7 @@
                     if ( state.backtracking==0 ) {
 
                               newLeafNode(lv_stringBounds_0_3, grammarAccess.getMultiplicityStringCSAccess().getStringBoundsQuestionMarkKeyword_0_2());
-                          
+
                     }
                     if ( state.backtracking==0 ) {
 
@@ -23642,7 +23642,7 @@
                       	            current = createModelElement(grammarAccess.getMultiplicityStringCSRule());
                       	        }
                              		setWithLastConsumed(current, "stringBounds", lv_stringBounds_0_3, null);
-                      	    
+
                     }
 
                     }
@@ -23660,14 +23660,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23688,7 +23688,7 @@
             // InternalOCLstdlib.g:8294:2: iv_rulePathNameCS= rulePathNameCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getPathNameCSRule()); 
+               newCompositeNode(grammarAccess.getPathNameCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_rulePathNameCS=rulePathNameCS();
@@ -23696,18 +23696,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_rulePathNameCS; 
+               current =iv_rulePathNameCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23726,8 +23726,8 @@
         EObject lv_ownedPathElements_2_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8304:28: ( ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* ) )
             // InternalOCLstdlib.g:8305:1: ( ( (lv_ownedPathElements_0_0= ruleFirstPathElementCS ) ) (otherlv_1= '::' ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) ) )* )
@@ -23742,9 +23742,9 @@
             // InternalOCLstdlib.g:8307:3: lv_ownedPathElements_0_0= ruleFirstPathElementCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsFirstPathElementCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_6);
             lv_ownedPathElements_0_0=ruleFirstPathElementCS();
@@ -23757,12 +23757,12 @@
               	            current = createModelElementForParent(grammarAccess.getPathNameCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedPathElements",
-                      		lv_ownedPathElements_0_0, 
+                      		lv_ownedPathElements_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.FirstPathElementCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -23789,7 +23789,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getPathNameCSAccess().getColonColonKeyword_1_0());
-            	          
+
             	    }
             	    // InternalOCLstdlib.g:8327:1: ( (lv_ownedPathElements_2_0= ruleNextPathElementCS ) )
             	    // InternalOCLstdlib.g:8328:1: (lv_ownedPathElements_2_0= ruleNextPathElementCS )
@@ -23798,9 +23798,9 @@
             	    // InternalOCLstdlib.g:8329:3: lv_ownedPathElements_2_0= ruleNextPathElementCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getPathNameCSAccess().getOwnedPathElementsNextPathElementCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_6);
             	    lv_ownedPathElements_2_0=ruleNextPathElementCS();
@@ -23813,12 +23813,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getPathNameCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedPathElements",
-            	              		lv_ownedPathElements_2_0, 
+            	              		lv_ownedPathElements_2_0,
             	              		"org.eclipse.ocl.xtext.base.Base.NextPathElementCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -23842,14 +23842,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23870,7 +23870,7 @@
             // InternalOCLstdlib.g:8355:2: iv_ruleFirstPathElementCS= ruleFirstPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getFirstPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getFirstPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleFirstPathElementCS=ruleFirstPathElementCS();
@@ -23878,18 +23878,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleFirstPathElementCS; 
+               current =iv_ruleFirstPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23902,8 +23902,8 @@
     public final EObject ruleFirstPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8365:28: ( ( ( ruleUnrestrictedName ) ) )
             // InternalOCLstdlib.g:8366:1: ( ( ruleUnrestrictedName ) )
@@ -23915,21 +23915,21 @@
             // InternalOCLstdlib.g:8368:3: ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getFirstPathElementCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getFirstPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnrestrictedName();
@@ -23937,9 +23937,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -23951,14 +23951,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -23979,7 +23979,7 @@
             // InternalOCLstdlib.g:8394:2: iv_ruleNextPathElementCS= ruleNextPathElementCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNextPathElementCSRule()); 
+               newCompositeNode(grammarAccess.getNextPathElementCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNextPathElementCS=ruleNextPathElementCS();
@@ -23987,18 +23987,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNextPathElementCS; 
+               current =iv_ruleNextPathElementCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24011,8 +24011,8 @@
     public final EObject ruleNextPathElementCS() throws RecognitionException {
         EObject current = null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8404:28: ( ( ( ruleUnreservedName ) ) )
             // InternalOCLstdlib.g:8405:1: ( ( ruleUnreservedName ) )
@@ -24024,21 +24024,21 @@
             // InternalOCLstdlib.g:8407:3: ruleUnreservedName
             {
             if ( state.backtracking==0 ) {
-               
-              		  /* */ 
-              		
+
+              		  /* */
+
             }
             if ( state.backtracking==0 ) {
 
               			if (current==null) {
               	            current = createModelElement(grammarAccess.getNextPathElementCSRule());
               	        }
-                      
+
             }
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getNextPathElementCSAccess().getReferredElementNamedElementCrossReference_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             ruleUnreservedName();
@@ -24046,9 +24046,9 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               
+
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -24060,14 +24060,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24088,7 +24088,7 @@
             // InternalOCLstdlib.g:8433:2: iv_ruleTemplateBindingCS= ruleTemplateBindingCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTemplateBindingCSRule()); 
+               newCompositeNode(grammarAccess.getTemplateBindingCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTemplateBindingCS=ruleTemplateBindingCS();
@@ -24096,18 +24096,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTemplateBindingCS; 
+               current =iv_ruleTemplateBindingCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24128,8 +24128,8 @@
         EObject lv_ownedMultiplicity_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8443:28: ( ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? ) )
             // InternalOCLstdlib.g:8444:1: ( ( (lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS ) ) (otherlv_1= ',' ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) ) )* ( (lv_ownedMultiplicity_3_0= ruleMultiplicityCS ) )? )
@@ -24144,9 +24144,9 @@
             // InternalOCLstdlib.g:8446:3: lv_ownedSubstitutions_0_0= ruleTemplateParameterSubstitutionCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_94);
             lv_ownedSubstitutions_0_0=ruleTemplateParameterSubstitutionCS();
@@ -24159,12 +24159,12 @@
               	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedSubstitutions",
-                      		lv_ownedSubstitutions_0_0, 
+                      		lv_ownedSubstitutions_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -24191,7 +24191,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_1, grammarAccess.getTemplateBindingCSAccess().getCommaKeyword_1_0());
-            	          
+
             	    }
             	    // InternalOCLstdlib.g:8466:1: ( (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS ) )
             	    // InternalOCLstdlib.g:8467:1: (lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS )
@@ -24200,9 +24200,9 @@
             	    // InternalOCLstdlib.g:8468:3: lv_ownedSubstitutions_2_0= ruleTemplateParameterSubstitutionCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedSubstitutionsTemplateParameterSubstitutionCSParserRuleCall_1_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_94);
             	    lv_ownedSubstitutions_2_0=ruleTemplateParameterSubstitutionCS();
@@ -24215,12 +24215,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedSubstitutions",
-            	              		lv_ownedSubstitutions_2_0, 
+            	              		lv_ownedSubstitutions_2_0,
             	              		"org.eclipse.ocl.xtext.base.Base.TemplateParameterSubstitutionCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -24252,9 +24252,9 @@
                     // InternalOCLstdlib.g:8486:3: lv_ownedMultiplicity_3_0= ruleMultiplicityCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTemplateBindingCSAccess().getOwnedMultiplicityMultiplicityCSParserRuleCall_2_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedMultiplicity_3_0=ruleMultiplicityCS();
@@ -24267,12 +24267,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTemplateBindingCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedMultiplicity",
-                              		lv_ownedMultiplicity_3_0, 
+                              		lv_ownedMultiplicity_3_0,
                               		"org.eclipse.ocl.xtext.base.Base.MultiplicityCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -24290,14 +24290,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24318,7 +24318,7 @@
             // InternalOCLstdlib.g:8512:2: iv_ruleTemplateParameterSubstitutionCS= ruleTemplateParameterSubstitutionCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule()); 
+               newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTemplateParameterSubstitutionCS=ruleTemplateParameterSubstitutionCS();
@@ -24326,18 +24326,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTemplateParameterSubstitutionCS; 
+               current =iv_ruleTemplateParameterSubstitutionCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24353,8 +24353,8 @@
         EObject lv_ownedActualParameter_0_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8522:28: ( ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) ) )
             // InternalOCLstdlib.g:8523:1: ( (lv_ownedActualParameter_0_0= ruleTypeRefCS ) )
@@ -24366,9 +24366,9 @@
             // InternalOCLstdlib.g:8525:3: lv_ownedActualParameter_0_0= ruleTypeRefCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTemplateParameterSubstitutionCSAccess().getOwnedActualParameterTypeRefCSParserRuleCall_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_2);
             lv_ownedActualParameter_0_0=ruleTypeRefCS();
@@ -24381,12 +24381,12 @@
               	            current = createModelElementForParent(grammarAccess.getTemplateParameterSubstitutionCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"ownedActualParameter",
-                      		lv_ownedActualParameter_0_0, 
+                      		lv_ownedActualParameter_0_0,
                       		"org.eclipse.ocl.xtext.base.Base.TypeRefCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -24398,14 +24398,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24426,7 +24426,7 @@
             // InternalOCLstdlib.g:8551:2: iv_ruleTemplateSignatureCS= ruleTemplateSignatureCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTemplateSignatureCSRule()); 
+               newCompositeNode(grammarAccess.getTemplateSignatureCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTemplateSignatureCS=ruleTemplateSignatureCS();
@@ -24434,18 +24434,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTemplateSignatureCS; 
+               current =iv_ruleTemplateSignatureCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24466,8 +24466,8 @@
         EObject lv_ownedParameters_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8561:28: ( (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' ) )
             // InternalOCLstdlib.g:8562:1: (otherlv_0= '(' ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) ) (otherlv_2= ',' ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) ) )* otherlv_4= ')' )
@@ -24479,7 +24479,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_0, grammarAccess.getTemplateSignatureCSAccess().getLeftParenthesisKeyword_0());
-                  
+
             }
             // InternalOCLstdlib.g:8566:1: ( (lv_ownedParameters_1_0= ruleTypeParameterCS ) )
             // InternalOCLstdlib.g:8567:1: (lv_ownedParameters_1_0= ruleTypeParameterCS )
@@ -24488,9 +24488,9 @@
             // InternalOCLstdlib.g:8568:3: lv_ownedParameters_1_0= ruleTypeParameterCS
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_1_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_13);
             lv_ownedParameters_1_0=ruleTypeParameterCS();
@@ -24503,12 +24503,12 @@
               	            current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
               	        }
                      		add(
-                     			current, 
+                     			current,
                      			"ownedParameters",
-                      		lv_ownedParameters_1_0, 
+                      		lv_ownedParameters_1_0,
                       		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -24535,7 +24535,7 @@
             	    if ( state.backtracking==0 ) {
 
             	          	newLeafNode(otherlv_2, grammarAccess.getTemplateSignatureCSAccess().getCommaKeyword_2_0());
-            	          
+
             	    }
             	    // InternalOCLstdlib.g:8588:1: ( (lv_ownedParameters_3_0= ruleTypeParameterCS ) )
             	    // InternalOCLstdlib.g:8589:1: (lv_ownedParameters_3_0= ruleTypeParameterCS )
@@ -24544,9 +24544,9 @@
             	    // InternalOCLstdlib.g:8590:3: lv_ownedParameters_3_0= ruleTypeParameterCS
             	    {
             	    if ( state.backtracking==0 ) {
-            	       
-            	      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_2_1_0()); 
-            	      	    
+
+            	      	        newCompositeNode(grammarAccess.getTemplateSignatureCSAccess().getOwnedParametersTypeParameterCSParserRuleCall_2_1_0());
+
             	    }
             	    pushFollow(FollowSets000.FOLLOW_13);
             	    lv_ownedParameters_3_0=ruleTypeParameterCS();
@@ -24559,12 +24559,12 @@
             	      	            current = createModelElementForParent(grammarAccess.getTemplateSignatureCSRule());
             	      	        }
             	             		add(
-            	             			current, 
+            	             			current,
             	             			"ownedParameters",
-            	              		lv_ownedParameters_3_0, 
+            	              		lv_ownedParameters_3_0,
             	              		"org.eclipse.ocl.xtext.base.Base.TypeParameterCS");
             	      	        afterParserOrEnumRuleCall();
-            	      	    
+
             	    }
 
             	    }
@@ -24585,7 +24585,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_4, grammarAccess.getTemplateSignatureCSAccess().getRightParenthesisKeyword_3());
-                  
+
             }
 
             }
@@ -24594,14 +24594,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24622,7 +24622,7 @@
             // InternalOCLstdlib.g:8620:2: iv_ruleTypeParameterCS= ruleTypeParameterCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeParameterCSRule()); 
+               newCompositeNode(grammarAccess.getTypeParameterCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeParameterCS=ruleTypeParameterCS();
@@ -24630,18 +24630,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeParameterCS; 
+               current =iv_ruleTypeParameterCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24663,8 +24663,8 @@
         EObject lv_ownedExtends_4_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8630:28: ( ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? ) )
             // InternalOCLstdlib.g:8631:1: ( ( (lv_name_0_0= ruleUnrestrictedName ) ) (otherlv_1= 'extends' ( (lv_ownedExtends_2_0= ruleTypedRefCS ) ) (otherlv_3= '&&' ( (lv_ownedExtends_4_0= ruleTypedRefCS ) ) )* )? )
@@ -24679,9 +24679,9 @@
             // InternalOCLstdlib.g:8633:3: lv_name_0_0= ruleUnrestrictedName
             {
             if ( state.backtracking==0 ) {
-               
-              	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0()); 
-              	    
+
+              	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getNameUnrestrictedNameParserRuleCall_0_0());
+
             }
             pushFollow(FollowSets000.FOLLOW_95);
             lv_name_0_0=ruleUnrestrictedName();
@@ -24694,12 +24694,12 @@
               	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
               	        }
                      		set(
-                     			current, 
+                     			current,
                      			"name",
-                      		lv_name_0_0, 
+                      		lv_name_0_0,
                       		"org.eclipse.ocl.xtext.essentialocl.EssentialOCL.UnrestrictedName");
               	        afterParserOrEnumRuleCall();
-              	    
+
             }
 
             }
@@ -24722,7 +24722,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_1, grammarAccess.getTypeParameterCSAccess().getExtendsKeyword_1_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:8653:1: ( (lv_ownedExtends_2_0= ruleTypedRefCS ) )
                     // InternalOCLstdlib.g:8654:1: (lv_ownedExtends_2_0= ruleTypedRefCS )
@@ -24731,9 +24731,9 @@
                     // InternalOCLstdlib.g:8655:3: lv_ownedExtends_2_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_96);
                     lv_ownedExtends_2_0=ruleTypedRefCS();
@@ -24746,12 +24746,12 @@
                       	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
                       	        }
                              		add(
-                             			current, 
+                             			current,
                              			"ownedExtends",
-                              		lv_ownedExtends_2_0, 
+                              		lv_ownedExtends_2_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -24778,7 +24778,7 @@
                     	    if ( state.backtracking==0 ) {
 
                     	          	newLeafNode(otherlv_3, grammarAccess.getTypeParameterCSAccess().getAmpersandAmpersandKeyword_1_2_0());
-                    	          
+
                     	    }
                     	    // InternalOCLstdlib.g:8675:1: ( (lv_ownedExtends_4_0= ruleTypedRefCS ) )
                     	    // InternalOCLstdlib.g:8676:1: (lv_ownedExtends_4_0= ruleTypedRefCS )
@@ -24787,9 +24787,9 @@
                     	    // InternalOCLstdlib.g:8677:3: lv_ownedExtends_4_0= ruleTypedRefCS
                     	    {
                     	    if ( state.backtracking==0 ) {
-                    	       
-                    	      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0()); 
-                    	      	    
+
+                    	      	        newCompositeNode(grammarAccess.getTypeParameterCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_1_2_1_0());
+
                     	    }
                     	    pushFollow(FollowSets000.FOLLOW_96);
                     	    lv_ownedExtends_4_0=ruleTypedRefCS();
@@ -24802,12 +24802,12 @@
                     	      	            current = createModelElementForParent(grammarAccess.getTypeParameterCSRule());
                     	      	        }
                     	             		add(
-                    	             			current, 
+                    	             			current,
                     	             			"ownedExtends",
-                    	              		lv_ownedExtends_4_0, 
+                    	              		lv_ownedExtends_4_0,
                     	              		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedRefCS");
                     	      	        afterParserOrEnumRuleCall();
-                    	      	    
+
                     	    }
 
                     	    }
@@ -24837,14 +24837,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24865,7 +24865,7 @@
             // InternalOCLstdlib.g:8703:2: iv_ruleTypeRefCS= ruleTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleTypeRefCS=ruleTypeRefCS();
@@ -24873,18 +24873,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleTypeRefCS; 
+               current =iv_ruleTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -24902,8 +24902,8 @@
         EObject this_WildcardTypeRefCS_1 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8713:28: ( (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS ) )
             // InternalOCLstdlib.g:8714:1: (this_TypedRefCS_0= ruleTypedRefCS | this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS )
@@ -24930,14 +24930,14 @@
                     // InternalOCLstdlib.g:8715:2: this_TypedRefCS_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getTypedRefCSParserRuleCall_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_TypedRefCS_0=ruleTypedRefCS();
@@ -24945,10 +24945,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_TypedRefCS_0; 
+
+                              current = this_TypedRefCS_0;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -24957,14 +24957,14 @@
                     // InternalOCLstdlib.g:8728:2: this_WildcardTypeRefCS_1= ruleWildcardTypeRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	  /* */ 
-                      	
+
+                      	  /* */
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1()); 
-                          
+
+                              newCompositeNode(grammarAccess.getTypeRefCSAccess().getWildcardTypeRefCSParserRuleCall_1());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     this_WildcardTypeRefCS_1=ruleWildcardTypeRefCS();
@@ -24972,10 +24972,10 @@
                     state._fsp--;
                     if (state.failed) return current;
                     if ( state.backtracking==0 ) {
-                       
-                              current = this_WildcardTypeRefCS_1; 
+
+                              current = this_WildcardTypeRefCS_1;
                               afterParserOrEnumRuleCall();
-                          
+
                     }
 
                     }
@@ -24987,14 +24987,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25015,7 +25015,7 @@
             // InternalOCLstdlib.g:8749:2: iv_ruleWildcardTypeRefCS= ruleWildcardTypeRefCS EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getWildcardTypeRefCSRule()); 
+               newCompositeNode(grammarAccess.getWildcardTypeRefCSRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleWildcardTypeRefCS=ruleWildcardTypeRefCS();
@@ -25023,18 +25023,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleWildcardTypeRefCS; 
+               current =iv_ruleWildcardTypeRefCS;
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25052,8 +25052,8 @@
         EObject lv_ownedExtends_3_0 = null;
 
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8759:28: ( ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? ) )
             // InternalOCLstdlib.g:8760:1: ( () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )? )
@@ -25062,19 +25062,19 @@
             // InternalOCLstdlib.g:8760:2: () otherlv_1= '?' (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             {
             // InternalOCLstdlib.g:8760:2: ()
-            // InternalOCLstdlib.g:8761:2: 
+            // InternalOCLstdlib.g:8761:2:
             {
             if ( state.backtracking==0 ) {
-               
-              	  /* */ 
-              	
+
+              	  /* */
+
             }
             if ( state.backtracking==0 ) {
 
                       current = forceCreateModelElement(
                           grammarAccess.getWildcardTypeRefCSAccess().getWildcardTypeRefCSAction_0(),
                           current);
-                  
+
             }
 
             }
@@ -25083,7 +25083,7 @@
             if ( state.backtracking==0 ) {
 
                   	newLeafNode(otherlv_1, grammarAccess.getWildcardTypeRefCSAccess().getQuestionMarkKeyword_1());
-                  
+
             }
             // InternalOCLstdlib.g:8773:1: (otherlv_2= 'extends' ( (lv_ownedExtends_3_0= ruleTypedRefCS ) ) )?
             int alt157=2;
@@ -25100,7 +25100,7 @@
                     if ( state.backtracking==0 ) {
 
                           	newLeafNode(otherlv_2, grammarAccess.getWildcardTypeRefCSAccess().getExtendsKeyword_2_0());
-                          
+
                     }
                     // InternalOCLstdlib.g:8777:1: ( (lv_ownedExtends_3_0= ruleTypedRefCS ) )
                     // InternalOCLstdlib.g:8778:1: (lv_ownedExtends_3_0= ruleTypedRefCS )
@@ -25109,9 +25109,9 @@
                     // InternalOCLstdlib.g:8779:3: lv_ownedExtends_3_0= ruleTypedRefCS
                     {
                     if ( state.backtracking==0 ) {
-                       
-                      	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0()); 
-                      	    
+
+                      	        newCompositeNode(grammarAccess.getWildcardTypeRefCSAccess().getOwnedExtendsTypedRefCSParserRuleCall_2_1_0());
+
                     }
                     pushFollow(FollowSets000.FOLLOW_2);
                     lv_ownedExtends_3_0=ruleTypedRefCS();
@@ -25124,12 +25124,12 @@
                       	            current = createModelElementForParent(grammarAccess.getWildcardTypeRefCSRule());
                       	        }
                              		set(
-                             			current, 
+                             			current,
                              			"ownedExtends",
-                              		lv_ownedExtends_3_0, 
+                              		lv_ownedExtends_3_0,
                               		"org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.TypedRefCS");
                       	        afterParserOrEnumRuleCall();
-                      	    
+
                     }
 
                     }
@@ -25150,14 +25150,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25178,7 +25178,7 @@
             // InternalOCLstdlib.g:8805:2: iv_ruleID= ruleID EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getIDRule()); 
+               newCompositeNode(grammarAccess.getIDRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleID=ruleID();
@@ -25186,18 +25186,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleID.getText(); 
+               current =iv_ruleID.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25213,8 +25213,8 @@
         Token this_SIMPLE_ID_0=null;
         Token this_ESCAPED_ID_1=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8815:28: ( (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID ) )
             // InternalOCLstdlib.g:8816:1: (this_SIMPLE_ID_0= RULE_SIMPLE_ID | this_ESCAPED_ID_1= RULE_ESCAPED_ID )
@@ -25244,12 +25244,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_SIMPLE_ID_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0()); 
-                          
+
+                          newLeafNode(this_SIMPLE_ID_0, grammarAccess.getIDAccess().getSIMPLE_IDTerminalRuleCall_0());
+
                     }
 
                     }
@@ -25261,12 +25261,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_ESCAPED_ID_1);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1()); 
-                          
+
+                          newLeafNode(this_ESCAPED_ID_1, grammarAccess.getIDAccess().getESCAPED_IDTerminalRuleCall_1());
+
                     }
 
                     }
@@ -25278,14 +25278,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25306,7 +25306,7 @@
             // InternalOCLstdlib.g:8841:2: iv_ruleLOWER= ruleLOWER EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getLOWERRule()); 
+               newCompositeNode(grammarAccess.getLOWERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleLOWER=ruleLOWER();
@@ -25314,18 +25314,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleLOWER.getText(); 
+               current =iv_ruleLOWER.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25340,8 +25340,8 @@
 
         Token this_INT_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8851:28: (this_INT_0= RULE_INT )
             // InternalOCLstdlib.g:8852:5: this_INT_0= RULE_INT
@@ -25350,25 +25350,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_INT_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_INT_0, grammarAccess.getLOWERAccess().getINTTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25389,7 +25389,7 @@
             // InternalOCLstdlib.g:8869:2: iv_ruleNUMBER_LITERAL= ruleNUMBER_LITERAL EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getNUMBER_LITERALRule()); 
+               newCompositeNode(grammarAccess.getNUMBER_LITERALRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleNUMBER_LITERAL=ruleNUMBER_LITERAL();
@@ -25397,18 +25397,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleNUMBER_LITERAL.getText(); 
+               current =iv_ruleNUMBER_LITERAL.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25423,8 +25423,8 @@
 
         Token this_INT_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8879:28: (this_INT_0= RULE_INT )
             // InternalOCLstdlib.g:8880:5: this_INT_0= RULE_INT
@@ -25433,25 +25433,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_INT_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_INT_0, grammarAccess.getNUMBER_LITERALAccess().getINTTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25472,7 +25472,7 @@
             // InternalOCLstdlib.g:8897:2: iv_ruleStringLiteral= ruleStringLiteral EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getStringLiteralRule()); 
+               newCompositeNode(grammarAccess.getStringLiteralRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleStringLiteral=ruleStringLiteral();
@@ -25480,18 +25480,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleStringLiteral.getText(); 
+               current =iv_ruleStringLiteral.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25506,8 +25506,8 @@
 
         Token this_SINGLE_QUOTED_STRING_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8907:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
             // InternalOCLstdlib.g:8908:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
@@ -25516,25 +25516,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_SINGLE_QUOTED_STRING_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getStringLiteralAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25555,7 +25555,7 @@
             // InternalOCLstdlib.g:8925:2: iv_ruleUPPER= ruleUPPER EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getUPPERRule()); 
+               newCompositeNode(grammarAccess.getUPPERRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleUPPER=ruleUPPER();
@@ -25563,18 +25563,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleUPPER.getText(); 
+               current =iv_ruleUPPER.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25590,8 +25590,8 @@
         Token this_INT_0=null;
         Token kw=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8935:28: ( (this_INT_0= RULE_INT | kw= '*' ) )
             // InternalOCLstdlib.g:8936:1: (this_INT_0= RULE_INT | kw= '*' )
@@ -25621,12 +25621,12 @@
                     if ( state.backtracking==0 ) {
 
                       		current.merge(this_INT_0);
-                          
+
                     }
                     if ( state.backtracking==0 ) {
-                       
-                          newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0()); 
-                          
+
+                          newLeafNode(this_INT_0, grammarAccess.getUPPERAccess().getINTTerminalRuleCall_0());
+
                     }
 
                     }
@@ -25638,8 +25638,8 @@
                     if ( state.backtracking==0 ) {
 
                               current.merge(kw);
-                              newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1()); 
-                          
+                              newLeafNode(kw, grammarAccess.getUPPERAccess().getAsteriskKeyword_1());
+
                     }
 
                     }
@@ -25651,14 +25651,14 @@
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25679,7 +25679,7 @@
             // InternalOCLstdlib.g:8960:2: iv_ruleURI= ruleURI EOF
             {
             if ( state.backtracking==0 ) {
-               newCompositeNode(grammarAccess.getURIRule()); 
+               newCompositeNode(grammarAccess.getURIRule());
             }
             pushFollow(FollowSets000.FOLLOW_1);
             iv_ruleURI=ruleURI();
@@ -25687,18 +25687,18 @@
             state._fsp--;
             if (state.failed) return current;
             if ( state.backtracking==0 ) {
-               current =iv_ruleURI.getText(); 
+               current =iv_ruleURI.getText();
             }
             match(input,EOF,FollowSets000.FOLLOW_2); if (state.failed) return current;
 
             }
 
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25713,8 +25713,8 @@
 
         Token this_SINGLE_QUOTED_STRING_0=null;
 
-         enterRule(); 
-            
+         enterRule();
+
         try {
             // InternalOCLstdlib.g:8970:28: (this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING )
             // InternalOCLstdlib.g:8971:5: this_SINGLE_QUOTED_STRING_0= RULE_SINGLE_QUOTED_STRING
@@ -25723,25 +25723,25 @@
             if ( state.backtracking==0 ) {
 
               		current.merge(this_SINGLE_QUOTED_STRING_0);
-                  
+
             }
             if ( state.backtracking==0 ) {
-               
-                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall()); 
-                  
+
+                  newLeafNode(this_SINGLE_QUOTED_STRING_0, grammarAccess.getURIAccess().getSINGLE_QUOTED_STRINGTerminalRuleCall());
+
             }
 
             }
 
             if ( state.backtracking==0 ) {
-               leaveRule(); 
+               leaveRule();
             }
         }
-         
-            catch (RecognitionException re) { 
-                recover(input,re); 
+
+            catch (RecognitionException re) {
+                recover(input,re);
                 appendSkippedTokens();
-            } 
+            }
         finally {
         }
         return current;
@@ -25749,7 +25749,7 @@
     // $ANTLR end "ruleURI"
 
     // $ANTLR start synpred197_InternalOCLstdlib
-    public final void synpred197_InternalOCLstdlib_fragment() throws RecognitionException {   
+    public final void synpred197_InternalOCLstdlib_fragment() throws RecognitionException {
         EObject this_TypeLiteralCS_1 = null;
 
 
@@ -25757,9 +25757,9 @@
         // InternalOCLstdlib.g:6281:2: this_TypeLiteralCS_1= ruleTypeLiteralCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_TypeLiteralCS_1=ruleTypeLiteralCS();
@@ -25772,7 +25772,7 @@
     // $ANTLR end synpred197_InternalOCLstdlib
 
     // $ANTLR start synpred200_InternalOCLstdlib
-    public final void synpred200_InternalOCLstdlib_fragment() throws RecognitionException {   
+    public final void synpred200_InternalOCLstdlib_fragment() throws RecognitionException {
         EObject this_PrefixedPrimaryExpCS_0 = null;
 
         AntlrDatatypeRuleToken lv_name_2_0 = null;
@@ -25787,9 +25787,9 @@
         // InternalOCLstdlib.g:6345:2: this_PrefixedPrimaryExpCS_0= rulePrefixedPrimaryExpCS ( () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) ) )?
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_74);
         this_PrefixedPrimaryExpCS_0=rulePrefixedPrimaryExpCS();
@@ -25808,12 +25808,12 @@
                 // InternalOCLstdlib.g:6356:2: () ( (lv_name_2_0= ruleBinaryOperatorName ) ) ( (lv_ownedRight_3_0= ruleExpCS ) )
                 {
                 // InternalOCLstdlib.g:6356:2: ()
-                // InternalOCLstdlib.g:6357:2: 
+                // InternalOCLstdlib.g:6357:2:
                 {
                 if ( state.backtracking==0 ) {
-                   
-                  	  /* */ 
-                  	
+
+                  	  /* */
+
                 }
 
                 }
@@ -25825,9 +25825,9 @@
                 // InternalOCLstdlib.g:6367:3: lv_name_2_0= ruleBinaryOperatorName
                 {
                 if ( state.backtracking==0 ) {
-                   
-                  	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0()); 
-                  	    
+
+                  	        newCompositeNode(grammarAccess.getExpCSAccess().getNameBinaryOperatorNameParserRuleCall_0_1_1_0());
+
                 }
                 pushFollow(FollowSets000.FOLLOW_31);
                 lv_name_2_0=ruleBinaryOperatorName();
@@ -25847,9 +25847,9 @@
                 // InternalOCLstdlib.g:6385:3: lv_ownedRight_3_0= ruleExpCS
                 {
                 if ( state.backtracking==0 ) {
-                   
-                  	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0()); 
-                  	    
+
+                  	        newCompositeNode(grammarAccess.getExpCSAccess().getOwnedRightExpCSParserRuleCall_0_1_2_0());
+
                 }
                 pushFollow(FollowSets000.FOLLOW_2);
                 lv_ownedRight_3_0=ruleExpCS();
@@ -25877,7 +25877,7 @@
     // $ANTLR end synpred200_InternalOCLstdlib
 
     // $ANTLR start synpred207_InternalOCLstdlib
-    public final void synpred207_InternalOCLstdlib_fragment() throws RecognitionException {   
+    public final void synpred207_InternalOCLstdlib_fragment() throws RecognitionException {
         EObject this_TupleLiteralExpCS_4 = null;
 
 
@@ -25885,9 +25885,9 @@
         // InternalOCLstdlib.g:6646:2: this_TupleLiteralExpCS_4= ruleTupleLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_TupleLiteralExpCS_4=ruleTupleLiteralExpCS();
@@ -25900,7 +25900,7 @@
     // $ANTLR end synpred207_InternalOCLstdlib
 
     // $ANTLR start synpred208_InternalOCLstdlib
-    public final void synpred208_InternalOCLstdlib_fragment() throws RecognitionException {   
+    public final void synpred208_InternalOCLstdlib_fragment() throws RecognitionException {
         EObject this_MapLiteralExpCS_5 = null;
 
 
@@ -25908,9 +25908,9 @@
         // InternalOCLstdlib.g:6659:2: this_MapLiteralExpCS_5= ruleMapLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_MapLiteralExpCS_5=ruleMapLiteralExpCS();
@@ -25923,7 +25923,7 @@
     // $ANTLR end synpred208_InternalOCLstdlib
 
     // $ANTLR start synpred209_InternalOCLstdlib
-    public final void synpred209_InternalOCLstdlib_fragment() throws RecognitionException {   
+    public final void synpred209_InternalOCLstdlib_fragment() throws RecognitionException {
         EObject this_CollectionLiteralExpCS_6 = null;
 
 
@@ -25931,9 +25931,9 @@
         // InternalOCLstdlib.g:6672:2: this_CollectionLiteralExpCS_6= ruleCollectionLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_CollectionLiteralExpCS_6=ruleCollectionLiteralExpCS();
@@ -25946,7 +25946,7 @@
     // $ANTLR end synpred209_InternalOCLstdlib
 
     // $ANTLR start synpred211_InternalOCLstdlib
-    public final void synpred211_InternalOCLstdlib_fragment() throws RecognitionException {   
+    public final void synpred211_InternalOCLstdlib_fragment() throws RecognitionException {
         EObject this_TypeLiteralExpCS_8 = null;
 
 
@@ -25954,9 +25954,9 @@
         // InternalOCLstdlib.g:6698:2: this_TypeLiteralExpCS_8= ruleTypeLiteralExpCS
         {
         if ( state.backtracking==0 ) {
-           
-          	  /* */ 
-          	
+
+          	  /* */
+
         }
         pushFollow(FollowSets000.FOLLOW_2);
         this_TypeLiteralExpCS_8=ruleTypeLiteralExpCS();
@@ -26411,10 +26411,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA111_32 = input.LA(1);
 
-                         
+
                         int index111_32 = input.index();
                         input.rewind();
                         s = -1;
@@ -26422,14 +26422,14 @@
 
                         else if ( (true) ) {s = 39;}
 
-                         
+
                         input.seek(index111_32);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA111_33 = input.LA(1);
 
-                         
+
                         int index111_33 = input.index();
                         input.rewind();
                         s = -1;
@@ -26437,14 +26437,14 @@
 
                         else if ( (true) ) {s = 39;}
 
-                         
+
                         input.seek(index111_33);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA111_34 = input.LA(1);
 
-                         
+
                         int index111_34 = input.index();
                         input.rewind();
                         s = -1;
@@ -26452,14 +26452,14 @@
 
                         else if ( (true) ) {s = 39;}
 
-                         
+
                         input.seek(index111_34);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA111_35 = input.LA(1);
 
-                         
+
                         int index111_35 = input.index();
                         input.rewind();
                         s = -1;
@@ -26467,14 +26467,14 @@
 
                         else if ( (true) ) {s = 39;}
 
-                         
+
                         input.seek(index111_35);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA111_36 = input.LA(1);
 
-                         
+
                         int index111_36 = input.index();
                         input.rewind();
                         s = -1;
@@ -26482,7 +26482,7 @@
 
                         else if ( (true) ) {s = 39;}
 
-                         
+
                         input.seek(index111_36);
                         if ( s>=0 ) return s;
                         break;
@@ -26582,10 +26582,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA114_1 = input.LA(1);
 
-                         
+
                         int index114_1 = input.index();
                         input.rewind();
                         s = -1;
@@ -26593,14 +26593,14 @@
 
                         else if ( (true) ) {s = 52;}
 
-                         
+
                         input.seek(index114_1);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA114_2 = input.LA(1);
 
-                         
+
                         int index114_2 = input.index();
                         input.rewind();
                         s = -1;
@@ -26608,7 +26608,7 @@
 
                         else if ( (true) ) {s = 52;}
 
-                         
+
                         input.seek(index114_2);
                         if ( s>=0 ) return s;
                         break;
@@ -26705,10 +26705,10 @@
             TokenStream input = (TokenStream)_input;
         	int _s = s;
             switch ( s ) {
-                    case 0 : 
+                    case 0 :
                         int LA117_11 = input.LA(1);
 
-                         
+
                         int index117_11 = input.index();
                         input.rewind();
                         s = -1;
@@ -26716,14 +26716,14 @@
 
                         else if ( (synpred211_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index117_11);
                         if ( s>=0 ) return s;
                         break;
-                    case 1 : 
+                    case 1 :
                         int LA117_12 = input.LA(1);
 
-                         
+
                         int index117_12 = input.index();
                         input.rewind();
                         s = -1;
@@ -26731,14 +26731,14 @@
 
                         else if ( (synpred211_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index117_12);
                         if ( s>=0 ) return s;
                         break;
-                    case 2 : 
+                    case 2 :
                         int LA117_13 = input.LA(1);
 
-                         
+
                         int index117_13 = input.index();
                         input.rewind();
                         s = -1;
@@ -26746,14 +26746,14 @@
 
                         else if ( (synpred211_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index117_13);
                         if ( s>=0 ) return s;
                         break;
-                    case 3 : 
+                    case 3 :
                         int LA117_14 = input.LA(1);
 
-                         
+
                         int index117_14 = input.index();
                         input.rewind();
                         s = -1;
@@ -26761,14 +26761,14 @@
 
                         else if ( (synpred211_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index117_14);
                         if ( s>=0 ) return s;
                         break;
-                    case 4 : 
+                    case 4 :
                         int LA117_15 = input.LA(1);
 
-                         
+
                         int index117_15 = input.index();
                         input.rewind();
                         s = -1;
@@ -26776,14 +26776,14 @@
 
                         else if ( (synpred211_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index117_15);
                         if ( s>=0 ) return s;
                         break;
-                    case 5 : 
+                    case 5 :
                         int LA117_16 = input.LA(1);
 
-                         
+
                         int index117_16 = input.index();
                         input.rewind();
                         s = -1;
@@ -26791,14 +26791,14 @@
 
                         else if ( (synpred211_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index117_16);
                         if ( s>=0 ) return s;
                         break;
-                    case 6 : 
+                    case 6 :
                         int LA117_17 = input.LA(1);
 
-                         
+
                         int index117_17 = input.index();
                         input.rewind();
                         s = -1;
@@ -26806,7 +26806,7 @@
 
                         else if ( (synpred211_InternalOCLstdlib()) ) {s = 19;}
 
-                         
+
                         input.seek(index117_17);
                         if ( s>=0 ) return s;
                         break;
@@ -26865,9 +26865,9 @@
             return "7652:1: (lv_ownedCondition_1_1= ruleExpCS | lv_ownedCondition_1_2= rulePatternExpCS )";
         }
     }
- 
 
-    
+
+
     private static class FollowSets000 {
         public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
         public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
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 c6a8563..022438b 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
@@ -96,7 +96,7 @@
 
 	@Inject
 	private OCLstdlibGrammarAccess grammarAccess;
-	
+
 	@Override
 	public void sequence(ISerializationContext context, EObject semanticObject) {
 		EPackage epackage = semanticObject.eClass().getEPackage();
@@ -106,397 +106,397 @@
 		if (epackage == BaseCSPackage.eINSTANCE)
 			switch (semanticObject.eClass().getClassifierID()) {
 			case BaseCSPackage.ANNOTATION_CS:
-				sequence_AnnotationCS(context, (AnnotationCS) semanticObject); 
-				return; 
+				sequence_AnnotationCS(context, (AnnotationCS) semanticObject);
+				return;
 			case BaseCSPackage.DETAIL_CS:
-				sequence_DetailCS(context, (DetailCS) semanticObject); 
-				return; 
+				sequence_DetailCS(context, (DetailCS) semanticObject);
+				return;
 			case BaseCSPackage.DOCUMENTATION_CS:
-				sequence_DocumentationCS(context, (DocumentationCS) semanticObject); 
-				return; 
+				sequence_DocumentationCS(context, (DocumentationCS) semanticObject);
+				return;
 			case BaseCSPackage.IMPORT_CS:
-				sequence_ImportCS(context, (ImportCS) semanticObject); 
-				return; 
+				sequence_ImportCS(context, (ImportCS) semanticObject);
+				return;
 			case BaseCSPackage.LAMBDA_TYPE_CS:
 				if (rule == grammarAccess.getLambdaTypeCSRule()
 						|| rule == grammarAccess.getTypedRefCSRule()
 						|| rule == grammarAccess.getTypeRefCSRule()) {
-					sequence_LambdaTypeCS(context, (LambdaTypeCS) semanticObject); 
-					return; 
+					sequence_LambdaTypeCS(context, (LambdaTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypedMultiplicityRefCSRule()) {
-					sequence_LambdaTypeCS_TypedMultiplicityRefCS(context, (LambdaTypeCS) semanticObject); 
-					return; 
+					sequence_LambdaTypeCS_TypedMultiplicityRefCS(context, (LambdaTypeCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.MULTIPLICITY_BOUNDS_CS:
 				if (rule == grammarAccess.getMultiplicityBoundsCSRule()) {
-					sequence_MultiplicityBoundsCS(context, (MultiplicityBoundsCS) semanticObject); 
-					return; 
+					sequence_MultiplicityBoundsCS(context, (MultiplicityBoundsCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getMultiplicityCSRule()) {
-					sequence_MultiplicityBoundsCS_MultiplicityCS(context, (MultiplicityBoundsCS) semanticObject); 
-					return; 
+					sequence_MultiplicityBoundsCS_MultiplicityCS(context, (MultiplicityBoundsCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.MULTIPLICITY_STRING_CS:
 				if (rule == grammarAccess.getMultiplicityCSRule()) {
-					sequence_MultiplicityCS_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject); 
-					return; 
+					sequence_MultiplicityCS_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getMultiplicityStringCSRule()) {
-					sequence_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject); 
-					return; 
+					sequence_MultiplicityStringCS(context, (MultiplicityStringCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PACKAGE_CS:
-				sequence_PackageCS(context, (PackageCS) semanticObject); 
-				return; 
+				sequence_PackageCS(context, (PackageCS) semanticObject);
+				return;
 			case BaseCSPackage.PARAMETER_CS:
 				if (rule == grammarAccess.getAccumulatorCSRule()) {
-					sequence_AccumulatorCS(context, (ParameterCS) semanticObject); 
-					return; 
+					sequence_AccumulatorCS(context, (ParameterCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getIteratorCSRule()) {
-					sequence_IteratorCS(context, (ParameterCS) semanticObject); 
-					return; 
+					sequence_IteratorCS(context, (ParameterCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getParameterCSRule()) {
-					sequence_ParameterCS(context, (ParameterCS) semanticObject); 
-					return; 
+					sequence_ParameterCS(context, (ParameterCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PATH_ELEMENT_CS:
 				if (rule == grammarAccess.getFirstPathElementCSRule()) {
-					sequence_FirstPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_FirstPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getLibPathElementCSRule()) {
-					sequence_LibPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_LibPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNextPathElementCSRule()) {
-					sequence_NextPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_NextPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getURIFirstPathElementCSRule()) {
-					sequence_URIFirstPathElementCS(context, (PathElementCS) semanticObject); 
-					return; 
+					sequence_URIFirstPathElementCS(context, (PathElementCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PATH_ELEMENT_WITH_URICS:
-				sequence_URIFirstPathElementCS(context, (PathElementWithURICS) semanticObject); 
-				return; 
+				sequence_URIFirstPathElementCS(context, (PathElementWithURICS) semanticObject);
+				return;
 			case BaseCSPackage.PATH_NAME_CS:
 				if (rule == grammarAccess.getLibPathNameCSRule()) {
-					sequence_LibPathNameCS(context, (PathNameCS) semanticObject); 
-					return; 
+					sequence_LibPathNameCS(context, (PathNameCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getPathNameCSRule()) {
-					sequence_PathNameCS(context, (PathNameCS) semanticObject); 
-					return; 
+					sequence_PathNameCS(context, (PathNameCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getURIPathNameCSRule()) {
-					sequence_URIPathNameCS(context, (PathNameCS) semanticObject); 
-					return; 
+					sequence_URIPathNameCS(context, (PathNameCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.PRIMITIVE_TYPE_REF_CS:
 				if (rule == grammarAccess.getPrimitiveTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()) {
-					sequence_PrimitiveTypeCS(context, (PrimitiveTypeRefCS) semanticObject); 
-					return; 
+					sequence_PrimitiveTypeCS(context, (PrimitiveTypeRefCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_PrimitiveTypeCS_TypeExpCS(context, (PrimitiveTypeRefCS) semanticObject); 
-					return; 
+					sequence_PrimitiveTypeCS_TypeExpCS(context, (PrimitiveTypeRefCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_PrimitiveTypeCS_TypeLiteralWithMultiplicityCS(context, (PrimitiveTypeRefCS) semanticObject); 
-					return; 
+					sequence_PrimitiveTypeCS_TypeLiteralWithMultiplicityCS(context, (PrimitiveTypeRefCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.TEMPLATE_BINDING_CS:
-				sequence_TemplateBindingCS(context, (TemplateBindingCS) semanticObject); 
-				return; 
+				sequence_TemplateBindingCS(context, (TemplateBindingCS) semanticObject);
+				return;
 			case BaseCSPackage.TEMPLATE_PARAMETER_SUBSTITUTION_CS:
-				sequence_TemplateParameterSubstitutionCS(context, (TemplateParameterSubstitutionCS) semanticObject); 
-				return; 
+				sequence_TemplateParameterSubstitutionCS(context, (TemplateParameterSubstitutionCS) semanticObject);
+				return;
 			case BaseCSPackage.TEMPLATE_SIGNATURE_CS:
-				sequence_TemplateSignatureCS(context, (TemplateSignatureCS) semanticObject); 
-				return; 
+				sequence_TemplateSignatureCS(context, (TemplateSignatureCS) semanticObject);
+				return;
 			case BaseCSPackage.TUPLE_PART_CS:
-				sequence_TuplePartCS(context, (TuplePartCS) semanticObject); 
-				return; 
+				sequence_TuplePartCS(context, (TuplePartCS) semanticObject);
+				return;
 			case BaseCSPackage.TUPLE_TYPE_CS:
 				if (rule == grammarAccess.getTypedRefCSRule()
 						|| rule == grammarAccess.getTupleTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()
 						|| rule == grammarAccess.getTypeRefCSRule()) {
-					sequence_TupleTypeCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_TupleTypeCS_TypeExpCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS_TypeExpCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_TupleTypeCS_TypeLiteralWithMultiplicityCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS_TypeLiteralWithMultiplicityCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypedMultiplicityRefCSRule()) {
-					sequence_TupleTypeCS_TypedMultiplicityRefCS(context, (TupleTypeCS) semanticObject); 
-					return; 
+					sequence_TupleTypeCS_TypedMultiplicityRefCS(context, (TupleTypeCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.TYPE_PARAMETER_CS:
-				sequence_TypeParameterCS(context, (TypeParameterCS) semanticObject); 
-				return; 
+				sequence_TypeParameterCS(context, (TypeParameterCS) semanticObject);
+				return;
 			case BaseCSPackage.TYPED_TYPE_REF_CS:
 				if (rule == grammarAccess.getLambdaContextTypeRefCSRule()) {
-					sequence_LambdaContextTypeRefCS(context, (TypedTypeRefCS) semanticObject); 
-					return; 
+					sequence_LambdaContextTypeRefCS(context, (TypedTypeRefCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypedMultiplicityRefCSRule()) {
-					sequence_TypedMultiplicityRefCS_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject); 
-					return; 
+					sequence_TypedMultiplicityRefCS_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypedRefCSRule()
 						|| rule == grammarAccess.getTypedTypeRefCSRule()
 						|| rule == grammarAccess.getTypeRefCSRule()) {
-					sequence_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject); 
-					return; 
+					sequence_TypedTypeRefCS(context, (TypedTypeRefCS) semanticObject);
+					return;
 				}
 				else break;
 			case BaseCSPackage.WILDCARD_TYPE_REF_CS:
-				sequence_WildcardTypeRefCS(context, (WildcardTypeRefCS) semanticObject); 
-				return; 
+				sequence_WildcardTypeRefCS(context, (WildcardTypeRefCS) semanticObject);
+				return;
 			}
 		else if (epackage == EssentialOCLCSPackage.eINSTANCE)
 			switch (semanticObject.eClass().getClassifierID()) {
 			case EssentialOCLCSPackage.BOOLEAN_LITERAL_EXP_CS:
-				sequence_BooleanLiteralExpCS(context, (BooleanLiteralExpCS) semanticObject); 
-				return; 
+				sequence_BooleanLiteralExpCS(context, (BooleanLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.COLLECTION_LITERAL_EXP_CS:
-				sequence_CollectionLiteralExpCS(context, (CollectionLiteralExpCS) semanticObject); 
-				return; 
+				sequence_CollectionLiteralExpCS(context, (CollectionLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.COLLECTION_LITERAL_PART_CS:
-				sequence_CollectionLiteralPartCS(context, (CollectionLiteralPartCS) semanticObject); 
-				return; 
+				sequence_CollectionLiteralPartCS(context, (CollectionLiteralPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.COLLECTION_PATTERN_CS:
 				if (rule == grammarAccess.getCollectionPatternCSRule()) {
-					sequence_CollectionPatternCS(context, (CollectionPatternCS) semanticObject); 
-					return; 
+					sequence_CollectionPatternCS(context, (CollectionPatternCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_CollectionPatternCS_TypeExpCS(context, (CollectionPatternCS) semanticObject); 
-					return; 
+					sequence_CollectionPatternCS_TypeExpCS(context, (CollectionPatternCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.COLLECTION_TYPE_CS:
 				if (rule == grammarAccess.getCollectionTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()) {
-					sequence_CollectionTypeCS(context, (CollectionTypeCS) semanticObject); 
-					return; 
+					sequence_CollectionTypeCS(context, (CollectionTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_CollectionTypeCS_TypeExpCS(context, (CollectionTypeCS) semanticObject); 
-					return; 
+					sequence_CollectionTypeCS_TypeExpCS(context, (CollectionTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_CollectionTypeCS_TypeLiteralWithMultiplicityCS(context, (CollectionTypeCS) semanticObject); 
-					return; 
+					sequence_CollectionTypeCS_TypeLiteralWithMultiplicityCS(context, (CollectionTypeCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.CONTEXT_CS:
-				sequence_Model(context, (ContextCS) semanticObject); 
-				return; 
+				sequence_Model(context, (ContextCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.CURLY_BRACKETED_CLAUSE_CS:
-				sequence_CurlyBracketedClauseCS(context, (CurlyBracketedClauseCS) semanticObject); 
-				return; 
+				sequence_CurlyBracketedClauseCS(context, (CurlyBracketedClauseCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.EXP_SPECIFICATION_CS:
-				sequence_SpecificationCS(context, (ExpSpecificationCS) semanticObject); 
-				return; 
+				sequence_SpecificationCS(context, (ExpSpecificationCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.IF_EXP_CS:
-				sequence_IfExpCS(context, (IfExpCS) semanticObject); 
-				return; 
+				sequence_IfExpCS(context, (IfExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.IF_THEN_EXP_CS:
-				sequence_ElseIfThenExpCS(context, (IfThenExpCS) semanticObject); 
-				return; 
+				sequence_ElseIfThenExpCS(context, (IfThenExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.INFIX_EXP_CS:
-				sequence_ExpCS(context, (InfixExpCS) semanticObject); 
-				return; 
+				sequence_ExpCS(context, (InfixExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.INVALID_LITERAL_EXP_CS:
-				sequence_InvalidLiteralExpCS(context, (InvalidLiteralExpCS) semanticObject); 
-				return; 
+				sequence_InvalidLiteralExpCS(context, (InvalidLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.LAMBDA_LITERAL_EXP_CS:
-				sequence_LambdaLiteralExpCS(context, (LambdaLiteralExpCS) semanticObject); 
-				return; 
+				sequence_LambdaLiteralExpCS(context, (LambdaLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.LET_EXP_CS:
-				sequence_LetExpCS(context, (LetExpCS) semanticObject); 
-				return; 
+				sequence_LetExpCS(context, (LetExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.LET_VARIABLE_CS:
-				sequence_LetVariableCS(context, (LetVariableCS) semanticObject); 
-				return; 
+				sequence_LetVariableCS(context, (LetVariableCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.MAP_LITERAL_EXP_CS:
-				sequence_MapLiteralExpCS(context, (MapLiteralExpCS) semanticObject); 
-				return; 
+				sequence_MapLiteralExpCS(context, (MapLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.MAP_LITERAL_PART_CS:
-				sequence_MapLiteralPartCS(context, (MapLiteralPartCS) semanticObject); 
-				return; 
+				sequence_MapLiteralPartCS(context, (MapLiteralPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.MAP_TYPE_CS:
 				if (rule == grammarAccess.getTypedRefCSRule()
 						|| rule == grammarAccess.getMapTypeCSRule()
 						|| rule == grammarAccess.getTypeLiteralCSRule()
 						|| rule == grammarAccess.getTypeRefCSRule()) {
-					sequence_MapTypeCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_MapTypeCS_TypeExpCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS_TypeExpCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeLiteralWithMultiplicityCSRule()) {
-					sequence_MapTypeCS_TypeLiteralWithMultiplicityCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS_TypeLiteralWithMultiplicityCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypedMultiplicityRefCSRule()) {
-					sequence_MapTypeCS_TypedMultiplicityRefCS(context, (MapTypeCS) semanticObject); 
-					return; 
+					sequence_MapTypeCS_TypedMultiplicityRefCS(context, (MapTypeCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.NAME_EXP_CS:
-				sequence_NameExpCS(context, (NameExpCS) semanticObject); 
-				return; 
+				sequence_NameExpCS(context, (NameExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.NAVIGATING_ARG_CS:
 				if (rule == grammarAccess.getNavigatingArgCSRule()) {
-					sequence_NavigatingArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNavigatingBarArgCSRule()) {
-					sequence_NavigatingBarArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingBarArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNavigatingCommaArgCSRule()) {
-					sequence_NavigatingCommaArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingCommaArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getNavigatingSemiArgCSRule()) {
-					sequence_NavigatingSemiArgCS(context, (NavigatingArgCS) semanticObject); 
-					return; 
+					sequence_NavigatingSemiArgCS(context, (NavigatingArgCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.NESTED_EXP_CS:
-				sequence_NestedExpCS(context, (NestedExpCS) semanticObject); 
-				return; 
+				sequence_NestedExpCS(context, (NestedExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.NULL_LITERAL_EXP_CS:
-				sequence_NullLiteralExpCS(context, (NullLiteralExpCS) semanticObject); 
-				return; 
+				sequence_NullLiteralExpCS(context, (NullLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.NUMBER_LITERAL_EXP_CS:
-				sequence_NumberLiteralExpCS(context, (NumberLiteralExpCS) semanticObject); 
-				return; 
+				sequence_NumberLiteralExpCS(context, (NumberLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.PATTERN_EXP_CS:
-				sequence_PatternExpCS(context, (PatternExpCS) semanticObject); 
-				return; 
+				sequence_PatternExpCS(context, (PatternExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.PREFIX_EXP_CS:
 				if (rule == grammarAccess.getPrefixedLetExpCSRule()) {
-					sequence_PrefixedLetExpCS(context, (PrefixExpCS) semanticObject); 
-					return; 
+					sequence_PrefixedLetExpCS(context, (PrefixExpCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getExpCSRule()
 						|| rule == grammarAccess.getNavigatingArgExpCSRule()) {
-					sequence_PrefixedLetExpCS_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject); 
-					return; 
+					sequence_PrefixedLetExpCS_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject);
+					return;
 				}
 				else if (action == grammarAccess.getExpCSAccess().getInfixExpCSOwnedLeftAction_0_1_0()
 						|| rule == grammarAccess.getPrefixedPrimaryExpCSRule()) {
-					sequence_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject); 
-					return; 
+					sequence_PrefixedPrimaryExpCS(context, (PrefixExpCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.ROUND_BRACKETED_CLAUSE_CS:
-				sequence_RoundBracketedClauseCS(context, (RoundBracketedClauseCS) semanticObject); 
-				return; 
+				sequence_RoundBracketedClauseCS(context, (RoundBracketedClauseCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.SELF_EXP_CS:
-				sequence_SelfExpCS(context, (SelfExpCS) semanticObject); 
-				return; 
+				sequence_SelfExpCS(context, (SelfExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.SHADOW_PART_CS:
-				sequence_ShadowPartCS(context, (ShadowPartCS) semanticObject); 
-				return; 
+				sequence_ShadowPartCS(context, (ShadowPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.SQUARE_BRACKETED_CLAUSE_CS:
-				sequence_SquareBracketedClauseCS(context, (SquareBracketedClauseCS) semanticObject); 
-				return; 
+				sequence_SquareBracketedClauseCS(context, (SquareBracketedClauseCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.STRING_LITERAL_EXP_CS:
-				sequence_StringLiteralExpCS(context, (StringLiteralExpCS) semanticObject); 
-				return; 
+				sequence_StringLiteralExpCS(context, (StringLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TUPLE_LITERAL_EXP_CS:
-				sequence_TupleLiteralExpCS(context, (TupleLiteralExpCS) semanticObject); 
-				return; 
+				sequence_TupleLiteralExpCS(context, (TupleLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TUPLE_LITERAL_PART_CS:
-				sequence_TupleLiteralPartCS(context, (TupleLiteralPartCS) semanticObject); 
-				return; 
+				sequence_TupleLiteralPartCS(context, (TupleLiteralPartCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TYPE_LITERAL_EXP_CS:
-				sequence_TypeLiteralExpCS(context, (TypeLiteralExpCS) semanticObject); 
-				return; 
+				sequence_TypeLiteralExpCS(context, (TypeLiteralExpCS) semanticObject);
+				return;
 			case EssentialOCLCSPackage.TYPE_NAME_EXP_CS:
 				if (rule == grammarAccess.getTypeExpCSRule()) {
-					sequence_TypeExpCS_TypeNameExpCS(context, (TypeNameExpCS) semanticObject); 
-					return; 
+					sequence_TypeExpCS_TypeNameExpCS(context, (TypeNameExpCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getTypeNameExpCSRule()) {
-					sequence_TypeNameExpCS(context, (TypeNameExpCS) semanticObject); 
-					return; 
+					sequence_TypeNameExpCS(context, (TypeNameExpCS) semanticObject);
+					return;
 				}
 				else break;
 			case EssentialOCLCSPackage.UNLIMITED_NATURAL_LITERAL_EXP_CS:
-				sequence_UnlimitedNaturalLiteralExpCS(context, (UnlimitedNaturalLiteralExpCS) semanticObject); 
-				return; 
+				sequence_UnlimitedNaturalLiteralExpCS(context, (UnlimitedNaturalLiteralExpCS) semanticObject);
+				return;
 			}
 		else if (epackage == OCLstdlibCSPackage.eINSTANCE)
 			switch (semanticObject.eClass().getClassifierID()) {
 			case OCLstdlibCSPackage.LIB_CLASS_CS:
-				sequence_LibClassCS(context, (LibClassCS) semanticObject); 
-				return; 
+				sequence_LibClassCS(context, (LibClassCS) semanticObject);
+				return;
 			case OCLstdlibCSPackage.LIB_COERCION_CS:
-				sequence_LibCoercionCS(context, (LibCoercionCS) semanticObject); 
-				return; 
+				sequence_LibCoercionCS(context, (LibCoercionCS) semanticObject);
+				return;
 			case OCLstdlibCSPackage.LIB_CONSTRAINT_CS:
 				if (rule == grammarAccess.getInvCSRule()) {
-					sequence_InvCS(context, (LibConstraintCS) semanticObject); 
-					return; 
+					sequence_InvCS(context, (LibConstraintCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getPostCSRule()) {
-					sequence_PostCS(context, (LibConstraintCS) semanticObject); 
-					return; 
+					sequence_PostCS(context, (LibConstraintCS) semanticObject);
+					return;
 				}
 				else if (rule == grammarAccess.getPreCSRule()) {
-					sequence_PreCS(context, (LibConstraintCS) semanticObject); 
-					return; 
+					sequence_PreCS(context, (LibConstraintCS) semanticObject);
+					return;
 				}
 				else break;
 			case OCLstdlibCSPackage.LIB_ITERATION_CS:
-				sequence_LibIterationCS(context, (LibIterationCS) semanticObject); 
-				return; 
+				sequence_LibIterationCS(context, (LibIterationCS) semanticObject);
+				return;
 			case OCLstdlibCSPackage.LIB_OPERATION_CS:
-				sequence_LibOperationCS(context, (LibOperationCS) semanticObject); 
-				return; 
+				sequence_LibOperationCS(context, (LibOperationCS) semanticObject);
+				return;
 			case OCLstdlibCSPackage.LIB_PACKAGE_CS:
-				sequence_LibPackageCS(context, (LibPackageCS) semanticObject); 
-				return; 
+				sequence_LibPackageCS(context, (LibPackageCS) semanticObject);
+				return;
 			case OCLstdlibCSPackage.LIB_PROPERTY_CS:
-				sequence_LibPropertyCS(context, (LibPropertyCS) semanticObject); 
-				return; 
+				sequence_LibPropertyCS(context, (LibPropertyCS) semanticObject);
+				return;
 			case OCLstdlibCSPackage.LIB_ROOT_PACKAGE_CS:
-				sequence_Library(context, (LibRootPackageCS) semanticObject); 
-				return; 
+				sequence_Library(context, (LibRootPackageCS) semanticObject);
+				return;
 			case OCLstdlibCSPackage.PRECEDENCE_CS:
-				sequence_PrecedenceCS(context, (PrecedenceCS) semanticObject); 
-				return; 
+				sequence_PrecedenceCS(context, (PrecedenceCS) semanticObject);
+				return;
 			}
 		if (errorAcceptor != null)
 			errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
 	}
-	
+
 	/**
 	 * Contexts:
 	 *     AccumulatorCS returns ParameterCS
@@ -516,8 +516,8 @@
 		feeder.accept(grammarAccess.getAccumulatorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0(), semanticObject.getOwnedType());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     AnnotationCS returns AnnotationCS
@@ -529,8 +529,8 @@
 	protected void sequence_AnnotationCS(ISerializationContext context, AnnotationCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     DetailCS returns DetailCS
@@ -541,8 +541,8 @@
 	protected void sequence_DetailCS(ISerializationContext context, DetailCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     AnnotationElementCS returns DocumentationCS
@@ -554,8 +554,8 @@
 	protected void sequence_DocumentationCS(ISerializationContext context, DocumentationCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ImportCS returns ImportCS
@@ -566,8 +566,8 @@
 	protected void sequence_ImportCS(ISerializationContext context, ImportCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     InvCS returns LibConstraintCS
@@ -578,8 +578,8 @@
 	protected void sequence_InvCS(ISerializationContext context, LibConstraintCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     IteratorCS returns ParameterCS
@@ -599,8 +599,8 @@
 		feeder.accept(grammarAccess.getIteratorCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0(), semanticObject.getOwnedType());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     LambdaContextTypeRefCS returns TypedTypeRefCS
@@ -617,8 +617,8 @@
 		feeder.accept(grammarAccess.getLambdaContextTypeRefCSAccess().getOwnedPathNameLibPathNameCSParserRuleCall_0(), semanticObject.getOwnedPathName());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     LambdaTypeCS returns LambdaTypeCS
@@ -627,37 +627,37 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         name='Lambda' 
-	 *         ownedSignature=TemplateSignatureCS? 
-	 *         ownedContextType=LambdaContextTypeRefCS 
-	 *         (ownedParameterTypes+=TypedMultiplicityRefCS ownedParameterTypes+=TypedMultiplicityRefCS*)? 
+	 *         name='Lambda'
+	 *         ownedSignature=TemplateSignatureCS?
+	 *         ownedContextType=LambdaContextTypeRefCS
+	 *         (ownedParameterTypes+=TypedMultiplicityRefCS ownedParameterTypes+=TypedMultiplicityRefCS*)?
 	 *         ownedResultType=TypedRefCS
 	 *     )
 	 */
 	protected void sequence_LambdaTypeCS(ISerializationContext context, LambdaTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypedMultiplicityRefCS returns LambdaTypeCS
 	 *
 	 * Constraint:
 	 *     (
-	 *         name='Lambda' 
-	 *         ownedSignature=TemplateSignatureCS? 
-	 *         ownedContextType=LambdaContextTypeRefCS 
-	 *         (ownedParameterTypes+=TypedMultiplicityRefCS ownedParameterTypes+=TypedMultiplicityRefCS*)? 
-	 *         ownedResultType=TypedRefCS 
+	 *         name='Lambda'
+	 *         ownedSignature=TemplateSignatureCS?
+	 *         ownedContextType=LambdaContextTypeRefCS
+	 *         (ownedParameterTypes+=TypedMultiplicityRefCS ownedParameterTypes+=TypedMultiplicityRefCS*)?
+	 *         ownedResultType=TypedRefCS
 	 *         ownedMultiplicity=MultiplicityCS?
 	 *     )
 	 */
 	protected void sequence_LambdaTypeCS_TypedMultiplicityRefCS(ISerializationContext context, LambdaTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     LibClassCS returns LibClassCS
@@ -665,19 +665,19 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         isAbstract?='abstract'? 
-	 *         name=AnyName 
-	 *         ownedSignature=TemplateSignatureCS? 
-	 *         metaclassName=[MetaclassNameCS|AnyName]? 
-	 *         (ownedSuperTypes+=TypedRefCS ownedSuperTypes+=TypedRefCS*)? 
+	 *         isAbstract?='abstract'?
+	 *         name=AnyName
+	 *         ownedSignature=TemplateSignatureCS?
+	 *         metaclassName=[MetaclassNameCS|AnyName]?
+	 *         (ownedSuperTypes+=TypedRefCS ownedSuperTypes+=TypedRefCS*)?
 	 *         (ownedOperations+=OperationCS | ownedProperties+=LibPropertyCS | ownedConstraints+=InvCS | ownedAnnotations+=AnnotationElementCS)*
 	 *     )
 	 */
 	protected void sequence_LibClassCS(ISerializationContext context, LibClassCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     LibCoercionCS returns LibCoercionCS
@@ -685,17 +685,17 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         name=Name 
-	 *         ownedType=TypedMultiplicityRefCS 
-	 *         implementation=[JavaClassCS|SINGLE_QUOTED_STRING]? 
+	 *         name=Name
+	 *         ownedType=TypedMultiplicityRefCS
+	 *         implementation=[JavaClassCS|SINGLE_QUOTED_STRING]?
 	 *         (ownedAnnotations+=AnnotationElementCS | ownedPreconditions+=PostCS | ownedPostconditions+=PreCS)*
 	 *     )
 	 */
 	protected void sequence_LibCoercionCS(ISerializationContext context, LibCoercionCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     LibIterationCS returns LibIterationCS
@@ -703,24 +703,24 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         name=Name 
-	 *         ownedSignature=TemplateSignatureCS? 
-	 *         ownedIterators+=IteratorCS 
-	 *         ownedIterators+=IteratorCS* 
-	 *         (ownedAccumulators+=AccumulatorCS ownedAccumulators+=AccumulatorCS*)? 
-	 *         (ownedParameters+=ParameterCS ownedParameters+=ParameterCS*)? 
-	 *         ownedType=TypedMultiplicityRefCS 
-	 *         isInvalidating?='invalidating'? 
-	 *         isValidating?='validating'? 
-	 *         implementation=[JavaClassCS|SINGLE_QUOTED_STRING]? 
+	 *         name=Name
+	 *         ownedSignature=TemplateSignatureCS?
+	 *         ownedIterators+=IteratorCS
+	 *         ownedIterators+=IteratorCS*
+	 *         (ownedAccumulators+=AccumulatorCS ownedAccumulators+=AccumulatorCS*)?
+	 *         (ownedParameters+=ParameterCS ownedParameters+=ParameterCS*)?
+	 *         ownedType=TypedMultiplicityRefCS
+	 *         isInvalidating?='invalidating'?
+	 *         isValidating?='validating'?
+	 *         implementation=[JavaClassCS|SINGLE_QUOTED_STRING]?
 	 *         (ownedAnnotations+=AnnotationElementCS | ownedPreconditions+=PostCS | ownedPostconditions+=PreCS)*
 	 *     )
 	 */
 	protected void sequence_LibIterationCS(ISerializationContext context, LibIterationCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     OperationCS returns LibOperationCS
@@ -728,39 +728,39 @@
 	 *
 	 * Constraint:
 	 *     (
-	 *         isStatic?='static'? 
-	 *         name=Name 
-	 *         ownedSignature=TemplateSignatureCS? 
-	 *         (ownedParameters+=ParameterCS ownedParameters+=ParameterCS*)? 
-	 *         ownedType=TypedMultiplicityRefCS 
-	 *         isValidating?='validating'? 
-	 *         isInvalidating?='invalidating'? 
-	 *         precedence=[Precedence|Name]? 
-	 *         implementation=[JavaClassCS|SINGLE_QUOTED_STRING]? 
+	 *         isStatic?='static'?
+	 *         name=Name
+	 *         ownedSignature=TemplateSignatureCS?
+	 *         (ownedParameters+=ParameterCS ownedParameters+=ParameterCS*)?
+	 *         ownedType=TypedMultiplicityRefCS
+	 *         isValidating?='validating'?
+	 *         isInvalidating?='invalidating'?
+	 *         precedence=[Precedence|Name]?
+	 *         implementation=[JavaClassCS|SINGLE_QUOTED_STRING]?
 	 *         (ownedAnnotations+=AnnotationElementCS | ownedBodyExpressions+=SpecificationCS | ownedPostconditions+=PostCS | ownedPreconditions+=PreCS)*
 	 *     )
 	 */
 	protected void sequence_LibOperationCS(ISerializationContext context, LibOperationCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     LibPackageCS returns LibPackageCS
 	 *
 	 * Constraint:
 	 *     (
-	 *         name=Name 
-	 *         (nsPrefix=Identifier nsURI=URI)? 
+	 *         name=Name
+	 *         (nsPrefix=Identifier nsURI=URI)?
 	 *         (ownedPackages+=PackageCS | ownedPrecedences+=PrecedenceCS | ownedClasses+=ClassCS | ownedAnnotations+=AnnotationElementCS)*
 	 *     )
 	 */
 	protected void sequence_LibPackageCS(ISerializationContext context, LibPackageCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     LibPathElementCS returns PathElementCS
@@ -777,8 +777,8 @@
 		feeder.accept(grammarAccess.getLibPathElementCSAccess().getReferredElementNamedElementNameParserRuleCall_0_1(), semanticObject.getReferredElement());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     LibPathNameCS returns PathNameCS
@@ -789,26 +789,26 @@
 	protected void sequence_LibPathNameCS(ISerializationContext context, PathNameCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     LibPropertyCS returns LibPropertyCS
 	 *
 	 * Constraint:
 	 *     (
-	 *         isStatic?='static'? 
-	 *         name=Name 
-	 *         ownedType=TypedMultiplicityRefCS 
-	 *         implementation=[JavaClassCS|SINGLE_QUOTED_STRING]? 
+	 *         isStatic?='static'?
+	 *         name=Name
+	 *         ownedType=TypedMultiplicityRefCS
+	 *         implementation=[JavaClassCS|SINGLE_QUOTED_STRING]?
 	 *         ownedAnnotations+=AnnotationElementCS*
 	 *     )
 	 */
 	protected void sequence_LibPropertyCS(ISerializationContext context, LibPropertyCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     Library returns LibRootPackageCS
@@ -819,8 +819,8 @@
 	protected void sequence_Library(ISerializationContext context, LibRootPackageCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypedMultiplicityRefCS returns MapTypeCS
@@ -831,8 +831,8 @@
 	protected void sequence_MapTypeCS_TypedMultiplicityRefCS(ISerializationContext context, MapTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PackageCS returns PackageCS
@@ -843,8 +843,8 @@
 	protected void sequence_PackageCS(ISerializationContext context, PackageCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     ParameterCS returns ParameterCS
@@ -864,8 +864,8 @@
 		feeder.accept(grammarAccess.getParameterCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0(), semanticObject.getOwnedType());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PostCS returns LibConstraintCS
@@ -876,8 +876,8 @@
 	protected void sequence_PostCS(ISerializationContext context, LibConstraintCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PreCS returns LibConstraintCS
@@ -888,8 +888,8 @@
 	protected void sequence_PreCS(ISerializationContext context, LibConstraintCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     PrecedenceCS returns PrecedenceCS
@@ -900,8 +900,8 @@
 	protected void sequence_PrecedenceCS(ISerializationContext context, PrecedenceCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     SpecificationCS returns ExpSpecificationCS
@@ -918,8 +918,8 @@
 		feeder.accept(grammarAccess.getSpecificationCSAccess().getOwnedExpressionExpCSParserRuleCall_0(), semanticObject.getOwnedExpression());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TuplePartCS returns TuplePartCS
@@ -939,8 +939,8 @@
 		feeder.accept(grammarAccess.getTuplePartCSAccess().getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0(), semanticObject.getOwnedType());
 		feeder.finish();
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypedMultiplicityRefCS returns TupleTypeCS
@@ -951,23 +951,23 @@
 	protected void sequence_TupleTypeCS_TypedMultiplicityRefCS(ISerializationContext context, TupleTypeCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypedMultiplicityRefCS returns TypedTypeRefCS
 	 *
 	 * Constraint:
 	 *     (
-	 *         ((isTypeof?='typeof' ownedPathName=LibPathNameCS) | (ownedPathName=LibPathNameCS ownedBinding=TemplateBindingCS?)) 
+	 *         ((isTypeof?='typeof' ownedPathName=LibPathNameCS) | (ownedPathName=LibPathNameCS ownedBinding=TemplateBindingCS?))
 	 *         ownedMultiplicity=MultiplicityCS?
 	 *     )
 	 */
 	protected void sequence_TypedMultiplicityRefCS_TypedTypeRefCS(ISerializationContext context, TypedTypeRefCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 	/**
 	 * Contexts:
 	 *     TypedRefCS returns TypedTypeRefCS
@@ -980,6 +980,6 @@
 	protected void sequence_TypedTypeRefCS(ISerializationContext context, TypedTypeRefCS semanticObject) {
 		genericSequencer.createSequence(context, semanticObject);
 	}
-	
-	
+
+
 }
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/serializer/AbstractOCLstdlibSyntacticSequencer.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/serializer/AbstractOCLstdlibSyntacticSequencer.java
index d1c7ea5..b3367f6 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/serializer/AbstractOCLstdlibSyntacticSequencer.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/serializer/AbstractOCLstdlibSyntacticSequencer.java
@@ -37,7 +37,7 @@
 	protected AbstractElementAlias match_LibPropertyCS_SemicolonKeyword_6_1_or___LeftCurlyBracketKeyword_6_0_0_RightCurlyBracketKeyword_6_0_2__;
 	protected AbstractElementAlias match_MultiplicityCS_VerticalLineQuestionMarkKeyword_2_0_q;
 	protected AbstractElementAlias match_TupleTypeCS___LeftParenthesisKeyword_1_0_RightParenthesisKeyword_1_2__q;
-	
+
 	@Inject
 	protected void init(IGrammarAccess access) {
 		grammarAccess = (OCLstdlibGrammarAccess) access;
@@ -50,14 +50,14 @@
 		match_MultiplicityCS_VerticalLineQuestionMarkKeyword_2_0_q = new TokenAlias(false, true, grammarAccess.getMultiplicityCSAccess().getVerticalLineQuestionMarkKeyword_2_0());
 		match_TupleTypeCS___LeftParenthesisKeyword_1_0_RightParenthesisKeyword_1_2__q = new GroupAlias(false, true, new TokenAlias(false, false, grammarAccess.getTupleTypeCSAccess().getLeftParenthesisKeyword_1_0()), new TokenAlias(false, false, grammarAccess.getTupleTypeCSAccess().getRightParenthesisKeyword_1_2()));
 	}
-	
+
 	@Override
 	protected String getUnassignedRuleCallToken(EObject semanticObject, RuleCall ruleCall, INode node) {
 		if (ruleCall.getRule() == grammarAccess.getUnrestrictedNameRule())
 			return getUnrestrictedNameToken(semanticObject, ruleCall, node);
 		return "";
 	}
-	
+
 	/**
 	 * UnrestrictedName returns ecore::EString: 	EssentialOCLUnrestrictedName;
 	 */
@@ -66,7 +66,7 @@
 			return getTokenText(node);
 		return "";
 	}
-	
+
 	@Override
 	protected void emitUnassignedTokens(EObject semanticObject, ISynTransition transition, INode fromNode, INode toNode) {
 		if (transition.getAmbiguousSyntaxes().isEmpty()) return;
@@ -104,7 +104,7 @@
 	protected void emit_LibCoercionCS_SemicolonKeyword_7_1_or___LeftCurlyBracketKeyword_7_0_0_RightCurlyBracketKeyword_7_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('{' '}') | ';'
@@ -118,7 +118,7 @@
 	protected void emit_LibIterationCS_SemicolonKeyword_14_1_or___LeftCurlyBracketKeyword_14_0_0_RightCurlyBracketKeyword_14_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ';' | ('{' '}')
@@ -133,7 +133,7 @@
 	protected void emit_LibOperationCS_SemicolonKeyword_13_1_or___LeftCurlyBracketKeyword_13_0_0_RightCurlyBracketKeyword_13_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     UnrestrictedName?
@@ -152,7 +152,7 @@
 	protected void emit_LibOperationCS_UnrestrictedNameParserRuleCall_13_0_1_1_1_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     (';' 'precedence')?
@@ -163,7 +163,7 @@
 	protected void emit_LibPackageCS___SemicolonKeyword_4_1_2_PrecedenceKeyword_4_1_0__q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('{' '}') | ';'
@@ -175,7 +175,7 @@
 	protected void emit_LibPropertyCS_SemicolonKeyword_6_1_or___LeftCurlyBracketKeyword_6_0_0_RightCurlyBracketKeyword_6_0_2__(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     '|?'?
@@ -190,7 +190,7 @@
 	protected void emit_MultiplicityCS_VerticalLineQuestionMarkKeyword_2_0_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 	/**
 	 * Ambiguous syntax:
 	 *     ('(' ')')?
@@ -202,5 +202,5 @@
 	protected void emit_TupleTypeCS___LeftParenthesisKeyword_1_0_RightParenthesisKeyword_1_2__q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
 		acceptNodes(transition, nodes);
 	}
-	
+
 }
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 6ec685e..45984a2 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
@@ -24,8 +24,8 @@
 
 @Singleton
 public class OCLstdlibGrammarAccess extends AbstractGrammarElementFinder {
-	
-	
+
+
 	public class LibraryElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.Library");
 		private final Group cGroup = (Group)rule.eContents().get(1);
@@ -35,10 +35,11 @@
 		private final Keyword cSemicolonKeyword_0_1 = (Keyword)cGroup_0.eContents().get(1);
 		private final Assignment cOwnedPackagesAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final RuleCall cOwnedPackagesLibPackageCSParserRuleCall_1_0 = (RuleCall)cOwnedPackagesAssignment_1.eContents().get(0);
-		
+
 		////generate OCLstdlib "http://www.eclipse.org/ocl/examples/xtext/oclstdlib/OCLstdlibCST"
-		// Library LibRootPackageCS:
-		//	(ownedImports+=ImportCS ';')* ownedPackages+=LibPackageCS*
+		//Library LibRootPackageCS:
+		//	(ownedImports+=ImportCS ';')*
+		//	ownedPackages+=LibPackageCS*
 		@Override public ParserRule getRule() { return rule; }
 
 		//(ownedImports+=ImportCS ';')* ownedPackages+=LibPackageCS*
@@ -68,9 +69,10 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final RuleCall cIDParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cRestrictedKeywordsParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		//Identifier:
-		//	ID | RestrictedKeywords;
+		//	ID
+		//	| RestrictedKeywords;
 		@Override public ParserRule getRule() { return rule; }
 
 		//ID | RestrictedKeywords
@@ -107,20 +109,39 @@
 		private final Keyword cStaticKeyword_18 = (Keyword)cAlternatives.eContents().get(18);
 		private final Keyword cTypeKeyword_19 = (Keyword)cAlternatives.eContents().get(19);
 		private final Keyword cValidatingKeyword_20 = (Keyword)cAlternatives.eContents().get(20);
-		
+
 		//RestrictedKeywords:
-		//	'abstract' | 'annotation' | 'conformsTo' | 'documentation' | 'extends' | 'import' | 'inv' | 'invalidating' |
-		//	'iteration' | 'left' | 'library' | 'operation' | 'package' | 'post' | 'pre' | 'precedence' | 'property' | 'right' |
-		//	'static' | 'type' //|	'typeof'
-		// | 'validating' //|	'Lambda'
-		// //|	'Tuple'
+		//	'abstract'
+		//	| 'annotation'
+		//	| 'conformsTo'
+		//	| 'documentation'
+		//	| 'extends'
+		//	| 'import'
+		//	| 'inv'
+		//	| 'invalidating'
+		//	| 'iteration'
+		//	| 'left'
+		//	| 'library'
+		//	| 'operation'
+		//	| 'package'
+		//	| 'post'
+		//	| 'pre'
+		//	| 'precedence'
+		//	| 'property'
+		//	| 'right'
+		//	| 'static'
+		//	| 'type'
+		//	//|	'typeof'
+		//	| 'validating'
+		//	//|	'Lambda'
+		//	//|	'Tuple'
 		//;
 		@Override public ParserRule getRule() { return rule; }
 
 		//'abstract' | 'annotation' | 'conformsTo' | 'documentation' | 'extends' | 'import' | 'inv' | 'invalidating' | 'iteration'
 		//| 'left' | 'library' | 'operation' | 'package' | 'post' | 'pre' | 'precedence' | 'property' | 'right' | 'static' |
 		//'type' //|	'typeof'
-		// | 'validating'
+		//| 'validating'
 		public Alternatives getAlternatives() { return cAlternatives; }
 
 		//'abstract'
@@ -195,9 +216,13 @@
 		private final RuleCall cEssentialOCLReservedKeywordParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
 		private final RuleCall cPrimitiveTypeIdentifierParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
 		private final RuleCall cCollectionTypeIdentifierParserRuleCall_4 = (RuleCall)cAlternatives.eContents().get(4);
-		
+
 		//Name:
-		//	Identifier | DOUBLE_QUOTED_STRING | EssentialOCLReservedKeyword | PrimitiveTypeIdentifier | CollectionTypeIdentifier;
+		//	Identifier
+		//	| DOUBLE_QUOTED_STRING
+		//	| EssentialOCLReservedKeyword
+		//	| PrimitiveTypeIdentifier
+		//	| CollectionTypeIdentifier;
 		@Override public ParserRule getRule() { return rule; }
 
 		//Identifier | DOUBLE_QUOTED_STRING | EssentialOCLReservedKeyword | PrimitiveTypeIdentifier | CollectionTypeIdentifier
@@ -226,9 +251,12 @@
 		private final Keyword cLambdaKeyword_1 = (Keyword)cAlternatives.eContents().get(1);
 		private final Keyword cMapKeyword_2 = (Keyword)cAlternatives.eContents().get(2);
 		private final Keyword cTupleKeyword_3 = (Keyword)cAlternatives.eContents().get(3);
-		
+
 		//AnyName:
-		//	Name | 'Lambda' | 'Map' | 'Tuple';
+		//	Name
+		//	| 'Lambda'
+		//	| 'Map'
+		//	| 'Tuple';
 		@Override public ParserRule getRule() { return rule; }
 
 		//Name | 'Lambda' | 'Map' | 'Tuple'
@@ -256,7 +284,7 @@
 		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 cOwnedPathElementsLibPathElementCSParserRuleCall_1_1_0 = (RuleCall)cOwnedPathElementsAssignment_1_1.eContents().get(0);
-		
+
 		//LibPathNameCS base::PathNameCS:
 		//	ownedPathElements+=LibPathElementCS ('::' ownedPathElements+=LibPathElementCS)*
 		@Override public ParserRule getRule() { return rule; }
@@ -288,7 +316,7 @@
 		private final Assignment cReferredElementAssignment = (Assignment)rule.eContents().get(1);
 		private final CrossReference cReferredElementNamedElementCrossReference_0 = (CrossReference)cReferredElementAssignment.eContents().get(0);
 		private final RuleCall cReferredElementNamedElementNameParserRuleCall_0_1 = (RuleCall)cReferredElementNamedElementCrossReference_0.eContents().get(1);
-		
+
 		//LibPathElementCS base::PathElementCS:
 		//	referredElement=[pivot::NamedElement|Name]
 		@Override public ParserRule getRule() { return rule; }
@@ -311,7 +339,7 @@
 		private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		private final Assignment cOwnedTypeAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0 = (RuleCall)cOwnedTypeAssignment_2.eContents().get(0);
-		
+
 		//AccumulatorCS base::ParameterCS:
 		//	name=Identifier ':' ownedType=TypedMultiplicityRefCS
 		@Override public ParserRule getRule() { return rule; }
@@ -359,7 +387,7 @@
 		private final RuleCall cOwnedAnnotationsAnnotationElementCSParserRuleCall_3_0_1_0 = (RuleCall)cOwnedAnnotationsAssignment_3_0_1.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_3_0_2 = (Keyword)cGroup_3_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_3_1 = (Keyword)cAlternatives_3.eContents().get(1);
-		
+
 		//AnnotationCS base::AnnotationCS:
 		//	'annotation' name=(Identifier | SINGLE_QUOTED_STRING) ('(' ownedDetails+=DetailCS (',' ownedDetails+=DetailCS)* ')')?
 		//	('{' ownedAnnotations+=AnnotationElementCS '}' | ';')
@@ -438,7 +466,7 @@
 		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
 		private final RuleCall cAnnotationCSParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cDocumentationCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
-		
+
 		//AnnotationElementCS base::AnnotationElementCS:
 		//	AnnotationCS | DocumentationCS
 		@Override public ParserRule getRule() { return rule; }
@@ -487,12 +515,15 @@
 		private final Assignment cOwnedAnnotationsAssignment_7_3 = (Assignment)cAlternatives_7.eContents().get(3);
 		private final RuleCall cOwnedAnnotationsAnnotationElementCSParserRuleCall_7_3_0 = (RuleCall)cOwnedAnnotationsAssignment_7_3.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8);
-		
+
 		//LibClassCS:
-		//	isAbstract?='abstract'? 'type' name=AnyName ownedSignature=TemplateSignatureCS? (':'
-		//	metaclassName=[MetaclassNameCS|AnyName])? ('conformsTo' ownedSuperTypes+=TypedRefCS (','
-		//	ownedSuperTypes+=TypedRefCS)*)? '{' (ownedOperations+=OperationCS | ownedProperties+=LibPropertyCS |
-		//	ownedConstraints+=InvCS | ownedAnnotations+=AnnotationElementCS)* '}';
+		//	isAbstract?='abstract'? 'type' name=AnyName
+		//	ownedSignature=TemplateSignatureCS? (':' metaclassName=[MetaclassNameCS|AnyName])? ('conformsTo'
+		//	ownedSuperTypes+=TypedRefCS (',' ownedSuperTypes+=TypedRefCS)*)?
+		//	'{' (ownedOperations+=OperationCS
+		//	| ownedProperties+=LibPropertyCS
+		//	| ownedConstraints+=InvCS
+		//	| ownedAnnotations+=AnnotationElementCS)* '}';
 		@Override public ParserRule getRule() { return rule; }
 
 		//isAbstract?='abstract'? 'type' name=AnyName ownedSignature=TemplateSignatureCS? (':'
@@ -599,7 +630,7 @@
 	public class ClassCSElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.ClassCS");
 		private final RuleCall cLibClassCSParserRuleCall = (RuleCall)rule.eContents().get(1);
-		
+
 		//ClassCS base::ClassCS:
 		//	LibClassCS
 		@Override public ParserRule getRule() { return rule; }
@@ -620,7 +651,7 @@
 		private final Alternatives cValuesAlternatives_2_0 = (Alternatives)cValuesAssignment_2.eContents().get(0);
 		private final RuleCall cValuesSINGLE_QUOTED_STRINGTerminalRuleCall_2_0_0 = (RuleCall)cValuesAlternatives_2_0.eContents().get(0);
 		private final RuleCall cValuesML_SINGLE_QUOTED_STRINGTerminalRuleCall_2_0_1 = (RuleCall)cValuesAlternatives_2_0.eContents().get(1);
-		
+
 		//DetailCS base::DetailCS:
 		//	name=(Name | SINGLE_QUOTED_STRING) '=' values+=(SINGLE_QUOTED_STRING | ML_SINGLE_QUOTED_STRING)*
 		@Override public ParserRule getRule() { return rule; }
@@ -673,10 +704,11 @@
 		private final RuleCall cOwnedDetailsDetailCSParserRuleCall_3_2_1_0 = (RuleCall)cOwnedDetailsAssignment_3_2_1.eContents().get(0);
 		private final Keyword cRightParenthesisKeyword_3_3 = (Keyword)cGroup_3.eContents().get(3);
 		private final Keyword cSemicolonKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//DocumentationCS base::DocumentationCS:
 		//	{base::DocumentationCS} 'documentation' value=SINGLE_QUOTED_STRING? ('(' ownedDetails+=DetailCS (','
-		//	ownedDetails+=DetailCS)* ')')? ';'
+		//	ownedDetails+=DetailCS)* ')')?
+		//	';'
 		@Override public ParserRule getRule() { return rule; }
 
 		//{base::DocumentationCS} 'documentation' value=SINGLE_QUOTED_STRING? ('(' ownedDetails+=DetailCS (','
@@ -738,7 +770,7 @@
 		private final RuleCall cOwnedPathNameURIPathNameCSParserRuleCall_2_0 = (RuleCall)cOwnedPathNameAssignment_2.eContents().get(0);
 		private final Assignment cIsAllAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final Keyword cIsAllColonColonAsteriskKeyword_3_0 = (Keyword)cIsAllAssignment_3.eContents().get(0);
-		
+
 		//ImportCS base::ImportCS:
 		//	'import' (name=Identifier ':')? ownedPathName=URIPathNameCS isAll?='::*'?
 		@Override public ParserRule getRule() { return rule; }
@@ -791,7 +823,7 @@
 		private final Assignment cOwnedSpecificationAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cOwnedSpecificationSpecificationCSParserRuleCall_3_0 = (RuleCall)cOwnedSpecificationAssignment_3.eContents().get(0);
 		private final Keyword cSemicolonKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//InvCS LibConstraintCS:
 		//	stereotype='inv' (name=UnrestrictedName ('(' ownedMessageSpecification=SpecificationCS ')')?)? ':'
 		//	ownedSpecification=SpecificationCS ';'
@@ -872,11 +904,12 @@
 		private final RuleCall cOwnedPostconditionsPreCSParserRuleCall_7_0_1_2_0 = (RuleCall)cOwnedPostconditionsAssignment_7_0_1_2.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_7_0_2 = (Keyword)cGroup_7_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_7_1 = (Keyword)cAlternatives_7.eContents().get(1);
-		
+
 		//LibCoercionCS:
 		//	'coercion' name=Name '(' ')' ':' ownedType=TypedMultiplicityRefCS ('=>'
-		//	implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{' (ownedAnnotations+=AnnotationElementCS |
-		//	ownedPreconditions+=PostCS | ownedPostconditions+=PreCS)* '}' | ';');
+		//	implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{' (ownedAnnotations+=AnnotationElementCS
+		//	| ownedPreconditions+=PostCS
+		//	| ownedPostconditions+=PreCS)* '}' | ';');
 		@Override public ParserRule getRule() { return rule; }
 
 		//'coercion' name=Name '(' ')' ':' ownedType=TypedMultiplicityRefCS ('=>'
@@ -1016,13 +1049,19 @@
 		private final RuleCall cOwnedPostconditionsPreCSParserRuleCall_14_0_1_2_0 = (RuleCall)cOwnedPostconditionsAssignment_14_0_1_2.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_14_0_2 = (Keyword)cGroup_14_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_14_1 = (Keyword)cAlternatives_14.eContents().get(1);
-		
+
 		//LibIterationCS:
-		//	'iteration' name=Name ownedSignature=TemplateSignatureCS? '(' ownedIterators+=IteratorCS (','
-		//	ownedIterators+=IteratorCS)* (';' ownedAccumulators+=AccumulatorCS (',' ownedAccumulators+=AccumulatorCS)*)? ('|'
-		//	ownedParameters+=ParameterCS (',' ownedParameters+=ParameterCS)*)? ')' ':' ownedType=TypedMultiplicityRefCS
-		//	isInvalidating?='invalidating'? isValidating?='validating'? ('=>' implementation=[JavaClassCS|SINGLE_QUOTED_STRING])?
-		//	('{' (ownedAnnotations+=AnnotationElementCS | ownedPreconditions+=PostCS | ownedPostconditions+=PreCS)* '}' | ';');
+		//	'iteration' name=Name
+		//	ownedSignature=TemplateSignatureCS?
+		//	'(' ownedIterators+=IteratorCS (',' ownedIterators+=IteratorCS)* (';' ownedAccumulators+=AccumulatorCS (','
+		//	ownedAccumulators+=AccumulatorCS)*)? ('|' ownedParameters+=ParameterCS (',' ownedParameters+=ParameterCS)*)?
+		//	')'
+		//	':' ownedType=TypedMultiplicityRefCS
+		//	isInvalidating?='invalidating'?
+		//	isValidating?='validating'? ('=>' implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{'
+		//	(ownedAnnotations+=AnnotationElementCS
+		//	| ownedPreconditions+=PostCS
+		//	| ownedPostconditions+=PreCS)* '}' | ';');
 		@Override public ParserRule getRule() { return rule; }
 
 		//'iteration' name=Name ownedSignature=TemplateSignatureCS? '(' ownedIterators+=IteratorCS (','
@@ -1200,7 +1239,7 @@
 		private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		private final Assignment cOwnedTypeAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0 = (RuleCall)cOwnedTypeAssignment_2.eContents().get(0);
-		
+
 		//IteratorCS base::ParameterCS:
 		//	name=Identifier ':' ownedType=TypedMultiplicityRefCS
 		@Override public ParserRule getRule() { return rule; }
@@ -1245,11 +1284,11 @@
 		private final Keyword cColonKeyword_6 = (Keyword)cGroup.eContents().get(6);
 		private final Assignment cOwnedResultTypeAssignment_7 = (Assignment)cGroup.eContents().get(7);
 		private final RuleCall cOwnedResultTypeTypedRefCSParserRuleCall_7_0 = (RuleCall)cOwnedResultTypeAssignment_7.eContents().get(0);
-		
+
 		//LambdaTypeCS base::LambdaTypeCS:
-		//	name='Lambda' ownedSignature=TemplateSignatureCS? ownedContextType=LambdaContextTypeRefCS '('
-		//	(ownedParameterTypes+=TypedMultiplicityRefCS (',' ownedParameterTypes+=TypedMultiplicityRefCS)*)? ')' ':'
-		//	ownedResultType=TypedRefCS
+		//	name='Lambda' ownedSignature=TemplateSignatureCS? ownedContextType=LambdaContextTypeRefCS
+		//	'(' (ownedParameterTypes+=TypedMultiplicityRefCS (',' ownedParameterTypes+=TypedMultiplicityRefCS)*)? ')'
+		//	':' ownedResultType=TypedRefCS
 		@Override public ParserRule getRule() { return rule; }
 
 		//name='Lambda' ownedSignature=TemplateSignatureCS? ownedContextType=LambdaContextTypeRefCS '('
@@ -1316,7 +1355,7 @@
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.LambdaContextTypeRefCS");
 		private final Assignment cOwnedPathNameAssignment = (Assignment)rule.eContents().get(1);
 		private final RuleCall cOwnedPathNameLibPathNameCSParserRuleCall_0 = (RuleCall)cOwnedPathNameAssignment.eContents().get(0);
-		
+
 		//LambdaContextTypeRefCS base::TypedTypeRefCS:
 		//	ownedPathName=LibPathNameCS
 		@Override public ParserRule getRule() { return rule; }
@@ -1334,7 +1373,7 @@
 		private final RuleCall cLibCoercionCSParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
 		private final RuleCall cLibIterationCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
 		private final RuleCall cLibOperationCSParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
-		
+
 		//OperationCS base::OperationCS:
 		//	LibCoercionCS | LibIterationCS | LibOperationCS
 		@Override public ParserRule getRule() { return rule; }
@@ -1408,14 +1447,17 @@
 		private final RuleCall cOwnedPreconditionsPreCSParserRuleCall_13_0_1_3_0 = (RuleCall)cOwnedPreconditionsAssignment_13_0_1_3.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_13_0_2 = (Keyword)cGroup_13_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_13_1 = (Keyword)cAlternatives_13.eContents().get(1);
-		
+
 		//LibOperationCS:
-		//	isStatic?='static'? 'operation' name=Name ownedSignature=TemplateSignatureCS? '(' (ownedParameters+=ParameterCS (','
-		//	ownedParameters+=ParameterCS)*)? ')' ':' ownedType=TypedMultiplicityRefCS isValidating?='validating'?
+		//	isStatic?='static'? 'operation' name=Name
+		//	ownedSignature=TemplateSignatureCS?
+		//	'(' (ownedParameters+=ParameterCS (',' ownedParameters+=ParameterCS)*)? ')'
+		//	':' ownedType=TypedMultiplicityRefCS
+		//	isValidating?='validating'?
 		//	isInvalidating?='invalidating'? ('precedence' '=' precedence=[pivot::Precedence|Name])? ('=>'
-		//	implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{' (ownedAnnotations+=AnnotationElementCS | 'body'
-		//	UnrestrictedName? ':' ownedBodyExpressions+=SpecificationCS ';' | ownedPostconditions+=PostCS |
-		//	ownedPreconditions+=PreCS)* '}' | ';');
+		//	implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{' (ownedAnnotations+=AnnotationElementCS
+		//	| 'body' UnrestrictedName? ':' ownedBodyExpressions+=SpecificationCS ';' | ownedPostconditions+=PostCS
+		//	| ownedPreconditions+=PreCS)* '}' | ';');
 		@Override public ParserRule getRule() { return rule; }
 
 		//isStatic?='static'? 'operation' name=Name ownedSignature=TemplateSignatureCS? '(' (ownedParameters+=ParameterCS (','
@@ -1616,10 +1658,13 @@
 		private final Assignment cOwnedAnnotationsAssignment_4_3 = (Assignment)cAlternatives_4.eContents().get(3);
 		private final RuleCall cOwnedAnnotationsAnnotationElementCSParserRuleCall_4_3_0 = (RuleCall)cOwnedAnnotationsAssignment_4_3.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-		
+
 		//LibPackageCS:
-		//	'library' name=Name (':' nsPrefix=Identifier '=' nsURI=URI)? '{' (ownedPackages+=PackageCS | 'precedence'
-		//	ownedPrecedences+=PrecedenceCS+ ';' | ownedClasses+=ClassCS | ownedAnnotations+=AnnotationElementCS)* '}';
+		//	'library' name=Name (':' nsPrefix=Identifier '=' nsURI=URI)?
+		//	'{' (ownedPackages+=PackageCS
+		//	| 'precedence' ownedPrecedences+=PrecedenceCS+ ';' | ownedClasses+=ClassCS
+		//	| ownedAnnotations+=AnnotationElementCS)*
+		//	'}';
 		@Override public ParserRule getRule() { return rule; }
 
 		//'library' name=Name (':' nsPrefix=Identifier '=' nsURI=URI)? '{' (ownedPackages+=PackageCS | 'precedence'
@@ -1722,10 +1767,13 @@
 		private final Assignment cOwnedAnnotationsAssignment_4_2 = (Assignment)cAlternatives_4.eContents().get(2);
 		private final RuleCall cOwnedAnnotationsAnnotationElementCSParserRuleCall_4_2_0 = (RuleCall)cOwnedAnnotationsAssignment_4_2.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5);
-		
+
 		//PackageCS base::PackageCS:
-		//	'package' name=Name (':' nsPrefix=Identifier '=' nsURI=URI)? '{' (ownedPackages+=PackageCS | ownedClasses+=ClassCS |
-		//	ownedAnnotations+=AnnotationElementCS)* '}'
+		//	'package' name=Name (':' nsPrefix=Identifier '=' nsURI=URI)?
+		//	'{' (ownedPackages+=PackageCS
+		//	| ownedClasses+=ClassCS
+		//	| ownedAnnotations+=AnnotationElementCS)*
+		//	'}'
 		@Override public ParserRule getRule() { return rule; }
 
 		//'package' name=Name (':' nsPrefix=Identifier '=' nsURI=URI)? '{' (ownedPackages+=PackageCS | ownedClasses+=ClassCS |
@@ -1798,7 +1846,7 @@
 		private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		private final Assignment cOwnedTypeAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0 = (RuleCall)cOwnedTypeAssignment_2.eContents().get(0);
-		
+
 		//ParameterCS base::ParameterCS:
 		//	name=Identifier ':' ownedType=TypedMultiplicityRefCS
 		@Override public ParserRule getRule() { return rule; }
@@ -1845,10 +1893,11 @@
 		private final RuleCall cOwnedAnnotationsAnnotationElementCSParserRuleCall_6_0_1_0 = (RuleCall)cOwnedAnnotationsAssignment_6_0_1.eContents().get(0);
 		private final Keyword cRightCurlyBracketKeyword_6_0_2 = (Keyword)cGroup_6_0.eContents().get(2);
 		private final Keyword cSemicolonKeyword_6_1 = (Keyword)cAlternatives_6.eContents().get(1);
-		
+
 		//LibPropertyCS:
-		//	isStatic?='static'? 'property' name=Name ':' ownedType=TypedMultiplicityRefCS ('=>'
-		//	implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{' ownedAnnotations+=AnnotationElementCS* '}' | ';');
+		//	isStatic?='static'? 'property' name=Name
+		//	':' ownedType=TypedMultiplicityRefCS ('=>' implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{'
+		//	ownedAnnotations+=AnnotationElementCS* '}' | ';');
 		@Override public ParserRule getRule() { return rule; }
 
 		//isStatic?='static'? 'property' name=Name ':' ownedType=TypedMultiplicityRefCS ('=>'
@@ -1933,7 +1982,7 @@
 		private final Assignment cOwnedSpecificationAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cOwnedSpecificationSpecificationCSParserRuleCall_3_0 = (RuleCall)cOwnedSpecificationAssignment_3.eContents().get(0);
 		private final Keyword cSemicolonKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//PostCS LibConstraintCS:
 		//	stereotype='post' (name=UnrestrictedName ('(' ownedMessageSpecification=SpecificationCS ')')?)? ':'
 		//	ownedSpecification=SpecificationCS ';'
@@ -2003,7 +2052,7 @@
 		private final Assignment cOwnedSpecificationAssignment_3 = (Assignment)cGroup.eContents().get(3);
 		private final RuleCall cOwnedSpecificationSpecificationCSParserRuleCall_3_0 = (RuleCall)cOwnedSpecificationAssignment_3.eContents().get(0);
 		private final Keyword cSemicolonKeyword_4 = (Keyword)cGroup.eContents().get(4);
-		
+
 		//PreCS LibConstraintCS:
 		//	stereotype='pre' (name=UnrestrictedName ('(' ownedMessageSpecification=SpecificationCS ')')?)? ':'
 		//	ownedSpecification=SpecificationCS ';'
@@ -2066,7 +2115,7 @@
 		private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cNameNameParserRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0);
-		
+
 		//PrecedenceCS:
 		//	('left' | isRightAssociative?='right') ':' name=Name;
 		@Override public ParserRule getRule() { return rule; }
@@ -2100,7 +2149,7 @@
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.ocl.xtext.oclstdlib.OCLstdlib.SpecificationCS");
 		private final Assignment cOwnedExpressionAssignment = (Assignment)rule.eContents().get(1);
 		private final RuleCall cOwnedExpressionExpCSParserRuleCall_0 = (RuleCall)cOwnedExpressionAssignment.eContents().get(0);
-		
+
 		//SpecificationCS essentialocl::ExpSpecificationCS:
 		//	ownedExpression=ExpCS
 		@Override public ParserRule getRule() { return rule; }
@@ -2122,7 +2171,7 @@
 		private final RuleCall cLambdaTypeCSParserRuleCall_0_3 = (RuleCall)cAlternatives_0.eContents().get(3);
 		private final Assignment cOwnedMultiplicityAssignment_1 = (Assignment)cGroup.eContents().get(1);
 		private final RuleCall cOwnedMultiplicityMultiplicityCSParserRuleCall_1_0 = (RuleCall)cOwnedMultiplicityAssignment_1.eContents().get(0);
-		
+
 		//TypedMultiplicityRefCS base::TypedRefCS:
 		//	(MapTypeCS | TupleTypeCS | TypedTypeRefCS | LambdaTypeCS) ownedMultiplicity=MultiplicityCS?
 		@Override public ParserRule getRule() { return rule; }
@@ -2159,12 +2208,11 @@
 		private final RuleCall cTupleTypeCSParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
 		private final RuleCall cTypedTypeRefCSParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
 		private final RuleCall cLambdaTypeCSParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
-		
+
 		////---------------------------------------------------------------------------------
-		// //	Base overrides
-		//
+		////	Base overrides
 		////---------------------------------------------------------------------------------
-		// TypedRefCS base::TypedRefCS:
+		//TypedRefCS base::TypedRefCS:
 		//	MapTypeCS | TupleTypeCS | TypedTypeRefCS | LambdaTypeCS
 		@Override public ParserRule getRule() { return rule; }
 
@@ -2202,7 +2250,7 @@
 		private final Assignment cOwnedBindingAssignment_1_1_1 = (Assignment)cGroup_1_1.eContents().get(1);
 		private final RuleCall cOwnedBindingTemplateBindingCSParserRuleCall_1_1_1_0 = (RuleCall)cOwnedBindingAssignment_1_1_1.eContents().get(0);
 		private final Keyword cRightParenthesisKeyword_1_1_2 = (Keyword)cGroup_1_1.eContents().get(2);
-		
+
 		//TypedTypeRefCS base::TypedTypeRefCS:
 		//	isTypeof?='typeof' '(' ownedPathName=LibPathNameCS ')' | ownedPathName=LibPathNameCS ('('
 		//	ownedBinding=TemplateBindingCS ')')?
@@ -2266,12 +2314,11 @@
 		private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1);
 		private final Assignment cOwnedTypeAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0 = (RuleCall)cOwnedTypeAssignment_2.eContents().get(0);
-		
+
 		////---------------------------------------------------------------------------------
-		// //	EssentialOCL overrides
-		//
+		////	EssentialOCL overrides
 		////---------------------------------------------------------------------------------
-		// TuplePartCS base::TuplePartCS:
+		//TuplePartCS base::TuplePartCS:
 		//	name=Identifier ':' ownedType=TypedMultiplicityRefCS
 		@Override public ParserRule getRule() { return rule; }
 
@@ -2293,8 +2340,8 @@
 		//TypedMultiplicityRefCS
 		public RuleCall getOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0() { return cOwnedTypeTypedMultiplicityRefCSParserRuleCall_2_0; }
 	}
-	
-	
+
+
 	private final LibraryElements pLibrary;
 	private final IdentifierElements pIdentifier;
 	private final RestrictedKeywordsElements pRestrictedKeywords;
@@ -2330,7 +2377,7 @@
 	private final TypedRefCSElements pTypedRefCS;
 	private final TypedTypeRefCSElements pTypedTypeRefCS;
 	private final TuplePartCSElements pTuplePartCS;
-	
+
 	private final Grammar grammar;
 
 	private final EssentialOCLGrammarAccess gaEssentialOCL;
@@ -2380,7 +2427,7 @@
 		this.pTypedTypeRefCS = new TypedTypeRefCSElements();
 		this.pTuplePartCS = new TuplePartCSElements();
 	}
-	
+
 	protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
 		Grammar grammar = grammarProvider.getGrammar(this);
 		while (grammar != null) {
@@ -2396,12 +2443,12 @@
 		}
 		return grammar;
 	}
-	
+
 	@Override
 	public Grammar getGrammar() {
 		return grammar;
 	}
-	
+
 
 	public EssentialOCLGrammarAccess getEssentialOCLGrammarAccess() {
 		return gaEssentialOCL;
@@ -2411,59 +2458,87 @@
 		return gaBase;
 	}
 
-	
+
 	////generate OCLstdlib "http://www.eclipse.org/ocl/examples/xtext/oclstdlib/OCLstdlibCST"
-	// Library LibRootPackageCS:
-	//	(ownedImports+=ImportCS ';')* ownedPackages+=LibPackageCS*
+	//Library LibRootPackageCS:
+	//	(ownedImports+=ImportCS ';')*
+	//	ownedPackages+=LibPackageCS*
 	public LibraryElements getLibraryAccess() {
 		return pLibrary;
 	}
-	
+
 	public ParserRule getLibraryRule() {
 		return getLibraryAccess().getRule();
 	}
 
 	//Identifier:
-	//	ID | RestrictedKeywords;
+	//	ID
+	//	| RestrictedKeywords;
 	public IdentifierElements getIdentifierAccess() {
 		return pIdentifier;
 	}
-	
+
 	public ParserRule getIdentifierRule() {
 		return getIdentifierAccess().getRule();
 	}
 
 	//RestrictedKeywords:
-	//	'abstract' | 'annotation' | 'conformsTo' | 'documentation' | 'extends' | 'import' | 'inv' | 'invalidating' |
-	//	'iteration' | 'left' | 'library' | 'operation' | 'package' | 'post' | 'pre' | 'precedence' | 'property' | 'right' |
-	//	'static' | 'type' //|	'typeof'
-	// | 'validating' //|	'Lambda'
-	// //|	'Tuple'
+	//	'abstract'
+	//	| 'annotation'
+	//	| 'conformsTo'
+	//	| 'documentation'
+	//	| 'extends'
+	//	| 'import'
+	//	| 'inv'
+	//	| 'invalidating'
+	//	| 'iteration'
+	//	| 'left'
+	//	| 'library'
+	//	| 'operation'
+	//	| 'package'
+	//	| 'post'
+	//	| 'pre'
+	//	| 'precedence'
+	//	| 'property'
+	//	| 'right'
+	//	| 'static'
+	//	| 'type'
+	//	//|	'typeof'
+	//	| 'validating'
+	//	//|	'Lambda'
+	//	//|	'Tuple'
 	//;
 	public RestrictedKeywordsElements getRestrictedKeywordsAccess() {
 		return pRestrictedKeywords;
 	}
-	
+
 	public ParserRule getRestrictedKeywordsRule() {
 		return getRestrictedKeywordsAccess().getRule();
 	}
 
 	//Name:
-	//	Identifier | DOUBLE_QUOTED_STRING | EssentialOCLReservedKeyword | PrimitiveTypeIdentifier | CollectionTypeIdentifier;
+	//	Identifier
+	//	| DOUBLE_QUOTED_STRING
+	//	| EssentialOCLReservedKeyword
+	//	| PrimitiveTypeIdentifier
+	//	| CollectionTypeIdentifier;
 	public NameElements getNameAccess() {
 		return pName;
 	}
-	
+
 	public ParserRule getNameRule() {
 		return getNameAccess().getRule();
 	}
 
 	//AnyName:
-	//	Name | 'Lambda' | 'Map' | 'Tuple';
+	//	Name
+	//	| 'Lambda'
+	//	| 'Map'
+	//	| 'Tuple';
 	public AnyNameElements getAnyNameAccess() {
 		return pAnyName;
 	}
-	
+
 	public ParserRule getAnyNameRule() {
 		return getAnyNameAccess().getRule();
 	}
@@ -2473,7 +2548,7 @@
 	public LibPathNameCSElements getLibPathNameCSAccess() {
 		return pLibPathNameCS;
 	}
-	
+
 	public ParserRule getLibPathNameCSRule() {
 		return getLibPathNameCSAccess().getRule();
 	}
@@ -2483,7 +2558,7 @@
 	public LibPathElementCSElements getLibPathElementCSAccess() {
 		return pLibPathElementCS;
 	}
-	
+
 	public ParserRule getLibPathElementCSRule() {
 		return getLibPathElementCSAccess().getRule();
 	}
@@ -2493,7 +2568,7 @@
 	public AccumulatorCSElements getAccumulatorCSAccess() {
 		return pAccumulatorCS;
 	}
-	
+
 	public ParserRule getAccumulatorCSRule() {
 		return getAccumulatorCSAccess().getRule();
 	}
@@ -2504,7 +2579,7 @@
 	public AnnotationCSElements getAnnotationCSAccess() {
 		return pAnnotationCS;
 	}
-	
+
 	public ParserRule getAnnotationCSRule() {
 		return getAnnotationCSAccess().getRule();
 	}
@@ -2514,20 +2589,23 @@
 	public AnnotationElementCSElements getAnnotationElementCSAccess() {
 		return pAnnotationElementCS;
 	}
-	
+
 	public ParserRule getAnnotationElementCSRule() {
 		return getAnnotationElementCSAccess().getRule();
 	}
 
 	//LibClassCS:
-	//	isAbstract?='abstract'? 'type' name=AnyName ownedSignature=TemplateSignatureCS? (':'
-	//	metaclassName=[MetaclassNameCS|AnyName])? ('conformsTo' ownedSuperTypes+=TypedRefCS (','
-	//	ownedSuperTypes+=TypedRefCS)*)? '{' (ownedOperations+=OperationCS | ownedProperties+=LibPropertyCS |
-	//	ownedConstraints+=InvCS | ownedAnnotations+=AnnotationElementCS)* '}';
+	//	isAbstract?='abstract'? 'type' name=AnyName
+	//	ownedSignature=TemplateSignatureCS? (':' metaclassName=[MetaclassNameCS|AnyName])? ('conformsTo'
+	//	ownedSuperTypes+=TypedRefCS (',' ownedSuperTypes+=TypedRefCS)*)?
+	//	'{' (ownedOperations+=OperationCS
+	//	| ownedProperties+=LibPropertyCS
+	//	| ownedConstraints+=InvCS
+	//	| ownedAnnotations+=AnnotationElementCS)* '}';
 	public LibClassCSElements getLibClassCSAccess() {
 		return pLibClassCS;
 	}
-	
+
 	public ParserRule getLibClassCSRule() {
 		return getLibClassCSAccess().getRule();
 	}
@@ -2537,7 +2615,7 @@
 	public ClassCSElements getClassCSAccess() {
 		return pClassCS;
 	}
-	
+
 	public ParserRule getClassCSRule() {
 		return getClassCSAccess().getRule();
 	}
@@ -2547,18 +2625,19 @@
 	public DetailCSElements getDetailCSAccess() {
 		return pDetailCS;
 	}
-	
+
 	public ParserRule getDetailCSRule() {
 		return getDetailCSAccess().getRule();
 	}
 
 	//DocumentationCS base::DocumentationCS:
 	//	{base::DocumentationCS} 'documentation' value=SINGLE_QUOTED_STRING? ('(' ownedDetails+=DetailCS (','
-	//	ownedDetails+=DetailCS)* ')')? ';'
+	//	ownedDetails+=DetailCS)* ')')?
+	//	';'
 	public DocumentationCSElements getDocumentationCSAccess() {
 		return pDocumentationCS;
 	}
-	
+
 	public ParserRule getDocumentationCSRule() {
 		return getDocumentationCSAccess().getRule();
 	}
@@ -2568,7 +2647,7 @@
 	public ImportCSElements getImportCSAccess() {
 		return pImportCS;
 	}
-	
+
 	public ParserRule getImportCSRule() {
 		return getImportCSAccess().getRule();
 	}
@@ -2579,33 +2658,40 @@
 	public InvCSElements getInvCSAccess() {
 		return pInvCS;
 	}
-	
+
 	public ParserRule getInvCSRule() {
 		return getInvCSAccess().getRule();
 	}
 
 	//LibCoercionCS:
 	//	'coercion' name=Name '(' ')' ':' ownedType=TypedMultiplicityRefCS ('=>'
-	//	implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{' (ownedAnnotations+=AnnotationElementCS |
-	//	ownedPreconditions+=PostCS | ownedPostconditions+=PreCS)* '}' | ';');
+	//	implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{' (ownedAnnotations+=AnnotationElementCS
+	//	| ownedPreconditions+=PostCS
+	//	| ownedPostconditions+=PreCS)* '}' | ';');
 	public LibCoercionCSElements getLibCoercionCSAccess() {
 		return pLibCoercionCS;
 	}
-	
+
 	public ParserRule getLibCoercionCSRule() {
 		return getLibCoercionCSAccess().getRule();
 	}
 
 	//LibIterationCS:
-	//	'iteration' name=Name ownedSignature=TemplateSignatureCS? '(' ownedIterators+=IteratorCS (','
-	//	ownedIterators+=IteratorCS)* (';' ownedAccumulators+=AccumulatorCS (',' ownedAccumulators+=AccumulatorCS)*)? ('|'
-	//	ownedParameters+=ParameterCS (',' ownedParameters+=ParameterCS)*)? ')' ':' ownedType=TypedMultiplicityRefCS
-	//	isInvalidating?='invalidating'? isValidating?='validating'? ('=>' implementation=[JavaClassCS|SINGLE_QUOTED_STRING])?
-	//	('{' (ownedAnnotations+=AnnotationElementCS | ownedPreconditions+=PostCS | ownedPostconditions+=PreCS)* '}' | ';');
+	//	'iteration' name=Name
+	//	ownedSignature=TemplateSignatureCS?
+	//	'(' ownedIterators+=IteratorCS (',' ownedIterators+=IteratorCS)* (';' ownedAccumulators+=AccumulatorCS (','
+	//	ownedAccumulators+=AccumulatorCS)*)? ('|' ownedParameters+=ParameterCS (',' ownedParameters+=ParameterCS)*)?
+	//	')'
+	//	':' ownedType=TypedMultiplicityRefCS
+	//	isInvalidating?='invalidating'?
+	//	isValidating?='validating'? ('=>' implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{'
+	//	(ownedAnnotations+=AnnotationElementCS
+	//	| ownedPreconditions+=PostCS
+	//	| ownedPostconditions+=PreCS)* '}' | ';');
 	public LibIterationCSElements getLibIterationCSAccess() {
 		return pLibIterationCS;
 	}
-	
+
 	public ParserRule getLibIterationCSRule() {
 		return getLibIterationCSAccess().getRule();
 	}
@@ -2615,19 +2701,19 @@
 	public IteratorCSElements getIteratorCSAccess() {
 		return pIteratorCS;
 	}
-	
+
 	public ParserRule getIteratorCSRule() {
 		return getIteratorCSAccess().getRule();
 	}
 
 	//LambdaTypeCS base::LambdaTypeCS:
-	//	name='Lambda' ownedSignature=TemplateSignatureCS? ownedContextType=LambdaContextTypeRefCS '('
-	//	(ownedParameterTypes+=TypedMultiplicityRefCS (',' ownedParameterTypes+=TypedMultiplicityRefCS)*)? ')' ':'
-	//	ownedResultType=TypedRefCS
+	//	name='Lambda' ownedSignature=TemplateSignatureCS? ownedContextType=LambdaContextTypeRefCS
+	//	'(' (ownedParameterTypes+=TypedMultiplicityRefCS (',' ownedParameterTypes+=TypedMultiplicityRefCS)*)? ')'
+	//	':' ownedResultType=TypedRefCS
 	public LambdaTypeCSElements getLambdaTypeCSAccess() {
 		return pLambdaTypeCS;
 	}
-	
+
 	public ParserRule getLambdaTypeCSRule() {
 		return getLambdaTypeCSAccess().getRule();
 	}
@@ -2637,7 +2723,7 @@
 	public LambdaContextTypeRefCSElements getLambdaContextTypeRefCSAccess() {
 		return pLambdaContextTypeRefCS;
 	}
-	
+
 	public ParserRule getLambdaContextTypeRefCSRule() {
 		return getLambdaContextTypeRefCSAccess().getRule();
 	}
@@ -2647,44 +2733,53 @@
 	public OperationCSElements getOperationCSAccess() {
 		return pOperationCS;
 	}
-	
+
 	public ParserRule getOperationCSRule() {
 		return getOperationCSAccess().getRule();
 	}
 
 	//LibOperationCS:
-	//	isStatic?='static'? 'operation' name=Name ownedSignature=TemplateSignatureCS? '(' (ownedParameters+=ParameterCS (','
-	//	ownedParameters+=ParameterCS)*)? ')' ':' ownedType=TypedMultiplicityRefCS isValidating?='validating'?
+	//	isStatic?='static'? 'operation' name=Name
+	//	ownedSignature=TemplateSignatureCS?
+	//	'(' (ownedParameters+=ParameterCS (',' ownedParameters+=ParameterCS)*)? ')'
+	//	':' ownedType=TypedMultiplicityRefCS
+	//	isValidating?='validating'?
 	//	isInvalidating?='invalidating'? ('precedence' '=' precedence=[pivot::Precedence|Name])? ('=>'
-	//	implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{' (ownedAnnotations+=AnnotationElementCS | 'body'
-	//	UnrestrictedName? ':' ownedBodyExpressions+=SpecificationCS ';' | ownedPostconditions+=PostCS |
-	//	ownedPreconditions+=PreCS)* '}' | ';');
+	//	implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{' (ownedAnnotations+=AnnotationElementCS
+	//	| 'body' UnrestrictedName? ':' ownedBodyExpressions+=SpecificationCS ';' | ownedPostconditions+=PostCS
+	//	| ownedPreconditions+=PreCS)* '}' | ';');
 	public LibOperationCSElements getLibOperationCSAccess() {
 		return pLibOperationCS;
 	}
-	
+
 	public ParserRule getLibOperationCSRule() {
 		return getLibOperationCSAccess().getRule();
 	}
 
 	//LibPackageCS:
-	//	'library' name=Name (':' nsPrefix=Identifier '=' nsURI=URI)? '{' (ownedPackages+=PackageCS | 'precedence'
-	//	ownedPrecedences+=PrecedenceCS+ ';' | ownedClasses+=ClassCS | ownedAnnotations+=AnnotationElementCS)* '}';
+	//	'library' name=Name (':' nsPrefix=Identifier '=' nsURI=URI)?
+	//	'{' (ownedPackages+=PackageCS
+	//	| 'precedence' ownedPrecedences+=PrecedenceCS+ ';' | ownedClasses+=ClassCS
+	//	| ownedAnnotations+=AnnotationElementCS)*
+	//	'}';
 	public LibPackageCSElements getLibPackageCSAccess() {
 		return pLibPackageCS;
 	}
-	
+
 	public ParserRule getLibPackageCSRule() {
 		return getLibPackageCSAccess().getRule();
 	}
 
 	//PackageCS base::PackageCS:
-	//	'package' name=Name (':' nsPrefix=Identifier '=' nsURI=URI)? '{' (ownedPackages+=PackageCS | ownedClasses+=ClassCS |
-	//	ownedAnnotations+=AnnotationElementCS)* '}'
+	//	'package' name=Name (':' nsPrefix=Identifier '=' nsURI=URI)?
+	//	'{' (ownedPackages+=PackageCS
+	//	| ownedClasses+=ClassCS
+	//	| ownedAnnotations+=AnnotationElementCS)*
+	//	'}'
 	public PackageCSElements getPackageCSAccess() {
 		return pPackageCS;
 	}
-	
+
 	public ParserRule getPackageCSRule() {
 		return getPackageCSAccess().getRule();
 	}
@@ -2694,18 +2789,19 @@
 	public ParameterCSElements getParameterCSAccess() {
 		return pParameterCS;
 	}
-	
+
 	public ParserRule getParameterCSRule() {
 		return getParameterCSAccess().getRule();
 	}
 
 	//LibPropertyCS:
-	//	isStatic?='static'? 'property' name=Name ':' ownedType=TypedMultiplicityRefCS ('=>'
-	//	implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{' ownedAnnotations+=AnnotationElementCS* '}' | ';');
+	//	isStatic?='static'? 'property' name=Name
+	//	':' ownedType=TypedMultiplicityRefCS ('=>' implementation=[JavaClassCS|SINGLE_QUOTED_STRING])? ('{'
+	//	ownedAnnotations+=AnnotationElementCS* '}' | ';');
 	public LibPropertyCSElements getLibPropertyCSAccess() {
 		return pLibPropertyCS;
 	}
-	
+
 	public ParserRule getLibPropertyCSRule() {
 		return getLibPropertyCSAccess().getRule();
 	}
@@ -2716,7 +2812,7 @@
 	public PostCSElements getPostCSAccess() {
 		return pPostCS;
 	}
-	
+
 	public ParserRule getPostCSRule() {
 		return getPostCSAccess().getRule();
 	}
@@ -2727,7 +2823,7 @@
 	public PreCSElements getPreCSAccess() {
 		return pPreCS;
 	}
-	
+
 	public ParserRule getPreCSRule() {
 		return getPreCSAccess().getRule();
 	}
@@ -2737,7 +2833,7 @@
 	public PrecedenceCSElements getPrecedenceCSAccess() {
 		return pPrecedenceCS;
 	}
-	
+
 	public ParserRule getPrecedenceCSRule() {
 		return getPrecedenceCSAccess().getRule();
 	}
@@ -2747,7 +2843,7 @@
 	public SpecificationCSElements getSpecificationCSAccess() {
 		return pSpecificationCS;
 	}
-	
+
 	public ParserRule getSpecificationCSRule() {
 		return getSpecificationCSAccess().getRule();
 	}
@@ -2757,21 +2853,20 @@
 	public TypedMultiplicityRefCSElements getTypedMultiplicityRefCSAccess() {
 		return pTypedMultiplicityRefCS;
 	}
-	
+
 	public ParserRule getTypedMultiplicityRefCSRule() {
 		return getTypedMultiplicityRefCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------------------
-	// //	Base overrides
-	//
+	////	Base overrides
 	////---------------------------------------------------------------------------------
-	// TypedRefCS base::TypedRefCS:
+	//TypedRefCS base::TypedRefCS:
 	//	MapTypeCS | TupleTypeCS | TypedTypeRefCS | LambdaTypeCS
 	public TypedRefCSElements getTypedRefCSAccess() {
 		return pTypedRefCS;
 	}
-	
+
 	public ParserRule getTypedRefCSRule() {
 		return getTypedRefCSAccess().getRule();
 	}
@@ -2782,43 +2877,52 @@
 	public TypedTypeRefCSElements getTypedTypeRefCSAccess() {
 		return pTypedTypeRefCS;
 	}
-	
+
 	public ParserRule getTypedTypeRefCSRule() {
 		return getTypedTypeRefCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------------------
-	// //	EssentialOCL overrides
-	//
+	////	EssentialOCL overrides
 	////---------------------------------------------------------------------------------
-	// TuplePartCS base::TuplePartCS:
+	//TuplePartCS base::TuplePartCS:
 	//	name=Identifier ':' ownedType=TypedMultiplicityRefCS
 	public TuplePartCSElements getTuplePartCSAccess() {
 		return pTuplePartCS;
 	}
-	
+
 	public ParserRule getTuplePartCSRule() {
 		return getTuplePartCSAccess().getRule();
 	}
 
 	////generate essentialOCLCST "http://www.eclipse.org/ocl/3.0.0/EssentialOCLCST"
-	// Model ContextCS:
+	//Model ContextCS:
 	//	ownedExpression=ExpCS
 	public EssentialOCLGrammarAccess.ModelElements getModelAccess() {
 		return gaEssentialOCL.getModelAccess();
 	}
-	
+
 	public ParserRule getModelRule() {
 		return getModelAccess().getRule();
 	}
 
 	/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 	//EssentialOCLReservedKeyword:
-	//	'and' | 'else' | 'endif' | 'if' | 'implies' | 'in' | 'let' | 'not' | 'or' | 'then' | 'xor';
+	//	'and'
+	//	| 'else'
+	//	| 'endif'
+	//	| 'if'
+	//	| 'implies'
+	//	| 'in'
+	//	| 'let'
+	//	| 'not'
+	//	| 'or'
+	//	| 'then'
+	//	| 'xor';
 	public EssentialOCLGrammarAccess.EssentialOCLReservedKeywordElements getEssentialOCLReservedKeywordAccess() {
 		return gaEssentialOCL.getEssentialOCLReservedKeywordAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLReservedKeywordRule() {
 		return getEssentialOCLReservedKeywordAccess().getRule();
 	}
@@ -2829,7 +2933,7 @@
 	public EssentialOCLGrammarAccess.EssentialOCLUnaryOperatorNameElements getEssentialOCLUnaryOperatorNameAccess() {
 		return gaEssentialOCL.getEssentialOCLUnaryOperatorNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLUnaryOperatorNameRule() {
 		return getEssentialOCLUnaryOperatorNameAccess().getRule();
 	}
@@ -2840,7 +2944,7 @@
 	public EssentialOCLGrammarAccess.EssentialOCLInfixOperatorNameElements getEssentialOCLInfixOperatorNameAccess() {
 		return gaEssentialOCL.getEssentialOCLInfixOperatorNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLInfixOperatorNameRule() {
 		return getEssentialOCLInfixOperatorNameAccess().getRule();
 	}
@@ -2851,7 +2955,7 @@
 	public EssentialOCLGrammarAccess.EssentialOCLNavigationOperatorNameElements getEssentialOCLNavigationOperatorNameAccess() {
 		return gaEssentialOCL.getEssentialOCLNavigationOperatorNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLNavigationOperatorNameRule() {
 		return getEssentialOCLNavigationOperatorNameAccess().getRule();
 	}
@@ -2861,7 +2965,7 @@
 	public EssentialOCLGrammarAccess.BinaryOperatorNameElements getBinaryOperatorNameAccess() {
 		return gaEssentialOCL.getBinaryOperatorNameAccess();
 	}
-	
+
 	public ParserRule getBinaryOperatorNameRule() {
 		return getBinaryOperatorNameAccess().getRule();
 	}
@@ -2871,7 +2975,7 @@
 	public EssentialOCLGrammarAccess.InfixOperatorNameElements getInfixOperatorNameAccess() {
 		return gaEssentialOCL.getInfixOperatorNameAccess();
 	}
-	
+
 	public ParserRule getInfixOperatorNameRule() {
 		return getInfixOperatorNameAccess().getRule();
 	}
@@ -2881,7 +2985,7 @@
 	public EssentialOCLGrammarAccess.NavigationOperatorNameElements getNavigationOperatorNameAccess() {
 		return gaEssentialOCL.getNavigationOperatorNameAccess();
 	}
-	
+
 	public ParserRule getNavigationOperatorNameRule() {
 		return getNavigationOperatorNameAccess().getRule();
 	}
@@ -2891,23 +2995,21 @@
 	public EssentialOCLGrammarAccess.UnaryOperatorNameElements getUnaryOperatorNameAccess() {
 		return gaEssentialOCL.getUnaryOperatorNameAccess();
 	}
-	
+
 	public ParserRule getUnaryOperatorNameRule() {
 		return getUnaryOperatorNameAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Names
-	//
+	////  Names
 	////---------------------------------------------------------------------
-	//
 	/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 	//EssentialOCLUnrestrictedName:
 	//	super::Identifier;
 	public EssentialOCLGrammarAccess.EssentialOCLUnrestrictedNameElements getEssentialOCLUnrestrictedNameAccess() {
 		return gaEssentialOCL.getEssentialOCLUnrestrictedNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLUnrestrictedNameRule() {
 		return getEssentialOCLUnrestrictedNameAccess().getRule();
 	}
@@ -2917,18 +3019,22 @@
 	public EssentialOCLGrammarAccess.UnrestrictedNameElements getUnrestrictedNameAccess() {
 		return gaEssentialOCL.getUnrestrictedNameAccess();
 	}
-	
+
 	public ParserRule getUnrestrictedNameRule() {
 		return getUnrestrictedNameAccess().getRule();
 	}
 
 	/// ** <<<This is a join point for derived grammars - replace with a more disciplined grammar extensibility>>> * /
 	//EssentialOCLUnreservedName:
-	//	UnrestrictedName | CollectionTypeIdentifier | PrimitiveTypeIdentifier | 'Map' | 'Tuple';
+	//	UnrestrictedName
+	//	| CollectionTypeIdentifier
+	//	| PrimitiveTypeIdentifier
+	//	| 'Map'
+	//	| 'Tuple';
 	public EssentialOCLGrammarAccess.EssentialOCLUnreservedNameElements getEssentialOCLUnreservedNameAccess() {
 		return gaEssentialOCL.getEssentialOCLUnreservedNameAccess();
 	}
-	
+
 	public ParserRule getEssentialOCLUnreservedNameRule() {
 		return getEssentialOCLUnreservedNameAccess().getRule();
 	}
@@ -2938,7 +3044,7 @@
 	public EssentialOCLGrammarAccess.UnreservedNameElements getUnreservedNameAccess() {
 		return gaEssentialOCL.getUnreservedNameAccess();
 	}
-	
+
 	public ParserRule getUnreservedNameRule() {
 		return getUnreservedNameAccess().getRule();
 	}
@@ -2948,7 +3054,7 @@
 	public EssentialOCLGrammarAccess.URIPathNameCSElements getURIPathNameCSAccess() {
 		return gaEssentialOCL.getURIPathNameCSAccess();
 	}
-	
+
 	public ParserRule getURIPathNameCSRule() {
 		return getURIPathNameCSAccess().getRule();
 	}
@@ -2959,21 +3065,27 @@
 	public EssentialOCLGrammarAccess.URIFirstPathElementCSElements getURIFirstPathElementCSAccess() {
 		return gaEssentialOCL.getURIFirstPathElementCSAccess();
 	}
-	
+
 	public ParserRule getURIFirstPathElementCSRule() {
 		return getURIFirstPathElementCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Types
-	//
+	////  Types
 	////---------------------------------------------------------------------
-	// PrimitiveTypeIdentifier:
-	//	'Boolean' | 'Integer' | 'Real' | 'String' | 'UnlimitedNatural' | 'OclAny' | 'OclInvalid' | 'OclVoid';
+	//PrimitiveTypeIdentifier:
+	//	'Boolean'
+	//	| 'Integer'
+	//	| 'Real'
+	//	| 'String'
+	//	| 'UnlimitedNatural'
+	//	| 'OclAny'
+	//	| 'OclInvalid'
+	//	| 'OclVoid';
 	public EssentialOCLGrammarAccess.PrimitiveTypeIdentifierElements getPrimitiveTypeIdentifierAccess() {
 		return gaEssentialOCL.getPrimitiveTypeIdentifierAccess();
 	}
-	
+
 	public ParserRule getPrimitiveTypeIdentifierRule() {
 		return getPrimitiveTypeIdentifierAccess().getRule();
 	}
@@ -2983,17 +3095,21 @@
 	public EssentialOCLGrammarAccess.PrimitiveTypeCSElements getPrimitiveTypeCSAccess() {
 		return gaEssentialOCL.getPrimitiveTypeCSAccess();
 	}
-	
+
 	public ParserRule getPrimitiveTypeCSRule() {
 		return getPrimitiveTypeCSAccess().getRule();
 	}
 
 	//CollectionTypeIdentifier:
-	//	'Set' | 'Bag' | 'Sequence' | 'Collection' | 'OrderedSet';
+	//	'Set'
+	//	| 'Bag'
+	//	| 'Sequence'
+	//	| 'Collection'
+	//	| 'OrderedSet';
 	public EssentialOCLGrammarAccess.CollectionTypeIdentifierElements getCollectionTypeIdentifierAccess() {
 		return gaEssentialOCL.getCollectionTypeIdentifierAccess();
 	}
-	
+
 	public ParserRule getCollectionTypeIdentifierRule() {
 		return getCollectionTypeIdentifierAccess().getRule();
 	}
@@ -3003,7 +3119,7 @@
 	public EssentialOCLGrammarAccess.CollectionTypeCSElements getCollectionTypeCSAccess() {
 		return gaEssentialOCL.getCollectionTypeCSAccess();
 	}
-	
+
 	public ParserRule getCollectionTypeCSRule() {
 		return getCollectionTypeCSAccess().getRule();
 	}
@@ -3013,7 +3129,7 @@
 	public EssentialOCLGrammarAccess.MapTypeCSElements getMapTypeCSAccess() {
 		return gaEssentialOCL.getMapTypeCSAccess();
 	}
-	
+
 	public ParserRule getMapTypeCSRule() {
 		return getMapTypeCSAccess().getRule();
 	}
@@ -3023,21 +3139,22 @@
 	public EssentialOCLGrammarAccess.TupleTypeCSElements getTupleTypeCSAccess() {
 		return gaEssentialOCL.getTupleTypeCSAccess();
 	}
-	
+
 	public ParserRule getTupleTypeCSRule() {
 		return getTupleTypeCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Literals
-	//
+	////  Literals
 	////---------------------------------------------------------------------
-	// CollectionLiteralExpCS:
-	//	ownedType=CollectionTypeCS '{' (ownedParts+=CollectionLiteralPartCS (',' ownedParts+=CollectionLiteralPartCS)*)? '}';
+	//CollectionLiteralExpCS:
+	//	ownedType=CollectionTypeCS
+	//	'{' (ownedParts+=CollectionLiteralPartCS (',' ownedParts+=CollectionLiteralPartCS)*)?
+	//	'}';
 	public EssentialOCLGrammarAccess.CollectionLiteralExpCSElements getCollectionLiteralExpCSAccess() {
 		return gaEssentialOCL.getCollectionLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getCollectionLiteralExpCSRule() {
 		return getCollectionLiteralExpCSAccess().getRule();
 	}
@@ -3047,18 +3164,19 @@
 	public EssentialOCLGrammarAccess.CollectionLiteralPartCSElements getCollectionLiteralPartCSAccess() {
 		return gaEssentialOCL.getCollectionLiteralPartCSAccess();
 	}
-	
+
 	public ParserRule getCollectionLiteralPartCSRule() {
 		return getCollectionLiteralPartCSAccess().getRule();
 	}
 
 	//CollectionPatternCS:
-	//	ownedType=CollectionTypeCS '{' (ownedParts+=PatternExpCS (',' ownedParts+=PatternExpCS)* ('++'
-	//	restVariableName=super::Identifier))? '}';
+	//	ownedType=CollectionTypeCS
+	//	'{' (ownedParts+=PatternExpCS (',' ownedParts+=PatternExpCS)* ('++' restVariableName=super::Identifier))?
+	//	'}';
 	public EssentialOCLGrammarAccess.CollectionPatternCSElements getCollectionPatternCSAccess() {
 		return gaEssentialOCL.getCollectionPatternCSAccess();
 	}
-	
+
 	public ParserRule getCollectionPatternCSRule() {
 		return getCollectionPatternCSAccess().getRule();
 	}
@@ -3068,7 +3186,7 @@
 	public EssentialOCLGrammarAccess.ShadowPartCSElements getShadowPartCSAccess() {
 		return gaEssentialOCL.getShadowPartCSAccess();
 	}
-	
+
 	public ParserRule getShadowPartCSRule() {
 		return getShadowPartCSAccess().getRule();
 	}
@@ -3078,7 +3196,7 @@
 	public EssentialOCLGrammarAccess.PatternExpCSElements getPatternExpCSAccess() {
 		return gaEssentialOCL.getPatternExpCSAccess();
 	}
-	
+
 	public ParserRule getPatternExpCSRule() {
 		return getPatternExpCSAccess().getRule();
 	}
@@ -3088,7 +3206,7 @@
 	public EssentialOCLGrammarAccess.LambdaLiteralExpCSElements getLambdaLiteralExpCSAccess() {
 		return gaEssentialOCL.getLambdaLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getLambdaLiteralExpCSRule() {
 		return getLambdaLiteralExpCSAccess().getRule();
 	}
@@ -3098,7 +3216,7 @@
 	public EssentialOCLGrammarAccess.MapLiteralExpCSElements getMapLiteralExpCSAccess() {
 		return gaEssentialOCL.getMapLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getMapLiteralExpCSRule() {
 		return getMapLiteralExpCSAccess().getRule();
 	}
@@ -3108,18 +3226,22 @@
 	public EssentialOCLGrammarAccess.MapLiteralPartCSElements getMapLiteralPartCSAccess() {
 		return gaEssentialOCL.getMapLiteralPartCSAccess();
 	}
-	
+
 	public ParserRule getMapLiteralPartCSRule() {
 		return getMapLiteralPartCSAccess().getRule();
 	}
 
 	//PrimitiveLiteralExpCS:
-	//	NumberLiteralExpCS | StringLiteralExpCS | BooleanLiteralExpCS | UnlimitedNaturalLiteralExpCS | InvalidLiteralExpCS |
-	//	NullLiteralExpCS;
+	//	NumberLiteralExpCS
+	//	| StringLiteralExpCS
+	//	| BooleanLiteralExpCS
+	//	| UnlimitedNaturalLiteralExpCS
+	//	| InvalidLiteralExpCS
+	//	| NullLiteralExpCS;
 	public EssentialOCLGrammarAccess.PrimitiveLiteralExpCSElements getPrimitiveLiteralExpCSAccess() {
 		return gaEssentialOCL.getPrimitiveLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getPrimitiveLiteralExpCSRule() {
 		return getPrimitiveLiteralExpCSAccess().getRule();
 	}
@@ -3129,7 +3251,7 @@
 	public EssentialOCLGrammarAccess.TupleLiteralExpCSElements getTupleLiteralExpCSAccess() {
 		return gaEssentialOCL.getTupleLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getTupleLiteralExpCSRule() {
 		return getTupleLiteralExpCSAccess().getRule();
 	}
@@ -3139,7 +3261,7 @@
 	public EssentialOCLGrammarAccess.TupleLiteralPartCSElements getTupleLiteralPartCSAccess() {
 		return gaEssentialOCL.getTupleLiteralPartCSAccess();
 	}
-	
+
 	public ParserRule getTupleLiteralPartCSRule() {
 		return getTupleLiteralPartCSAccess().getRule();
 	}
@@ -3149,7 +3271,7 @@
 	public EssentialOCLGrammarAccess.NumberLiteralExpCSElements getNumberLiteralExpCSAccess() {
 		return gaEssentialOCL.getNumberLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getNumberLiteralExpCSRule() {
 		return getNumberLiteralExpCSAccess().getRule();
 	}
@@ -3159,17 +3281,18 @@
 	public EssentialOCLGrammarAccess.StringLiteralExpCSElements getStringLiteralExpCSAccess() {
 		return gaEssentialOCL.getStringLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getStringLiteralExpCSRule() {
 		return getStringLiteralExpCSAccess().getRule();
 	}
 
 	//BooleanLiteralExpCS:
-	//	symbol='true' | symbol='false';
+	//	symbol='true'
+	//	| symbol='false';
 	public EssentialOCLGrammarAccess.BooleanLiteralExpCSElements getBooleanLiteralExpCSAccess() {
 		return gaEssentialOCL.getBooleanLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getBooleanLiteralExpCSRule() {
 		return getBooleanLiteralExpCSAccess().getRule();
 	}
@@ -3179,7 +3302,7 @@
 	public EssentialOCLGrammarAccess.UnlimitedNaturalLiteralExpCSElements getUnlimitedNaturalLiteralExpCSAccess() {
 		return gaEssentialOCL.getUnlimitedNaturalLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getUnlimitedNaturalLiteralExpCSRule() {
 		return getUnlimitedNaturalLiteralExpCSAccess().getRule();
 	}
@@ -3189,7 +3312,7 @@
 	public EssentialOCLGrammarAccess.InvalidLiteralExpCSElements getInvalidLiteralExpCSAccess() {
 		return gaEssentialOCL.getInvalidLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getInvalidLiteralExpCSRule() {
 		return getInvalidLiteralExpCSAccess().getRule();
 	}
@@ -3199,17 +3322,20 @@
 	public EssentialOCLGrammarAccess.NullLiteralExpCSElements getNullLiteralExpCSAccess() {
 		return gaEssentialOCL.getNullLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getNullLiteralExpCSRule() {
 		return getNullLiteralExpCSAccess().getRule();
 	}
 
 	//TypeLiteralCS base::TypedRefCS:
-	//	PrimitiveTypeCS | CollectionTypeCS | MapTypeCS | TupleTypeCS
+	//	PrimitiveTypeCS
+	//	| CollectionTypeCS
+	//	| MapTypeCS
+	//	| TupleTypeCS
 	public EssentialOCLGrammarAccess.TypeLiteralCSElements getTypeLiteralCSAccess() {
 		return gaEssentialOCL.getTypeLiteralCSAccess();
 	}
-	
+
 	public ParserRule getTypeLiteralCSRule() {
 		return getTypeLiteralCSAccess().getRule();
 	}
@@ -3219,7 +3345,7 @@
 	public EssentialOCLGrammarAccess.TypeLiteralWithMultiplicityCSElements getTypeLiteralWithMultiplicityCSAccess() {
 		return gaEssentialOCL.getTypeLiteralWithMultiplicityCSAccess();
 	}
-	
+
 	public ParserRule getTypeLiteralWithMultiplicityCSRule() {
 		return getTypeLiteralWithMultiplicityCSAccess().getRule();
 	}
@@ -3229,7 +3355,7 @@
 	public EssentialOCLGrammarAccess.TypeLiteralExpCSElements getTypeLiteralExpCSAccess() {
 		return gaEssentialOCL.getTypeLiteralExpCSAccess();
 	}
-	
+
 	public ParserRule getTypeLiteralExpCSRule() {
 		return getTypeLiteralExpCSAccess().getRule();
 	}
@@ -3239,7 +3365,7 @@
 	public EssentialOCLGrammarAccess.TypeNameExpCSElements getTypeNameExpCSAccess() {
 		return gaEssentialOCL.getTypeNameExpCSAccess();
 	}
-	
+
 	public ParserRule getTypeNameExpCSRule() {
 		return getTypeNameExpCSAccess().getRule();
 	}
@@ -3249,33 +3375,26 @@
 	public EssentialOCLGrammarAccess.TypeExpCSElements getTypeExpCSAccess() {
 		return gaEssentialOCL.getTypeExpCSAccess();
 	}
-	
+
 	public ParserRule getTypeExpCSRule() {
 		return getTypeExpCSAccess().getRule();
 	}
 
 	////---------------------------------------------------------------------
-	// //  Expressions
-	//
+	////  Expressions
 	////---------------------------------------------------------------------
-	//
 	//// An ExpCS permits a LetExpCS only in the final term to ensure
-	//
 	////  that let is right associative, whereas infix operators are left associative.
-	//
-	////   a = 64 / 16 / let b : Integer in 8 / let c : Integer in 4 
-	// // is
-	//
+	////   a = 64 / 16 / let b : Integer in 8 / let c : Integer in 4
+	//// is
 	////   a = (64 / 16) / (let b : Integer in 8 / (let c : Integer in 4 ))
-	//
 	/// * An expression elaborates a prefixed expression with zero or more binary operator and expression suffixes.
-	// * An optionally prefixed let expression is permitted except when suffixed with further expressions.* /
-	//ExpCS:
+	// * An optionally prefixed let expression is permitted except when suffixed with further expressions.* / ExpCS:
 	//	PrefixedPrimaryExpCS ({InfixExpCS.ownedLeft=current} name=BinaryOperatorName ownedRight=ExpCS)? | PrefixedLetExpCS;
 	public EssentialOCLGrammarAccess.ExpCSElements getExpCSAccess() {
 		return gaEssentialOCL.getExpCSAccess();
 	}
-	
+
 	public ParserRule getExpCSRule() {
 		return getExpCSAccess().getRule();
 	}
@@ -3286,7 +3405,7 @@
 	public EssentialOCLGrammarAccess.PrefixedLetExpCSElements getPrefixedLetExpCSAccess() {
 		return gaEssentialOCL.getPrefixedLetExpCSAccess();
 	}
-	
+
 	public ParserRule getPrefixedLetExpCSRule() {
 		return getPrefixedLetExpCSAccess().getRule();
 	}
@@ -3297,44 +3416,52 @@
 	public EssentialOCLGrammarAccess.PrefixedPrimaryExpCSElements getPrefixedPrimaryExpCSAccess() {
 		return gaEssentialOCL.getPrefixedPrimaryExpCSAccess();
 	}
-	
+
 	public ParserRule getPrefixedPrimaryExpCSRule() {
 		return getPrefixedPrimaryExpCSAccess().getRule();
 	}
 
 	/// * A primary expression identifies the basic expressions from which more complex expressions may be constructed. * /
 	//PrimaryExpCS ExpCS:
-	//	NestedExpCS | IfExpCS | SelfExpCS | PrimitiveLiteralExpCS | TupleLiteralExpCS | MapLiteralExpCS |
-	//	CollectionLiteralExpCS | LambdaLiteralExpCS | TypeLiteralExpCS | NameExpCS
+	//	NestedExpCS
+	//	| IfExpCS
+	//	| SelfExpCS
+	//	| PrimitiveLiteralExpCS
+	//	| TupleLiteralExpCS
+	//	| MapLiteralExpCS
+	//	| CollectionLiteralExpCS
+	//	| LambdaLiteralExpCS
+	//	| TypeLiteralExpCS
+	//	| NameExpCS
 	public EssentialOCLGrammarAccess.PrimaryExpCSElements getPrimaryExpCSAccess() {
 		return gaEssentialOCL.getPrimaryExpCSAccess();
 	}
-	
+
 	public ParserRule getPrimaryExpCSRule() {
 		return getPrimaryExpCSAccess().getRule();
 	}
 
 	/// * A name expression is a generalised rule for expressions that start with a name and which may be followed by square, round or
-	// * curly bracket clauses and optionally an @pre as well.* /
-	//NameExpCS:
+	// * curly bracket clauses and optionally an @pre as well.* / NameExpCS:
 	//	ownedPathName=PathNameCS ownedSquareBracketedClauses+=SquareBracketedClauseCS*
 	//	ownedRoundBracketedClause=RoundBracketedClauseCS? ownedCurlyBracketedClause=CurlyBracketedClauseCS? (isPre?='@'
 	//	'pre')?;
 	public EssentialOCLGrammarAccess.NameExpCSElements getNameExpCSAccess() {
 		return gaEssentialOCL.getNameExpCSAccess();
 	}
-	
+
 	public ParserRule getNameExpCSRule() {
 		return getNameExpCSAccess().getRule();
 	}
 
 	/// * A curly bracket clause is a generalized rule for the literal arguments of collections, maps, tuples and shadows.* /
 	//CurlyBracketedClauseCS:
-	//	{CurlyBracketedClauseCS} '{' ((ownedParts+=ShadowPartCS (',' ownedParts+=ShadowPartCS)*)? | value=StringLiteral) '}';
+	//	{CurlyBracketedClauseCS} '{' ((ownedParts+=ShadowPartCS (',' ownedParts+=ShadowPartCS)*)?
+	//	| value=StringLiteral) '}';
 	public EssentialOCLGrammarAccess.CurlyBracketedClauseCSElements getCurlyBracketedClauseCSAccess() {
 		return gaEssentialOCL.getCurlyBracketedClauseCSAccess();
 	}
-	
+
 	public ParserRule getCurlyBracketedClauseCSRule() {
 		return getCurlyBracketedClauseCSAccess().getRule();
 	}
@@ -3347,7 +3474,7 @@
 	public EssentialOCLGrammarAccess.RoundBracketedClauseCSElements getRoundBracketedClauseCSAccess() {
 		return gaEssentialOCL.getRoundBracketedClauseCSAccess();
 	}
-	
+
 	public ParserRule getRoundBracketedClauseCSRule() {
 		return getRoundBracketedClauseCSAccess().getRule();
 	}
@@ -3357,109 +3484,108 @@
 	public EssentialOCLGrammarAccess.SquareBracketedClauseCSElements getSquareBracketedClauseCSAccess() {
 		return gaEssentialOCL.getSquareBracketedClauseCSAccess();
 	}
-	
+
 	public ParserRule getSquareBracketedClauseCSRule() {
 		return getSquareBracketedClauseCSAccess().getRule();
 	}
 
 	/// * A navigating argument is a generalized rule for the first argument in a round bracket clause. This is typically the first operation
-	// * parameter or an iterator. * /
-	//NavigatingArgCS:
+	// * parameter or an iterator. * / NavigatingArgCS:
 	//	ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)? | 'in'
 	//	ownedInitExpression=ExpCS)? | ':' ownedType=TypeExpCS;
 	public EssentialOCLGrammarAccess.NavigatingArgCSElements getNavigatingArgCSAccess() {
 		return gaEssentialOCL.getNavigatingArgCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingArgCSRule() {
 		return getNavigatingArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	//
 	/// * A navigating bar argument is a generalized rule for a bar-prefixed argument in a round bracket clause. This is typically the body of an iteration. * /
 	//NavigatingBarArgCS NavigatingArgCS:
 	//	prefix='|' ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)?)?
 	public EssentialOCLGrammarAccess.NavigatingBarArgCSElements getNavigatingBarArgCSAccess() {
 		return gaEssentialOCL.getNavigatingBarArgCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingBarArgCSRule() {
 		return getNavigatingBarArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	//
 	/// * A navigating comma argument is a generalized rule for non-first argument in a round bracket clause. These are typically non-first operation
-	// * parameters or a second iterator. * /
-	//NavigatingCommaArgCS NavigatingArgCS:
+	// * parameters or a second iterator. * / NavigatingCommaArgCS NavigatingArgCS:
 	//	prefix=',' ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)? | 'in'
 	//	ownedInitExpression=ExpCS)?
 	public EssentialOCLGrammarAccess.NavigatingCommaArgCSElements getNavigatingCommaArgCSAccess() {
 		return gaEssentialOCL.getNavigatingCommaArgCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingCommaArgCSRule() {
 		return getNavigatingCommaArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	//
 	/// * A navigating semi argument is a generalized rule for a semicolon prefixed argument in a round bracket clause. This is typically an iterate accumulator. * /
 	//NavigatingSemiArgCS NavigatingArgCS:
 	//	prefix=';' ownedNameExpression=NavigatingArgExpCS (':' ownedType=TypeExpCS ('=' ownedInitExpression=ExpCS)?)?
 	public EssentialOCLGrammarAccess.NavigatingSemiArgCSElements getNavigatingSemiArgCSAccess() {
 		return gaEssentialOCL.getNavigatingSemiArgCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingSemiArgCSRule() {
 		return getNavigatingSemiArgCSAccess().getRule();
 	}
 
 	//// Type-less init is an illegal infix expression
-	// NavigatingArgExpCS ExpCS:
+	//NavigatingArgExpCS ExpCS:
 	//	ExpCS
 	public EssentialOCLGrammarAccess.NavigatingArgExpCSElements getNavigatingArgExpCSAccess() {
 		return gaEssentialOCL.getNavigatingArgExpCSAccess();
 	}
-	
+
 	public ParserRule getNavigatingArgExpCSRule() {
 		return getNavigatingArgExpCSAccess().getRule();
 	}
 
 	//IfExpCS:
-	//	'if' ownedCondition=(ExpCS | PatternExpCS) 'then' ownedThenExpression=ExpCS //	ifThenExpressions+=IfThenExpCS
-	//
-	//	ownedIfThenExpressions+=ElseIfThenExpCS* 'else' ownedElseExpression=ExpCS 'endif';
+	//	'if' ownedCondition=(ExpCS | PatternExpCS)
+	//	'then' ownedThenExpression=ExpCS
+	//	//	ifThenExpressions+=IfThenExpCS
+	//	ownedIfThenExpressions+=ElseIfThenExpCS*
+	//	'else' ownedElseExpression=ExpCS
+	//	'endif';
 	public EssentialOCLGrammarAccess.IfExpCSElements getIfExpCSAccess() {
 		return gaEssentialOCL.getIfExpCSAccess();
 	}
-	
+
 	public ParserRule getIfExpCSRule() {
 		return getIfExpCSAccess().getRule();
 	}
 
 	////IfThenExpCS returns IfThenExpCS:
-	// //	'if' condition=ExpCS
-	// //	'then' thenExpression=ExpCS
-	// //;
-	// ElseIfThenExpCS
-	//IfThenExpCS:
-	//	'elseif' ownedCondition=ExpCS 'then' ownedThenExpression=ExpCS
+	////	'if' condition=ExpCS
+	////	'then' thenExpression=ExpCS
+	////;
+	//ElseIfThenExpCS IfThenExpCS:
+	//	'elseif' ownedCondition=ExpCS
+	//	'then' ownedThenExpression=ExpCS
 	public EssentialOCLGrammarAccess.ElseIfThenExpCSElements getElseIfThenExpCSAccess() {
 		return gaEssentialOCL.getElseIfThenExpCSAccess();
 	}
-	
+
 	public ParserRule getElseIfThenExpCSRule() {
 		return getElseIfThenExpCSAccess().getRule();
 	}
 
 	//LetExpCS:
-	//	'let' ownedVariables+=LetVariableCS (',' ownedVariables+=LetVariableCS)* 'in' ownedInExpression=ExpCS;
+	//	'let' ownedVariables+=LetVariableCS (',' ownedVariables+=LetVariableCS)*
+	//	'in' ownedInExpression=ExpCS;
 	public EssentialOCLGrammarAccess.LetExpCSElements getLetExpCSAccess() {
 		return gaEssentialOCL.getLetExpCSAccess();
 	}
-	
+
 	public ParserRule getLetExpCSRule() {
 		return getLetExpCSAccess().getRule();
 	}
@@ -3470,7 +3596,7 @@
 	public EssentialOCLGrammarAccess.LetVariableCSElements getLetVariableCSAccess() {
 		return gaEssentialOCL.getLetVariableCSAccess();
 	}
-	
+
 	public ParserRule getLetVariableCSRule() {
 		return getLetVariableCSAccess().getRule();
 	}
@@ -3480,7 +3606,7 @@
 	public EssentialOCLGrammarAccess.NestedExpCSElements getNestedExpCSAccess() {
 		return gaEssentialOCL.getNestedExpCSAccess();
 	}
-	
+
 	public ParserRule getNestedExpCSRule() {
 		return getNestedExpCSAccess().getRule();
 	}
@@ -3490,7 +3616,7 @@
 	public EssentialOCLGrammarAccess.SelfExpCSElements getSelfExpCSAccess() {
 		return gaEssentialOCL.getSelfExpCSAccess();
 	}
-	
+
 	public ParserRule getSelfExpCSRule() {
 		return getSelfExpCSAccess().getRule();
 	}
@@ -3500,7 +3626,7 @@
 	public BaseGrammarAccess.MultiplicityBoundsCSElements getMultiplicityBoundsCSAccess() {
 		return gaBase.getMultiplicityBoundsCSAccess();
 	}
-	
+
 	public ParserRule getMultiplicityBoundsCSRule() {
 		return getMultiplicityBoundsCSAccess().getRule();
 	}
@@ -3510,7 +3636,7 @@
 	public BaseGrammarAccess.MultiplicityCSElements getMultiplicityCSAccess() {
 		return gaBase.getMultiplicityCSAccess();
 	}
-	
+
 	public ParserRule getMultiplicityCSRule() {
 		return getMultiplicityCSAccess().getRule();
 	}
@@ -3520,7 +3646,7 @@
 	public BaseGrammarAccess.MultiplicityStringCSElements getMultiplicityStringCSAccess() {
 		return gaBase.getMultiplicityStringCSAccess();
 	}
-	
+
 	public ParserRule getMultiplicityStringCSRule() {
 		return getMultiplicityStringCSAccess().getRule();
 	}
@@ -3530,7 +3656,7 @@
 	public BaseGrammarAccess.PathNameCSElements getPathNameCSAccess() {
 		return gaBase.getPathNameCSAccess();
 	}
-	
+
 	public ParserRule getPathNameCSRule() {
 		return getPathNameCSAccess().getRule();
 	}
@@ -3540,7 +3666,7 @@
 	public BaseGrammarAccess.FirstPathElementCSElements getFirstPathElementCSAccess() {
 		return gaBase.getFirstPathElementCSAccess();
 	}
-	
+
 	public ParserRule getFirstPathElementCSRule() {
 		return getFirstPathElementCSAccess().getRule();
 	}
@@ -3550,7 +3676,7 @@
 	public BaseGrammarAccess.NextPathElementCSElements getNextPathElementCSAccess() {
 		return gaBase.getNextPathElementCSAccess();
 	}
-	
+
 	public ParserRule getNextPathElementCSRule() {
 		return getNextPathElementCSAccess().getRule();
 	}
@@ -3561,7 +3687,7 @@
 	public BaseGrammarAccess.TemplateBindingCSElements getTemplateBindingCSAccess() {
 		return gaBase.getTemplateBindingCSAccess();
 	}
-	
+
 	public ParserRule getTemplateBindingCSRule() {
 		return getTemplateBindingCSAccess().getRule();
 	}
@@ -3571,7 +3697,7 @@
 	public BaseGrammarAccess.TemplateParameterSubstitutionCSElements getTemplateParameterSubstitutionCSAccess() {
 		return gaBase.getTemplateParameterSubstitutionCSAccess();
 	}
-	
+
 	public ParserRule getTemplateParameterSubstitutionCSRule() {
 		return getTemplateParameterSubstitutionCSAccess().getRule();
 	}
@@ -3581,7 +3707,7 @@
 	public BaseGrammarAccess.TemplateSignatureCSElements getTemplateSignatureCSAccess() {
 		return gaBase.getTemplateSignatureCSAccess();
 	}
-	
+
 	public ParserRule getTemplateSignatureCSRule() {
 		return getTemplateSignatureCSAccess().getRule();
 	}
@@ -3591,7 +3717,7 @@
 	public BaseGrammarAccess.TypeParameterCSElements getTypeParameterCSAccess() {
 		return gaBase.getTypeParameterCSAccess();
 	}
-	
+
 	public ParserRule getTypeParameterCSRule() {
 		return getTypeParameterCSAccess().getRule();
 	}
@@ -3601,7 +3727,7 @@
 	public BaseGrammarAccess.TypeRefCSElements getTypeRefCSAccess() {
 		return gaBase.getTypeRefCSAccess();
 	}
-	
+
 	public ParserRule getTypeRefCSRule() {
 		return getTypeRefCSAccess().getRule();
 	}
@@ -3611,7 +3737,7 @@
 	public BaseGrammarAccess.WildcardTypeRefCSElements getWildcardTypeRefCSAccess() {
 		return gaBase.getWildcardTypeRefCSAccess();
 	}
-	
+
 	public ParserRule getWildcardTypeRefCSRule() {
 		return getWildcardTypeRefCSAccess().getRule();
 	}
@@ -3621,7 +3747,7 @@
 	public BaseGrammarAccess.IDElements getIDAccess() {
 		return gaBase.getIDAccess();
 	}
-	
+
 	public ParserRule getIDRule() {
 		return getIDAccess().getRule();
 	}
@@ -3632,7 +3758,7 @@
 	public BaseGrammarAccess.LOWERElements getLOWERAccess() {
 		return gaBase.getLOWERAccess();
 	}
-	
+
 	public ParserRule getLOWERRule() {
 		return getLOWERAccess().getRule();
 	}
@@ -3641,24 +3767,23 @@
 	// * lookahead conflicts in simple lexers between a dot within a floating point number and the dot-dot in a CollectionLiteralPartCS. A
 	// * practical implementation should give high priority to a successful parse of INT ('.' INT)? (('e' | 'E') ('+' | '-')? INT)? than
 	// * to the unsuccessful partial parse of INT '..'. The type of the INT terminal is String to allow the floating point syntax to be used.
-	// * /
-	//NUMBER_LITERAL BigNumber:
+	// * / NUMBER_LITERAL BigNumber:
 	//	INT
 	public BaseGrammarAccess.NUMBER_LITERALElements getNUMBER_LITERALAccess() {
 		return gaBase.getNUMBER_LITERALAccess();
 	}
-	
+
 	public ParserRule getNUMBER_LITERALRule() {
 		return getNUMBER_LITERALAccess().getRule();
 	}
 
 	//// EssentialOCLTokenSource pieces this together ('.' INT)? (('e' | 'E') ('+' | '-')? INT)?;
-	// StringLiteral:
+	//StringLiteral:
 	//	SINGLE_QUOTED_STRING;
 	public BaseGrammarAccess.StringLiteralElements getStringLiteralAccess() {
 		return gaBase.getStringLiteralAccess();
 	}
-	
+
 	public ParserRule getStringLiteralRule() {
 		return getStringLiteralAccess().getRule();
 	}
@@ -3669,7 +3794,7 @@
 	public BaseGrammarAccess.UPPERElements getUPPERAccess() {
 		return gaBase.getUPPERAccess();
 	}
-	
+
 	public ParserRule getUPPERRule() {
 		return getUPPERAccess().getRule();
 	}
@@ -3679,7 +3804,7 @@
 	public BaseGrammarAccess.URIElements getURIAccess() {
 		return gaBase.getURIAccess();
 	}
-	
+
 	public ParserRule getURIRule() {
 		return getURIAccess().getRule();
 	}
@@ -3688,71 +3813,71 @@
 	//	'\\' ('b' | 't' | 'n' | 'f' | 'r' | 'u' | '"' | "'" | '\\');
 	public TerminalRule getESCAPED_CHARACTERRule() {
 		return gaBase.getESCAPED_CHARACTERRule();
-	} 
+	}
 
 	//terminal fragment LETTER_CHARACTER:
 	//	'a'..'z' | 'A'..'Z' | '_';
 	public TerminalRule getLETTER_CHARACTERRule() {
 		return gaBase.getLETTER_CHARACTERRule();
-	} 
+	}
 
 	//terminal DOUBLE_QUOTED_STRING:
 	//	'"' (ESCAPED_CHARACTER | !('\\' | '"'))* '"';
 	public TerminalRule getDOUBLE_QUOTED_STRINGRule() {
 		return gaBase.getDOUBLE_QUOTED_STRINGRule();
-	} 
+	}
 
 	//terminal SINGLE_QUOTED_STRING:
 	//	"'" (ESCAPED_CHARACTER | !('\\' | "'"))* "'";
 	public TerminalRule getSINGLE_QUOTED_STRINGRule() {
 		return gaBase.getSINGLE_QUOTED_STRINGRule();
-	} 
+	}
 
 	//terminal ML_SINGLE_QUOTED_STRING:
 	//	"/'"->"'/";
 	public TerminalRule getML_SINGLE_QUOTED_STRINGRule() {
 		return gaBase.getML_SINGLE_QUOTED_STRINGRule();
-	} 
+	}
 
 	//terminal SIMPLE_ID:
 	//	LETTER_CHARACTER (LETTER_CHARACTER | '0'..'9')*;
 	public TerminalRule getSIMPLE_IDRule() {
 		return gaBase.getSIMPLE_IDRule();
-	} 
+	}
 
 	//terminal ESCAPED_ID:
 	//	"_" SINGLE_QUOTED_STRING;
 	public TerminalRule getESCAPED_IDRule() {
 		return gaBase.getESCAPED_IDRule();
-	} 
+	}
 
 	//terminal INT:
 	//	'0'..'9'+;
 	public TerminalRule getINTRule() {
 		return gaBase.getINTRule();
-	} 
+	}
 
 	//terminal ML_COMMENT:
 	//	'/ *'->'* /';
 	public TerminalRule getML_COMMENTRule() {
 		return gaBase.getML_COMMENTRule();
-	} 
+	}
 
 	//terminal SL_COMMENT:
 	//	'--' !('\n' | '\r')* ('\r'? '\n')?;
 	public TerminalRule getSL_COMMENTRule() {
 		return gaBase.getSL_COMMENTRule();
-	} 
+	}
 
 	//terminal WS:
 	//	' ' | '\t' | '\r' | '\n'+;
 	public TerminalRule getWSRule() {
 		return gaBase.getWSRule();
-	} 
+	}
 
 	//terminal ANY_OTHER:
 	//	.;
 	public TerminalRule getANY_OTHERRule() {
 		return gaBase.getANY_OTHERRule();
-	} 
+	}
 }
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/validation/AbstractOCLstdlibJavaValidator.java b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/validation/AbstractOCLstdlibJavaValidator.java
index 8828ad9..e2e563b 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/validation/AbstractOCLstdlibJavaValidator.java
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src-gen/org/eclipse/ocl/xtext/oclstdlib/validation/AbstractOCLstdlibJavaValidator.java
@@ -9,7 +9,7 @@
  *     E.D.Willink - initial API and implementation
  *******************************************************************************/
 package org.eclipse.ocl.xtext.oclstdlib.validation;
- 
+
 import java.util.ArrayList;
 import java.util.List;
 
diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/Bug418716.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/Bug418716.java
index 25005cf..2b4cb59 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/Bug418716.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/Bug418716.java
@@ -45,7 +45,7 @@
 	 * @return the value of the '<em>Attribute With Initital</em>' attribute.

 	 * @see #setAttributeWithInitital(int)

 	 * @see codegen.company.CodegencompanyPackage#getBug418716_AttributeWithInitital()

-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel get='/**\n * 100\n \052/\nfinal int ECORE_INT_100 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.intValueOf(<%codegen.company.CodegencompanyTables%>.INT_100);\nreturn ECORE_INT_100;'"

+	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel get='/**\n * 100\n \052/\nfinal int ECORE_INT_100 = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.intValueOf(&lt;%codegen.company.CodegencompanyTables%&gt;.INT_100);\nreturn ECORE_INT_100;'"

 	 * @generated

 	 */

 	int getAttributeWithInitital();

diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/CodegencompanyPackage.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/CodegencompanyPackage.java
index efd9153..6c81924 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/CodegencompanyPackage.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/CodegencompanyPackage.java
@@ -35,7 +35,6 @@
  * <!-- end-user-doc -->

  * @see codegen.company.CodegencompanyFactory

  * @model kind="package"

- *        annotation="http://www.eclipse.org/OCL/Import ecore='http://www.eclipse.org/emf/2002/Ecore'"

  * @generated

  */

 public interface CodegencompanyPackage extends EPackage {

diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/CodegencompanyTables.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/CodegencompanyTables.java
index fcc94e8..dbd1372 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/CodegencompanyTables.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/CodegencompanyTables.java
@@ -1,7 +1,7 @@
 /*******************************************************************************
  * <copyright>
  * 
- * Copyright (c) 2015, 2016 Willink Transformations and others.
+ * Copyright (c) 2015, 2017 Willink Transformations and others.
  * All rights reserved.   This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -67,50 +67,50 @@
 	/**
 	 *	Constants used by auto-generated code.
 	 */
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull RootPackageId PACKid_$metamodel$ = org.eclipse.ocl.pivot.ids.IdManager.getRootPackageId("$metamodel$");
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull NsURIPackageId PACKid_http_c_s_s_www_eclipse_org_s_emf_s_2002_s_Ecore = org.eclipse.ocl.pivot.ids.IdManager.getNsURIPackageId("http://www.eclipse.org/emf/2002/Ecore", null, org.eclipse.emf.ecore.EcorePackage.eINSTANCE);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull NsURIPackageId PACKid_http_c_s_s_www_eclipse_org_s_ocl_s_test_s_Pivot_s_Company_ecore = org.eclipse.ocl.pivot.ids.IdManager.getNsURIPackageId("http://www.eclipse.org/ocl/test/Pivot/Company.ecore", null, codegen.company.CodegencompanyPackage.eINSTANCE);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull ClassId CLSSid_Class = codegen.company.CodegencompanyTables.PACKid_$metamodel$.getClassId("Class", 0);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull ClassId CLSSid_Company = codegen.company.CodegencompanyTables.PACKid_http_c_s_s_www_eclipse_org_s_ocl_s_test_s_Pivot_s_Company_ecore.getClassId("Company", 0);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull ClassId CLSSid_Employee = codegen.company.CodegencompanyTables.PACKid_http_c_s_s_www_eclipse_org_s_ocl_s_test_s_Pivot_s_Company_ecore.getClassId("Employee", 0);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull DataTypeId DATAid_EInt = codegen.company.CodegencompanyTables.PACKid_http_c_s_s_www_eclipse_org_s_emf_s_2002_s_Ecore.getDataTypeId("EInt", 0);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull EnumerationId ENUMid_CompanySizeKind = codegen.company.CodegencompanyTables.PACKid_http_c_s_s_www_eclipse_org_s_ocl_s_test_s_Pivot_s_Company_ecore.getEnumerationId("CompanySizeKind");
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_0 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("0");
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_100 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("100");
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_1000 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("1000");
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_1000000 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("1000000");
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_49 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("49");
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_50 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("50");
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_999 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("999");
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId ORD_NULLid = org.eclipse.ocl.pivot.ids.TypeId.ORDERED_SET.getSpecializedId(org.eclipse.ocl.pivot.ids.TypeId.OCL_VOID);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId SEQ_PRIMid_Integer = org.eclipse.ocl.pivot.ids.TypeId.SEQUENCE.getSpecializedId(org.eclipse.ocl.pivot.ids.TypeId.INTEGER);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId SET_PRIMid_String = org.eclipse.ocl.pivot.ids.TypeId.SET.getSpecializedId(org.eclipse.ocl.pivot.ids.TypeId.STRING);
-    public static final /*@NonInvalid*/ java.lang.@org.eclipse.jdt.annotation.NonNull String STR_Company_c_c_dummyInvariant = "Company::dummyInvariant";
-    public static final /*@NonInvalid*/ java.lang.@org.eclipse.jdt.annotation.NonNull String STR_Employee_32_must_32_have_32_a_32_name = "Employee must have a name";
-    public static final /*@NonInvalid*/ java.lang.@org.eclipse.jdt.annotation.NonNull String STR_Employee_c_c_mustHaveName = "Employee::mustHaveName";
-    public static final /*@NonInvalid*/ java.lang.@org.eclipse.jdt.annotation.NonNull String STR_Employee_c_c_mustHaveNonEmptyName = "Employee::mustHaveNonEmptyName";
-    public static final /*@NonInvalid*/ java.lang.@org.eclipse.jdt.annotation.NonNull String STR_Employee_c_c_noManagerImpliesDirectReports = "Employee::noManagerImpliesDirectReports";
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId BAG_CLSSid_Employee = org.eclipse.ocl.pivot.ids.TypeId.BAG.getSpecializedId(codegen.company.CodegencompanyTables.CLSSid_Employee);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull EnumerationLiteralId ELITid_large = codegen.company.CodegencompanyTables.ENUMid_CompanySizeKind.getEnumerationLiteralId("large");
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull EnumerationLiteralId ELITid_medium = codegen.company.CodegencompanyTables.ENUMid_CompanySizeKind.getEnumerationLiteralId("medium");
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull EnumerationLiteralId ELITid_small = codegen.company.CodegencompanyTables.ENUMid_CompanySizeKind.getEnumerationLiteralId("small");
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId ORD_CLSSid_Employee = org.eclipse.ocl.pivot.ids.TypeId.ORDERED_SET.getSpecializedId(codegen.company.CodegencompanyTables.CLSSid_Employee);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull OrderedSetValue OrderedSet = org.eclipse.ocl.pivot.utilities.ValueUtil.createOrderedSetOfEach(codegen.company.CodegencompanyTables.ORD_NULLid);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull TuplePartId PARTid_ = org.eclipse.ocl.pivot.ids.IdManager.getTuplePartId(0, "range", codegen.company.CodegencompanyTables.SEQ_PRIMid_Integer);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull TuplePartId PARTid__0 = org.eclipse.ocl.pivot.ids.IdManager.getTuplePartId(1, "size", codegen.company.CodegencompanyTables.ENUMid_CompanySizeKind);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId SET_CLSSid_Employee = org.eclipse.ocl.pivot.ids.TypeId.SET.getSpecializedId(codegen.company.CodegencompanyTables.CLSSid_Employee);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerRange symbol_0 = org.eclipse.ocl.pivot.utilities.ValueUtil.createRange(codegen.company.CodegencompanyTables.INT_0, codegen.company.CodegencompanyTables.INT_49);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerRange symbol_4 = org.eclipse.ocl.pivot.utilities.ValueUtil.createRange(codegen.company.CodegencompanyTables.INT_1000, codegen.company.CodegencompanyTables.INT_1000000);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerRange symbol_2 = org.eclipse.ocl.pivot.utilities.ValueUtil.createRange(codegen.company.CodegencompanyTables.INT_50, codegen.company.CodegencompanyTables.INT_999);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull SequenceValue Sequence = org.eclipse.ocl.pivot.utilities.ValueUtil.createSequenceRange(codegen.company.CodegencompanyTables.SEQ_PRIMid_Integer, codegen.company.CodegencompanyTables.symbol_0);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull SequenceValue Sequence_1 = org.eclipse.ocl.pivot.utilities.ValueUtil.createSequenceRange(codegen.company.CodegencompanyTables.SEQ_PRIMid_Integer, codegen.company.CodegencompanyTables.symbol_4);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull SequenceValue Sequence_0 = org.eclipse.ocl.pivot.utilities.ValueUtil.createSequenceRange(codegen.company.CodegencompanyTables.SEQ_PRIMid_Integer, codegen.company.CodegencompanyTables.symbol_2);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull TupleTypeId TUPLid_ = org.eclipse.ocl.pivot.ids.IdManager.getTupleTypeId("Tuple", codegen.company.CodegencompanyTables.PARTid_, codegen.company.CodegencompanyTables.PARTid__0);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId SET_TUPLid_ = org.eclipse.ocl.pivot.ids.TypeId.SET.getSpecializedId(codegen.company.CodegencompanyTables.TUPLid_);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull TupleValue symbol_1 = org.eclipse.ocl.pivot.utilities.ValueUtil.createTupleOfEach(codegen.company.CodegencompanyTables.TUPLid_, codegen.company.CodegencompanyTables.Sequence, codegen.company.CodegencompanyTables.ELITid_small);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull TupleValue symbol_5 = org.eclipse.ocl.pivot.utilities.ValueUtil.createTupleOfEach(codegen.company.CodegencompanyTables.TUPLid_, codegen.company.CodegencompanyTables.Sequence_1, codegen.company.CodegencompanyTables.ELITid_large);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull TupleValue symbol_3 = org.eclipse.ocl.pivot.utilities.ValueUtil.createTupleOfEach(codegen.company.CodegencompanyTables.TUPLid_, codegen.company.CodegencompanyTables.Sequence_0, codegen.company.CodegencompanyTables.ELITid_medium);
-    public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull SetValue table = org.eclipse.ocl.pivot.utilities.ValueUtil.createSetOfEach(codegen.company.CodegencompanyTables.SET_TUPLid_, codegen.company.CodegencompanyTables.symbol_1, codegen.company.CodegencompanyTables.symbol_3, codegen.company.CodegencompanyTables.symbol_5);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull RootPackageId PACKid_$metamodel$ = org.eclipse.ocl.pivot.ids.IdManager.getRootPackageId("$metamodel$");
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull NsURIPackageId PACKid_http_c_s_s_www_eclipse_org_s_emf_s_2002_s_Ecore = org.eclipse.ocl.pivot.ids.IdManager.getNsURIPackageId("http://www.eclipse.org/emf/2002/Ecore", null, org.eclipse.emf.ecore.EcorePackage.eINSTANCE);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull NsURIPackageId PACKid_http_c_s_s_www_eclipse_org_s_ocl_s_test_s_Pivot_s_Company_ecore = org.eclipse.ocl.pivot.ids.IdManager.getNsURIPackageId("http://www.eclipse.org/ocl/test/Pivot/Company.ecore", null, codegen.company.CodegencompanyPackage.eINSTANCE);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull ClassId CLSSid_Class = codegen.company.CodegencompanyTables.PACKid_$metamodel$.getClassId("Class", 0);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull ClassId CLSSid_Company = codegen.company.CodegencompanyTables.PACKid_http_c_s_s_www_eclipse_org_s_ocl_s_test_s_Pivot_s_Company_ecore.getClassId("Company", 0);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull ClassId CLSSid_Employee = codegen.company.CodegencompanyTables.PACKid_http_c_s_s_www_eclipse_org_s_ocl_s_test_s_Pivot_s_Company_ecore.getClassId("Employee", 0);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull DataTypeId DATAid_EInt = codegen.company.CodegencompanyTables.PACKid_http_c_s_s_www_eclipse_org_s_emf_s_2002_s_Ecore.getDataTypeId("EInt", 0);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull EnumerationId ENUMid_CompanySizeKind = codegen.company.CodegencompanyTables.PACKid_http_c_s_s_www_eclipse_org_s_ocl_s_test_s_Pivot_s_Company_ecore.getEnumerationId("CompanySizeKind");
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_0 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("0");
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_100 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("100");
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_1000 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("1000");
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_1000000 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("1000000");
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_49 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("49");
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_50 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("50");
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerValue INT_999 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("999");
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId ORD_NULLid = org.eclipse.ocl.pivot.ids.TypeId.ORDERED_SET.getSpecializedId(org.eclipse.ocl.pivot.ids.TypeId.OCL_VOID);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId SEQ_PRIMid_Integer = org.eclipse.ocl.pivot.ids.TypeId.SEQUENCE.getSpecializedId(org.eclipse.ocl.pivot.ids.TypeId.INTEGER);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId SET_PRIMid_String = org.eclipse.ocl.pivot.ids.TypeId.SET.getSpecializedId(org.eclipse.ocl.pivot.ids.TypeId.STRING);
+	public static final /*@NonInvalid*/ java.lang.@org.eclipse.jdt.annotation.NonNull String STR_Company_c_c_dummyInvariant = "Company::dummyInvariant";
+	public static final /*@NonInvalid*/ java.lang.@org.eclipse.jdt.annotation.NonNull String STR_Employee_32_must_32_have_32_a_32_name = "Employee must have a name";
+	public static final /*@NonInvalid*/ java.lang.@org.eclipse.jdt.annotation.NonNull String STR_Employee_c_c_mustHaveName = "Employee::mustHaveName";
+	public static final /*@NonInvalid*/ java.lang.@org.eclipse.jdt.annotation.NonNull String STR_Employee_c_c_mustHaveNonEmptyName = "Employee::mustHaveNonEmptyName";
+	public static final /*@NonInvalid*/ java.lang.@org.eclipse.jdt.annotation.NonNull String STR_Employee_c_c_noManagerImpliesDirectReports = "Employee::noManagerImpliesDirectReports";
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId BAG_CLSSid_Employee = org.eclipse.ocl.pivot.ids.TypeId.BAG.getSpecializedId(codegen.company.CodegencompanyTables.CLSSid_Employee);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull EnumerationLiteralId ELITid_large = codegen.company.CodegencompanyTables.ENUMid_CompanySizeKind.getEnumerationLiteralId("large");
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull EnumerationLiteralId ELITid_medium = codegen.company.CodegencompanyTables.ENUMid_CompanySizeKind.getEnumerationLiteralId("medium");
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull EnumerationLiteralId ELITid_small = codegen.company.CodegencompanyTables.ENUMid_CompanySizeKind.getEnumerationLiteralId("small");
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId ORD_CLSSid_Employee = org.eclipse.ocl.pivot.ids.TypeId.ORDERED_SET.getSpecializedId(codegen.company.CodegencompanyTables.CLSSid_Employee);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull OrderedSetValue OrderedSet = org.eclipse.ocl.pivot.utilities.ValueUtil.createOrderedSetOfEach(codegen.company.CodegencompanyTables.ORD_NULLid);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull TuplePartId PARTid_ = org.eclipse.ocl.pivot.ids.IdManager.getTuplePartId(0, "range", codegen.company.CodegencompanyTables.SEQ_PRIMid_Integer);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull TuplePartId PARTid__0 = org.eclipse.ocl.pivot.ids.IdManager.getTuplePartId(1, "size", codegen.company.CodegencompanyTables.ENUMid_CompanySizeKind);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId SET_CLSSid_Employee = org.eclipse.ocl.pivot.ids.TypeId.SET.getSpecializedId(codegen.company.CodegencompanyTables.CLSSid_Employee);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerRange symbol_0 = org.eclipse.ocl.pivot.utilities.ValueUtil.createRange(codegen.company.CodegencompanyTables.INT_0, codegen.company.CodegencompanyTables.INT_49);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerRange symbol_4 = org.eclipse.ocl.pivot.utilities.ValueUtil.createRange(codegen.company.CodegencompanyTables.INT_1000, codegen.company.CodegencompanyTables.INT_1000000);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull IntegerRange symbol_2 = org.eclipse.ocl.pivot.utilities.ValueUtil.createRange(codegen.company.CodegencompanyTables.INT_50, codegen.company.CodegencompanyTables.INT_999);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull SequenceValue Sequence = org.eclipse.ocl.pivot.utilities.ValueUtil.createSequenceRange(codegen.company.CodegencompanyTables.SEQ_PRIMid_Integer, codegen.company.CodegencompanyTables.symbol_0);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull SequenceValue Sequence_1 = org.eclipse.ocl.pivot.utilities.ValueUtil.createSequenceRange(codegen.company.CodegencompanyTables.SEQ_PRIMid_Integer, codegen.company.CodegencompanyTables.symbol_4);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull SequenceValue Sequence_0 = org.eclipse.ocl.pivot.utilities.ValueUtil.createSequenceRange(codegen.company.CodegencompanyTables.SEQ_PRIMid_Integer, codegen.company.CodegencompanyTables.symbol_2);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull TupleTypeId TUPLid_ = org.eclipse.ocl.pivot.ids.IdManager.getTupleTypeId("Tuple", codegen.company.CodegencompanyTables.PARTid_, codegen.company.CodegencompanyTables.PARTid__0);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@org.eclipse.jdt.annotation.NonNull CollectionTypeId SET_TUPLid_ = org.eclipse.ocl.pivot.ids.TypeId.SET.getSpecializedId(codegen.company.CodegencompanyTables.TUPLid_);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull TupleValue symbol_1 = org.eclipse.ocl.pivot.utilities.ValueUtil.createTupleOfEach(codegen.company.CodegencompanyTables.TUPLid_, codegen.company.CodegencompanyTables.Sequence, codegen.company.CodegencompanyTables.ELITid_small);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull TupleValue symbol_5 = org.eclipse.ocl.pivot.utilities.ValueUtil.createTupleOfEach(codegen.company.CodegencompanyTables.TUPLid_, codegen.company.CodegencompanyTables.Sequence_1, codegen.company.CodegencompanyTables.ELITid_large);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull TupleValue symbol_3 = org.eclipse.ocl.pivot.utilities.ValueUtil.createTupleOfEach(codegen.company.CodegencompanyTables.TUPLid_, codegen.company.CodegencompanyTables.Sequence_0, codegen.company.CodegencompanyTables.ELITid_medium);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@org.eclipse.jdt.annotation.NonNull SetValue table = org.eclipse.ocl.pivot.utilities.ValueUtil.createSetOfEach(codegen.company.CodegencompanyTables.SET_TUPLid_, codegen.company.CodegencompanyTables.symbol_1, codegen.company.CodegencompanyTables.symbol_3, codegen.company.CodegencompanyTables.symbol_5);
 
 	/**
 	 *	The type parameters for templated types and operations.
@@ -205,6 +205,10 @@
 
 	/**
 	 *	The parameter lists shared by operations.
+	 *
+	 * @noextend This class is not intended to be subclassed by clients.
+	 * @noinstantiate This class is not intended to be instantiated by clients.
+	 * @noreference This class is not intended to be referenced by clients.
 	 */
 	public static class Parameters {
 		static {
@@ -226,6 +230,10 @@
 
 	/**
 	 *	The operation descriptors for each operation of each type.
+	 *
+	 * @noextend This class is not intended to be subclassed by clients.
+	 * @noinstantiate This class is not intended to be instantiated by clients.
+	 * @noreference This class is not intended to be referenced by clients.
 	 */
 	public static class Operations {
 		static {
@@ -250,6 +258,10 @@
 
 	/**
 	 *	The property descriptors for each property of each type.
+	 *
+	 * @noextend This class is not intended to be subclassed by clients.
+	 * @noinstantiate This class is not intended to be instantiated by clients.
+	 * @noreference This class is not intended to be referenced by clients.
 	 */
 	public static class Properties {
 		static {
@@ -536,11 +548,7 @@
 			CodegencompanyTables.Properties._Employee__hasNameAsAttribute,
 			CodegencompanyTables.Properties._Employee__manager,
 			CodegencompanyTables.Properties._Employee__name,
-			CodegencompanyTables.Properties._Employee__reportingChain,
-			CodegencompanyTables.Properties._Employee__Employee__allReports,
-			CodegencompanyTables.Properties._Employee__Employee__directReports,
-			CodegencompanyTables.Properties._Employee__Employee__manager,
-			CodegencompanyTables.Properties._Employee__Employee__reportingChain
+			CodegencompanyTables.Properties._Employee__reportingChain
 		};
 
 		/**
diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/Company.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/Company.java
index 99ee703..3bd7fe1 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/Company.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/Company.java
@@ -99,7 +99,7 @@
 	 * @see codegen.company.CompanySizeKind

 	 * @see codegen.company.CodegencompanyPackage#getCompany_Size()

 	 * @model required="true" transient="true" changeable="false" volatile="true" derived="true"

-	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='/**\n * \n * let\n *   table : Set(Tuple(range:Sequence(Integer), size:company::CompanySizeKind[1])) = Set{\n *     Tuple{range = Sequence{0..49}, size = CompanySizeKind::small\n *     }\n *     , Tuple{range = Sequence{50..999}, size = CompanySizeKind::medium\n *     }\n *     , Tuple{range = Sequence{1000..1000000}, size = CompanySizeKind::large\n *     }\n *   }\n * in\n *   table?->any(range->includes(employees->size()))?.size\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue safe_null_sources = (<%org.eclipse.ocl.pivot.values.SetValue%>)<%org.eclipse.ocl.pivot.library.collection.CollectionExcludingOperation%>.INSTANCE.evaluate(<%codegen.company.CodegencompanyTables%>.table, null);\n@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><?> ITERATOR__1 = safe_null_sources.iterator();\n/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.Nullable%> TupleValue any;\nwhile (true) {\n    if (!ITERATOR__1.hasNext()) {\n        throw new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"No matching content for \'any\'\");\n    }\n    @SuppressWarnings(\"null\")\n    /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> TupleValue _1 = (<%org.eclipse.ocl.pivot.values.TupleValue%>)ITERATOR__1.next();\n    /**\n     * range->includes(employees->size())\n     \052/\n    @SuppressWarnings(\"null\")\n    final /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SequenceValue range = (<%org.eclipse.ocl.pivot.values.SequenceValue%>)_1.getValue(0/*range\052/);\n    @SuppressWarnings(\"null\")\n    final /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%codegen.company.Employee%>> employees = this.getEmployees();\n    final /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_employees = idResolver.createOrderedSetOfAll(<%codegen.company.CodegencompanyTables%>.ORD_CLSSid_Employee, employees);\n    final /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue size = <%org.eclipse.ocl.pivot.library.collection.CollectionSizeOperation%>.INSTANCE.evaluate(BOXED_employees);\n    final /*@NonInvalid\052/ boolean includes = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludesOperation%>.INSTANCE.evaluate(range, size).booleanValue();\n    //\n    if (includes != <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.FALSE_VALUE) {\t\t\t// Carry on till something found\n        any = _1;\n        break;\n    }\n}\n/*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_any;\ntry {\n    CAUGHT_any = any;\n}\ncatch (<%java.lang.Exception%> e) {\n    CAUGHT_any = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n}\nfinal /*@NonInvalid\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> symbol_0 = CAUGHT_any == null;\n/*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.Nullable%> EnumerationLiteralId safe_size_source;\nif (symbol_0 == Boolean.TRUE) {\n    safe_size_source = null;\n}\nelse {\n    assert any != null;\n    @SuppressWarnings(\"null\")\n    final /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> EnumerationLiteralId size_0 = (<%org.eclipse.ocl.pivot.ids.EnumerationLiteralId%>)any.getValue(1/*size\052/);\n    safe_size_source = size_0;\n}\nif (safe_size_source == null) {\n    throw new <%org.eclipse.ocl.pivot.values.InvalidValueException%>(\"Null body for \\\'company::Company::size\\\'\");\n}\nfinal /*@NonInvalid\052/ codegen.company.@<%org.eclipse.jdt.annotation.NonNull%> CompanySizeKind ECORE_safe_size_source = (<%codegen.company.CompanySizeKind%>)idResolver.ecoreValueOf(<%org.eclipse.emf.common.util.Enumerator%>.class, safe_size_source);\nreturn ECORE_safe_size_source;'"

+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='/**\n *\n * let\n *   table : Set(Tuple(range:Sequence(Integer), size:company::CompanySizeKind[1])) = Set{\n *     Tuple{range = Sequence{0..49}, size = CompanySizeKind::small\n *     }\n *     , Tuple{range = Sequence{50..999}, size = CompanySizeKind::medium\n *     }\n *     , Tuple{range = Sequence{1000..1000000}, size = CompanySizeKind::large\n *     }\n *   }\n * in\n *   table?-&gt;any(range-&gt;includes(employees-&gt;size()))?.size\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; Executor executor = &lt;%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%&gt;.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; IdResolver idResolver = executor.getIdResolver();\nfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; SetValue safe_null_sources = (&lt;%org.eclipse.ocl.pivot.values.SetValue%&gt;)&lt;%org.eclipse.ocl.pivot.library.collection.CollectionExcludingOperation%&gt;.INSTANCE.evaluate(&lt;%codegen.company.CodegencompanyTables%&gt;.table, (Object)null);\n@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; &lt;%java.util.Iterator%&gt;&lt;&lt;%java.lang.Object%&gt;&gt; ITERATOR__1 = safe_null_sources.iterator();\n/*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; TupleValue any;\nwhile (true) {\n\tif (!ITERATOR__1.hasNext()) {\n\t\tthrow new &lt;%org.eclipse.ocl.pivot.values.InvalidValueException%&gt;(\"No matching content for \'any\'\");\n\t}\n\t@SuppressWarnings(\"null\")\n\t/*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; TupleValue _1 = (&lt;%org.eclipse.ocl.pivot.values.TupleValue%&gt;)ITERATOR__1.next();\n\t/**\n\t * range-&gt;includes(employees-&gt;size())\n\t \052/\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; SequenceValue range = (&lt;%org.eclipse.ocl.pivot.values.SequenceValue%&gt;)_1.getValue(0/*range\052/);\n\t@SuppressWarnings(\"null\")\n\tfinal /*@Thrown\052/ java.util.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; List&lt;&lt;%codegen.company.Employee%&gt;&gt; employees = this.getEmployees();\n\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; OrderedSetValue BOXED_employees = idResolver.createOrderedSetOfAll(&lt;%codegen.company.CodegencompanyTables%&gt;.ORD_CLSSid_Employee, employees);\n\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; IntegerValue size = &lt;%org.eclipse.ocl.pivot.library.collection.CollectionSizeOperation%&gt;.INSTANCE.evaluate(BOXED_employees);\n\tfinal /*@NonInvalid\052/ boolean includes = &lt;%org.eclipse.ocl.pivot.library.collection.CollectionIncludesOperation%&gt;.INSTANCE.evaluate(range, size).booleanValue();\n\t//\n\tif (includes != &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.FALSE_VALUE) {\t\t\t// Carry on till something found\n\t\tany = _1;\n\t\tbreak;\n\t}\n}\n/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.Nullable%&gt; &lt;%java.lang.Object%&gt; CAUGHT_any;\ntry {\n\tCAUGHT_any = any;\n}\ncatch (&lt;%java.lang.Exception%&gt; e) {\n\tCAUGHT_any = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n}\nfinal /*@NonInvalid\052/ @&lt;%org.eclipse.jdt.annotation.NonNull%&gt; &lt;%java.lang.Object%&gt; symbol_0 = CAUGHT_any == null;\n/*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; EnumerationLiteralId safe_size_source;\nif (symbol_0 == Boolean.TRUE) {\n\tsafe_size_source = null;\n}\nelse {\n\tassert any != null;\n\t@SuppressWarnings(\"null\")\n\tfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; EnumerationLiteralId size_0 = (&lt;%org.eclipse.ocl.pivot.ids.EnumerationLiteralId%&gt;)any.getValue(1/*size\052/);\n\tsafe_size_source = size_0;\n}\nif (safe_size_source == null) {\n\tthrow new &lt;%org.eclipse.ocl.pivot.values.InvalidValueException%&gt;(\"Null body for \\\'company::Company::size\\\'\");\n}\nfinal /*@Thrown\052/ codegen.company.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; CompanySizeKind ECORE_safe_size_source = (&lt;%codegen.company.CompanySizeKind%&gt;)idResolver.ecoreValueOf(&lt;%org.eclipse.emf.common.util.Enumerator%&gt;.class, safe_size_source);\nreturn ECORE_safe_size_source;'"

 	 * @generated

 	 */

 	CompanySizeKind getSize();

@@ -107,7 +107,7 @@
 	/**

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * \n * inv dummyInvariant:\n *   let severity : Integer[1] = \'Company::dummyInvariant\'.getSeverity()\n *   in\n *     if severity <= 0\n *     then true\n *     else\n *       let status : OclAny[1] = true\n *       in\n *         \'Company::dummyInvariant\'.logDiagnostic(self, null, diagnostics, context, null, severity, status, 0)\n *     endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%codegen.company.CodegencompanyTables%>.STR_Company_c_c_dummyInvariant);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%codegen.company.CodegencompanyTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n    symbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n    final /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%codegen.company.CodegencompanyTables%>.STR_Company_c_c_dummyInvariant, this, null, diagnostics, context, null, severity_0, <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE, <%codegen.company.CodegencompanyTables%>.INT_0).booleanValue();\n    symbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'"

+	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv dummyInvariant:\n *   let severity : Integer[1] = \'Company::dummyInvariant\'.getSeverity()\n *   in\n *     if severity &lt;= 0\n *     then true\n *     else\n *       let status : OclAny[1] = true\n *       in\n *         \'Company::dummyInvariant\'.logDiagnostic(self, null, diagnostics, context, null, severity, status, 0)\n *     endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; Executor executor = &lt;%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%&gt;.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; IntegerValue severity_0 = &lt;%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%&gt;.INSTANCE.evaluate(executor, &lt;%codegen.company.CodegencompanyTables%&gt;.STR_Company_c_c_dummyInvariant);\nfinal /*@NonInvalid\052/ boolean le = &lt;%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%&gt;.INSTANCE.evaluate(executor, severity_0, &lt;%codegen.company.CodegencompanyTables%&gt;.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.TRUE_VALUE;\n}\nelse {\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = &lt;%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%&gt;.INSTANCE.evaluate(executor, &lt;%org.eclipse.ocl.pivot.ids.TypeId%&gt;.BOOLEAN, &lt;%codegen.company.CodegencompanyTables%&gt;.STR_Company_c_c_dummyInvariant, this, (Object)null, diagnostics, context, (Object)null, severity_0, &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.TRUE_VALUE, &lt;%codegen.company.CodegencompanyTables%&gt;.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'"

 	 * @generated

 	 */

 	boolean dummyInvariant(DiagnosticChain diagnostics, Map<Object, Object> context);

diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/Employee.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/Employee.java
index 40af549..7730d2b 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/Employee.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/Employee.java
@@ -137,7 +137,7 @@
 	 * @return the value of the '<em>Direct Reports</em>' reference list.

 	 * @see codegen.company.CodegencompanyPackage#getEmployee_DirectReports()

 	 * @model transient="true" changeable="false" volatile="true" derived="true"

-	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='/**\n * company.employees?->select(manager = self)\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\n@SuppressWarnings(\"null\")\nfinal /*@Thrown\052/ codegen.company.@<%org.eclipse.jdt.annotation.NonNull%> Company company = this.getCompany();\n@SuppressWarnings(\"null\")\nfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%codegen.company.Employee%>> employees = company.getEmployees();\nfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_employees = idResolver.createOrderedSetOfAll(<%codegen.company.CodegencompanyTables%>.ORD_CLSSid_Employee, employees);\nfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue safe_null_sources = (<%org.eclipse.ocl.pivot.values.OrderedSetValue%>)<%org.eclipse.ocl.pivot.library.collection.CollectionExcludingOperation%>.INSTANCE.evaluate(BOXED_employees, null);\n/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.OrderedSetValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createOrderedSetAccumulatorValue(<%codegen.company.CodegencompanyTables%>.ORD_CLSSid_Employee);\n@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><?> ITERATOR__1 = safe_null_sources.iterator();\n/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue select;\nwhile (true) {\n    if (!ITERATOR__1.hasNext()) {\n        select = accumulator;\n        break;\n    }\n    @SuppressWarnings(\"null\")\n    /*@NonInvalid\052/ codegen.company.@<%org.eclipse.jdt.annotation.NonNull%> Employee _1 = (<%codegen.company.Employee%>)ITERATOR__1.next();\n    /**\n     * manager = self\n     \052/\n    final /*@Thrown\052/ codegen.company.@<%org.eclipse.jdt.annotation.Nullable%> Employee manager_0 = _1.getManager();\n    final /*@Thrown\052/ boolean eq = this.equals(manager_0);\n    //\n    if (eq == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n        accumulator.add(_1);\n    }\n}\nfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%codegen.company.Employee%>> ECORE_select = ((<%org.eclipse.ocl.pivot.ids.IdResolver%>.IdResolverExtension)idResolver).ecoreValueOfAll(<%codegen.company.Employee%>.class, select);\nreturn (<%org.eclipse.emf.common.util.EList%><<%codegen.company.Employee%>>)ECORE_select;'"

+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='/**\n * company.employees?-&gt;select(manager = self)\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; Executor executor = &lt;%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%&gt;.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; IdResolver idResolver = executor.getIdResolver();\n@SuppressWarnings(\"null\")\nfinal /*@Thrown\052/ codegen.company.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; Company company = this.getCompany();\n@SuppressWarnings(\"null\")\nfinal /*@Thrown\052/ java.util.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; List&lt;&lt;%codegen.company.Employee%&gt;&gt; employees = company.getEmployees();\nfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; OrderedSetValue BOXED_employees = idResolver.createOrderedSetOfAll(&lt;%codegen.company.CodegencompanyTables%&gt;.ORD_CLSSid_Employee, employees);\nfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; OrderedSetValue safe_null_sources = (&lt;%org.eclipse.ocl.pivot.values.OrderedSetValue%&gt;)&lt;%org.eclipse.ocl.pivot.library.collection.CollectionExcludingOperation%&gt;.INSTANCE.evaluate(BOXED_employees, (Object)null);\n/*@Thrown\052/ &lt;%org.eclipse.ocl.pivot.values.OrderedSetValue%&gt;.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createOrderedSetAccumulatorValue(&lt;%codegen.company.CodegencompanyTables%&gt;.ORD_CLSSid_Employee);\n@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; &lt;%java.util.Iterator%&gt;&lt;&lt;%java.lang.Object%&gt;&gt; ITERATOR__1 = safe_null_sources.iterator();\n/*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; OrderedSetValue select;\nwhile (true) {\n\tif (!ITERATOR__1.hasNext()) {\n\t\tselect = accumulator;\n\t\tbreak;\n\t}\n\t@SuppressWarnings(\"null\")\n\t/*@NonInvalid\052/ codegen.company.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; Employee _1 = (&lt;%codegen.company.Employee%&gt;)ITERATOR__1.next();\n\t/**\n\t * manager = self\n\t \052/\n\tfinal /*@Thrown\052/ codegen.company.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; Employee manager_0 = _1.getManager();\n\tfinal /*@Thrown\052/ boolean eq = this.equals(manager_0);\n\t//\n\tif (eq == &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.TRUE_VALUE) {\n\t\taccumulator.add(_1);\n\t}\n}\nfinal /*@Thrown\052/ java.util.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; List&lt;&lt;%codegen.company.Employee%&gt;&gt; ECORE_select = ((&lt;%org.eclipse.ocl.pivot.ids.IdResolver%&gt;.IdResolverExtension)idResolver).ecoreValueOfAll(&lt;%codegen.company.Employee%&gt;.class, select);\nreturn (&lt;%org.eclipse.emf.common.util.EList%&gt;&lt;&lt;%codegen.company.Employee%&gt;&gt;)ECORE_select;'"

 	 * @generated

 	 */

 	EList<Employee> getDirectReports();

@@ -155,7 +155,7 @@
 	 * @see codegen.company.CodegencompanyPackage#getEmployee_AllReports()

 	 * @model transient="true" changeable="false" volatile="true" derived="true" ordered="false"

 	 *        annotation="http://www.eclipse.org/OCL/Collection nullFree='true'"

-	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='/**\n * Employee.allInstances()->select(reportsTo(self))\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@<%org.eclipse.jdt.annotation.NonNull%> Class TYP_company_c_c_Employee_0 = idResolver.getClass(<%codegen.company.CodegencompanyTables%>.CLSSid_Employee, null);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue allInstances = <%org.eclipse.ocl.pivot.library.classifier.ClassifierAllInstancesOperation%>.INSTANCE.evaluate(executor, <%codegen.company.CodegencompanyTables%>.SET_CLSSid_Employee, TYP_company_c_c_Employee_0);\n/*@Thrown\052/ <%org.eclipse.ocl.pivot.values.SetValue%>.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createSetAccumulatorValue(<%codegen.company.CodegencompanyTables%>.SET_CLSSid_Employee);\n@<%org.eclipse.jdt.annotation.NonNull%> <%java.util.Iterator%><?> ITERATOR__1 = allInstances.iterator();\n/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue select;\nwhile (true) {\n    if (!ITERATOR__1.hasNext()) {\n        select = accumulator;\n        break;\n    }\n    @SuppressWarnings(\"null\")\n    /*@NonInvalid\052/ codegen.company.@<%org.eclipse.jdt.annotation.NonNull%> Employee _1 = (<%codegen.company.Employee%>)ITERATOR__1.next();\n    /**\n     * reportsTo(self)\n     \052/\n    final /*@Thrown\052/ boolean reportsTo = _1.reportsTo(this);\n    //\n    if (reportsTo == <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE) {\n        accumulator.add(_1);\n    }\n}\nfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%codegen.company.Employee%>> ECORE_select = ((<%org.eclipse.ocl.pivot.ids.IdResolver%>.IdResolverExtension)idResolver).ecoreValueOfAll(<%codegen.company.Employee%>.class, select);\nreturn (<%org.eclipse.emf.common.util.EList%><<%codegen.company.Employee%>>)ECORE_select;'"

+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='/**\n * Employee.allInstances()-&gt;select(reportsTo(self))\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; Executor executor = &lt;%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%&gt;.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; Class TYP_company_c_c_Employee_0 = idResolver.getClass(&lt;%codegen.company.CodegencompanyTables%&gt;.CLSSid_Employee, null);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; SetValue allInstances = &lt;%org.eclipse.ocl.pivot.library.classifier.ClassifierAllInstancesOperation%&gt;.INSTANCE.evaluate(executor, &lt;%codegen.company.CodegencompanyTables%&gt;.SET_CLSSid_Employee, TYP_company_c_c_Employee_0);\n/*@Thrown\052/ &lt;%org.eclipse.ocl.pivot.values.SetValue%&gt;.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createSetAccumulatorValue(&lt;%codegen.company.CodegencompanyTables%&gt;.SET_CLSSid_Employee);\n@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; &lt;%java.util.Iterator%&gt;&lt;&lt;%java.lang.Object%&gt;&gt; ITERATOR__1 = allInstances.iterator();\n/*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; SetValue select;\nwhile (true) {\n\tif (!ITERATOR__1.hasNext()) {\n\t\tselect = accumulator;\n\t\tbreak;\n\t}\n\t@SuppressWarnings(\"null\")\n\t/*@NonInvalid\052/ codegen.company.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; Employee _1 = (&lt;%codegen.company.Employee%&gt;)ITERATOR__1.next();\n\t/**\n\t * reportsTo(self)\n\t \052/\n\tfinal /*@Thrown\052/ boolean reportsTo = _1.reportsTo(this);\n\t//\n\tif (reportsTo == &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.TRUE_VALUE) {\n\t\taccumulator.add(_1);\n\t}\n}\nfinal /*@Thrown\052/ java.util.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; List&lt;&lt;%codegen.company.Employee%&gt;&gt; ECORE_select = ((&lt;%org.eclipse.ocl.pivot.ids.IdResolver%&gt;.IdResolverExtension)idResolver).ecoreValueOfAll(&lt;%codegen.company.Employee%&gt;.class, select);\nreturn (&lt;%org.eclipse.emf.common.util.EList%&gt;&lt;&lt;%codegen.company.Employee%&gt;&gt;)ECORE_select;'"

 	 * @generated

 	 */

 	EList<Employee> getAllReports();

@@ -172,7 +172,7 @@
 	 * @return the value of the '<em>Reporting Chain</em>' reference list.

 	 * @see codegen.company.CodegencompanyPackage#getEmployee_ReportingChain()

 	 * @model transient="true" changeable="false" volatile="true" derived="true"

-	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='/**\n * \n * if manager.oclIsUndefined()\n * then OrderedSet{}\n * else manager?.reportingChain->prepend(manager)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\n/*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_manager_0;\ntry {\n    final /*@Thrown\052/ codegen.company.@<%org.eclipse.jdt.annotation.Nullable%> Employee manager_0 = this.getManager();\n    CAUGHT_manager_0 = manager_0;\n}\ncatch (<%java.lang.Exception%> e) {\n    CAUGHT_manager_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n}\nfinal /*@NonInvalid\052/ boolean symbol_6 = (CAUGHT_manager_0 == null) || (CAUGHT_manager_0 instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>);\n/*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue symbol_8;\nif (symbol_6) {\n    symbol_8 = <%codegen.company.CodegencompanyTables%>.OrderedSet;\n}\nelse {\n    final /*@Thrown\052/ codegen.company.@<%org.eclipse.jdt.annotation.Nullable%> Employee manager_2 = this.getManager();\n    /*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_manager_1;\n    try {\n        CAUGHT_manager_1 = manager_2;\n    }\n    catch (<%java.lang.Exception%> e) {\n        CAUGHT_manager_1 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n    }\n    final /*@NonInvalid\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> symbol_7 = CAUGHT_manager_1 == null;\n    /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.Nullable%> OrderedSetValue safe_reportingChain_source;\n    if (symbol_7 == Boolean.TRUE) {\n        safe_reportingChain_source = null;\n    }\n    else {\n        assert manager_2 != null;\n        @SuppressWarnings(\"null\")\n        final /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%codegen.company.Employee%>> reportingChain = manager_2.getReportingChain();\n        final /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_reportingChain = idResolver.createOrderedSetOfAll(<%codegen.company.CodegencompanyTables%>.ORD_CLSSid_Employee, reportingChain);\n        safe_reportingChain_source = BOXED_reportingChain;\n    }\n    final /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue prepend = (<%org.eclipse.ocl.pivot.values.OrderedSetValue%>)<%org.eclipse.ocl.pivot.library.collection.OrderedCollectionPrependOperation%>.INSTANCE.evaluate(safe_reportingChain_source, manager_2);\n    symbol_8 = prepend;\n}\nfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%codegen.company.Employee%>> ECORE_symbol_8 = ((<%org.eclipse.ocl.pivot.ids.IdResolver%>.IdResolverExtension)idResolver).ecoreValueOfAll(<%codegen.company.Employee%>.class, symbol_8);\nreturn (<%org.eclipse.emf.common.util.EList%><<%codegen.company.Employee%>>)ECORE_symbol_8;'"

+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='/**\n *\n * if manager.oclIsUndefined()\n * then OrderedSet{}\n * else manager?.reportingChain-&gt;prepend(manager)\n * endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; Executor executor = &lt;%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%&gt;.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; IdResolver idResolver = executor.getIdResolver();\n/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.Nullable%&gt; &lt;%java.lang.Object%&gt; CAUGHT_manager_0;\ntry {\n\tfinal /*@Thrown\052/ codegen.company.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; Employee manager_0 = this.getManager();\n\tCAUGHT_manager_0 = manager_0;\n}\ncatch (&lt;%java.lang.Exception%&gt; e) {\n\tCAUGHT_manager_0 = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n}\nfinal /*@NonInvalid\052/ boolean symbol_6 = (CAUGHT_manager_0 == null) || (CAUGHT_manager_0 instanceof &lt;%org.eclipse.ocl.pivot.values.InvalidValueException%&gt;);\n/*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; OrderedSetValue symbol_8;\nif (symbol_6) {\n\tsymbol_8 = &lt;%codegen.company.CodegencompanyTables%&gt;.OrderedSet;\n}\nelse {\n\tfinal /*@Thrown\052/ codegen.company.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; Employee manager_2 = this.getManager();\n\t/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.Nullable%&gt; &lt;%java.lang.Object%&gt; CAUGHT_manager_1;\n\ttry {\n\t\tCAUGHT_manager_1 = manager_2;\n\t}\n\tcatch (&lt;%java.lang.Exception%&gt; e) {\n\t\tCAUGHT_manager_1 = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ @&lt;%org.eclipse.jdt.annotation.NonNull%&gt; &lt;%java.lang.Object%&gt; symbol_7 = CAUGHT_manager_1 == null;\n\t/*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; OrderedSetValue safe_reportingChain_source;\n\tif (symbol_7 == Boolean.TRUE) {\n\t\tsafe_reportingChain_source = null;\n\t}\n\telse {\n\t\tassert manager_2 != null;\n\t\t@SuppressWarnings(\"null\")\n\t\tfinal /*@Thrown\052/ java.util.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; List&lt;&lt;%codegen.company.Employee%&gt;&gt; reportingChain = manager_2.getReportingChain();\n\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; OrderedSetValue BOXED_reportingChain = idResolver.createOrderedSetOfAll(&lt;%codegen.company.CodegencompanyTables%&gt;.ORD_CLSSid_Employee, reportingChain);\n\t\tsafe_reportingChain_source = BOXED_reportingChain;\n\t}\n\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; OrderedSetValue prepend = (&lt;%org.eclipse.ocl.pivot.values.OrderedSetValue%&gt;)&lt;%org.eclipse.ocl.pivot.library.collection.OrderedCollectionPrependOperation%&gt;.INSTANCE.evaluate(safe_reportingChain_source, manager_2);\n\tsymbol_8 = prepend;\n}\nfinal /*@Thrown\052/ java.util.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; List&lt;&lt;%codegen.company.Employee%&gt;&gt; ECORE_symbol_8 = ((&lt;%org.eclipse.ocl.pivot.ids.IdResolver%&gt;.IdResolverExtension)idResolver).ecoreValueOfAll(&lt;%codegen.company.Employee%&gt;.class, symbol_8);\nreturn (&lt;%org.eclipse.emf.common.util.EList%&gt;&lt;&lt;%codegen.company.Employee%&gt;&gt;)ECORE_symbol_8;'"

 	 * @generated

 	 */

 	EList<Employee> getReportingChain();

@@ -188,7 +188,7 @@
 	 * @return the value of the '<em>Has Name As Attribute</em>' attribute.

 	 * @see codegen.company.CodegencompanyPackage#getEmployee_HasNameAsAttribute()

 	 * @model transient="true" changeable="false" volatile="true" derived="true"

-	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='/**\n * name <> null\n \052/\nfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = this.getName();\nfinal /*@Thrown\052/ boolean ne = name != null;\nreturn ne;'"

+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='/**\n * name &lt;&gt; null\n \052/\nfinal /*@Thrown\052/ java.lang.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; String name = this.getName();\nfinal /*@Thrown\052/ boolean ne = name != null;\nreturn ne;'"

 	 * @generated

 	 */

 	boolean isHasNameAsAttribute();

@@ -197,7 +197,7 @@
 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

 	 * @model required="true"

-	 *        annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * self.reportingChain->includes(manager)\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\n@SuppressWarnings(\"null\")\nfinal /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%codegen.company.Employee%>> reportingChain = this.getReportingChain();\nfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_reportingChain = idResolver.createOrderedSetOfAll(<%codegen.company.CodegencompanyTables%>.ORD_CLSSid_Employee, reportingChain);\nfinal /*@Thrown\052/ boolean includes = <%org.eclipse.ocl.pivot.library.collection.CollectionIncludesOperation%>.INSTANCE.evaluate(BOXED_reportingChain, manager).booleanValue();\nreturn includes;'"

+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * self.reportingChain-&gt;includes(manager)\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; Executor executor = &lt;%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%&gt;.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; IdResolver idResolver = executor.getIdResolver();\n@SuppressWarnings(\"null\")\nfinal /*@Thrown\052/ java.util.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; List&lt;&lt;%codegen.company.Employee%&gt;&gt; reportingChain = this.getReportingChain();\nfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; OrderedSetValue BOXED_reportingChain = idResolver.createOrderedSetOfAll(&lt;%codegen.company.CodegencompanyTables%&gt;.ORD_CLSSid_Employee, reportingChain);\nfinal /*@Thrown\052/ boolean includes = &lt;%org.eclipse.ocl.pivot.library.collection.CollectionIncludesOperation%&gt;.INSTANCE.evaluate(BOXED_reportingChain, manager).booleanValue();\nreturn includes;'"

 	 * @generated

 	 */

 	boolean reportsTo(Employee manager);

@@ -206,7 +206,7 @@
 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

 	 * @model required="true"

-	 *        annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * name <> null\n \052/\nfinal /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = this.getName();\nfinal /*@Thrown\052/ boolean ne = name != null;\nreturn ne;'"

+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * name &lt;&gt; null\n \052/\nfinal /*@Thrown\052/ java.lang.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; String name = this.getName();\nfinal /*@Thrown\052/ boolean ne = name != null;\nreturn ne;'"

 	 * @generated

 	 */

 	boolean hasNameAsOperation();

@@ -214,7 +214,7 @@
 	/**

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * \n * inv noManagerImpliesDirectReports:\n *   let\n *     severity : Integer[1] = \'Employee::noManagerImpliesDirectReports\'.getSeverity()\n *   in\n *     if severity <= 0\n *     then true\n *     else\n *       let\n *         status : OclAny[?] = manager.oclIsUndefined() implies\n *         directReports->size() > 0\n *       in\n *         \'Employee::noManagerImpliesDirectReports\'.logDiagnostic(self, null, diagnostics, context, null, severity, status, 0)\n *     endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@<%org.eclipse.jdt.annotation.NonNull%> IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%codegen.company.CodegencompanyTables%>.STR_Employee_c_c_noManagerImpliesDirectReports);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%codegen.company.CodegencompanyTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_1;\nif (le) {\n    symbol_1 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n    /*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_status;\n    try {\n        /*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_manager;\n        try {\n            final /*@Thrown\052/ codegen.company.@<%org.eclipse.jdt.annotation.Nullable%> Employee manager = this.getManager();\n            CAUGHT_manager = manager;\n        }\n        catch (<%java.lang.Exception%> e) {\n            CAUGHT_manager = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n        }\n        final /*@NonInvalid\052/ boolean symbol_0 = (CAUGHT_manager == null) || (CAUGHT_manager instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>);\n        /*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_gt;\n        try {\n            @SuppressWarnings(\"null\")\n            final /*@Thrown\052/ java.util.@<%org.eclipse.jdt.annotation.NonNull%> List<<%codegen.company.Employee%>> directReports = this.getDirectReports();\n            final /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> OrderedSetValue BOXED_directReports = idResolver.createOrderedSetOfAll(<%codegen.company.CodegencompanyTables%>.ORD_CLSSid_Employee, directReports);\n            final /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue size = <%org.eclipse.ocl.pivot.library.collection.CollectionSizeOperation%>.INSTANCE.evaluate(BOXED_directReports);\n            final /*@Thrown\052/ boolean gt = <%org.eclipse.ocl.pivot.library.oclany.OclComparableGreaterThanOperation%>.INSTANCE.evaluate(executor, size, <%codegen.company.CodegencompanyTables%>.INT_0).booleanValue();\n            CAUGHT_gt = gt;\n        }\n        catch (<%java.lang.Exception%> e) {\n            CAUGHT_gt = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n        }\n        final /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean status = <%org.eclipse.ocl.pivot.library.logical.BooleanImpliesOperation%>.INSTANCE.evaluate(symbol_0, CAUGHT_gt);\n        CAUGHT_status = status;\n    }\n    catch (<%java.lang.Exception%> e) {\n        CAUGHT_status = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n    }\n    final /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%codegen.company.CodegencompanyTables%>.STR_Employee_c_c_noManagerImpliesDirectReports, this, null, diagnostics, context, null, severity_0, CAUGHT_status, <%codegen.company.CodegencompanyTables%>.INT_0).booleanValue();\n    symbol_1 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_1;'"

+	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv noManagerImpliesDirectReports:\n *   let\n *     severity : Integer[1] = \'Employee::noManagerImpliesDirectReports\'.getSeverity()\n *   in\n *     if severity &lt;= 0\n *     then true\n *     else\n *       let\n *         status : OclAny[?] = manager.oclIsUndefined() implies\n *         directReports-&gt;size() &gt; 0\n *       in\n *         \'Employee::noManagerImpliesDirectReports\'.logDiagnostic(self, null, diagnostics, context, null, severity, status, 0)\n *     endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; Executor executor = &lt;%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%&gt;.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.ids.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; IdResolver idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; IntegerValue severity_0 = &lt;%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%&gt;.INSTANCE.evaluate(executor, &lt;%codegen.company.CodegencompanyTables%&gt;.STR_Employee_c_c_noManagerImpliesDirectReports);\nfinal /*@NonInvalid\052/ boolean le = &lt;%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%&gt;.INSTANCE.evaluate(executor, severity_0, &lt;%codegen.company.CodegencompanyTables%&gt;.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_1;\nif (le) {\n\tsymbol_1 = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.Nullable%&gt; &lt;%java.lang.Object%&gt; CAUGHT_status;\n\ttry {\n\t\t/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.Nullable%&gt; &lt;%java.lang.Object%&gt; CAUGHT_manager;\n\t\ttry {\n\t\t\tfinal /*@Thrown\052/ codegen.company.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; Employee manager = this.getManager();\n\t\t\tCAUGHT_manager = manager;\n\t\t}\n\t\tcatch (&lt;%java.lang.Exception%&gt; e) {\n\t\t\tCAUGHT_manager = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n\t\t}\n\t\tfinal /*@NonInvalid\052/ boolean symbol_0 = (CAUGHT_manager == null) || (CAUGHT_manager instanceof &lt;%org.eclipse.ocl.pivot.values.InvalidValueException%&gt;);\n\t\t/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.NonNull%&gt; &lt;%java.lang.Object%&gt; CAUGHT_gt;\n\t\ttry {\n\t\t\t@SuppressWarnings(\"null\")\n\t\t\tfinal /*@Thrown\052/ java.util.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; List&lt;&lt;%codegen.company.Employee%&gt;&gt; directReports = this.getDirectReports();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; OrderedSetValue BOXED_directReports = idResolver.createOrderedSetOfAll(&lt;%codegen.company.CodegencompanyTables%&gt;.ORD_CLSSid_Employee, directReports);\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; IntegerValue size = &lt;%org.eclipse.ocl.pivot.library.collection.CollectionSizeOperation%&gt;.INSTANCE.evaluate(BOXED_directReports);\n\t\t\tfinal /*@Thrown\052/ boolean gt = &lt;%org.eclipse.ocl.pivot.library.oclany.OclComparableGreaterThanOperation%&gt;.INSTANCE.evaluate(executor, size, &lt;%codegen.company.CodegencompanyTables%&gt;.INT_0).booleanValue();\n\t\t\tCAUGHT_gt = gt;\n\t\t}\n\t\tcatch (&lt;%java.lang.Exception%&gt; e) {\n\t\t\tCAUGHT_gt = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n\t\t}\n\t\tfinal /*@Thrown\052/ java.lang.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; Boolean status = &lt;%org.eclipse.ocl.pivot.library.logical.BooleanImpliesOperation%&gt;.INSTANCE.evaluate(symbol_0, CAUGHT_gt);\n\t\tCAUGHT_status = status;\n\t}\n\tcatch (&lt;%java.lang.Exception%&gt; e) {\n\t\tCAUGHT_status = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = &lt;%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%&gt;.INSTANCE.evaluate(executor, &lt;%org.eclipse.ocl.pivot.ids.TypeId%&gt;.BOOLEAN, &lt;%codegen.company.CodegencompanyTables%&gt;.STR_Employee_c_c_noManagerImpliesDirectReports, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_status, &lt;%codegen.company.CodegencompanyTables%&gt;.INT_0).booleanValue();\n\tsymbol_1 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_1;'"

 	 * @generated

 	 */

 	boolean noManagerImpliesDirectReports(DiagnosticChain diagnostics, Map<Object, Object> context);

@@ -222,7 +222,7 @@
 	/**

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * \n * inv mustHaveName:\n *   let severity : Integer[1] = \'Employee::mustHaveName\'.getSeverity()\n *   in\n *     if severity <= 0\n *     then true\n *     else\n *       let\n *         status : OclAny[?] = not name.oclIsUndefined() and hasNameAsAttribute and\n *         hasNameAsOperation()\n *       in\n *         let\n *           message : String[?] = if status <> true\n *           then \'Employee must have a name\'\n *           else null\n *           endif\n *         in\n *           \'Employee::mustHaveName\'.logDiagnostic(self, null, diagnostics, context, message, severity, status, 0)\n *     endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%codegen.company.CodegencompanyTables%>.STR_Employee_c_c_mustHaveName);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%codegen.company.CodegencompanyTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_1;\nif (le) {\n    symbol_1 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n    /*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_status;\n    try {\n        /*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_and;\n        try {\n            /*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_name;\n            try {\n                final /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = this.getName();\n                CAUGHT_name = name;\n            }\n            catch (<%java.lang.Exception%> e) {\n                CAUGHT_name = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n            }\n            final /*@NonInvalid\052/ boolean symbol_0 = (CAUGHT_name == null) || (CAUGHT_name instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>);\n            final /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean not = <%org.eclipse.ocl.pivot.library.logical.BooleanNotOperation%>.INSTANCE.evaluate(symbol_0);\n            /*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_hasNameAsAttribute;\n            try {\n                final /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean hasNameAsAttribute = this.isHasNameAsAttribute();\n                CAUGHT_hasNameAsAttribute = hasNameAsAttribute;\n            }\n            catch (<%java.lang.Exception%> e) {\n                CAUGHT_hasNameAsAttribute = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n            }\n            final /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean and = <%org.eclipse.ocl.pivot.library.logical.BooleanAndOperation%>.INSTANCE.evaluate(not, CAUGHT_hasNameAsAttribute);\n            CAUGHT_and = and;\n        }\n        catch (<%java.lang.Exception%> e) {\n            CAUGHT_and = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n        }\n        /*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_hasNameAsOperation;\n        try {\n            final /*@Thrown\052/ boolean hasNameAsOperation = this.hasNameAsOperation();\n            CAUGHT_hasNameAsOperation = hasNameAsOperation;\n        }\n        catch (<%java.lang.Exception%> e) {\n            CAUGHT_hasNameAsOperation = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n        }\n        final /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean status = <%org.eclipse.ocl.pivot.library.logical.BooleanAndOperation%>.INSTANCE.evaluate(CAUGHT_and, CAUGHT_hasNameAsOperation);\n        CAUGHT_status = status;\n    }\n    catch (<%java.lang.Exception%> e) {\n        CAUGHT_status = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n    }\n    if (CAUGHT_status instanceof <%org.eclipse.ocl.pivot.values.InvalidValueException%>) {\n        throw (<%org.eclipse.ocl.pivot.values.InvalidValueException%>)CAUGHT_status;\n    }\n    final /*@Thrown\052/ boolean ne = CAUGHT_status == Boolean.FALSE;\n    /*@NonInvalid\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String message_0;\n    if (ne) {\n        message_0 = <%codegen.company.CodegencompanyTables%>.STR_Employee_32_must_32_have_32_a_32_name;\n    }\n    else {\n        message_0 = null;\n    }\n    final /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%codegen.company.CodegencompanyTables%>.STR_Employee_c_c_mustHaveName, this, null, diagnostics, context, message_0, severity_0, CAUGHT_status, <%codegen.company.CodegencompanyTables%>.INT_0).booleanValue();\n    symbol_1 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_1;'"

+	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv mustHaveName:\n *   let severity : Integer[1] = \'Employee::mustHaveName\'.getSeverity()\n *   in\n *     if severity &lt;= 0\n *     then true\n *     else\n *       let\n *         status : OclAny[?] = not name.oclIsUndefined() and hasNameAsAttribute and\n *         hasNameAsOperation()\n *       in\n *         let\n *           message : String[?] = if status &lt;&gt; true\n *           then \'Employee must have a name\'\n *           else null\n *           endif\n *         in\n *           \'Employee::mustHaveName\'.logDiagnostic(self, null, diagnostics, context, message, severity, status, 0)\n *     endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; Executor executor = &lt;%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%&gt;.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; IntegerValue severity_0 = &lt;%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%&gt;.INSTANCE.evaluate(executor, &lt;%codegen.company.CodegencompanyTables%&gt;.STR_Employee_c_c_mustHaveName);\nfinal /*@NonInvalid\052/ boolean le = &lt;%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%&gt;.INSTANCE.evaluate(executor, severity_0, &lt;%codegen.company.CodegencompanyTables%&gt;.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_1;\nif (le) {\n\tsymbol_1 = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.Nullable%&gt; &lt;%java.lang.Object%&gt; CAUGHT_status;\n\ttry {\n\t\t/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.Nullable%&gt; &lt;%java.lang.Object%&gt; CAUGHT_and;\n\t\ttry {\n\t\t\t/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.Nullable%&gt; &lt;%java.lang.Object%&gt; CAUGHT_name;\n\t\t\ttry {\n\t\t\t\tfinal /*@Thrown\052/ java.lang.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; String name = this.getName();\n\t\t\t\tCAUGHT_name = name;\n\t\t\t}\n\t\t\tcatch (&lt;%java.lang.Exception%&gt; e) {\n\t\t\t\tCAUGHT_name = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n\t\t\t}\n\t\t\tfinal /*@NonInvalid\052/ boolean symbol_0 = (CAUGHT_name == null) || (CAUGHT_name instanceof &lt;%org.eclipse.ocl.pivot.values.InvalidValueException%&gt;);\n\t\t\tfinal /*@NonInvalid\052/ java.lang.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; Boolean not = &lt;%org.eclipse.ocl.pivot.library.logical.BooleanNotOperation%&gt;.INSTANCE.evaluate(symbol_0);\n\t\t\t/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.Nullable%&gt; &lt;%java.lang.Object%&gt; CAUGHT_hasNameAsAttribute;\n\t\t\ttry {\n\t\t\t\tfinal /*@Thrown\052/ java.lang.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; Boolean hasNameAsAttribute = this.isHasNameAsAttribute();\n\t\t\t\tCAUGHT_hasNameAsAttribute = hasNameAsAttribute;\n\t\t\t}\n\t\t\tcatch (&lt;%java.lang.Exception%&gt; e) {\n\t\t\t\tCAUGHT_hasNameAsAttribute = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n\t\t\t}\n\t\t\tfinal /*@Thrown\052/ java.lang.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; Boolean and = &lt;%org.eclipse.ocl.pivot.library.logical.BooleanAndOperation%&gt;.INSTANCE.evaluate(not, CAUGHT_hasNameAsAttribute);\n\t\t\tCAUGHT_and = and;\n\t\t}\n\t\tcatch (&lt;%java.lang.Exception%&gt; e) {\n\t\t\tCAUGHT_and = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n\t\t}\n\t\t/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.NonNull%&gt; &lt;%java.lang.Object%&gt; CAUGHT_hasNameAsOperation;\n\t\ttry {\n\t\t\tfinal /*@Thrown\052/ boolean hasNameAsOperation = this.hasNameAsOperation();\n\t\t\tCAUGHT_hasNameAsOperation = hasNameAsOperation;\n\t\t}\n\t\tcatch (&lt;%java.lang.Exception%&gt; e) {\n\t\t\tCAUGHT_hasNameAsOperation = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n\t\t}\n\t\tfinal /*@Thrown\052/ java.lang.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; Boolean status = &lt;%org.eclipse.ocl.pivot.library.logical.BooleanAndOperation%&gt;.INSTANCE.evaluate(CAUGHT_and, CAUGHT_hasNameAsOperation);\n\t\tCAUGHT_status = status;\n\t}\n\tcatch (&lt;%java.lang.Exception%&gt; e) {\n\t\tCAUGHT_status = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n\t}\n\tif (CAUGHT_status instanceof &lt;%org.eclipse.ocl.pivot.values.InvalidValueException%&gt;) {\n\t\tthrow (&lt;%org.eclipse.ocl.pivot.values.InvalidValueException%&gt;)CAUGHT_status;\n\t}\n\tfinal /*@Thrown\052/ boolean ne = CAUGHT_status == Boolean.FALSE;\n\t/*@NonInvalid\052/ java.lang.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; String message_0;\n\tif (ne) {\n\t\tmessage_0 = &lt;%codegen.company.CodegencompanyTables%&gt;.STR_Employee_32_must_32_have_32_a_32_name;\n\t}\n\telse {\n\t\tmessage_0 = null;\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = &lt;%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%&gt;.INSTANCE.evaluate(executor, &lt;%org.eclipse.ocl.pivot.ids.TypeId%&gt;.BOOLEAN, &lt;%codegen.company.CodegencompanyTables%&gt;.STR_Employee_c_c_mustHaveName, this, (Object)null, diagnostics, context, message_0, severity_0, CAUGHT_status, &lt;%codegen.company.CodegencompanyTables%&gt;.INT_0).booleanValue();\n\tsymbol_1 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_1;'"

 	 * @generated

 	 */

 	boolean mustHaveName(DiagnosticChain diagnostics, Map<Object, Object> context);

@@ -230,7 +230,7 @@
 	/**

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n * \n * inv mustHaveNonEmptyName:\n *   let severity : Integer[1] = \'Employee::mustHaveNonEmptyName\'.getSeverity()\n *   in\n *     if severity <= 0\n *     then true\n *     else\n *       let status : OclAny[?] = name->notEmpty() implies name.size() > 0\n *       in\n *         \'Employee::mustHaveNonEmptyName\'.logDiagnostic(self, null, diagnostics, context, null, severity, status, 0)\n *     endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@<%org.eclipse.jdt.annotation.NonNull%> Executor executor = <%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%>.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue severity_0 = <%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%>.INSTANCE.evaluate(executor, <%codegen.company.CodegencompanyTables%>.STR_Employee_c_c_mustHaveNonEmptyName);\nfinal /*@NonInvalid\052/ boolean le = <%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%>.INSTANCE.evaluate(executor, severity_0, <%codegen.company.CodegencompanyTables%>.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n    symbol_0 = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.TRUE_VALUE;\n}\nelse {\n    /*@Caught\052/ @<%org.eclipse.jdt.annotation.Nullable%> <%java.lang.Object%> CAUGHT_status;\n    try {\n        /*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_notEmpty;\n        try {\n            final /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name = this.getName();\n            final /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> SetValue oclAsSet = <%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsSetOperation%>.INSTANCE.evaluate(executor, <%codegen.company.CodegencompanyTables%>.SET_PRIMid_String, name);\n            final /*@Thrown\052/ boolean notEmpty = <%org.eclipse.ocl.pivot.library.collection.CollectionNotEmptyOperation%>.INSTANCE.evaluate(oclAsSet).booleanValue();\n            CAUGHT_notEmpty = notEmpty;\n        }\n        catch (<%java.lang.Exception%> e) {\n            CAUGHT_notEmpty = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n        }\n        /*@Caught\052/ @<%org.eclipse.jdt.annotation.NonNull%> <%java.lang.Object%> CAUGHT_gt;\n        try {\n            final /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> String name_0 = this.getName();\n            final /*@Thrown\052/ org.eclipse.ocl.pivot.values.@<%org.eclipse.jdt.annotation.NonNull%> IntegerValue size = <%org.eclipse.ocl.pivot.library.string.StringSizeOperation%>.INSTANCE.evaluate(name_0);\n            final /*@Thrown\052/ boolean gt = <%org.eclipse.ocl.pivot.library.oclany.OclComparableGreaterThanOperation%>.INSTANCE.evaluate(executor, size, <%codegen.company.CodegencompanyTables%>.INT_0).booleanValue();\n            CAUGHT_gt = gt;\n        }\n        catch (<%java.lang.Exception%> e) {\n            CAUGHT_gt = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n        }\n        final /*@Thrown\052/ java.lang.@<%org.eclipse.jdt.annotation.Nullable%> Boolean status = <%org.eclipse.ocl.pivot.library.logical.BooleanImpliesOperation%>.INSTANCE.evaluate(CAUGHT_notEmpty, CAUGHT_gt);\n        CAUGHT_status = status;\n    }\n    catch (<%java.lang.Exception%> e) {\n        CAUGHT_status = <%org.eclipse.ocl.pivot.utilities.ValueUtil%>.createInvalidValue(e);\n    }\n    final /*@NonInvalid\052/ boolean logDiagnostic = <%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%>.INSTANCE.evaluate(executor, <%org.eclipse.ocl.pivot.ids.TypeId%>.BOOLEAN, <%codegen.company.CodegencompanyTables%>.STR_Employee_c_c_mustHaveNonEmptyName, this, null, diagnostics, context, null, severity_0, CAUGHT_status, <%codegen.company.CodegencompanyTables%>.INT_0).booleanValue();\n    symbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'"

+	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv mustHaveNonEmptyName:\n *   let severity : Integer[1] = \'Employee::mustHaveNonEmptyName\'.getSeverity()\n *   in\n *     if severity &lt;= 0\n *     then true\n *     else\n *       let status : OclAny[?] = name-&gt;notEmpty() implies name.size() &gt; 0\n *       in\n *         \'Employee::mustHaveNonEmptyName\'.logDiagnostic(self, null, diagnostics, context, null, severity, status, 0)\n *     endif\n \052/\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.evaluation.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; Executor executor = &lt;%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%&gt;.getExecutor(this);\nfinal /*@NonInvalid\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; IntegerValue severity_0 = &lt;%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%&gt;.INSTANCE.evaluate(executor, &lt;%codegen.company.CodegencompanyTables%&gt;.STR_Employee_c_c_mustHaveNonEmptyName);\nfinal /*@NonInvalid\052/ boolean le = &lt;%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%&gt;.INSTANCE.evaluate(executor, severity_0, &lt;%codegen.company.CodegencompanyTables%&gt;.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.TRUE_VALUE;\n}\nelse {\n\t/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.Nullable%&gt; &lt;%java.lang.Object%&gt; CAUGHT_status;\n\ttry {\n\t\t/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.NonNull%&gt; &lt;%java.lang.Object%&gt; CAUGHT_notEmpty;\n\t\ttry {\n\t\t\tfinal /*@Thrown\052/ java.lang.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; String name = this.getName();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; SetValue oclAsSet = &lt;%org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsSetOperation%&gt;.INSTANCE.evaluate(executor, &lt;%codegen.company.CodegencompanyTables%&gt;.SET_PRIMid_String, name);\n\t\t\tfinal /*@Thrown\052/ boolean notEmpty = &lt;%org.eclipse.ocl.pivot.library.collection.CollectionNotEmptyOperation%&gt;.INSTANCE.evaluate(oclAsSet).booleanValue();\n\t\t\tCAUGHT_notEmpty = notEmpty;\n\t\t}\n\t\tcatch (&lt;%java.lang.Exception%&gt; e) {\n\t\t\tCAUGHT_notEmpty = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n\t\t}\n\t\t/*@Caught\052/ @&lt;%org.eclipse.jdt.annotation.NonNull%&gt; &lt;%java.lang.Object%&gt; CAUGHT_gt;\n\t\ttry {\n\t\t\tfinal /*@Thrown\052/ java.lang.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; String name_0 = this.getName();\n\t\t\tfinal /*@Thrown\052/ org.eclipse.ocl.pivot.values.@&lt;%org.eclipse.jdt.annotation.NonNull%&gt; IntegerValue size = &lt;%org.eclipse.ocl.pivot.library.string.StringSizeOperation%&gt;.INSTANCE.evaluate(name_0);\n\t\t\tfinal /*@Thrown\052/ boolean gt = &lt;%org.eclipse.ocl.pivot.library.oclany.OclComparableGreaterThanOperation%&gt;.INSTANCE.evaluate(executor, size, &lt;%codegen.company.CodegencompanyTables%&gt;.INT_0).booleanValue();\n\t\t\tCAUGHT_gt = gt;\n\t\t}\n\t\tcatch (&lt;%java.lang.Exception%&gt; e) {\n\t\t\tCAUGHT_gt = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n\t\t}\n\t\tfinal /*@Thrown\052/ java.lang.@&lt;%org.eclipse.jdt.annotation.Nullable%&gt; Boolean status = &lt;%org.eclipse.ocl.pivot.library.logical.BooleanImpliesOperation%&gt;.INSTANCE.evaluate(CAUGHT_notEmpty, CAUGHT_gt);\n\t\tCAUGHT_status = status;\n\t}\n\tcatch (&lt;%java.lang.Exception%&gt; e) {\n\t\tCAUGHT_status = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.createInvalidValue(e);\n\t}\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = &lt;%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%&gt;.INSTANCE.evaluate(executor, &lt;%org.eclipse.ocl.pivot.ids.TypeId%&gt;.BOOLEAN, &lt;%codegen.company.CodegencompanyTables%&gt;.STR_Employee_c_c_mustHaveNonEmptyName, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_status, &lt;%codegen.company.CodegencompanyTables%&gt;.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'"

 	 * @generated

 	 */

 	boolean mustHaveNonEmptyName(DiagnosticChain diagnostics, Map<Object, Object> context);

diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/impl/CodegencompanyPackageImpl.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/impl/CodegencompanyPackageImpl.java
index 595660a..0d401bb 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/impl/CodegencompanyPackageImpl.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/impl/CodegencompanyPackageImpl.java
@@ -493,8 +493,6 @@
 		createResource(eNS_URI);

 

 		// Create annotations

-		// http://www.eclipse.org/OCL/Import

-		createImportAnnotations();

 		// http://www.eclipse.org/emf/2002/Ecore

 		createEcoreAnnotations();

 		// http://www.eclipse.org/OCL/Collection

@@ -502,22 +500,6 @@
 	}

 

 	/**

-	 * Initializes the annotations for <b>http://www.eclipse.org/OCL/Import</b>.

-	 * <!-- begin-user-doc -->

-	 * <!-- end-user-doc -->

-	 * @generated

-	 */

-	protected void createImportAnnotations() {

-		String source = "http://www.eclipse.org/OCL/Import"; //$NON-NLS-1$	

-		addAnnotation

-		  (this, 

-		   source, 

-		   new String[] {

-			 "ecore", "http://www.eclipse.org/emf/2002/Ecore" //$NON-NLS-1$ //$NON-NLS-2$

-		   });

-	}

-

-	/**

 	 * Initializes the annotations for <b>http://www.eclipse.org/emf/2002/Ecore</b>.

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/impl/CompanyImpl.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/impl/CompanyImpl.java
index 6c88f24..5ec833c 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/impl/CompanyImpl.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/impl/CompanyImpl.java
@@ -32,7 +32,6 @@
 import org.eclipse.emf.common.util.DiagnosticChain;

 import org.eclipse.emf.common.util.EList;

 import org.eclipse.emf.common.util.Enumerator;

-

 import org.eclipse.emf.ecore.EClass;

 import org.eclipse.emf.ecore.InternalEObject;

 

@@ -41,26 +40,18 @@
 

 import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;

 import org.eclipse.emf.ecore.util.InternalEList;

-

 import org.eclipse.jdt.annotation.NonNull;

 import org.eclipse.jdt.annotation.Nullable;

-

 import org.eclipse.ocl.pivot.ids.EnumerationLiteralId;

 import org.eclipse.ocl.pivot.ids.TypeId;

-

 import org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal;

-

 import org.eclipse.ocl.pivot.library.collection.CollectionExcludingOperation;

 import org.eclipse.ocl.pivot.library.collection.CollectionIncludesOperation;

 import org.eclipse.ocl.pivot.library.collection.CollectionSizeOperation;

-

 import org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation;

-

 import org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation;

 import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation;

-

 import org.eclipse.ocl.pivot.utilities.ValueUtil;

-

 import org.eclipse.ocl.pivot.values.InvalidValueException;

 import org.eclipse.ocl.pivot.values.SequenceValue;

 import org.eclipse.ocl.pivot.values.SetValue;

@@ -181,7 +172,7 @@
 	 */

 	public CompanySizeKind getSize() {

 		/**

-		 * 

+		 *

 		 * let

 		 *   table : Set(Tuple(range:Sequence(Integer), size:company::CompanySizeKind[1])) = Set{

 		 *     Tuple{range = Sequence{0..49}, size = CompanySizeKind::small

@@ -196,53 +187,53 @@
 		 */

 		final /*@NonInvalid*/ org.eclipse.ocl.pivot.evaluation.@NonNull Executor executor = PivotUtilInternal.getExecutor(this);

 		final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@NonNull IdResolver idResolver = executor.getIdResolver();

-		final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue safe_null_sources = (SetValue)CollectionExcludingOperation.INSTANCE.evaluate(CodegencompanyTables.table, null);

-		@NonNull Iterator<?> ITERATOR__1 = safe_null_sources.iterator();

+		final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue safe_null_sources = (SetValue)CollectionExcludingOperation.INSTANCE.evaluate(CodegencompanyTables.table, (Object)null);

+		@NonNull Iterator<Object> ITERATOR__1 = safe_null_sources.iterator();

 		/*@Thrown*/ org.eclipse.ocl.pivot.values.@Nullable TupleValue any;

 		while (true) {

-		    if (!ITERATOR__1.hasNext()) {

-		        throw new InvalidValueException("No matching content for 'any'");

-		    }

-		    @SuppressWarnings("null")

-		    /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull TupleValue _1 = (TupleValue)ITERATOR__1.next();

-		    /**

-		     * range->includes(employees->size())

-		     */

-		    @SuppressWarnings("null")

-		    final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue range = (SequenceValue)_1.getValue(0/*range*/);

-		    @SuppressWarnings("null")

-		    final /*@Thrown*/ java.util.@NonNull List<Employee> employees = this.getEmployees();

-		    final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_employees = idResolver.createOrderedSetOfAll(CodegencompanyTables.ORD_CLSSid_Employee, employees);

-		    final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull IntegerValue size = CollectionSizeOperation.INSTANCE.evaluate(BOXED_employees);

-		    final /*@NonInvalid*/ boolean includes = CollectionIncludesOperation.INSTANCE.evaluate(range, size).booleanValue();

-		    //

-		    if (includes != ValueUtil.FALSE_VALUE) {			// Carry on till something found

-		        any = _1;

-		        break;

-		    }

+			if (!ITERATOR__1.hasNext()) {

+				throw new InvalidValueException("No matching content for 'any'");

+			}

+			@SuppressWarnings("null")

+			/*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull TupleValue _1 = (TupleValue)ITERATOR__1.next();

+			/**

+			 * range->includes(employees->size())

+			 */

+			@SuppressWarnings("null")

+			final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SequenceValue range = (SequenceValue)_1.getValue(0/*range*/);

+			@SuppressWarnings("null")

+			final /*@Thrown*/ java.util.@NonNull List<Employee> employees = this.getEmployees();

+			final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_employees = idResolver.createOrderedSetOfAll(CodegencompanyTables.ORD_CLSSid_Employee, employees);

+			final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull IntegerValue size = CollectionSizeOperation.INSTANCE.evaluate(BOXED_employees);

+			final /*@NonInvalid*/ boolean includes = CollectionIncludesOperation.INSTANCE.evaluate(range, size).booleanValue();

+			//

+			if (includes != ValueUtil.FALSE_VALUE) {			// Carry on till something found

+				any = _1;

+				break;

+			}

 		}

 		/*@Caught*/ @Nullable Object CAUGHT_any;

 		try {

-		    CAUGHT_any = any;

+			CAUGHT_any = any;

 		}

 		catch (Exception e) {

-		    CAUGHT_any = ValueUtil.createInvalidValue(e);

+			CAUGHT_any = ValueUtil.createInvalidValue(e);

 		}

 		final /*@NonInvalid*/ @NonNull Object symbol_0 = CAUGHT_any == null;

 		/*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@Nullable EnumerationLiteralId safe_size_source;

 		if (symbol_0 == Boolean.TRUE) {

-		    safe_size_source = null;

+			safe_size_source = null;

 		}

 		else {

-		    assert any != null;

-		    @SuppressWarnings("null")

-		    final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@NonNull EnumerationLiteralId size_0 = (EnumerationLiteralId)any.getValue(1/*size*/);

-		    safe_size_source = size_0;

+			assert any != null;

+			@SuppressWarnings("null")

+			final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@NonNull EnumerationLiteralId size_0 = (EnumerationLiteralId)any.getValue(1/*size*/);

+			safe_size_source = size_0;

 		}

 		if (safe_size_source == null) {

-		    throw new InvalidValueException("Null body for \'company::Company::size\'");

+			throw new InvalidValueException("Null body for \'company::Company::size\'");

 		}

-		final /*@NonInvalid*/ codegen.company.@NonNull CompanySizeKind ECORE_safe_size_source = (CompanySizeKind)idResolver.ecoreValueOf(Enumerator.class, safe_size_source);

+		final /*@Thrown*/ codegen.company.@NonNull CompanySizeKind ECORE_safe_size_source = (CompanySizeKind)idResolver.ecoreValueOf(Enumerator.class, safe_size_source);

 		return ECORE_safe_size_source;

 	}

 

@@ -253,7 +244,7 @@
 	 */

 	public boolean dummyInvariant(final DiagnosticChain diagnostics, final Map<Object, Object> context) {

 		/**

-		 * 

+		 *

 		 * inv dummyInvariant:

 		 *   let severity : Integer[1] = 'Company::dummyInvariant'.getSeverity()

 		 *   in

@@ -270,11 +261,11 @@
 		final /*@NonInvalid*/ boolean le = OclComparableLessThanEqualOperation.INSTANCE.evaluate(executor, severity_0, CodegencompanyTables.INT_0).booleanValue();

 		/*@NonInvalid*/ boolean symbol_0;

 		if (le) {

-		    symbol_0 = ValueUtil.TRUE_VALUE;

+			symbol_0 = ValueUtil.TRUE_VALUE;

 		}

 		else {

-		    final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, CodegencompanyTables.STR_Company_c_c_dummyInvariant, this, null, diagnostics, context, null, severity_0, ValueUtil.TRUE_VALUE, CodegencompanyTables.INT_0).booleanValue();

-		    symbol_0 = logDiagnostic;

+			final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, CodegencompanyTables.STR_Company_c_c_dummyInvariant, this, (Object)null, diagnostics, context, (Object)null, severity_0, ValueUtil.TRUE_VALUE, CodegencompanyTables.INT_0).booleanValue();

+			symbol_0 = logDiagnostic;

 		}

 		return Boolean.TRUE == symbol_0;

 	}

diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/impl/EmployeeImpl.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/impl/EmployeeImpl.java
index 87390c9..8412729 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/impl/EmployeeImpl.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/codegen/company/impl/EmployeeImpl.java
@@ -37,37 +37,27 @@
 import org.eclipse.emf.ecore.impl.EObjectImpl;

 

 import org.eclipse.emf.ecore.util.EcoreUtil;

-

 import org.eclipse.jdt.annotation.NonNull;

 import org.eclipse.jdt.annotation.Nullable;

-

 import org.eclipse.ocl.pivot.ids.IdResolver;

 import org.eclipse.ocl.pivot.ids.TypeId;

-

 import org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal;

-

 import org.eclipse.ocl.pivot.library.classifier.ClassifierAllInstancesOperation;

-

 import org.eclipse.ocl.pivot.library.collection.CollectionExcludingOperation;

 import org.eclipse.ocl.pivot.library.collection.CollectionIncludesOperation;

 import org.eclipse.ocl.pivot.library.collection.CollectionNotEmptyOperation;

 import org.eclipse.ocl.pivot.library.collection.CollectionSizeOperation;

 import org.eclipse.ocl.pivot.library.collection.OrderedCollectionPrependOperation;

-

 import org.eclipse.ocl.pivot.library.logical.BooleanAndOperation;

 import org.eclipse.ocl.pivot.library.logical.BooleanImpliesOperation;

 import org.eclipse.ocl.pivot.library.logical.BooleanNotOperation;

-

 import org.eclipse.ocl.pivot.library.oclany.OclAnyOclAsSetOperation;

 import org.eclipse.ocl.pivot.library.oclany.OclComparableGreaterThanOperation;

 import org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation;

-

 import org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation;

 import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation;

 import org.eclipse.ocl.pivot.library.string.StringSizeOperation;

-

 import org.eclipse.ocl.pivot.utilities.ValueUtil;

-

 import org.eclipse.ocl.pivot.values.InvalidValueException;

 import org.eclipse.ocl.pivot.values.OrderedSetValue;

 import org.eclipse.ocl.pivot.values.SetValue;

@@ -256,6 +246,7 @@
 	 * <!-- end-user-doc -->

 	 * @generated

 	 */

+	@SuppressWarnings("unchecked")

 	public EList<Employee> getDirectReports() {

 		/**

 		 * company.employees?->select(manager = self)

@@ -267,26 +258,26 @@
 		@SuppressWarnings("null")

 		final /*@Thrown*/ java.util.@NonNull List<Employee> employees = company.getEmployees();

 		final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_employees = idResolver.createOrderedSetOfAll(CodegencompanyTables.ORD_CLSSid_Employee, employees);

-		final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue safe_null_sources = (OrderedSetValue)CollectionExcludingOperation.INSTANCE.evaluate(BOXED_employees, null);

+		final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue safe_null_sources = (OrderedSetValue)CollectionExcludingOperation.INSTANCE.evaluate(BOXED_employees, (Object)null);

 		/*@Thrown*/ OrderedSetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createOrderedSetAccumulatorValue(CodegencompanyTables.ORD_CLSSid_Employee);

-		@NonNull Iterator<?> ITERATOR__1 = safe_null_sources.iterator();

+		@NonNull Iterator<Object> ITERATOR__1 = safe_null_sources.iterator();

 		/*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue select;

 		while (true) {

-		    if (!ITERATOR__1.hasNext()) {

-		        select = accumulator;

-		        break;

-		    }

-		    @SuppressWarnings("null")

-		    /*@NonInvalid*/ codegen.company.@NonNull Employee _1 = (Employee)ITERATOR__1.next();

-		    /**

-		     * manager = self

-		     */

-		    final /*@Thrown*/ codegen.company.@Nullable Employee manager_0 = _1.getManager();

-		    final /*@Thrown*/ boolean eq = this.equals(manager_0);

-		    //

-		    if (eq == ValueUtil.TRUE_VALUE) {

-		        accumulator.add(_1);

-		    }

+			if (!ITERATOR__1.hasNext()) {

+				select = accumulator;

+				break;

+			}

+			@SuppressWarnings("null")

+			/*@NonInvalid*/ codegen.company.@NonNull Employee _1 = (Employee)ITERATOR__1.next();

+			/**

+			 * manager = self

+			 */

+			final /*@Thrown*/ codegen.company.@Nullable Employee manager_0 = _1.getManager();

+			final /*@Thrown*/ boolean eq = this.equals(manager_0);

+			//

+			if (eq == ValueUtil.TRUE_VALUE) {

+				accumulator.add(_1);

+			}

 		}

 		final /*@Thrown*/ java.util.@NonNull List<Employee> ECORE_select = ((IdResolver.IdResolverExtension)idResolver).ecoreValueOfAll(Employee.class, select);

 		return (EList<Employee>)ECORE_select;

@@ -297,6 +288,7 @@
 	 * <!-- end-user-doc -->

 	 * @generated

 	 */

+	@SuppressWarnings("unchecked")

 	public EList<Employee> getAllReports() {

 		/**

 		 * Employee.allInstances()->select(reportsTo(self))

@@ -306,23 +298,23 @@
 		final /*@NonInvalid*/ org.eclipse.ocl.pivot.@NonNull Class TYP_company_c_c_Employee_0 = idResolver.getClass(CodegencompanyTables.CLSSid_Employee, null);

 		final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.@NonNull SetValue allInstances = ClassifierAllInstancesOperation.INSTANCE.evaluate(executor, CodegencompanyTables.SET_CLSSid_Employee, TYP_company_c_c_Employee_0);

 		/*@Thrown*/ SetValue.@org.eclipse.jdt.annotation.NonNull Accumulator accumulator = ValueUtil.createSetAccumulatorValue(CodegencompanyTables.SET_CLSSid_Employee);

-		@NonNull Iterator<?> ITERATOR__1 = allInstances.iterator();

+		@NonNull Iterator<Object> ITERATOR__1 = allInstances.iterator();

 		/*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue select;

 		while (true) {

-		    if (!ITERATOR__1.hasNext()) {

-		        select = accumulator;

-		        break;

-		    }

-		    @SuppressWarnings("null")

-		    /*@NonInvalid*/ codegen.company.@NonNull Employee _1 = (Employee)ITERATOR__1.next();

-		    /**

-		     * reportsTo(self)

-		     */

-		    final /*@Thrown*/ boolean reportsTo = _1.reportsTo(this);

-		    //

-		    if (reportsTo == ValueUtil.TRUE_VALUE) {

-		        accumulator.add(_1);

-		    }

+			if (!ITERATOR__1.hasNext()) {

+				select = accumulator;

+				break;

+			}

+			@SuppressWarnings("null")

+			/*@NonInvalid*/ codegen.company.@NonNull Employee _1 = (Employee)ITERATOR__1.next();

+			/**

+			 * reportsTo(self)

+			 */

+			final /*@Thrown*/ boolean reportsTo = _1.reportsTo(this);

+			//

+			if (reportsTo == ValueUtil.TRUE_VALUE) {

+				accumulator.add(_1);

+			}

 		}

 		final /*@Thrown*/ java.util.@NonNull List<Employee> ECORE_select = ((IdResolver.IdResolverExtension)idResolver).ecoreValueOfAll(Employee.class, select);

 		return (EList<Employee>)ECORE_select;

@@ -333,9 +325,10 @@
 	 * <!-- end-user-doc -->

 	 * @generated

 	 */

+	@SuppressWarnings("unchecked")

 	public EList<Employee> getReportingChain() {

 		/**

-		 * 

+		 *

 		 * if manager.oclIsUndefined()

 		 * then OrderedSet{}

 		 * else manager?.reportingChain->prepend(manager)

@@ -345,40 +338,40 @@
 		final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.@NonNull IdResolver idResolver = executor.getIdResolver();

 		/*@Caught*/ @Nullable Object CAUGHT_manager_0;

 		try {

-		    final /*@Thrown*/ codegen.company.@Nullable Employee manager_0 = this.getManager();

-		    CAUGHT_manager_0 = manager_0;

+			final /*@Thrown*/ codegen.company.@Nullable Employee manager_0 = this.getManager();

+			CAUGHT_manager_0 = manager_0;

 		}

 		catch (Exception e) {

-		    CAUGHT_manager_0 = ValueUtil.createInvalidValue(e);

+			CAUGHT_manager_0 = ValueUtil.createInvalidValue(e);

 		}

 		final /*@NonInvalid*/ boolean symbol_6 = (CAUGHT_manager_0 == null) || (CAUGHT_manager_0 instanceof InvalidValueException);

 		/*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue symbol_8;

 		if (symbol_6) {

-		    symbol_8 = CodegencompanyTables.OrderedSet;

+			symbol_8 = CodegencompanyTables.OrderedSet;

 		}

 		else {

-		    final /*@Thrown*/ codegen.company.@Nullable Employee manager_2 = this.getManager();

-		    /*@Caught*/ @Nullable Object CAUGHT_manager_1;

-		    try {

-		        CAUGHT_manager_1 = manager_2;

-		    }

-		    catch (Exception e) {

-		        CAUGHT_manager_1 = ValueUtil.createInvalidValue(e);

-		    }

-		    final /*@NonInvalid*/ @NonNull Object symbol_7 = CAUGHT_manager_1 == null;

-		    /*@Thrown*/ org.eclipse.ocl.pivot.values.@Nullable OrderedSetValue safe_reportingChain_source;

-		    if (symbol_7 == Boolean.TRUE) {

-		        safe_reportingChain_source = null;

-		    }

-		    else {

-		        assert manager_2 != null;

-		        @SuppressWarnings("null")

-		        final /*@Thrown*/ java.util.@NonNull List<Employee> reportingChain = manager_2.getReportingChain();

-		        final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_reportingChain = idResolver.createOrderedSetOfAll(CodegencompanyTables.ORD_CLSSid_Employee, reportingChain);

-		        safe_reportingChain_source = BOXED_reportingChain;

-		    }

-		    final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue prepend = (OrderedSetValue)OrderedCollectionPrependOperation.INSTANCE.evaluate(safe_reportingChain_source, manager_2);

-		    symbol_8 = prepend;

+			final /*@Thrown*/ codegen.company.@Nullable Employee manager_2 = this.getManager();

+			/*@Caught*/ @Nullable Object CAUGHT_manager_1;

+			try {

+				CAUGHT_manager_1 = manager_2;

+			}

+			catch (Exception e) {

+				CAUGHT_manager_1 = ValueUtil.createInvalidValue(e);

+			}

+			final /*@NonInvalid*/ @NonNull Object symbol_7 = CAUGHT_manager_1 == null;

+			/*@Thrown*/ org.eclipse.ocl.pivot.values.@Nullable OrderedSetValue safe_reportingChain_source;

+			if (symbol_7 == Boolean.TRUE) {

+				safe_reportingChain_source = null;

+			}

+			else {

+				assert manager_2 != null;

+				@SuppressWarnings("null")

+				final /*@Thrown*/ java.util.@NonNull List<Employee> reportingChain = manager_2.getReportingChain();

+				final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_reportingChain = idResolver.createOrderedSetOfAll(CodegencompanyTables.ORD_CLSSid_Employee, reportingChain);

+				safe_reportingChain_source = BOXED_reportingChain;

+			}

+			final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue prepend = (OrderedSetValue)OrderedCollectionPrependOperation.INSTANCE.evaluate(safe_reportingChain_source, manager_2);

+			symbol_8 = prepend;

 		}

 		final /*@Thrown*/ java.util.@NonNull List<Employee> ECORE_symbol_8 = ((IdResolver.IdResolverExtension)idResolver).ecoreValueOfAll(Employee.class, symbol_8);

 		return (EList<Employee>)ECORE_symbol_8;

@@ -437,7 +430,7 @@
 	 */

 	public boolean noManagerImpliesDirectReports(final DiagnosticChain diagnostics, final Map<Object, Object> context) {

 		/**

-		 * 

+		 *

 		 * inv noManagerImpliesDirectReports:

 		 *   let

 		 *     severity : Integer[1] = 'Employee::noManagerImpliesDirectReports'.getSeverity()

@@ -458,40 +451,40 @@
 		final /*@NonInvalid*/ boolean le = OclComparableLessThanEqualOperation.INSTANCE.evaluate(executor, severity_0, CodegencompanyTables.INT_0).booleanValue();

 		/*@NonInvalid*/ boolean symbol_1;

 		if (le) {

-		    symbol_1 = ValueUtil.TRUE_VALUE;

+			symbol_1 = ValueUtil.TRUE_VALUE;

 		}

 		else {

-		    /*@Caught*/ @Nullable Object CAUGHT_status;

-		    try {

-		        /*@Caught*/ @Nullable Object CAUGHT_manager;

-		        try {

-		            final /*@Thrown*/ codegen.company.@Nullable Employee manager = this.getManager();

-		            CAUGHT_manager = manager;

-		        }

-		        catch (Exception e) {

-		            CAUGHT_manager = ValueUtil.createInvalidValue(e);

-		        }

-		        final /*@NonInvalid*/ boolean symbol_0 = (CAUGHT_manager == null) || (CAUGHT_manager instanceof InvalidValueException);

-		        /*@Caught*/ @NonNull Object CAUGHT_gt;

-		        try {

-		            @SuppressWarnings("null")

-		            final /*@Thrown*/ java.util.@NonNull List<Employee> directReports = this.getDirectReports();

-		            final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_directReports = idResolver.createOrderedSetOfAll(CodegencompanyTables.ORD_CLSSid_Employee, directReports);

-		            final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull IntegerValue size = CollectionSizeOperation.INSTANCE.evaluate(BOXED_directReports);

-		            final /*@Thrown*/ boolean gt = OclComparableGreaterThanOperation.INSTANCE.evaluate(executor, size, CodegencompanyTables.INT_0).booleanValue();

-		            CAUGHT_gt = gt;

-		        }

-		        catch (Exception e) {

-		            CAUGHT_gt = ValueUtil.createInvalidValue(e);

-		        }

-		        final /*@Thrown*/ java.lang.@Nullable Boolean status = BooleanImpliesOperation.INSTANCE.evaluate(symbol_0, CAUGHT_gt);

-		        CAUGHT_status = status;

-		    }

-		    catch (Exception e) {

-		        CAUGHT_status = ValueUtil.createInvalidValue(e);

-		    }

-		    final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, CodegencompanyTables.STR_Employee_c_c_noManagerImpliesDirectReports, this, null, diagnostics, context, null, severity_0, CAUGHT_status, CodegencompanyTables.INT_0).booleanValue();

-		    symbol_1 = logDiagnostic;

+			/*@Caught*/ @Nullable Object CAUGHT_status;

+			try {

+				/*@Caught*/ @Nullable Object CAUGHT_manager;

+				try {

+					final /*@Thrown*/ codegen.company.@Nullable Employee manager = this.getManager();

+					CAUGHT_manager = manager;

+				}

+				catch (Exception e) {

+					CAUGHT_manager = ValueUtil.createInvalidValue(e);

+				}

+				final /*@NonInvalid*/ boolean symbol_0 = (CAUGHT_manager == null) || (CAUGHT_manager instanceof InvalidValueException);

+				/*@Caught*/ @NonNull Object CAUGHT_gt;

+				try {

+					@SuppressWarnings("null")

+					final /*@Thrown*/ java.util.@NonNull List<Employee> directReports = this.getDirectReports();

+					final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull OrderedSetValue BOXED_directReports = idResolver.createOrderedSetOfAll(CodegencompanyTables.ORD_CLSSid_Employee, directReports);

+					final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull IntegerValue size = CollectionSizeOperation.INSTANCE.evaluate(BOXED_directReports);

+					final /*@Thrown*/ boolean gt = OclComparableGreaterThanOperation.INSTANCE.evaluate(executor, size, CodegencompanyTables.INT_0).booleanValue();

+					CAUGHT_gt = gt;

+				}

+				catch (Exception e) {

+					CAUGHT_gt = ValueUtil.createInvalidValue(e);

+				}

+				final /*@Thrown*/ java.lang.@Nullable Boolean status = BooleanImpliesOperation.INSTANCE.evaluate(symbol_0, CAUGHT_gt);

+				CAUGHT_status = status;

+			}

+			catch (Exception e) {

+				CAUGHT_status = ValueUtil.createInvalidValue(e);

+			}

+			final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, CodegencompanyTables.STR_Employee_c_c_noManagerImpliesDirectReports, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_status, CodegencompanyTables.INT_0).booleanValue();

+			symbol_1 = logDiagnostic;

 		}

 		return Boolean.TRUE == symbol_1;

 	}

@@ -503,7 +496,7 @@
 	 */

 	public boolean mustHaveName(final DiagnosticChain diagnostics, final Map<Object, Object> context) {

 		/**

-		 * 

+		 *

 		 * inv mustHaveName:

 		 *   let severity : Integer[1] = 'Employee::mustHaveName'.getSeverity()

 		 *   in

@@ -528,64 +521,64 @@
 		final /*@NonInvalid*/ boolean le = OclComparableLessThanEqualOperation.INSTANCE.evaluate(executor, severity_0, CodegencompanyTables.INT_0).booleanValue();

 		/*@NonInvalid*/ boolean symbol_1;

 		if (le) {

-		    symbol_1 = ValueUtil.TRUE_VALUE;

+			symbol_1 = ValueUtil.TRUE_VALUE;

 		}

 		else {

-		    /*@Caught*/ @Nullable Object CAUGHT_status;

-		    try {

-		        /*@Caught*/ @Nullable Object CAUGHT_and;

-		        try {

-		            /*@Caught*/ @Nullable Object CAUGHT_name;

-		            try {

-		                final /*@Thrown*/ java.lang.@Nullable String name = this.getName();

-		                CAUGHT_name = name;

-		            }

-		            catch (Exception e) {

-		                CAUGHT_name = ValueUtil.createInvalidValue(e);

-		            }

-		            final /*@NonInvalid*/ boolean symbol_0 = (CAUGHT_name == null) || (CAUGHT_name instanceof InvalidValueException);

-		            final /*@NonInvalid*/ java.lang.@Nullable Boolean not = BooleanNotOperation.INSTANCE.evaluate(symbol_0);

-		            /*@Caught*/ @Nullable Object CAUGHT_hasNameAsAttribute;

-		            try {

-		                final /*@Thrown*/ java.lang.@Nullable Boolean hasNameAsAttribute = this.isHasNameAsAttribute();

-		                CAUGHT_hasNameAsAttribute = hasNameAsAttribute;

-		            }

-		            catch (Exception e) {

-		                CAUGHT_hasNameAsAttribute = ValueUtil.createInvalidValue(e);

-		            }

-		            final /*@Thrown*/ java.lang.@Nullable Boolean and = BooleanAndOperation.INSTANCE.evaluate(not, CAUGHT_hasNameAsAttribute);

-		            CAUGHT_and = and;

-		        }

-		        catch (Exception e) {

-		            CAUGHT_and = ValueUtil.createInvalidValue(e);

-		        }

-		        /*@Caught*/ @NonNull Object CAUGHT_hasNameAsOperation;

-		        try {

-		            final /*@Thrown*/ boolean hasNameAsOperation = this.hasNameAsOperation();

-		            CAUGHT_hasNameAsOperation = hasNameAsOperation;

-		        }

-		        catch (Exception e) {

-		            CAUGHT_hasNameAsOperation = ValueUtil.createInvalidValue(e);

-		        }

-		        final /*@Thrown*/ java.lang.@Nullable Boolean status = BooleanAndOperation.INSTANCE.evaluate(CAUGHT_and, CAUGHT_hasNameAsOperation);

-		        CAUGHT_status = status;

-		    }

-		    catch (Exception e) {

-		        CAUGHT_status = ValueUtil.createInvalidValue(e);

-		    }

-		    if (CAUGHT_status instanceof InvalidValueException) {

-		        throw (InvalidValueException)CAUGHT_status;

-		    }

-		    final /*@Thrown*/ boolean ne = CAUGHT_status == Boolean.FALSE;

-		    /*@NonInvalid*/ java.lang.@Nullable String message_0;

-		    if (ne) {

-		        message_0 = CodegencompanyTables.STR_Employee_32_must_32_have_32_a_32_name;

-		    }

-		    else {

-		        message_0 = null;

-		    }

-		    final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, CodegencompanyTables.STR_Employee_c_c_mustHaveName, this, null, diagnostics, context, message_0, severity_0, CAUGHT_status, CodegencompanyTables.INT_0).booleanValue();

-		    symbol_1 = logDiagnostic;

+			/*@Caught*/ @Nullable Object CAUGHT_status;

+			try {

+				/*@Caught*/ @Nullable Object CAUGHT_and;

+				try {

+					/*@Caught*/ @Nullable Object CAUGHT_name;

+					try {

+						final /*@Thrown*/ java.lang.@Nullable String name = this.getName();

+						CAUGHT_name = name;

+					}

+					catch (Exception e) {

+						CAUGHT_name = ValueUtil.createInvalidValue(e);

+					}

+					final /*@NonInvalid*/ boolean symbol_0 = (CAUGHT_name == null) || (CAUGHT_name instanceof InvalidValueException);

+					final /*@NonInvalid*/ java.lang.@Nullable Boolean not = BooleanNotOperation.INSTANCE.evaluate(symbol_0);

+					/*@Caught*/ @Nullable Object CAUGHT_hasNameAsAttribute;

+					try {

+						final /*@Thrown*/ java.lang.@Nullable Boolean hasNameAsAttribute = this.isHasNameAsAttribute();

+						CAUGHT_hasNameAsAttribute = hasNameAsAttribute;

+					}

+					catch (Exception e) {

+						CAUGHT_hasNameAsAttribute = ValueUtil.createInvalidValue(e);

+					}

+					final /*@Thrown*/ java.lang.@Nullable Boolean and = BooleanAndOperation.INSTANCE.evaluate(not, CAUGHT_hasNameAsAttribute);

+					CAUGHT_and = and;

+				}

+				catch (Exception e) {

+					CAUGHT_and = ValueUtil.createInvalidValue(e);

+				}

+				/*@Caught*/ @NonNull Object CAUGHT_hasNameAsOperation;

+				try {

+					final /*@Thrown*/ boolean hasNameAsOperation = this.hasNameAsOperation();

+					CAUGHT_hasNameAsOperation = hasNameAsOperation;

+				}

+				catch (Exception e) {

+					CAUGHT_hasNameAsOperation = ValueUtil.createInvalidValue(e);

+				}

+				final /*@Thrown*/ java.lang.@Nullable Boolean status = BooleanAndOperation.INSTANCE.evaluate(CAUGHT_and, CAUGHT_hasNameAsOperation);

+				CAUGHT_status = status;

+			}

+			catch (Exception e) {

+				CAUGHT_status = ValueUtil.createInvalidValue(e);

+			}

+			if (CAUGHT_status instanceof InvalidValueException) {

+				throw (InvalidValueException)CAUGHT_status;

+			}

+			final /*@Thrown*/ boolean ne = CAUGHT_status == Boolean.FALSE;

+			/*@NonInvalid*/ java.lang.@Nullable String message_0;

+			if (ne) {

+				message_0 = CodegencompanyTables.STR_Employee_32_must_32_have_32_a_32_name;

+			}

+			else {

+				message_0 = null;

+			}

+			final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, CodegencompanyTables.STR_Employee_c_c_mustHaveName, this, (Object)null, diagnostics, context, message_0, severity_0, CAUGHT_status, CodegencompanyTables.INT_0).booleanValue();

+			symbol_1 = logDiagnostic;

 		}

 		return Boolean.TRUE == symbol_1;

 	}

@@ -597,7 +590,7 @@
 	 */

 	public boolean mustHaveNonEmptyName(final DiagnosticChain diagnostics, final Map<Object, Object> context) {

 		/**

-		 * 

+		 *

 		 * inv mustHaveNonEmptyName:

 		 *   let severity : Integer[1] = 'Employee::mustHaveNonEmptyName'.getSeverity()

 		 *   in

@@ -614,39 +607,39 @@
 		final /*@NonInvalid*/ boolean le = OclComparableLessThanEqualOperation.INSTANCE.evaluate(executor, severity_0, CodegencompanyTables.INT_0).booleanValue();

 		/*@NonInvalid*/ boolean symbol_0;

 		if (le) {

-		    symbol_0 = ValueUtil.TRUE_VALUE;

+			symbol_0 = ValueUtil.TRUE_VALUE;

 		}

 		else {

-		    /*@Caught*/ @Nullable Object CAUGHT_status;

-		    try {

-		        /*@Caught*/ @NonNull Object CAUGHT_notEmpty;

-		        try {

-		            final /*@Thrown*/ java.lang.@Nullable String name = this.getName();

-		            final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, CodegencompanyTables.SET_PRIMid_String, name);

-		            final /*@Thrown*/ boolean notEmpty = CollectionNotEmptyOperation.INSTANCE.evaluate(oclAsSet).booleanValue();

-		            CAUGHT_notEmpty = notEmpty;

-		        }

-		        catch (Exception e) {

-		            CAUGHT_notEmpty = ValueUtil.createInvalidValue(e);

-		        }

-		        /*@Caught*/ @NonNull Object CAUGHT_gt;

-		        try {

-		            final /*@Thrown*/ java.lang.@Nullable String name_0 = this.getName();

-		            final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull IntegerValue size = StringSizeOperation.INSTANCE.evaluate(name_0);

-		            final /*@Thrown*/ boolean gt = OclComparableGreaterThanOperation.INSTANCE.evaluate(executor, size, CodegencompanyTables.INT_0).booleanValue();

-		            CAUGHT_gt = gt;

-		        }

-		        catch (Exception e) {

-		            CAUGHT_gt = ValueUtil.createInvalidValue(e);

-		        }

-		        final /*@Thrown*/ java.lang.@Nullable Boolean status = BooleanImpliesOperation.INSTANCE.evaluate(CAUGHT_notEmpty, CAUGHT_gt);

-		        CAUGHT_status = status;

-		    }

-		    catch (Exception e) {

-		        CAUGHT_status = ValueUtil.createInvalidValue(e);

-		    }

-		    final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, CodegencompanyTables.STR_Employee_c_c_mustHaveNonEmptyName, this, null, diagnostics, context, null, severity_0, CAUGHT_status, CodegencompanyTables.INT_0).booleanValue();

-		    symbol_0 = logDiagnostic;

+			/*@Caught*/ @Nullable Object CAUGHT_status;

+			try {

+				/*@Caught*/ @NonNull Object CAUGHT_notEmpty;

+				try {

+					final /*@Thrown*/ java.lang.@Nullable String name = this.getName();

+					final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull SetValue oclAsSet = OclAnyOclAsSetOperation.INSTANCE.evaluate(executor, CodegencompanyTables.SET_PRIMid_String, name);

+					final /*@Thrown*/ boolean notEmpty = CollectionNotEmptyOperation.INSTANCE.evaluate(oclAsSet).booleanValue();

+					CAUGHT_notEmpty = notEmpty;

+				}

+				catch (Exception e) {

+					CAUGHT_notEmpty = ValueUtil.createInvalidValue(e);

+				}

+				/*@Caught*/ @NonNull Object CAUGHT_gt;

+				try {

+					final /*@Thrown*/ java.lang.@Nullable String name_0 = this.getName();

+					final /*@Thrown*/ org.eclipse.ocl.pivot.values.@NonNull IntegerValue size = StringSizeOperation.INSTANCE.evaluate(name_0);

+					final /*@Thrown*/ boolean gt = OclComparableGreaterThanOperation.INSTANCE.evaluate(executor, size, CodegencompanyTables.INT_0).booleanValue();

+					CAUGHT_gt = gt;

+				}

+				catch (Exception e) {

+					CAUGHT_gt = ValueUtil.createInvalidValue(e);

+				}

+				final /*@Thrown*/ java.lang.@Nullable Boolean status = BooleanImpliesOperation.INSTANCE.evaluate(CAUGHT_notEmpty, CAUGHT_gt);

+				CAUGHT_status = status;

+			}

+			catch (Exception e) {

+				CAUGHT_status = ValueUtil.createInvalidValue(e);

+			}

+			final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, CodegencompanyTables.STR_Employee_c_c_mustHaveNonEmptyName, this, (Object)null, diagnostics, context, (Object)null, severity_0, CAUGHT_status, CodegencompanyTables.INT_0).booleanValue();

+			symbol_0 = logDiagnostic;

 		}

 		return Boolean.TRUE == symbol_0;

 	}

diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/company/Company.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/company/Company.java
index 5660397..ccc4b16 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/company/Company.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/company/Company.java
@@ -86,7 +86,7 @@
 	 * @see company.CompanySizeKind
 	 * @see company.CompanyPackage#getCompany_Size()
 	 * @model required="true" transient="true" changeable="false" volatile="true" derived="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='let table : Set(Tuple(range : Sequence(Integer), size : CompanySizeKind)) = Set{Tuple{range = Sequence{0..49}, size = CompanySizeKind::small}, Tuple{range = Sequence{50..999}, size = CompanySizeKind::medium}, Tuple{range = Sequence{1000..1000000}, size = CompanySizeKind::large}} in table?->any(range->includes(employees->size()))?.size'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='let table : Set(Tuple(range : Sequence(Integer), size : CompanySizeKind)) = Set{Tuple{range = Sequence{0..49}, size = CompanySizeKind::small}, Tuple{range = Sequence{50..999}, size = CompanySizeKind::medium}, Tuple{range = Sequence{1000..1000000}, size = CompanySizeKind::large}} in table?-&gt;any(range-&gt;includes(employees-&gt;size()))?.size'"
 	 * @generated
 	 */
 	CompanySizeKind getSize();
diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/company/Employee.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/company/Employee.java
index a53f011..cdf86b5 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/company/Employee.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/company/Employee.java
@@ -30,7 +30,7 @@
  *
  * @see company.CompanyPackage#getEmployee()
  * @model annotation="http://www.eclipse.org/emf/2002/Ecore constraints='mustHaveName mustHaveNonEmptyName'"
- *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot mustHaveName='Tuple {\n\tmessage : String = \'Employee must have a name\',\n\tstatus : Boolean = not name.oclIsUndefined() and hasNameAsAttribute and hasNameAsOperation()\n}.status' mustHaveNonEmptyName='name->notEmpty() implies name.size() > 0'"
+ *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot mustHaveName='Tuple {\n\tmessage : String = \'Employee must have a name\',\n\tstatus : Boolean = not name.oclIsUndefined() and hasNameAsAttribute and hasNameAsOperation()\n}.status' mustHaveNonEmptyName='name-&gt;notEmpty() implies name.size() &gt; 0'"
  * @generated
  */
 public interface Employee extends EObject {
@@ -126,7 +126,7 @@
 	 * @return the value of the '<em>Direct Reports</em>' reference list.
 	 * @see company.CompanyPackage#getEmployee_DirectReports()
 	 * @model transient="true" changeable="false" volatile="true" derived="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='company.employees?->select(manager = self)'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='company.employees?-&gt;select(manager = self)'"
 	 * @generated
 	 */
 	EList<Employee> getDirectReports();
@@ -143,7 +143,7 @@
 	 * @return the value of the '<em>All Reports</em>' reference list.
 	 * @see company.CompanyPackage#getEmployee_AllReports()
 	 * @model transient="true" changeable="false" volatile="true" derived="true" ordered="false"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='Employee.allInstances()->select(reportsTo(self))'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='Employee.allInstances()-&gt;select(reportsTo(self))'"
 	 *        annotation="http://www.eclipse.org/OCL/Collection nullFree='true'"
 	 * @generated
 	 */
@@ -161,7 +161,7 @@
 	 * @return the value of the '<em>Reporting Chain</em>' reference list.
 	 * @see company.CompanyPackage#getEmployee_ReportingChain()
 	 * @model transient="true" changeable="false" volatile="true" derived="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='if manager.oclIsUndefined() then OrderedSet{} else manager?.reportingChain->prepend(manager) endif'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='if manager.oclIsUndefined() then OrderedSet{} else manager?.reportingChain-&gt;prepend(manager) endif'"
 	 * @generated
 	 */
 	EList<Employee> getReportingChain();
@@ -177,7 +177,7 @@
 	 * @return the value of the '<em>Has Name As Attribute</em>' attribute.
 	 * @see company.CompanyPackage#getEmployee_HasNameAsAttribute()
 	 * @model transient="true" changeable="false" volatile="true" derived="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='name <> null'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='name &lt;&gt; null'"
 	 * @generated
 	 */
 	boolean isHasNameAsAttribute();
@@ -186,7 +186,7 @@
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @model required="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='self.reportingChain->includes(manager)'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='self.reportingChain-&gt;includes(manager)'"
 	 * @generated
 	 */
 	boolean reportsTo(Employee manager);
@@ -194,7 +194,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='manager.oclIsUndefined() implies directReports->size() > 0'"
+	 * @model annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='manager.oclIsUndefined() implies directReports-&gt;size() &gt; 0'"
 	 * @generated
 	 */
 	boolean noManagerImpliesDirectReports(DiagnosticChain diagnostics, Map<Object, Object> context);
@@ -203,7 +203,7 @@
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @model required="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='name <> null'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='name &lt;&gt; null'"
 	 * @generated
 	 */
 	boolean hasNameAsOperation();
diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/noreflectioncompany/Company.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/noreflectioncompany/Company.java
index 57e06f1..62de7cb 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/noreflectioncompany/Company.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/noreflectioncompany/Company.java
@@ -86,7 +86,7 @@
 	 * @see noreflectioncompany.CompanySizeKind
 	 * @see noreflectioncompany.NoreflectioncompanyPackage#getCompany_Size()
 	 * @model required="true" transient="true" changeable="false" volatile="true" derived="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='let table : Set(Tuple(range : Sequence(Integer), size : CompanySizeKind)) = Set{Tuple{range = Sequence{0..49}, size = CompanySizeKind::small}, Tuple{range = Sequence{50..999}, size = CompanySizeKind::medium}, Tuple{range = Sequence{1000..1000000}, size = CompanySizeKind::large}} in table?->any(range->includes(employees->size()))?.size'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='let table : Set(Tuple(range : Sequence(Integer), size : CompanySizeKind)) = Set{Tuple{range = Sequence{0..49}, size = CompanySizeKind::small}, Tuple{range = Sequence{50..999}, size = CompanySizeKind::medium}, Tuple{range = Sequence{1000..1000000}, size = CompanySizeKind::large}} in table?-&gt;any(range-&gt;includes(employees-&gt;size()))?.size'"
 	 * @generated
 	 */
 	CompanySizeKind getSize();
diff --git a/tests/org.eclipse.ocl.examples.xtext.tests/src/noreflectioncompany/Employee.java b/tests/org.eclipse.ocl.examples.xtext.tests/src/noreflectioncompany/Employee.java
index 7049ece00..e0165a2 100644
--- a/tests/org.eclipse.ocl.examples.xtext.tests/src/noreflectioncompany/Employee.java
+++ b/tests/org.eclipse.ocl.examples.xtext.tests/src/noreflectioncompany/Employee.java
@@ -30,7 +30,7 @@
  *
  * @see noreflectioncompany.NoreflectioncompanyPackage#getEmployee()
  * @model annotation="http://www.eclipse.org/emf/2002/Ecore constraints='mustHaveName mustHaveNonEmptyName'"
- *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot mustHaveName='Tuple {\n\tmessage : String = \'Employee must have a name\',\n\tstatus : Boolean = not name.oclIsUndefined() and hasNameAsAttribute and hasNameAsOperation()\n}.status' mustHaveNonEmptyName='name->notEmpty() implies name.size() > 0'"
+ *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot mustHaveName='Tuple {\n\tmessage : String = \'Employee must have a name\',\n\tstatus : Boolean = not name.oclIsUndefined() and hasNameAsAttribute and hasNameAsOperation()\n}.status' mustHaveNonEmptyName='name-&gt;notEmpty() implies name.size() &gt; 0'"
  * @generated
  */
 public interface Employee extends EObject {
@@ -126,7 +126,7 @@
 	 * @return the value of the '<em>Direct Reports</em>' reference list.
 	 * @see noreflectioncompany.NoreflectioncompanyPackage#getEmployee_DirectReports()
 	 * @model transient="true" changeable="false" volatile="true" derived="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='company.employees?->select(manager = self)'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='company.employees?-&gt;select(manager = self)'"
 	 * @generated
 	 */
 	EList<Employee> getDirectReports();
@@ -143,7 +143,7 @@
 	 * @return the value of the '<em>All Reports</em>' reference list.
 	 * @see noreflectioncompany.NoreflectioncompanyPackage#getEmployee_AllReports()
 	 * @model transient="true" changeable="false" volatile="true" derived="true" ordered="false"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='Employee.allInstances()->select(reportsTo(self))'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='Employee.allInstances()-&gt;select(reportsTo(self))'"
 	 *        annotation="http://www.eclipse.org/OCL/Collection nullFree='true'"
 	 * @generated
 	 */
@@ -161,7 +161,7 @@
 	 * @return the value of the '<em>Reporting Chain</em>' reference list.
 	 * @see noreflectioncompany.NoreflectioncompanyPackage#getEmployee_ReportingChain()
 	 * @model transient="true" changeable="false" volatile="true" derived="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='if manager.oclIsUndefined() then OrderedSet{} else manager?.reportingChain->prepend(manager) endif'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='if manager.oclIsUndefined() then OrderedSet{} else manager?.reportingChain-&gt;prepend(manager) endif'"
 	 * @generated
 	 */
 	EList<Employee> getReportingChain();
@@ -177,7 +177,7 @@
 	 * @return the value of the '<em>Has Name As Attribute</em>' attribute.
 	 * @see noreflectioncompany.NoreflectioncompanyPackage#getEmployee_HasNameAsAttribute()
 	 * @model transient="true" changeable="false" volatile="true" derived="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='name <> null'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='name &lt;&gt; null'"
 	 * @generated
 	 */
 	boolean isHasNameAsAttribute();
@@ -186,7 +186,7 @@
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @model required="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='self.reportingChain->includes(manager)'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='self.reportingChain-&gt;includes(manager)'"
 	 * @generated
 	 */
 	boolean reportsTo(Employee manager);
@@ -194,7 +194,7 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='manager.oclIsUndefined() implies directReports->size() > 0'"
+	 * @model annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='manager.oclIsUndefined() implies directReports-&gt;size() &gt; 0'"
 	 * @generated
 	 */
 	boolean noManagerImpliesDirectReports(DiagnosticChain diagnostics, Map<Object, Object> context);
@@ -203,7 +203,7 @@
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @model required="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='name <> null'"
+	 *        annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot body='name &lt;&gt; null'"
 	 * @generated
 	 */
 	boolean hasNameAsOperation();